:root {
    --j-purple: #280D35;
    --j-purple-2: #431650;
    --j-gold: #D4AF37;
    --j-gold-light: #E8CC72;
    --j-ink: #211827;
    --j-muted: #746b78;
    --j-bg: #F8F1E8;
    --j-card: #ffffff;
    --j-line: #eadfea;
    --j-success: #15803d;
    --j-shadow: 0 14px 38px rgba(42, 17, 49, .10);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    color: var(--j-ink);
    background: radial-gradient(circle at top, #efe2f1 0, var(--j-bg) 420px);
    font-family: Montserrat, Arial, sans-serif;
    font-size: 14px;
}
.js-cookie-consent,.cookie-consent { display:none !important; }
a { color: inherit; text-decoration: none; }
button, input, select { font: inherit; }
.j-app {
    width: 100%;
    max-width: 1180px;
    min-height: 100vh;
    margin: 0 auto;
    padding-bottom: 92px;
    background: rgba(248,241,232,.72);
}
.j-container { padding: 0 16px; }
.j-topbar {
    position: sticky;
    top: 0;
    z-index: 40;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    border-bottom: 1px solid rgba(201,154,61,.2);
    background: rgba(255,255,255,.94);
    backdrop-filter: blur(15px);
}
.j-logo {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    overflow: hidden;
    border: 2px solid var(--j-gold);
    border-radius: 50%;
    background: #fff;
}
.j-logo img { width: 100%; height: 100%; object-fit: cover; }
.j-brand { min-width: 0; flex: 1; }
.j-brand strong { display: block; overflow: hidden; font-family: Georgia, serif; font-size: 18px; text-overflow: ellipsis; white-space: nowrap; }
.j-brand small { display: block; overflow: hidden; color: var(--j-muted); font-size: 10px; letter-spacing: .06em; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.j-icon-btn {
    position: relative;
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border: 1px solid var(--j-line);
    border-radius: 13px;
    color: var(--j-purple);
    background: #fff;
}
.product-count-badge {
    position: absolute;
    top: -5px;
    right: -5px;
    min-width: 19px;
    padding: 2px 5px;
    border-radius: 20px;
    color: #fff;
    background: #d9233f;
    font-size: 10px;
    text-align: center;
}
.j-search { position: relative; margin: 14px 0; }
.j-search i { position: absolute; top: 50%; left: 15px; color: var(--j-muted); transform: translateY(-50%); }
.j-search input {
    width: 100%;
    height: 46px;
    padding: 0 15px 0 43px;
    border: 1px solid var(--j-line);
    border-radius: 14px;
    outline: none;
    background: #fff;
    box-shadow: 0 5px 18px rgba(38,15,45,.04);
}
.j-search input:focus { border-color: var(--j-gold); box-shadow: 0 0 0 3px rgba(201,154,61,.12); }
.j-hero {
    position: relative;
    min-height: 225px;
    overflow: hidden;
    border-radius: 22px;
    color: #fff;
    background: var(--j-purple);
    box-shadow: var(--j-shadow);
}
.j-hero img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .72; }
.j-hero::after { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(20,4,26,.96), rgba(32,8,39,.45) 60%, rgba(32,8,39,.12)); content: ""; }
.j-hero-content { position: relative; z-index: 1; max-width: 65%; padding: 30px 22px; }
.j-kicker { color: var(--j-gold-light); font-size: 11px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }
.j-hero h1 { margin: 8px 0; font-family: Georgia, serif; font-size: clamp(28px, 7vw, 48px); font-weight: 500; line-height: 1.05; }
.j-hero p { margin: 0 0 18px; font-size: 12px; line-height: 1.6; }
.j-video-hero {
    position: relative;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: 22px;
    background: #08040a;
    box-shadow: var(--j-shadow);
    cursor: pointer;
    outline: none;
}
.j-video-hero iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.j-video-overlay { position: absolute; inset: 0; z-index: 1; }
.j-sound-toggle {
    position: absolute;
    z-index: 2;
    right: 12px;
    bottom: 12px;
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 9px 13px;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 20px;
    color: #fff;
    background: rgba(17,7,20,.76);
    font-size: 11px;
    font-weight: 700;
    backdrop-filter: blur(8px);
    pointer-events: none;
    transition: transform .22s ease, background .22s ease;
}
.j-sound-toggle.is-changing { transform: scale(1.06); background: rgba(37,211,102,.88); }
.j-video-hero:focus-visible { box-shadow: 0 0 0 4px rgba(37,211,102,.28), var(--j-shadow); }
.j-offer-bar { display:flex; align-items:center; min-height:43px; margin:12px 0 2px; overflow:hidden; border:1px solid rgba(217,164,65,.23); border-radius:13px; background:linear-gradient(90deg,#fff8e5,#fff,#f2fff7); box-shadow:0 8px 22px rgba(40,13,53,.06); }
.j-offer-label { position:relative; z-index:2; display:flex; align-items:center; align-self:stretch; gap:6px; padding:0 15px; flex:0 0 auto; color:#fff; background:linear-gradient(135deg,#280D35,#5a2868); font-size:9px; font-weight:800; white-space:nowrap; }
.j-offer-label:after { position:absolute; top:0; right:-10px; width:20px; height:100%; content:""; transform:skewX(-14deg); background:#5a2868; }
.j-offer-label i,.j-offer-label b { position:relative; z-index:1; }
.j-offer-viewport { min-width:0; overflow:hidden; flex:1; }
.j-offer-track { display:flex; width:max-content; align-items:center; color:var(--j-offer-text,#280D35); animation:j-offer-scroll 32s linear infinite; will-change:transform; }
.j-offer-track span { display:flex; align-items:center; gap:8px; padding:0 25px; font-size:var(--j-offer-font-size,10px); font-weight:800; white-space:nowrap; }
.j-offer-track i { color:#D9A441; font-size:8px; }
.j-offer-bar:hover .j-offer-track { animation-play-state:paused; }
@keyframes j-offer-scroll { from { transform:translateX(0); } to { transform:translateX(-50%); } }
.j-btn {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 18px;
    border: 1px solid transparent;
    border-radius: 12px;
    font-weight: 700;
    cursor: pointer;
}
.j-btn-gold { color: #2d1531; background: linear-gradient(135deg, var(--j-gold-light), var(--j-gold)); }
.j-btn-purple { color: #fff; background: linear-gradient(135deg, var(--j-purple-2), var(--j-purple)); }
.j-btn-outline { border-color: var(--j-line); color: var(--j-purple); background: #fff; }
.j-btn-whatsapp { color: #fff; background: #25D366; }
.j-btn-block { width: 100%; }
.j-trust {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
    margin: 14px 0 24px;
}
.j-trust-item { padding: 12px 5px; border: 1px solid var(--j-line); border-radius: 14px; background: #fff; text-align: center; box-shadow: 0 6px 18px rgba(38,15,45,.04); }
.j-trust-item i { display: block; margin-bottom: 6px; color: var(--j-gold); font-size: 18px; }
.j-trust-item span { display: block; font-size: 9px; font-weight: 700; line-height: 1.25; }
.j-section { margin: 26px 0; }
.j-section-head { display: flex; align-items: end; justify-content: space-between; gap: 16px; margin-bottom: 14px; }
.j-section-head h2 { margin: 0; font-family: Georgia, serif; font-size: 23px; }
.j-section-head a { color: var(--j-purple-2); font-size: 12px; font-weight: 700; }
.j-category-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.j-category-card { min-width: 0; text-align: center; }
.j-category-image { width:min(100%,96px); aspect-ratio: 1; overflow: hidden; margin-inline:auto; border: 2px solid #fff; border-radius: 50%; background: var(--j-purple); box-shadow: 0 0 0 1px var(--j-gold), 0 8px 18px rgba(39,13,45,.13); transition:transform .25s ease,box-shadow .25s ease; }
.j-category-card:hover .j-category-image { transform:translateY(-3px) scale(1.025); box-shadow:0 0 0 1px var(--j-gold),0 13px 25px rgba(39,13,45,.17); }
.j-category-image img { width: 100%; height: 100%; object-fit: cover; }
.j-category-card strong { display: block; overflow: hidden; margin-top: 8px; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.j-category-card small { color: var(--j-muted); font-size: 9px; }
.j-product-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items:start; gap: 12px; }
@media (max-width: 639px) {
    .mobile-products-1 .j-product-grid { grid-template-columns: minmax(0, 1fr); gap: 16px; }
    .mobile-products-1 .j-product-card { width:100%!important; max-width:none!important; margin:0!important; justify-self:stretch; }
}
.j-product-card {
    position: relative;
    display: flex !important;
    width: 100% !important;
    height: auto;
    min-width: 0;
    overflow: hidden;
    flex-direction: column;
    align-self: start;
    border: 1px solid var(--j-line);
    border-radius: 20px;
    background: var(--j-card);
    box-shadow: 0 12px 30px rgba(37,12,43,.10);
    transition: transform .25s ease, box-shadow .25s ease;
}
.j-product-card:hover { transform: translateY(-3px); box-shadow: 0 18px 38px rgba(37,12,43,.14); }
.j-product-image { position: relative; display: block; width:100%; flex:0 0 auto; aspect-ratio: 1 / .94; overflow: hidden; background: #160b19; }
.j-product-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.j-product-card:hover .j-product-image img { transform: scale(1.04); }
.j-badge { position: absolute; top: 9px; left: 9px; z-index: 2; padding: 5px 8px; border-radius: 20px; color: #fff; background: #c2233f; font-size: 9px; font-weight: 700; }
.j-wishlist { position: absolute; top: 8px; right: 8px; z-index: 2; display: grid; width: 30px; height: 30px; place-items: center; border: 0; border-radius: 50%; color: #fff; background: rgba(21,7,24,.68); }
.j-product-info { display:flex; min-width:0; padding:11px; flex:1 1 auto; flex-direction:column; }
.j-product-info h3 { min-height: 32px; margin: 0 0 5px; font-size: 14px; font-weight: 800; line-height: 1.35; }
.j-meta { color: var(--j-muted); font-size: 11px; }
.j-rating { margin: 5px 0; color: #e39d19; font-size: 11px; }
.j-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px; font-size: 16px; font-weight: 800; }
.j-price del { color: #9b929d; font-size: 11px; font-weight: 500; }
.j-card-actions { display: flex; width:100%; flex-direction: row !important; gap: 7px; margin-top:9px; padding-top:0; }
.j-card-actions .j-btn { display:flex; align-items:center; justify-content:center; gap:7px; min-height: 48px; flex: 1 1 0 !important; width: auto !important; min-width: 0; padding: 10px 8px; border-radius: 12px; font-size: 11px; font-weight:800; white-space: nowrap; transition:transform .2s ease,box-shadow .2s ease,filter .2s ease; }
.j-card-actions .j-btn i { font-size:13px; }
.j-card-actions .j-btn:hover { transform:translateY(-2px); filter:brightness(1.03); }
.j-card-actions .j-btn-purple:hover { box-shadow:0 8px 18px rgba(40,13,53,.24); }
.j-card-actions .wp-whatsapp-order-btn { color: #fff; background: #25D366; box-shadow:0 7px 16px rgba(37,211,102,.22); }
.j-card-actions .wp-whatsapp-order-btn:hover { color:#fff; background:#20bd5a; box-shadow:0 9px 20px rgba(37,211,102,.3); }
.j-card-actions-stacked {
    flex-direction: column !important;
    gap: 7px;
    margin-top: 14px;
}
.j-card-actions-stacked .j-btn {
    width: 100% !important;
    min-height: 42px;
    flex: 0 0 auto !important;
    border-radius: 9px;
    font-size: 13px;
    letter-spacing: .01em;
}
.j-card-actions-stacked .addToCartBtn {
    color: #fff;
    background: linear-gradient(135deg, var(--j-purple-2), var(--j-purple));
    box-shadow: 0 8px 18px rgba(40,13,53,.24);
}
.j-card-actions-stacked .addToCartBtn:hover {
    box-shadow: 0 10px 22px rgba(40,13,53,.32);
}
.j-card-actions-stacked .wp-whatsapp-order-btn {
    background: #25D366;
}
.j-card-actions .animate-btn { color:#fff!important; background:#17a957!important; animation:j-cart-button-pop .45s ease; }
.j-tabs { display: flex; gap: 8px; overflow-x: auto; margin: 12px 0 18px; padding-bottom: 3px; scrollbar-width: none; }
.j-tabs::-webkit-scrollbar { display: none; }
.j-tab { flex: 0 0 auto; padding: 9px 14px; border: 1px solid var(--j-line); border-radius: 20px; background: #fff; font-size: 11px; font-weight: 700; }
.j-tab.active { border-color: var(--j-purple); color: #fff; background: var(--j-purple); }
.j-page-title { padding: 18px 0 2px; font-family: Georgia, serif; font-size: 27px; }
.j-policy-card { min-height:220px; margin:16px 0 34px; padding:24px; border:1px solid var(--j-line); border-radius:20px; background:#fff; box-shadow:var(--j-shadow); color:#4d4350; font-size:14px; line-height:1.8; }
.j-policy-card h1,.j-policy-card h2,.j-policy-card h3,.j-policy-card h4 { color:var(--j-ink); }
.j-policy-card img { max-width:100%; height:auto; }
.j-detail { display: grid; gap: 20px; padding-top: 14px; }
.j-gallery-main { position: relative; display: block; width: 100%; aspect-ratio: 1; overflow: hidden; padding: 0; border: 0; border-radius: 20px; background: #170b19; box-shadow: var(--j-shadow); cursor: zoom-in; }
.j-gallery-main img { width: 100%; height: 100%; object-fit: cover; }
.j-zoom-hint { position: absolute; right: 13px; bottom: 13px; display: grid; width: 38px; height: 38px; place-items: center; border-radius: 50%; color: #fff; background: rgba(22,7,26,.7); }
.j-thumbs { display: flex; gap: 9px; overflow-x: auto; margin-top: 10px; }
.j-thumb { width: 62px; height: 62px; flex: 0 0 62px; overflow: hidden; border: 2px solid transparent; border-radius: 11px; background: #eee; }
.j-thumb.active { border-color: var(--j-gold); }
.j-thumb img { width: 100%; height: 100%; object-fit: cover; }
.j-video-thumb { position: relative; }
.j-video-thumb span { position: absolute; inset: 0; display: grid; place-items: center; color: #fff; background: rgba(17,5,20,.35); font-size: 18px; }
.j-detail-panel { padding: 18px; border: 1px solid var(--j-line); border-radius: 20px; background: #fff; box-shadow: var(--j-shadow); }
.j-detail-panel h1 { margin: 0 0 6px; font-family: Georgia, serif; font-size: 28px; }
.j-stock { color: var(--j-success); font-size: 11px; font-weight: 700; }
.j-cert-row { display: flex; flex-wrap: wrap; gap: 8px; margin: 15px 0; }
.j-cert { padding: 8px 10px; border-radius: 9px; color: var(--j-purple); background: #f7eff8; font-size: 10px; font-weight: 700; }
.j-description { color: var(--j-muted); font-size: 13px; line-height: 1.7; white-space: normal; }
.j-quantity { display: flex; align-items: center; gap: 10px; margin: 16px 0; }
.j-qty-box { display: flex; overflow: hidden; border: 1px solid var(--j-line); border-radius: 10px; }
.j-qty-box button, .j-qty-box input { width: 38px; height: 38px; border: 0; background: #fff; text-align: center; }
.j-action-stack { display: grid; gap: 9px; }
.j-profile-cover { position: relative; height: 210px; overflow: hidden; border-radius: 0 0 24px 24px; background: var(--j-purple); }
.j-profile-cover img { width: 100%; height: 100%; object-fit: cover; opacity: .84; }
.j-profile-card { position: relative; margin: -48px 16px 20px; padding: 20px; border: 1px solid var(--j-line); border-radius: 20px; background: #fff; box-shadow: var(--j-shadow); }
.j-profile-logo { width: 82px; height: 82px; overflow: hidden; margin-top: -62px; border: 4px solid #fff; border-radius: 50%; background: #fff; box-shadow: 0 0 0 2px var(--j-gold); }
.j-profile-logo img { width: 100%; height: 100%; object-fit: cover; }
.j-info-grid { display: grid; gap: 10px; }
.j-info-card { padding: 14px; border: 1px solid var(--j-line); border-radius: 14px; background: #fff; }
.j-order-card { margin-bottom: 12px; padding: 16px; border: 1px solid var(--j-line); border-radius: 16px; background: #fff; box-shadow: 0 6px 18px rgba(37,12,43,.05); }
.j-order-head { display: flex; justify-content: space-between; gap: 12px; }
.j-status { padding: 5px 9px; border-radius: 20px; font-size: 9px; font-weight: 800; }
.j-status-0 { color: #9a6700; background: #fff0c2; }
.j-status-1 { color: #155e75; background: #cffafe; }
.j-status-2 { color: #166534; background: #dcfce7; }
.j-status-3 { color: #991b1b; background: #fee2e2; }
.j-empty { padding: 40px 20px; border: 1px dashed #d8c9da; border-radius: 18px; color: var(--j-muted); background: #fff; text-align: center; }
.j-bottom-nav {
    position: fixed;
    z-index: 50;
    right: 0;
    bottom: 0;
    left: 0;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    max-width: 1180px;
    margin: auto;
    padding: 8px 8px max(8px, env(safe-area-inset-bottom));
    border-top: 1px solid var(--j-line);
    background: rgba(255,255,255,.97);
    box-shadow: 0 -8px 30px rgba(38,12,44,.09);
    backdrop-filter: blur(12px);
}
.j-bottom-nav a { display: grid; min-width: 0; gap: 3px; place-items: center; color: #756b77; font-size: 9px; font-weight: 700; }
.j-bottom-nav a i { font-size: 17px; }
.j-bottom-nav a.active { color: var(--j-purple); }
.j-bottom-nav a.active i { color: var(--j-gold); }
.j-footer{margin-top:42px;padding:0;color:#ece3ef;background:radial-gradient(circle at 90% 0,rgba(37,211,102,.18),transparent 24rem),linear-gradient(145deg,#1e0828,#351040 58%,#123823 145%);box-shadow:0 -14px 38px rgba(24,6,30,.18)}
.j-footer a{text-decoration:none}.j-footer-spotlight{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:27px 28px;border-bottom:1px solid rgba(255,255,255,.1)}
.j-footer-identity{display:flex;align-items:center;min-width:0;gap:16px}.j-footer-logo{display:grid;width:72px;height:72px;flex:0 0 72px;padding:5px;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:20px;background:rgba(255,255,255,.09);box-shadow:0 12px 30px rgba(0,0,0,.2)}.j-footer-logo img{width:100%;height:100%;border-radius:15px;object-fit:cover}.j-footer-identity small,.j-footer-identity strong,.j-footer-identity p{display:block}.j-footer-identity small{color:#79e99f;font-size:9px;font-weight:800;letter-spacing:.15em}.j-footer-identity strong{margin-top:4px;color:#fff;font-family:Georgia,serif;font-size:23px}.j-footer-identity p{max-width:500px;margin:7px 0 0;color:#cfc2d3;font-size:11px;line-height:1.7}
.j-footer-actions{display:grid;min-width:270px;gap:10px}.j-footer-whatsapp,.j-footer-app{display:grid;width:100%;grid-template-columns:48px 1fr 18px;align-items:center;gap:12px;padding:14px 16px;border-radius:16px;color:#fff;text-align:left;transition:.2s ease}.j-footer-whatsapp{border:1px solid rgba(37,211,102,.3);background:rgba(37,211,102,.13)}.j-footer-whatsapp>i:first-child,.j-footer-app>i:first-child{display:grid;width:48px;height:48px;place-items:center;border-radius:13px;color:#fff;font-size:23px}.j-footer-whatsapp>i:first-child{background:#25d366}.j-footer-whatsapp span small,.j-footer-whatsapp span strong,.j-footer-app span small,.j-footer-app span strong{display:block}.j-footer-whatsapp span small{color:#a7deb9;font-size:11px}.j-footer-whatsapp span strong{margin-top:2px;font-size:14px}.j-footer-whatsapp>i:last-child{color:#78e89e;font-size:12px}.j-footer-whatsapp:hover{color:#fff;background:rgba(37,211,102,.2);transform:translateY(-2px)}.j-footer-app{border:1px solid rgba(255,255,255,.18);background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.06));cursor:pointer}.j-footer-app>i:first-child{background:#fff;color:#25a75a}.j-footer-app span small{color:#9af0b6;font-size:9px;font-weight:800;letter-spacing:.12em}.j-footer-app span strong{margin-top:3px;font-size:14px}.j-footer-app>i:last-child{color:#9af0b6}.j-footer-app:hover,.j-footer-app.is-ready{border-color:rgba(37,211,102,.55);background:rgba(37,211,102,.17);transform:translateY(-2px)}
.j-footer-content{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:28px;padding:34px 28px}.j-footer-heading{display:block;margin-bottom:17px;color:#fff;font-size:14px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.j-footer-heading:after{display:block;width:36px;height:3px;margin-top:9px;content:"";border-radius:4px;background:#25d366}
.j-footer-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.j-footer-link-grid a{display:flex;align-items:center;gap:10px;min-height:48px;padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:11px;color:#d8cddd;background:rgba(255,255,255,.045);font-size:12px}.j-footer-link-grid a i{display:grid;width:30px;height:30px;place-items:center;border-radius:8px;color:#79e99f;background:rgba(37,211,102,.1);font-size:12px}.j-footer-link-grid a:hover{border-color:rgba(37,211,102,.3);color:#fff;background:rgba(255,255,255,.08)}
.j-footer-contact{display:flex;flex-direction:column}.j-footer-contact>a{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:11px;margin-bottom:11px;color:#d8cddd;font-size:12px;line-height:1.55}.j-footer-contact>a>span{display:grid;width:42px;height:42px;place-items:center;border-radius:11px;color:#fff;background:rgba(255,255,255,.08);font-size:14px}.j-footer-contact b{overflow-wrap:anywhere;font-weight:600}.j-footer-contact a:hover{color:#fff}.j-footer-contact a:hover>span{background:#25d366}
.j-footer-legal{display:flex;flex-direction:column}.j-footer-legal>a{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:46px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.08);color:#d8cddd;font-size:12px}.j-footer-legal>a i{color:#7b6b81;font-size:9px}.j-footer-legal>a:hover{color:#79e99f}
.j-footer-social{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 28px;padding:21px 0;border-top:1px solid rgba(255,255,255,.1)}.j-footer-social>span small,.j-footer-social>span strong{display:block}.j-footer-social>span small{color:#79e99f;font-size:9px;font-weight:800;letter-spacing:.13em}.j-footer-social>span strong{margin-top:3px;color:#fff;font-size:15px}.j-social-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px}.j-social-links a{display:flex;align-items:center;gap:8px;min-height:41px;padding:9px 12px;border:1px solid rgba(255,255,255,.12);border-radius:11px;color:#fff;background:rgba(255,255,255,.06);font-size:10px;transition:.2s ease}.j-social-links a i{font-size:15px}.j-social-links a:hover{color:#fff;transform:translateY(-2px)}.j-social-facebook:hover{background:#1877f2}.j-social-instagram:hover{background:linear-gradient(45deg,#f58529,#dd2a7b,#8134af)}.j-social-youtube:hover{background:#f00}.j-social-whatsapp:hover{background:#25d366}.j-social-twitter:hover,.j-social-tiktok:hover{background:#050505}.j-social-linkedin:hover{background:#0a66c2}.j-social-pinterest:hover{background:#e60023}.j-social-website:hover{background:#0a95b3}
.j-footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 28px;color:#b9adbd;background:rgba(0,0,0,.2);font-size:11px}.j-footer-bottom i{margin-right:6px;color:#25d366;font-size:13px}
.j-lightbox { position: fixed; inset: 0; z-index: 9999; display: none; align-items: center; justify-content: center; padding: 22px; background: rgba(7,3,9,.94); }
.j-lightbox.open { display: flex; }
.j-lightbox-content { width: min(100%, 980px); max-height: 88vh; }
.j-lightbox-content img { display: block; width: 100%; max-height: 88vh; object-fit: contain; }
.j-lightbox-content iframe { width: 100%; aspect-ratio: 16 / 9; border: 0; border-radius: 14px; background: #000; }
.j-lightbox-close { position: absolute; top: 18px; right: 18px; display: grid; width: 44px; height: 44px; place-items: center; border: 1px solid rgba(255,255,255,.3); border-radius: 50%; color: #fff; background: rgba(255,255,255,.12); font-size: 20px; }
.j-video-modal { position:fixed; inset:0; z-index:10000; display:flex; align-items:center; justify-content:center; padding:22px; background:rgba(7,3,9,.94); }
.j-video-modal iframe { width:min(100%,980px); aspect-ratio:16/9; border:0; border-radius:16px; background:#000; }
.j-video-modal button { position:absolute; top:18px; right:18px; display:grid; width:44px; height:44px; place-items:center; border:1px solid rgba(255,255,255,.3); border-radius:50%; color:#fff; background:rgba(255,255,255,.12); font-size:20px; }
.j-cart-pay { display:flex; align-items:center; gap:16px; margin:0 0 16px; padding:14px; border:1px solid #eadb9a; border-radius:14px; background:#fffaf0; }
.j-cart-pay img { width:82px; height:82px; padding:4px; object-fit:contain; border-radius:10px; background:#fff; }
.j-cart-product { display:flex; align-items:center; gap:9px; min-width:170px; }
.j-cart-product img { width:42px; height:42px; flex:0 0 42px; border-radius:10px; object-fit:cover; background:#f5eff6; }
.j-cart-product strong,.j-cart-product small { display:block; max-width:150px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.j-cart-product strong { color:var(--j-ink); font-size:10px; }.j-cart-product small { margin-top:3px; color:var(--j-muted); font-size:8px; }
.j-cart-qty { display:inline-flex; align-items:center; overflow:hidden; border:1px solid var(--j-line); border-radius:9px; background:#fff; }
.j-cart-qty button,.j-cart-qty span { display:grid; width:29px; height:29px; padding:0; place-items:center; border:0; background:#fff; font-size:10px; }
.j-cart-qty button { color:var(--j-purple); background:#f8f3f9; }
.j-cart-remove { display:grid; width:29px; height:29px; padding:0; place-items:center; border:0; border-radius:9px; color:#c8344b; background:#fff0f2; font-size:9px; }
.j-cart-empty { display:flex; align-items:center; justify-content:center; min-height:150px; flex-direction:column; color:var(--j-muted); text-align:center; }
.j-cart-empty i { display:grid; width:46px; height:46px; margin-bottom:10px; place-items:center; border-radius:14px; color:var(--j-purple); background:#f2eaf4; font-size:17px; }
.j-cart-empty strong { color:var(--j-ink); font-size:12px; }.j-cart-empty small { margin-top:3px; font-size:9px; }
.j-link-button { padding:0; border:0; color:#280d35; background:transparent; font-weight:700; text-decoration:underline; }
.j-order-modal-content { overflow: hidden; border-radius: 22px !important; }
.j-order-modal-content .modal-header { padding: 18px 20px; color: #fff; background: var(--j-purple); }
.j-order-modal-content .modal-header .btn-close { filter: invert(1); opacity: 1; }
.j-order-modal-content .modal-body { padding: 22px; }
.j-order-modal-content .form-label { margin-bottom: 7px; font-size: 12px; font-weight: 800; }
.j-order-modal-content .form-control { min-height: 46px; border: 1px solid var(--j-line); border-radius: 12px; }
.j-order-modal-content textarea.form-control { min-height: 100px; }
.j-pagination nav { display: flex; justify-content: center; margin: 24px 0; }
.j-pagination .pagination { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px; margin: 0; padding: 0; }
.j-pagination .page-item { list-style: none; }
.j-pagination .page-link {
    display: inline-flex;
    min-width: 36px;
    height: 36px;
    align-items: center;
    justify-content: center;
    padding: 0 12px;
    border: 1px solid var(--j-line);
    border-radius: 10px !important;
    color: var(--j-purple);
    background: #fff;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    box-shadow: 0 6px 16px rgba(40,13,53,.05);
}
.j-pagination .page-link:hover,
.j-pagination .page-item.active .page-link {
    border-color: var(--j-purple);
    color: #fff;
    background: var(--j-purple);
}
.j-pagination .page-item.disabled .page-link {
    color: #a8a0ad;
    background: rgba(255,255,255,.65);
    box-shadow: none;
}
.j-pagination svg {
    width: 14px !important;
    height: 14px !important;
}
.j-pagination .hidden,
.j-pagination [aria-label="Pagination Navigation"] > div:first-child {
    display: none !important;
}
.j-trending-videos {
    margin: 26px 0 0;
    padding: 0 16px 34px;
    background: transparent;
    overflow: hidden;
}
.j-trending-inner {
    max-width: 980px;
    margin: 0 auto;
}
.j-trending-videos h2 {
    margin: 0 0 14px;
    color: var(--j-ink);
    font-family: Georgia, serif;
    font-size: 23px;
    font-weight: 700;
    text-align: center;
}
.j-trending-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 12px;
}
.j-trending-card {
    position: relative;
    min-height: 0;
    overflow: hidden;
    padding: 0;
    border: 1px solid rgba(255,255,255,.55);
    border-radius: 14px;
    background: linear-gradient(110deg, #efe8de 8%, #f8f3eb 18%, #eadfda 33%);
    background-size: 220% 100%;
    box-shadow: 0 14px 32px rgba(40,13,53,.13), inset 0 1px 0 rgba(255,255,255,.6);
    cursor: pointer;
    width: 156px;
    flex: 0 0 156px;
    aspect-ratio: 9 / 16;
    opacity: 0;
    translate: 0 10px;
    animation: j-video-card-in .55s cubic-bezier(.2,.85,.2,1) forwards;
    animation-delay: calc(var(--video-index, 0) * 70ms);
    transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}
.j-trending-card:hover {
    border-color: rgba(40,13,53,.18);
    box-shadow: 0 20px 44px rgba(40,13,53,.18), inset 0 1px 0 rgba(255,255,255,.75);
    transform: translateY(-5px);
}
.j-trending-card iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
    pointer-events: none;
    opacity: 0;
    transform: scale(1.02);
    transition: opacity .35s ease, transform .55s ease, filter .35s ease;
}
.j-trending-card.is-video-loaded iframe {
    opacity: 1;
}
.j-trending-card:hover iframe {
    filter: saturate(1.08) contrast(1.03);
    transform: scale(1.08);
}
.j-trending-loader {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: grid;
    place-items: center;
    background:
        radial-gradient(circle at 50% 43%, rgba(255,255,255,.4), transparent 28%),
        linear-gradient(110deg, #eaded5 8%, #fff8f1 18%, #e8d8d1 33%);
    background-size: 220% 100%;
    animation: j-video-shimmer 1.1s linear infinite;
    transition: opacity .32s ease, visibility .32s ease;
}
.j-trending-loader::before {
    position: absolute;
    width: 54px;
    height: 54px;
    content: "";
    border-radius: 50%;
    border: 2px solid rgba(40,13,53,.12);
    border-top-color: rgba(40,13,53,.68);
    animation: j-video-spin .8s linear infinite;
}
.j-trending-loader span {
    position: relative;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: rgba(40,13,53,.16);
    box-shadow: 0 0 0 10px rgba(40,13,53,.06);
    animation: j-video-pulse 1s ease-in-out infinite;
}
.j-trending-card.is-video-loaded .j-trending-loader {
    opacity: 0;
    visibility: hidden;
}
.j-trending-card::after {
    position: absolute;
    inset: 0;
    content: "";
    background:
        radial-gradient(circle at 50% 48%, rgba(255,255,255,.1), transparent 36%),
        linear-gradient(180deg, rgba(0,0,0,0), rgba(0,0,0,.28));
    opacity: .85;
    transition: opacity .25s ease;
}
.j-trending-card:hover::after {
    opacity: .65;
}
.j-trending-play {
    position: absolute;
    right: 10px;
    bottom: 10px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 8px;
    border-radius: 16px;
    color: #fff;
    background: rgba(0,0,0,.38);
    font-size: 13px;
    backdrop-filter: blur(6px);
    box-shadow: 0 8px 18px rgba(0,0,0,.18);
    transition: transform .25s ease, background .25s ease;
}
.j-trending-card:hover .j-trending-play {
    background: rgba(217,35,63,.9);
    transform: scale(1.06);
}
.j-video-lightbox {
    position: fixed;
    inset: 0;
    z-index: 14000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 18px;
    background: rgba(11,4,14,.84);
}
.j-video-lightbox.is-open {
    display: flex;
}
.j-video-lightbox-frame {
    width: min(420px, 92vw);
    aspect-ratio: 9 / 16;
    overflow: hidden;
    border-radius: 18px;
    background: #000;
    box-shadow: 0 28px 80px rgba(0,0,0,.42);
}
.j-video-lightbox-frame iframe {
    width: 100%;
    height: 100%;
    border: 0;
}
.j-video-lightbox-close {
    position: absolute;
    top: 18px;
    right: 18px;
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 50%;
    color: #fff;
    background: rgba(255,255,255,.12);
}
@media (max-width: 767px) {
    .j-trending-videos {
        margin-top: 38px;
        padding: 0 12px 42px;
    }
    .j-trending-videos h2 {
        margin-bottom: 26px;
        font-size: 24px;
        line-height: 1.2;
    }
    .j-trending-row {
        justify-content: flex-start;
        flex-wrap: nowrap;
        overflow-x: auto;
        gap: 12px;
        padding: 2px 0 18px;
        overscroll-behavior-x: contain;
        scroll-snap-type: x mandatory;
        scrollbar-color: rgba(40,13,53,.35) rgba(40,13,53,.08);
        scrollbar-width: thin;
        -webkit-overflow-scrolling: touch;
    }
    .j-trending-row::-webkit-scrollbar {
        display: block;
        height: 6px;
    }
    .j-trending-row::-webkit-scrollbar-track {
        border-radius: 999px;
        background: rgba(40,13,53,.08);
    }
    .j-trending-row::-webkit-scrollbar-thumb {
        border-radius: 999px;
        background: rgba(40,13,53,.35);
    }
    .j-trending-card {
        width: calc((100% - 12px) / 2);
        min-width: calc((100% - 12px) / 2);
        max-width: none;
        flex: 0 0 calc((100% - 12px) / 2);
        border-radius: 12px;
        scroll-snap-align: center;
    }
    .j-trending-play {
        right: 8px;
        bottom: 8px;
        padding: 5px 7px;
        font-size: 12px;
    }
}
@media (max-width: 380px) {
    .j-trending-row {
        gap: 10px;
    }
    .j-trending-card {
        width: calc((100% - 10px) / 2);
        min-width: calc((100% - 10px) / 2);
        flex-basis: calc((100% - 10px) / 2);
    }
}
@media (prefers-reduced-motion: reduce) {
    .j-trending-card,
    .j-trending-card iframe,
    .j-trending-loader,
    .j-trending-loader::before,
    .j-trending-loader span,
    .j-trending-play {
        animation: none !important;
        transition: none !important;
        transform: none !important;
        translate: 0 0 !important;
    }
}
@keyframes j-video-card-in {
    from {
        opacity: 0;
        translate: 0 18px;
    }
    to {
        opacity: 1;
        translate: 0 0;
    }
}
@keyframes j-video-shimmer {
    to {
        background-position-x: -220%;
    }
}
@keyframes j-video-spin {
    to {
        transform: rotate(360deg);
    }
}
@keyframes j-video-pulse {
    50% {
        transform: scale(.72);
        opacity: .55;
    }
}
.modal-content { border: 0 !important; border-radius: 20px !important; box-shadow: var(--j-shadow); }
.modal-header { border-color: var(--j-line) !important; }
.modal .btn-primary { border-color: var(--j-purple); background: var(--j-purple); }
.j-toast-stack { position:fixed; z-index:12000; top:92px; right:18px; display:flex; width:min(330px,calc(100vw - 28px)); flex-direction:column; gap:9px; pointer-events:none; }
.j-toast { position:relative; display:grid; grid-template-columns:36px minmax(0,1fr) 24px; align-items:center; gap:10px; min-height:68px; padding:11px 12px; overflow:hidden; opacity:0; transform:translateX(22px) scale(.97); border:1px solid rgba(30,167,91,.18); border-radius:15px; color:#26302a; background:rgba(255,255,255,.98); box-shadow:0 18px 45px rgba(32,16,37,.18); backdrop-filter:blur(16px); pointer-events:auto; transition:opacity .22s ease,transform .3s cubic-bezier(.2,.8,.2,1); }
.j-toast.is-visible { opacity:1; transform:none; }
.j-toast.is-leaving { opacity:0; transform:translateX(18px) scale(.97); }
.j-toast-icon { display:grid; width:34px; height:34px; place-items:center; border-radius:11px; color:#fff; background:#25D366; box-shadow:0 7px 16px rgba(37,211,102,.25); font-size:13px; }
.j-toast-copy { min-width:0; }.j-toast-copy strong,.j-toast-copy small { display:block; }.j-toast-copy strong { color:#213028; font-size:11px; }.j-toast-copy small { margin-top:3px; color:#6e7772; font-size:9px; line-height:1.4; }
.j-toast button { display:grid; width:24px; height:24px; padding:0; place-items:center; border:0; border-radius:8px; color:#8c9490; background:#f2f5f3; font-size:9px; }
.j-toast-progress { position:absolute; right:0; bottom:0; left:0; height:3px; transform-origin:left; background:linear-gradient(90deg,#25D366,#7ceba5); animation:j-toast-progress 2s linear forwards; }
.j-toast-error { border-color:rgba(217,35,63,.18); }.j-toast-error .j-toast-icon,.j-toast-error .j-toast-progress { background:#d9233f; }.j-toast-error .j-toast-icon { box-shadow:0 7px 16px rgba(217,35,63,.22); }
@keyframes j-toast-progress { to { transform:scaleX(0); } }
.j-order-search-label { display:block; margin-bottom:7px; color:#47384b; font-size:10px; font-weight:800; }
.j-order-phone-field { position:relative; }
.j-order-phone-field>i { position:absolute; z-index:1; top:50%; left:15px; color:#25a75a; font-size:12px; transform:translateY(-50%); }
.j-order-phone-field .form-control { min-height:47px; padding-left:41px; border-color:#dfd4e2; border-radius:12px; }
.j-order-phone-field .form-control:focus { border-color:#25D366; box-shadow:0 0 0 3px rgba(37,211,102,.12); }
.j-order-search-btn { min-height:47px; gap:7px; border-radius:12px; }
.j-order-search-help { display:flex; align-items:center; gap:6px; margin:10px 0 0; color:#8b7f8f; font-size:8px; }
.j-order-search-help i { color:#25a75a; }
@keyframes j-cart-button-pop { 0%{transform:scale(.94)} 55%{transform:scale(1.04)} 100%{transform:scale(1)} }

@media (min-width: 640px) {
    .j-container { padding: 0 26px; }
    .j-topbar { padding-right: 26px; padding-left: 26px; }
    .j-category-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
    .j-product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
    .j-info-grid { grid-template-columns: repeat(2, 1fr); }
    .j-footer-content { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 900px) {
    .j-app { padding-bottom: 30px; box-shadow: 0 0 60px rgba(36,11,42,.08); }
    .j-category-grid { grid-template-columns: repeat(8, minmax(0, 1fr)); }
    .j-product-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
    .j-detail { grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr); align-items: start; }
    .j-detail-panel { position: sticky; top: 86px; }
    .j-bottom-nav { position: sticky; bottom: 0; border-right: 1px solid var(--j-line); border-left: 1px solid var(--j-line); border-radius: 18px 18px 0 0; }
    .j-footer-content { grid-template-columns: 1fr 1.1fr .9fr; }
}
@media (max-width: 530px) {
    .j-footer-spotlight{align-items:stretch;padding:24px 18px;flex-direction:column}.j-footer-logo{width:68px;height:68px;flex-basis:68px}.j-footer-identity strong{font-size:23px}.j-footer-identity p{font-size:12px}.j-footer-actions{min-width:0}.j-footer-content{grid-template-columns:1fr;padding:29px 18px;gap:28px}.j-footer-heading{font-size:14px}.j-footer-link-grid a{min-height:48px;font-size:12px}.j-footer-contact>a,.j-footer-legal>a{font-size:12px}.j-footer-social{align-items:flex-start;margin:0 18px;padding:22px 0;flex-direction:column}.j-social-links{justify-content:flex-start}.j-social-links a span{display:none}.j-social-links a{width:46px;height:46px;justify-content:center;padding:0;border-radius:12px}.j-social-links a i{font-size:18px}.j-footer-bottom{padding:17px 18px;font-size:11px}
    .j-footer-link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .j-footer-bottom{align-items:flex-start;flex-direction:column}
}
@media (max-width: 460px) {
    .mobile-products-2 .j-product-grid{gap:9px}
    .mobile-products-2 .j-product-card{border-radius:16px}
    .mobile-products-2 .j-product-image{aspect-ratio:1/.9}
    .mobile-products-2 .j-product-info{padding:10px 9px}
    .mobile-products-2 .j-product-info h3{min-height:29px;font-size:12px}
    .mobile-products-2 .j-card-actions{gap:5px;flex-direction:row!important;margin-top:8px}
    .mobile-products-2 .j-card-actions .j-btn{width:auto!important;min-height:43px;padding:7px 3px;border-radius:10px;font-size:9px;letter-spacing:-.025em}
    .mobile-products-2 .j-card-actions .j-btn i{display:inline-block;font-size:10px}
    .mobile-products-2 .j-card-actions-stacked{gap:6px;flex-direction:column!important;margin-top:10px}
    .mobile-products-2 .j-card-actions-stacked .j-btn{width:100%!important;min-height:40px;padding:8px 6px;border-radius:9px;font-size:12px;letter-spacing:0}
    .mobile-products-2 .j-card-actions-stacked .j-btn i{font-size:13px}
}
@media (max-width: 420px) {
    .mobile-products-1 .j-card-actions .j-btn{min-height:44px;padding:9px 7px;font-size:10px}
    .mobile-products-1 .j-card-actions .j-btn i{display:inline-block;font-size:11px}
    .j-category-image { width:min(100%,78px); }
    .j-toast-stack { top:84px; right:10px; width:calc(100vw - 20px); }
    .j-offer-bar { min-height:39px; border-radius:11px; }
    .j-offer-label { padding:0 10px; font-size:7px; }
    .j-offer-track span { padding:0 17px; font-size:var(--j-offer-font-size,8px); }
}
