/* ==========================================
   LETY SHOP WEB - ESTILOS VISUALES (web-tienda.css)
   ========================================== */

/* --- Bloque Style #1 --- */
:root{
  --primary:#D91F73;
  --primary-hover:#C41764;
  --secondary-pink:#F2388A;
  --soft-pink:#F7D6E6;
  --bg-main:#FFF7FB;
  --bg-sec:#FCEAF3;
  --bg-card:#FFFFFF;
  --text-main:#28232A;
  --text-sec:#746B72;
  --border-pink:#EFB8D2;
  --shadow-soft:0 8px 26px rgba(145,34,84,.08);
  --shadow-card:0 10px 30px rgba(60,26,43,.08);
  --primary-gradient:linear-gradient(135deg,#F2388A 0%,#D91F73 55%,#B7165B 100%);
  --primary-glow:rgba(217,31,115,.24);
  --border-glass:rgba(217,31,115,.18);
  --border-subtle:#F0D9E4;
  --text-secondary:#746B72;
  --accent-pink:#D91F73;
  --bg-card-hover:#FFFDFE;
  --ls-primary:#D91F73;
  --ls-bg-soft:#FFF0F7;
  --ls-shadow-soft:0 8px 24px rgba(100,35,67,.08);
}
*{box-sizing:border-box;margin:0;padding:0;font-family:'Outfit',sans-serif}
html{scroll-behavior:smooth;background:var(--bg-main)}
body{min-height:100vh;background:linear-gradient(180deg,#FFF9FC 0%,#FFF4F9 45%,#FFF8FB 100%);color:var(--text-main);overflow-x:hidden;padding-bottom:0}
button,input,select{font:inherit}
button,a{ -webkit-tap-highlight-color:transparent }
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
::-webkit-scrollbar{width:8px;height:8px}
::-webkit-scrollbar-track{background:#F9EAF1}
::-webkit-scrollbar-thumb{background:#EAA4C5;border-radius:99px}
::-webkit-scrollbar-thumb:hover{background:var(--primary)}

/* ===== GLOBAL HEADER ===== */
header{display:block}
.global-header{position:sticky;top:0;z-index:5600;background:linear-gradient(135deg,#E85D9F 0%,#D91F73 100%)!important;border-bottom:1px solid rgba(255,255,255,0.25)!important;box-shadow:0 4px 20px rgba(217,31,115,0.3)!important}
.header-top-row{max-width:1440px;margin:0 auto;min-height:72px;padding:10px 22px;display:grid;grid-template-columns:220px minmax(320px,1fr) auto;gap:20px;align-items:center}
.header-left{display:flex;align-items:center;gap:12px;min-width:0}
.btn-hamburger{width:42px;height:42px;border-radius:12px;border:1px solid #EED4E0;background:#FFF;color:#4D3C45;display:grid;place-items:center;font-size:1.35rem;cursor:pointer;transition:.2s}
.btn-hamburger:hover{background:#FFF0F7;border-color:#E8A9C7;color:var(--primary);transform:translateY(-1px)}
.logo-container{display:flex;align-items:center;gap:8px;min-width:0}
#shopLogo{height:44px;max-height:44px;width:auto;object-fit:contain;filter:none!important;background:transparent}
.logo{display:none!important}
.header-search-row{grid-column:2;grid-row:1;padding:0!important;margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important;min-width:0}
.search-input-wrapper{position:relative;width:100%;display:flex;align-items:center;background:#FFF;border:1.5px solid #E9C8D8;border-radius:16px;box-shadow:0 5px 18px rgba(111,47,76,.06);transition:.2s}
.search-input-wrapper:focus-within{border-color:var(--primary);box-shadow:0 0 0 4px rgba(217,31,115,.08),0 8px 20px rgba(111,47,76,.08)}
.search-icon{position:absolute;left:15px;color:#6F6269;font-size:1rem;z-index:2}
.mobile-search-input{width:100%;height:48px;border:0!important;outline:none!important;background:transparent!important;color:#2C2529!important;padding:0 55px 0 44px!important;border-radius:16px!important;font-size:.93rem!important;font-weight:500!important;box-shadow:none!important}
.mobile-search-input::placeholder{color:#8B7E85!important;font-weight:400!important}
.search-camera-btn{position:absolute;right:7px;top:50%;transform:translateY(-50%);width:36px;height:36px;border-radius:11px;border:1px solid #E7B8CF;background:#FFF0F7;color:var(--primary);display:grid;place-items:center;cursor:pointer;transition:.2s}
.search-camera-btn:hover{background:var(--primary);color:#FFF;transform:translateY(-50%) scale(1.03)}
.header-actions{grid-column:3;display:flex;align-items:center;gap:9px}
.wishlist-btn,.cart-btn{position:relative;min-width:48px;height:44px;padding:0 13px;border-radius:13px;border:1px solid #EED4E0;background:#FFF;color:#4F4047;display:flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;box-shadow:none;transition:.2s;font-size:.92rem;font-weight:700}
.wishlist-btn:hover,.cart-btn:hover{background:#FFF0F7;color:var(--primary);border-color:#E8A9C7;transform:translateY(-1px)}
.wishlist-count,.cart-count{min-width:20px;height:20px;padding:0 5px;border-radius:99px;background:var(--primary);color:#FFF;display:inline-grid;place-items:center;font-size:.68rem;font-weight:800}

/* ===== DESKTOP SECONDARY NAV ===== */

/* ===== DRAWER ===== */
.drawer-overlay{position:fixed;inset:0;background:rgba(37,22,31,.48);backdrop-filter:blur(4px);z-index:6000;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s ease,visibility .25s ease}
.drawer-overlay.active{opacity:1;visibility:visible;pointer-events:auto}
.side-drawer{position:fixed;top:0;left:-360px;width:min(84vw,340px);height:100dvh;background:#FFFAFC;z-index:6100;box-shadow:18px 0 50px rgba(38,22,30,.18);display:flex;flex-direction:column;transition:left .28s cubic-bezier(.16,1,.3,1);overflow:auto}
.side-drawer.active{left:0}
.drawer-header{padding:18px 16px;background:linear-gradient(135deg,#FFF,#FCEAF3);border-bottom:1px solid #EED4E0;display:flex;align-items:center;justify-content:space-between;gap:10px}
.drawer-body{padding:12px 10px;display:grid;gap:4px;flex:1}
.drawer-item{display:flex;align-items:center;gap:11px;min-height:46px;border-radius:13px;padding:0 13px;color:#51464C;font-size:.91rem;font-weight:600;transition:.18s}
.drawer-item:hover,.drawer-item.active{background:#FBE4EF;color:var(--primary)}
.drawer-item i{width:20px;text-align:center;color:var(--primary)}
.drawer-footer{margin:4px 12px 16px;padding:14px;border-radius:15px;background:#FFF0F7;border:1px solid #F0C6DA;text-align:center;color:#9E2559;font-size:.8rem;font-weight:700;line-height:1.4}

/* ===== 3 COLUMN DESKTOP STORE ===== */
.desktop-shop-shell{max-width:1440px;margin:18px auto 0;padding:0 22px 40px;display:grid;grid-template-columns:220px minmax(0,1fr) 280px;gap:18px;align-items:start}
.desktop-main-column{min-width:0}
.desktop-category-rail,.desktop-utility-rail{position:sticky;top:138px}
.desktop-category-rail{background:#FFF;border:1px solid #EED9E3;border-radius:18px;padding:10px;box-shadow:var(--shadow-soft)}
.desktop-rail-title{display:flex;align-items:center;gap:8px;padding:9px 9px 11px;border-bottom:1px solid #F2E2E9;margin-bottom:5px;color:#40343A;font-size:.8rem;font-weight:800}
.desktop-rail-title i{color:var(--primary)}
.desktop-category-rail>button{width:100%;min-height:39px;border:0;background:transparent;border-radius:10px;padding:6px 8px;display:grid;grid-template-columns:25px 1fr 14px;gap:6px;align-items:center;text-align:left;color:#554950;font-size:.74rem;font-weight:600;cursor:pointer;transition:.18s}
.desktop-category-rail>button:hover{background:#FFF0F7;color:var(--primary)}
.desktop-category-rail>button i{font-size:.62rem;color:#B08A9C}
.desktop-shipping-card{margin-top:11px;padding:14px;border-radius:15px;background:linear-gradient(145deg,#FFF2F8,#F8D9E7);display:grid;gap:4px;color:#7B214A}
.desktop-shipping-card i{font-size:1.45rem;color:var(--primary)}
.desktop-shipping-card strong{font-size:.76rem}.desktop-shipping-card small{font-size:.66rem;color:#745F69;line-height:1.35}

/* ===== HERO ===== */
.hero{padding:0!important;margin:0 0 14px!important;text-align:left!important;background:transparent!important}
.hero-container-box{min-height:270px;border-radius:24px!important;padding:32px 34px!important;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(240px,.85fr);align-items:center;gap:22px;overflow:hidden;position:relative;background:linear-gradient(110deg,#FFF4F9 0%,#F9D8E8 45%,#F5C2DB 100%)!important;border:1px solid #EBC6D8!important;box-shadow:var(--shadow-card)!important;color:var(--text-main)!important}
.hero-container-box:before{content:'';position:absolute;inset:auto -80px -130px auto;width:330px;height:330px;border-radius:50%;background:radial-gradient(circle,#F08AB9 0%,rgba(240,138,185,.2) 55%,transparent 72%)}
.hero-commerce-copy{position:relative;z-index:2;min-width:0}
.hero-eyebrow{display:inline-flex;align-items:center;gap:7px;margin-bottom:10px;padding:6px 10px;border-radius:99px;background:#FFF;color:#9B2558;border:1px solid #EDBED5;font-size:.7rem;font-weight:800;letter-spacing:.08em}
.hero #shopTitle{display:block!important;margin:0 0 11px!important;text-align:left!important;color:#392E34!important;font-size:clamp(2rem,3.3vw,3.25rem)!important;line-height:1.02!important;font-weight:650!important;letter-spacing:-.035em!important;text-shadow:none!important}
.hero #shopTitle strong{color:var(--primary);font-weight:800}
.hero p{max-width:620px!important;margin:0 0 18px!important;color:#6D5C65!important;font-size:.93rem!important;line-height:1.55!important;font-weight:450!important;text-shadow:none!important}
.hero-actions-modern{display:flex;gap:9px;flex-wrap:wrap}
.hero-actions-modern button{min-height:42px;padding:0 16px;border-radius:12px;font-size:.79rem;font-weight:800;display:inline-flex;align-items:center;gap:7px;cursor:pointer;transition:.2s}
.hero-primary-action{border:0;background:var(--primary);color:#FFF;box-shadow:0 8px 18px rgba(217,31,115,.18)}
.hero-primary-action:hover{background:var(--primary-hover);transform:translateY(-1px)}
.hero-secondary-action{border:1px solid #DDAFC5;background:#FFF;color:#8C2753}
.hero-secondary-action:hover{background:#FFF7FB;transform:translateY(-1px)}
.hero-trust-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:18px;color:#6A5861;font-size:.69rem;font-weight:600}
.hero-trust-row span{display:flex;align-items:center;gap:5px}.hero-trust-row i{color:var(--primary)}
.hero-commerce-visual{position:relative;z-index:2;min-height:210px;display:grid;place-items:center}
.hero-logo-card{width:min(100%,255px);aspect-ratio:1.25;border-radius:26px;background:rgba(255,255,255,.78);border:1px solid rgba(255,255,255,.9);display:grid;place-items:center;padding:28px;box-shadow:0 20px 45px rgba(129,44,83,.15);transform:rotate(2deg)}
#heroLogoImg{max-height:115px!important;max-width:210px!important;width:auto!important;filter:none!important;background:transparent!important}
.hero-product-orbit{position:absolute;min-width:92px;padding:9px 10px;border-radius:14px;background:#FFF;border:1px solid #EBC9D9;box-shadow:0 9px 24px rgba(87,35,59,.1);display:flex;align-items:center;gap:7px;color:#6D4A5A;font-size:.68rem;font-weight:700}
.hero-product-orbit i{color:var(--primary);font-size:1rem}.hero-product-orbit small{font-size:.66rem}
.hero-orbit-1{left:0;top:20px}.hero-orbit-2{right:0;top:58px}.hero-orbit-3{left:18px;bottom:12px}

/* ===== QUICK ACCESS ===== */
.modern-quick-access{margin:0 0 14px;background:#FFF;border:1px solid #EED9E3;border-radius:18px;padding:12px 14px;box-shadow:var(--shadow-soft)}
.modern-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}
.modern-section-heading h2{font-size:.9rem;color:#43383E;font-weight:800}.modern-section-heading button{border:0;background:transparent;color:var(--primary);font-size:.7rem;font-weight:800;cursor:pointer}
.modern-quick-scroll{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.modern-quick-scroll button{min-height:73px;border:1px solid #F0DCE5;background:#FFF9FC;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:#594B52;cursor:pointer;transition:.18s;padding:7px}
.modern-quick-scroll button:hover{background:#FFF0F7;border-color:#E8B1CB;transform:translateY(-2px)}
.modern-quick-scroll button span{font-size:1.38rem}.modern-quick-scroll button small{font-size:.62rem;font-weight:700;text-align:center}

/* ===== TABS + BRAND CAROUSEL ===== */
.section-new-arrivals{max-width:none!important;margin:0 0 14px!important;padding:0!important}
.tabs-header-container{background:#FFF;border:1px solid #EED9E3;border-radius:16px;padding:7px!important;margin:0 0 10px!important;box-shadow:var(--shadow-soft)}
.tab-pill-btn{min-height:36px;border:1px solid transparent!important;background:transparent!important;color:#6B5B63!important;padding:0 12px!important;border-radius:11px!important;font-size:.7rem!important;font-weight:800!important;letter-spacing:0!important;text-transform:none!important;box-shadow:none!important;text-shadow:none!important;animation:none!important;transform:none!important}
.tab-pill-btn:hover{background:#FFF0F7!important;color:var(--primary)!important;border-color:#F0CADC!important}
.tab-pill-btn.active{background:var(--primary)!important;color:#FFF!important;border-color:var(--primary)!important;box-shadow:0 7px 16px rgba(217,31,115,.16)!important;text-shadow:none!important;animation:none!important;transform:none!important}
.results-badge{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:0 8px;border-radius:99px;background:#FFF0F7;border:1px solid #EFCBDD;color:#A12C5E;font-size:.67rem;font-weight:800}
.marcas-carousel-scroll{display:flex;gap:9px;overflow-x:auto;padding:2px 2px 8px;scrollbar-width:thin}
.marca-card-item{flex:0 0 132px;background:#FFF;border:1px solid #EED9E3;border-radius:16px;padding:8px;cursor:pointer;transition:.2s;box-shadow:0 5px 16px rgba(67,30,48,.04)}
.marca-card-item:hover{border-color:#E3A4C1;transform:translateY(-2px);box-shadow:0 10px 24px rgba(91,35,62,.09)}
.marca-img-wrapper{height:72px;border-radius:11px;overflow:hidden;background:#FFF7FA;display:grid;place-items:center}.marca-img-wrapper img{width:100%;height:100%;object-fit:cover}
.marca-title{display:block;margin-top:7px;text-align:center;color:#4A3E44;font-size:.68rem;font-weight:800}
.new-arrivals-carousel,.best-sellers-carousel{display:flex;gap:10px;overflow-x:auto;padding:4px 2px 10px}

/* ===== FILTERS ===== */
.controls-container{max-width:none!important;margin:0 0 12px!important;padding:0!important}
.filter-group{position:relative;background:#FFF!important;border:1px solid #EED9E3!important;border-radius:17px!important;padding:12px!important;box-shadow:var(--shadow-soft)!important;backdrop-filter:none!important}
.filter-header-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:9px}
.filter-title-group label{display:flex!important;align-items:center;gap:7px;color:#54474E!important;font-size:.7rem!important;font-weight:800!important;letter-spacing:.03em!important;text-transform:uppercase!important}.filter-title-group label i{color:var(--primary)}
.compact-catalog-status{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.status-title-badge{display:inline-flex;align-items:center;min-height:27px;padding:0 9px;border-radius:99px;background:#FFF0F7!important;border:1px solid #EEC8DB!important;color:#A22A5E!important;font-size:.65rem!important;font-weight:800!important;text-transform:none!important;letter-spacing:0!important}
.compact-toolbar-actions{display:flex;align-items:center;gap:6px}.sort-select-compact{height:32px;background:#FFF!important;border:1px solid #E4C7D5!important;color:#55484F!important;border-radius:9px!important;padding:0 9px!important;font-size:.67rem!important;font-weight:650!important;outline:none}.sort-select-compact:focus{border-color:var(--primary)!important}
.view-toggle-group-sm{display:flex;gap:3px;padding:3px;background:#FFF5FA!important;border:1px solid #ECD1DE!important;border-radius:9px!important}.view-btn-sm{width:27px;height:27px;border:0!important;border-radius:7px!important;background:transparent!important;color:#8A7480!important;display:grid;place-items:center;cursor:pointer}.view-btn-sm.active,.view-btn-sm:hover{background:var(--primary)!important;color:#FFF!important}
.categories-carousel-wrapper{position:relative;display:flex;align-items:center}.categories{display:flex;gap:7px;overflow-x:auto;padding:2px 32px 5px;width:100%;scrollbar-width:none}.categories::-webkit-scrollbar{display:none}
.carousel-nav-btn{position:absolute;z-index:5;width:28px;height:28px;border-radius:99px;border:1px solid #E5BECE;background:#FFF;color:var(--primary);display:grid;place-items:center;cursor:pointer;box-shadow:0 5px 13px rgba(79,30,52,.08)}.carousel-nav-btn.prev{left:0}.carousel-nav-btn.next{right:0}
.category-chip{flex:0 0 auto;min-height:33px;padding:0 11px;border-radius:99px;border:1px solid #E8CBD8;background:#FFF;color:#62545B;font-size:.68rem;font-weight:700;white-space:nowrap;display:inline-flex;align-items:center;gap:6px;cursor:pointer;transition:.18s;text-transform:none}.category-chip:hover{background:#FFF0F7;border-color:#E4A8C3;color:var(--primary)}.category-chip.active{background:var(--primary-gradient);color:#FFF;border-color:var(--primary);box-shadow:0 6px 14px rgba(217,31,115,.15)}
.category-dropdown-menu{position:fixed!important;min-width:230px;max-width:330px;max-height:370px;overflow:auto;background:#FFF!important;border:1px solid #E2A7C1!important;border-radius:14px!important;box-shadow:0 18px 45px rgba(49,24,35,.18)!important;z-index:999999!important;padding:6px!important}.category-dropdown-menu span{display:block;padding:9px 11px;border-radius:9px;color:#55474E!important;font-size:.75rem!important;cursor:pointer}.category-dropdown-menu span:hover{background:#FFF0F7!important;color:var(--primary)!important}
.chips-scroll-container{overflow-x:auto;border:1px solid #EFD5E1!important;border-radius:13px!important;padding:7px!important;background:#FFF!important}

/* ===== PRODUCT GRID ===== */
.main-layout-container{max-width:none!important;margin:0!important;padding:0!important;width:100%!important}
.products-section{margin:0!important;max-width:100%!important;position:relative}
.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px!important;transition:.2s}
.grid.grid-large{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid.grid-list{grid-template-columns:1fr}
.product-card{position:relative;background:#FFF!important;border:1px solid #EED9E3!important;border-radius:16px!important;padding:8px!important;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 5px 18px rgba(64,29,46,.04);transition:.22s;backdrop-filter:none!important;min-width:0}
.product-card:hover{transform:translateY(-3px)!important;border-color:#E0A0BE!important;box-shadow:0 12px 30px rgba(70,30,49,.09)!important;background:#FFF!important}
.product-card.is-out-of-stock{opacity:.78;filter:grayscale(.08);background:#FCF7FA!important;border-color:#E8D8E2!important}
.product-card.is-out-of-stock .img-container{background:#F7EEF3!important}
.product-card.is-out-of-stock .prod-title,.product-card.is-out-of-stock .prod-brand,.product-card.is-out-of-stock .prod-price{color:#7B6870!important}
.product-card.is-out-of-stock .add-to-cart-btn{background:#D8C2CE!important;color:#6A4A57!important;box-shadow:none!important;opacity:.95!important;cursor:not-allowed!important}
.product-card.is-out-of-stock .add-to-cart-btn:hover{background:#D8C2CE!important;transform:none!important}
.card-clickable{display:flex;flex-direction:column;flex:1;cursor:pointer;min-width:0}
.img-container{position:relative;width:100%;aspect-ratio:1;background:#FFF7FA!important;border-radius:12px!important;overflow:hidden;border:1px solid #F2E1E8!important}.img-container img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain!important;padding:5px;transition:.3s}.product-card:hover .img-container img{transform:scale(1.025)!important}
.card-heart-btn{position:absolute;top:7px;right:7px;z-index:15;width:31px;height:31px;border-radius:99px;border:1px solid #E7D6DE;background:rgba(255,255,255,.96);color:#A899A1;display:grid;place-items:center;cursor:pointer;box-shadow:0 4px 12px rgba(43,24,32,.08);transition:.18s}.card-heart-btn:hover,.card-heart-btn.active{background:#FFF0F7;color:var(--primary);border-color:#E8AAC6;transform:scale(1.05)}
.cart-card-badge{position:absolute;top:7px;left:7px;z-index:14;display:flex;align-items:center;gap:4px;padding:4px 7px;border-radius:99px;background:var(--primary);color:#FFF;font-size:.58rem;font-weight:800;box-shadow:0 5px 12px rgba(217,31,115,.2)}.d-none{display:none!important}
.quick-view-badge{position:absolute;bottom:7px;right:7px;width:30px;height:30px;border-radius:99px;background:rgba(255,255,255,.94);border:1px solid #E7D3DC;color:var(--primary);display:grid;place-items:center;opacity:0;transition:.18s}.product-card:hover .quick-view-badge{opacity:1}
.card-body{padding:9px 2px 1px!important;display:flex;flex-direction:column;gap:4px;flex:1}
.prod-brand{font-size:.58rem!important;font-weight:850!important;color:var(--primary)!important;text-transform:uppercase;letter-spacing:.08em!important}
.prod-title{font-size:.78rem!important;font-weight:600!important;line-height:1.28!important;height:2.05rem!important;color:#3D3338!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0!important}
.prod-rating-box{display:flex;align-items:center;gap:4px;margin:1px 0!important;font-size:.63rem!important}.stars-gold{color:#E2A116!important;font-size:.61rem!important;display:inline-flex;gap:1px}.rating-num{color:#51454B!important;font-weight:800}.reviews-count{color:#9A8D94!important;font-size:.58rem!important}
.prod-meta{display:flex;align-items:center;justify-content:space-between;gap:5px;color:#786C72;font-size:.6rem}.stock-badge{display:inline-flex;align-items:center;gap:4px;width:fit-content;max-width:100%;padding:3px 6px;border-radius:99px;font-size:.55rem;font-weight:800;text-transform:none!important;letter-spacing:0!important}.stock-in{background:#ECF8F0;color:#2C7A45;border:1px solid #CFEBD7}.stock-out{background:#FFF0F2;color:#B94759;border:1px solid #F2CDD4}.stock-badge:before{content:'';width:5px;height:5px;border-radius:99px;background:currentColor}
.prod-price{margin-top:auto!important;padding-top:3px!important;font-size:.92rem!important;font-weight:900!important;color:#B8195C!important;text-shadow:none!important}
.in-cart-indicator{font-size:.56rem!important;color:#9C285A!important;background:#FFF0F7!important;border:1px solid #EDC6D9!important;border-radius:8px!important;padding:3px 6px!important;margin-bottom:0!important}
.add-to-cart-btn{min-height:34px;margin-top:6px!important;border-radius:10px!important;border:0!important;background:var(--primary)!important;color:#FFF!important;padding:0 7px!important;font-size:.62rem!important;font-weight:850!important;letter-spacing:0!important;text-transform:none!important;display:flex;align-items:center;justify-content:center;gap:5px;cursor:pointer;transition:.18s}.add-to-cart-btn:hover:not(:disabled){background:var(--primary-hover)!important;transform:translateY(-1px)!important;box-shadow:0 7px 16px rgba(217,31,115,.16)!important}.add-to-cart-btn.added{background:#26A668!important}
.grid.grid-list .product-card{padding:10px!important}.grid.grid-list .card-clickable{display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px;align-items:center}.grid.grid-list .img-container{width:110px;aspect-ratio:1}.grid.grid-list .prod-title{height:auto!important}.grid.grid-list .add-to-cart-btn{max-width:180px}
.load-more-container{display:flex;justify-content:center;margin:20px 0 10px}.load-more-btn{min-height:40px;border-radius:99px;border:1px solid #E5B2CA;background:#FFF;color:var(--primary);padding:0 20px;font-size:.72rem;font-weight:800;cursor:pointer}.load-more-btn:hover{background:var(--primary);color:#FFF}
.spinner{width:38px;height:38px;border-radius:50%;border:3px solid #F2D7E3;border-top-color:var(--primary);animation:spin .8s linear infinite;margin:40px auto}@keyframes spin{to{transform:rotate(360deg)}}

/* ===== DESKTOP RIGHT RAIL ===== */
.desktop-utility-rail{display:grid;gap:12px}
.desktop-cart-card,.desktop-service-card,.desktop-benefits-card{background:#FFF;border:1px solid #EED9E3;border-radius:18px;box-shadow:var(--shadow-soft);overflow:hidden}
.desktop-cart-card-head{min-height:48px;padding:0 13px;border-bottom:1px solid #F1DFE7;display:flex;align-items:center;justify-content:space-between;gap:8px;color:#4A3D44;font-size:.78rem;font-weight:800}.desktop-cart-card-head>div{display:flex;align-items:center;gap:6px}.desktop-cart-card-head i{color:var(--primary)}#desktopCartCount{min-width:20px;height:20px;border-radius:99px;background:var(--primary);color:#FFF;display:grid;place-items:center;font-size:.62rem}.desktop-cart-card-head button{border:0;background:transparent;color:var(--primary);font-size:.67rem;font-weight:800;cursor:pointer}
.desktop-cart-card-body{padding:18px 14px;text-align:center}.desktop-cart-illustration{width:62px;height:62px;border-radius:18px;background:#FFF0F7;color:var(--primary);display:grid;place-items:center;margin:0 auto 10px;font-size:1.6rem}.desktop-cart-card-body strong{display:block;font-size:.82rem;color:#44383E}.desktop-cart-card-body p{margin:6px 0 12px;color:#786B72;font-size:.67rem;line-height:1.45}.desktop-cart-main-action{width:100%;min-height:38px;border:0;border-radius:11px;background:var(--primary);color:#FFF;font-size:.7rem;font-weight:800;cursor:pointer}.desktop-cart-main-action:hover{background:var(--primary-hover)}
.desktop-service-card{padding:13px;display:grid;grid-template-columns:34px 1fr auto;gap:9px;align-items:center}.desktop-service-card>i{width:34px;height:34px;border-radius:11px;background:#EAF9F0;color:#1DA866;display:grid;place-items:center;font-size:1rem}.desktop-service-card strong{display:block;font-size:.73rem;color:#443840}.desktop-service-card small{display:block;margin-top:2px;color:#7D7077;font-size:.6rem}.desktop-service-card a{min-height:30px;padding:0 9px;border-radius:9px;background:#F0FFF5;color:#15935A;border:1px solid #CBEFD8;display:flex;align-items:center;font-size:.62rem;font-weight:800}
.desktop-benefits-card{padding:8px 12px}.desktop-benefits-card>div{display:grid;grid-template-columns:30px 1fr;gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid #F3E5EB}.desktop-benefits-card>div:last-child{border-bottom:0}.desktop-benefits-card i{width:30px;height:30px;border-radius:10px;background:#FFF0F7;color:var(--primary);display:grid;place-items:center}.desktop-benefits-card strong{display:block;font-size:.68rem;color:#4B3F45}.desktop-benefits-card small{display:block;margin-top:1px;color:#80737A;font-size:.58rem;line-height:1.3}

/* ===== MODALS / OVERLAY ===== */
.overlay,.cart-overlay{position:fixed;inset:0;background:rgba(34,21,29,.55);backdrop-filter:blur(5px);z-index:5200;display:none}.overlay.active,.cart-overlay.active{display:block}
.product-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%) scale(.96);width:min(92vw,880px);max-height:90vh;overflow:auto;background:#FFF;border:1px solid #E5C2D2;z-index:5700;display:none;flex-direction:column;padding:22px;border-radius:22px;box-shadow:0 28px 70px rgba(42,24,32,.28);color:var(--text-main)}.product-modal.open{display:flex;transform:translate(-50%,-50%) scale(1)}
.close-modal{position:absolute;top:13px;right:13px;width:36px;height:36px;border-radius:99px;border:1px solid #E5C7D5;background:#FFF;color:#473A41;font-size:1.2rem;font-weight:900;display:grid;place-items:center;cursor:pointer;z-index:5}.close-modal:hover{background:#FFF0F7;color:var(--primary)}
.product-modal-content{display:grid;grid-template-columns:minmax(260px,.95fr) minmax(300px,1.05fr);gap:22px}.product-modal-media{display:flex;flex-direction:column;gap:8px}.product-modal-img-box{position:relative;aspect-ratio:1;background:#FFF7FA;border:1px solid #F0D9E4;border-radius:16px;overflow:hidden;display:grid;place-items:center}.product-modal-img-box .modal-photo-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;padding:20px;text-align:center;color:#9D174D;background:linear-gradient(135deg,#FFF7FB 0%,#FCE7F3 100%);z-index:1}.product-modal-img-box img{position:relative;z-index:2;width:100%;height:100%;object-fit:contain;padding:8px}.gallery-thumbnails-container{display:flex;gap:6px;overflow:auto;padding-bottom:3px}.gallery-thumbnail-item{width:54px;height:54px;flex:0 0 54px;border-radius:9px;overflow:hidden;border:2px solid #EEE0E7;background:#FFF}.gallery-thumbnail-item.active{border-color:var(--primary)}.gallery-thumbnail-item img{width:100%;height:100%;object-fit:cover}
.product-modal-details{display:flex;flex-direction:column;gap:8px;justify-content:center}.modal-brand{font-size:.7rem;font-weight:850;color:var(--primary);text-transform:uppercase;letter-spacing:.1em}.modal-title{font-size:1.45rem;font-weight:750;line-height:1.25;color:#352B31}.modal-meta{display:flex;gap:16px;flex-wrap:wrap;padding-bottom:10px;border-bottom:1px solid #F0DCE5;color:#756870;font-size:.75rem}.modal-description{padding:11px 12px;border-radius:12px;background:#FFF8FB;border:1px solid #F0DCE5;color:#65575F;font-size:.8rem;line-height:1.5;white-space:pre-line}.modal-stock{font-size:.78rem;font-weight:700}.modal-price{font-size:1.75rem;font-weight:900;color:#B7195C;text-shadow:none}.modal-cart-status{padding:9px 10px;border-radius:10px;background:#FFF0F7;border:1px solid #EBC6D7;color:#7A3152;font-size:.75rem;display:flex;align-items:center;gap:6px}.modal-add-btn{min-height:44px;border:0;border-radius:12px;background:var(--primary);color:#FFF;font-weight:850;display:flex;align-items:center;justify-content:center;gap:7px;cursor:pointer}.modal-add-btn:hover{background:var(--primary-hover)}

/* ===== CART / WISHLIST PANELS ===== */
.cart-panel{position:fixed;top:0;right:-510px;width:min(100%,490px);height:100dvh;background:#FFF;z-index:7200;box-shadow:-18px 0 55px rgba(40,22,31,.24);display:flex;flex-direction:column;transition:right .3s cubic-bezier(.16,1,.3,1);color:#2E282B}.cart-panel.open{right:0}
.cart-header{padding:15px 16px;border-bottom:1px solid #F0DDE6;background:#FFF5FA;display:flex;align-items:center;justify-content:space-between;gap:10px}.cart-header h2{font-size:1rem;font-weight:850;color:#3F343A;display:flex;align-items:center;gap:6px;text-transform:none!important;letter-spacing:0!important}.close-cart{width:34px;height:34px;border-radius:99px;border:1px solid #E3CAD6;background:#FFF;color:#4A3F44;font-size:1.25rem;display:grid;place-items:center;cursor:pointer}.close-cart:hover{background:#FFF0F7;color:var(--primary)}
.cart-content-scrollable{flex:1;overflow:auto;padding:14px;background:#FFF9FC;display:flex;flex-direction:column;gap:12px}.cart-items{display:flex;flex-direction:column;gap:9px}.empty-cart-msg{text-align:center;color:#81737B;padding:38px 12px;font-size:.83rem}
.cart-item{display:flex;gap:10px;align-items:center;padding:9px;background:#FFF;border:1px solid #EED9E3;border-radius:14px;box-shadow:0 5px 14px rgba(68,31,49,.04)}.cart-item img{width:68px;height:68px;border-radius:11px;object-fit:contain;background:#FFF7FA;border:1px solid #F0E1E7}.cart-item-info{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}.cart-item-title{font-size:.78rem;font-weight:700;color:#40353A;line-height:1.3}.cart-item-price{font-size:.78rem;font-weight:850;color:#B7195C}.cart-item-controls{display:flex;align-items:center;gap:5px;margin-top:4px}.cart-item-controls button{width:27px;height:27px;border-radius:8px;border:1px solid #E4CCD7;background:#FFF;color:#55484E;display:grid;place-items:center;cursor:pointer}.cart-item-controls button:hover{background:var(--primary);color:#FFF}.cart-item-qty{min-width:20px;text-align:center;font-size:.75rem;font-weight:800}
.cart-item-qty-input{width:38px;height:27px;text-align:center;font-size:.8rem;font-weight:800;border:1px solid #E4CCD7;border-radius:8px;background:#FFF;color:#40353A;padding:0 2px;outline:none;transition:border-color .18s ease,box-shadow .18s ease;-moz-appearance:textfield}
.cart-item-qty-input:focus{border-color:var(--v9-pink,#db2777);box-shadow:0 0 0 2px rgba(219,39,119,.18)}
.cart-item-qty-input::-webkit-outer-spin-button,.cart-item-qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.cart-product-link,.wishlist-product-link{cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.cart-product-link:hover,.wishlist-product-link:hover{border-color:#E2A5C2!important;box-shadow:0 8px 20px rgba(92,35,62,.1)!important;transform:translateY(-1px)}
.cart-product-link:focus-visible,.wishlist-product-link:focus-visible{outline:3px solid rgba(217,31,115,.22);outline-offset:2px}
.cart-checkout-section{display:flex;flex-direction:column;gap:11px;padding-top:12px;border-top:1px dashed #E9C7D7}.cart-summary{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid #F0DCE5;font-size:1rem;font-weight:850}.cart-summary #cartTotal{color:#B7195C}.checkout-form{display:flex;flex-direction:column;gap:9px}.form-group{display:flex;flex-direction:column;gap:4px}.form-group label{font-size:.67rem;font-weight:800;color:#685B62;text-transform:uppercase;letter-spacing:.04em}.form-group input,.form-group select{width:100%;min-height:40px;border-radius:10px;border:1px solid #DFC5D2;background:#FFF;color:#2F292C;padding:0 10px;font-size:.8rem;outline:none}.form-group input:focus,.form-group select:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(217,31,115,.07)}.alert-validation-box{padding:9px 10px;border-radius:10px;background:#FFF0F2;border:1px solid #F0C4CD;color:#A83C4E;font-size:.73rem;font-weight:700}.form-group input.invalid-input{border-color:#DF5367!important;background:#FFF7F8!important}
.cart-footer-actions{position:sticky;bottom:0;padding:12px 14px;background:#FFF;border-top:1px solid #EED6E1;display:flex;flex-direction:column;gap:7px;box-shadow:0 -8px 24px rgba(53,27,40,.06)}.whatsapp-buttons-title{text-align:center;color:#A72A5F;font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.whatsapp-btn-option{width:100%;min-height:46px;border:0;border-radius:12px;color:#FFF!important;padding:7px 11px;display:flex;align-items:center;justify-content:space-between;cursor:pointer}.whatsapp-btn-option .btn-left{display:flex;align-items:center;gap:8px}.whatsapp-btn-option .btn-title{font-size:.78rem;font-weight:850}.whatsapp-btn-option .btn-num{font-size:.67rem;opacity:.9}.btn-central{background:linear-gradient(135deg,#25D366,#128C7E)}.btn-nacional{background:linear-gradient(135deg,#0B705F,#075E54)}

/* ===== BRAND DEDICATED PAGE ===== */
#brandDedicatedPage{background:transparent}.brand-hero-box{background:#FFF!important;border:1px solid #EBC9D9!important;box-shadow:var(--shadow-card)!important}.brand-subtabs-container{background:#FFF!important;border:1px solid #EED9E3!important;box-shadow:var(--shadow-soft)!important}.brand-hero-back-btn{min-height:38px;padding:0 14px;border-radius:11px;border:1px solid #E5B4CA;background:#FFF;color:var(--primary);font-weight:800;cursor:pointer}

/* ===== MOBILE BOTTOM NAV ===== */
nav.bottom-nav-bar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:4000;height:64px;padding:6px 4px calc(7px + env(safe-area-inset-bottom));background:rgba(255,255,255,.98);border-top:1px solid #EBCEDC;box-shadow:0 -7px 24px rgba(79,30,52,.08);grid-template-columns:repeat(5,1fr)}
nav.bottom-nav-bar .nav-item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#85777E;font-size:.57rem;font-weight:650;border-radius:10px;transition:.18s}nav.bottom-nav-bar .nav-item i{font-size:1.02rem}nav.bottom-nav-bar .nav-item.active{color:var(--primary);background:#FFF3F8}.nav-badge{position:absolute;top:2px;right:calc(50% - 16px);min-width:16px;height:16px;border-radius:99px;background:var(--primary);color:#FFF;display:grid;place-items:center;font-size:.52rem;font-weight:850;padding:0 4px}

/* ===== UTILITY ===== */
.text-muted{color:#887A81!important}.fw-bold{font-weight:700!important}.small{font-size:.78rem!important}

/* ===== RESPONSIVE ===== */
@media(max-width:1180px){
  .header-top-row{grid-template-columns:190px minmax(280px,1fr) auto;padding-inline:16px;gap:12px}
  
  .desktop-shop-shell{grid-template-columns:190px minmax(0,1fr) 235px;padding-inline:16px;gap:13px}
  .grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .modern-quick-scroll{grid-template-columns:repeat(4,minmax(0,1fr))}
  .hero-container-box{padding:28px!important}
}
@media(max-width:920px){
  body{padding-bottom:72px}
  .global-header{background:linear-gradient(135deg,#E85D9F,#D91F73);border-bottom:0}
  .header-top-row{min-height:auto;padding:8px 10px 0;display:flex;align-items:center;gap:9px}
  .header-left{flex:1}.btn-hamburger{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.35);color:#FFF;width:39px;height:39px}.logo-container{flex:1}#shopLogo{height:37px;max-height:37px}.header-actions{gap:7px}.wishlist-btn,.cart-btn{min-width:43px;height:39px;padding:0 10px;border:0;background:#FFF;color:var(--primary)}
  .header-search-row{grid-column:auto;grid-row:auto;display:block!important;padding:8px 10px 10px!important;margin:0!important}.search-input-wrapper{border:0;border-radius:15px}.mobile-search-input{height:46px!important}
  .desktop-shop-shell{display:block;margin-top:10px;padding:0 10px 24px}.desktop-category-rail,.desktop-utility-rail{display:none}.hero-container-box{grid-template-columns:1fr!important;min-height:225px;padding:23px 20px!important;border-radius:20px!important}.hero-commerce-visual{display:none}.hero #shopTitle{font-size:clamp(1.9rem,7vw,2.6rem)!important}.hero p{font-size:.84rem!important}.hero-trust-row{font-size:.62rem;gap:7px 11px}
  .modern-quick-scroll{display:flex;overflow-x:auto;gap:6px;scrollbar-width:none}.modern-quick-scroll::-webkit-scrollbar{display:none}.modern-quick-scroll button{flex:0 0 76px;min-height:70px}
  .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px!important}.grid.grid-large{grid-template-columns:repeat(2,minmax(0,1fr))}
  nav.bottom-nav-bar{display:grid}
  .product-modal{width:94vw;padding:16px}.product-modal-content{grid-template-columns:1fr;gap:14px}.product-modal-media{min-width:0}.product-modal-img-box{max-height:360px}.modal-title{font-size:1.15rem}
  .section-new-arrivals{margin-top:10px!important}.tabs-header-container{overflow-x:auto;flex-wrap:nowrap!important;scrollbar-width:none}.tab-pill-btn{flex:0 0 auto}
  .filter-header-row{align-items:flex-start}.compact-catalog-status{width:100%;justify-content:space-between}.sort-select-compact{max-width:150px}
}
@media(max-width:560px){
  .header-top-row{padding-inline:8px}.header-search-row{padding-inline:8px!important}.wishlist-btn{display:inline-flex}.cart-btn{min-width:48px}.desktop-shop-shell{padding-inline:8px}.hero-container-box{padding:20px 17px!important}.hero #shopTitle{font-size:1.82rem!important}.hero p{font-size:.8rem!important}.hero-actions-modern{gap:6px}.hero-actions-modern button{min-height:39px;padding:0 12px;font-size:.7rem}.hero-trust-row{display:grid;grid-template-columns:1fr 1fr;gap:5px 9px}.modern-quick-access{padding:10px}.modern-section-heading h2{font-size:.82rem}.grid{gap:8px!important}.product-card{padding:6px!important;border-radius:14px!important}.card-body{padding-top:7px!important}.prod-title{font-size:.72rem!important;height:1.9rem!important}.prod-price{font-size:.86rem!important}.add-to-cart-btn{font-size:.58rem!important;min-height:32px}.card-heart-btn{width:28px;height:28px}.filter-group{padding:9px!important}.category-chip{font-size:.62rem;padding-inline:9px}.cart-panel{max-width:100%}
}

.global-header .logo{color:var(--primary)!important}
.global-header .logo span{color:var(--primary)!important;opacity:0.85!important}
.global-header .wishlist-btn, .global-header .cart-btn, .global-header .logo-container{background:#FFF!important;color:var(--primary)!important;border:none!important;box-shadow:0 2px 8px rgba(0,0,0,0.12)!important}
.global-header .btn-hamburger{color:#FFF!important;background:rgba(255,255,255,0.2)!important;border-color:rgba(255,255,255,0.35)!important}

.global-header .logo-container {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    border-radius: 13px !important;
    padding: 3px 12px !important;
    transition: all 0.2s ease !important;
    text-decoration: none !important;
}
.global-header .logo-container:hover {
    background: #FFF0F7 !important;
    transform: translateY(-1px) !important;
}


        /* ── HERO BANNER & MASCOT ANIMATION ── */
        .hero {
            margin-bottom: 1.2rem !important;
        }

        .hero-container-box {
            display: grid !important;
            grid-template-columns: 1.15fr 0.85fr !important;
            align-items: center !important;
            background: linear-gradient(135deg, #FFF0F7 0%, #FCE4EF 45%, #F8D5E5 100%) !important;
            border: 1.5px solid #F3C4DB !important;
            border-radius: 24px !important;
            padding: 1.8rem 2.2rem !important;
            min-height: 320px !important;
            position: relative !important;
            overflow: hidden !important;
            box-shadow: 0 10px 30px rgba(217,31,115,0.07) !important;
        }

        .hero-commerce-copy {
            z-index: 2 !important;
            display: flex !important;
            flex-direction: column !important;
            align-items: flex-start !important;
        }

        .hero-eyebrow {
            display: inline-flex !important;
            align-items: center !important;
            gap: 0.4rem !important;
            background: #FFFFFF !important;
            color: var(--primary) !important;
            font-size: 0.72rem !important;
            font-weight: 800 !important;
            padding: 0.3rem 0.8rem !important;
            border-radius: 50px !important;
            border: 1px solid #F3C4DB !important;
            margin-bottom: 0.8rem !important;
            text-transform: uppercase !important;
            letter-spacing: 0.05em !important;
        }

        .hero #shopTitle {
            font-size: clamp(1.6rem, 2.5vw, 2.2rem) !important;
            color: #28232A !important;
            font-weight: 800 !important;
            line-height: 1.2 !important;
            margin-bottom: 0.6rem !important;
        }

        .hero #shopTitle strong {
            color: var(--primary) !important;
            font-weight: 900 !important;
        }

        .hero-commerce-copy p {
            font-size: 0.9rem !important;
            color: #594A52 !important;
            line-height: 1.45 !important;
            margin-bottom: 1.2rem !important;
            max-width: 480px !important;
        }

        .hero-actions-modern {
            display: flex !important;
            align-items: center !important;
            gap: 0.8rem !important;
            margin-bottom: 1.2rem !important;
            flex-wrap: wrap !important;
        }

        .hero-primary-action {
            background: var(--primary) !important;
            color: #FFFFFF !important;
            border: none !important;
            padding: 0.65rem 1.4rem !important;
            border-radius: 50px !important;
            font-weight: 800 !important;
            font-size: 0.88rem !important;
            cursor: pointer !important;
            display: inline-flex !important;
            align-items: center !important;
            gap: 0.4rem !important;
            transition: all 0.2s ease !important;
            box-shadow: 0 4px 15px rgba(217,31,115,0.25) !important;
        }

        .hero-primary-action:hover {
            background: var(--primary-hover) !important;
            transform: translateY(-2px) !important;
            box-shadow: 0 6px 20px rgba(217,31,115,0.35) !important;
        }

        .hero-secondary-action {
            background: #FFFFFF !important;
            color: var(--primary) !important;
            border: 1.5px solid #F3C4DB !important;
            padding: 0.6rem 1.2rem !important;
            border-radius: 50px !important;
            font-weight: 700 !important;
            font-size: 0.85rem !important;
            cursor: pointer !important;
            display: inline-flex !important;
            align-items: center !important;
            gap: 0.4rem !important;
            transition: all 0.2s ease !important;
        }

        .hero-secondary-action:hover {
            background: #FFF0F7 !important;
            border-color: var(--primary) !important;
        }

        .hero-trust-row {
            display: flex !important;
            align-items: center !important;
            gap: 1.2rem !important;
            font-size: 0.75rem !important;
            color: #7A6570 !important;
            font-weight: 600 !important;
            flex-wrap: wrap !important;
        }

        .hero-trust-row span {
            display: inline-flex !important;
            align-items: center !important;
            gap: 0.3rem !important;
        }

        .hero-trust-row i {
            color: var(--primary) !important;
        }

        /* ── MASCOT VISUAL CONTAINER ── */
        .hero-commerce-visual {
            position: relative !important;
            height: 100% !important;
            min-height: 280px !important;
            display: flex !important;
            align-items: flex-end !important;
            justify-content: flex-end !important;
            z-index: 1 !important;
            pointer-events: none !important;
        }

        .mascot-wrapper {
            position: relative !important;
            height: 330px !important;
            width: 100% !important;
            max-width: 320px !important;
            display: flex !important;
            align-items: flex-end !important;
            justify-content: center !important;
            transform-origin: bottom center !important;
        }

        .mascot-media {
            height: 100% !important;
            width: auto !important;
            object-fit: contain !important;
            object-position: bottom right !important;
            filter: drop-shadow(0 10px 22px rgba(217,31,115,0.18)) !important;
        }

        /* Entrance + Wave + Kiss Animation Keyframes */
        .mascot-wrapper.animate-entrance {
            animation: mascotEntranceWave 3.8s cubic-bezier(0.25, 1, 0.5, 1) forwards !important;
        }

        .mascot-wrapper.animated-done {
            transform: translateX(0) scale(1) rotate(0deg) !important;
            opacity: 1 !important;
        }

        @keyframes mascotEntranceWave {
            0% {
                transform: translateX(60px) scale(0.9) rotate(2deg);
                opacity: 0;
            }
            30% {
                transform: translateX(0) scale(1) rotate(0deg);
                opacity: 1;
            }
            50% {
                transform: translateX(0) scale(1.04) rotate(-3deg);
            }
            65% {
                transform: translateX(0) scale(1.02) rotate(2deg);
            }
            85% {
                transform: translateX(0) scale(1) rotate(-1deg);
            }
            100% {
                transform: translateX(0) scale(1) rotate(0deg);
                opacity: 1;
            }
        }

        /* Floating Kiss Hearts Effects */
        .mascot-fx-container {
            position: absolute !important;
            inset: 0 !important;
            pointer-events: none !important;
            z-index: 5 !important;
        }

        .floating-heart {
            position: absolute !important;
            font-size: 1.4rem !important;
            animation: floatHeartUp 1.8s ease-out forwards !important;
            opacity: 0 !important;
            filter: drop-shadow(0 2px 6px rgba(217,31,115,0.3)) !important;
        }

        @keyframes floatHeartUp {
            0% {
                transform: translateY(0) scale(0.5) rotate(0deg);
                opacity: 0;
            }
            25% {
                opacity: 1;
                transform: translateY(-20px) scale(1.2) rotate(-10deg);
            }
            100% {
                transform: translateY(-90px) scale(1) rotate(15deg);
                opacity: 0;
            }
        }

        @media (max-width: 920px) {
            .hero-container-box {
                grid-template-columns: 1fr !important;
                padding: 1.5rem 1.2rem !important;
                min-height: auto !important;
            }
            .hero-commerce-visual {
                justify-content: center !important;
                min-height: 220px !important;
                margin-top: 0.5rem !important;
            }
            .mascot-wrapper {
                height: 240px !important;
                max-width: 240px !important;
            }
        }


/* ── EXACT HERO BANNER DESIGN & CHARACTER STRUCTURE ── */
.hero-banner {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  align-items: center;
  gap: 2rem;
  min-height: 420px;
  padding: 2.5rem;
  border-radius: 24px;
  background: linear-gradient(135deg, #f8d7e8 0%, #f6b8d3 35%, #e83d8a 100%);
  overflow: hidden;
  position: relative;
  box-shadow: 0 12px 35px rgba(232, 61, 138, 0.2);
  margin-bottom: 1.5rem;
}

.hero-content {
  z-index: 2;
}

.hero-tag {
  display: inline-block;
  padding: 0.45rem 0.9rem;
  border-radius: 999px;
  background: #ffffff;
  color: #d91f73;
  font-weight: 800;
  font-size: 0.8rem;
  margin-bottom: 1rem;
  letter-spacing: 0.04em;
}

.hero-content h1 {
  font-size: clamp(1.8rem, 3.8vw, 3rem);
  line-height: 1.15;
  color: #ffffff;
  font-weight: 900;
  margin-bottom: 1rem;
}

.hero-content p {
  font-size: 0.98rem;
  line-height: 1.6;
  color: #fff7fb;
  max-width: 560px;
  margin-bottom: 1.5rem;
}

.hero-actions {
  display: flex;
  gap: 0.8rem;
  flex-wrap: wrap;
}

.btn-primary,
.btn-secondary {
  text-decoration: none;
  padding: 0.85rem 1.4rem;
  border-radius: 14px;
  font-weight: 800;
  font-size: 0.9rem;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  transition: all 0.2s ease;
  cursor: pointer;
  border: none;
}

.btn-primary {
  background: #ffffff;
  color: #d91f73;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.btn-primary:hover {
  background: #fff0f7;
  transform: translateY(-2px);
}

.btn-secondary {
  background: rgba(255, 255, 255, 0.18);
  color: #ffffff;
  border: 1px solid rgba(255, 255, 255, 0.4);
}

.btn-secondary:hover {
  background: rgba(255, 255, 255, 0.28);
  transform: translateY(-2px);
}

.hero-character {
  position: relative;
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  min-height: 320px;
  z-index: 1;
}

.hero-character-video,
.hero-character-static {
  max-height: 380px;
  width: auto;
  object-fit: contain;
  filter: drop-shadow(0 10px 20px rgba(0, 0, 0, 0.15));
}

.hero-character-static {
  display: none;
}

.hero-character-static.show {
  display: block;
}

.hero-character-video.hide {
  display: none;
}

@media (max-width: 900px) {
  .hero-banner {
    grid-template-columns: 1fr;
    text-align: left;
    padding: 1.5rem;
    min-height: auto;
  }

  .hero-character {
    justify-content: center;
    min-height: auto;
    margin-top: 1rem;
  }

  .hero-character-video,
  .hero-character-static {
    max-height: 280px;
  }
}


/* ── PNG CHARACTER ANIMATION SEQUENCE (Kiss Gesture + Wave Fallback) ── */
.hero-character-static.animate-kiss {
    display: block !important;
    animation: characterKissSequence 3.8s cubic-bezier(0.25, 1, 0.5, 1) forwards !important;
}

@keyframes characterKissSequence {
    0% {
        transform: translateX(50px) scale(0.9) rotate(3deg);
        opacity: 0;
    }
    25% {
        transform: translateX(0) scale(1) rotate(0deg);
        opacity: 1;
    }
    45% {
        transform: translateX(0) scale(1.05) rotate(-3deg);
    }
    65% {
        transform: translateX(-4px) scale(1.03) rotate(2deg);
    }
    85% {
        transform: translateX(0) scale(1) rotate(-1deg);
    }
    100% {
        transform: translateX(0) scale(1) rotate(0deg);
        opacity: 1;
    }
}

.hero-kiss-fx {
    position: absolute !important;
    inset: 0 !important;
    pointer-events: none !important;
    z-index: 5 !important;
}

.floating-kiss-icon {
    position: absolute !important;
    font-size: 1.5rem !important;
    animation: floatKissUp 1.8s ease-out forwards !important;
    opacity: 0 !important;
    filter: drop-shadow(0 2px 8px rgba(217, 31, 115, 0.4)) !important;
}

@keyframes floatKissUp {
    0% {
        transform: translateY(0) scale(0.4) rotate(0deg);
        opacity: 0;
    }
    30% {
        opacity: 1;
        transform: translateY(-25px) scale(1.2) rotate(-10deg);
    }
    100% {
        transform: translateY(-100px) scale(1) rotate(15deg);
        opacity: 0;
    }
}


/* ── HERO SLIDER & BRAND BANNERS CAROUSEL ── */
.hero-slider-wrapper {
  position: relative !important;
  width: 100% !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  margin-bottom: 1.5rem !important;
  box-shadow: 0 14px 40px rgba(217, 31, 115, 0.14) !important;
}

.hero-slider {
  display: flex !important;
  transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1) !important;
  width: 100% !important;
}

.hero-slide {
  min-width: 100% !important;
  box-sizing: border-box !important;
}

.hero-slide .hero-banner {
  margin-bottom: 0 !important;
  border-radius: 24px !important;
}

/* Brand Slide Banner (Imágenes de Marcas) */
.brand-slide-banner {
  width: 100% !important;
  min-height: 380px !important;
  background-size: cover !important;
  background-position: center !important;
  border-radius: 24px !important;
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  padding: 2.5rem !important;
  box-sizing: border-box !important;
}

.brand-slide-banner::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(90deg, rgba(20,10,25,0.78) 0%, rgba(20,10,25,0.48) 50%, rgba(20,10,25,0.12) 100%) !important;
  border-radius: 24px !important;
}

.brand-slide-overlay {
  position: relative !important;
  z-index: 2 !important;
  max-width: 540px !important;
  color: #FFFFFF !important;
}

.brand-slide-tag {
  display: inline-block !important;
  padding: 0.4rem 0.9rem !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.22) !important;
  border: 1px solid rgba(255, 255, 255, 0.4) !important;
  color: #FFFFFF !important;
  font-weight: 800 !important;
  font-size: 0.78rem !important;
  margin-bottom: 0.8rem !important;
  backdrop-filter: blur(4px) !important;
}

.brand-slide-overlay h2 {
  font-size: clamp(1.8rem, 3.5vw, 2.8rem) !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
  margin-bottom: 0.6rem !important;
  color: #FFFFFF !important;
}

.brand-slide-overlay h2 strong {
  color: #FBCFE8 !important;
}

.brand-slide-overlay p {
  font-size: 0.95rem !important;
  color: #FDF0F5 !important;
  line-height: 1.5 !important;
  margin-bottom: 1.3rem !important;
}

.btn-brand-action {
  background: #FFFFFF !important;
  color: #D91F73 !important;
  border: none !important;
  padding: 0.85rem 1.5rem !important;
  border-radius: 50px !important;
  font-weight: 800 !important;
  font-size: 0.88rem !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  transition: all 0.2s ease !important;
  box-shadow: 0 4px 18px rgba(0,0,0,0.2) !important;
}

.btn-brand-action:hover {
  background: #FFF0F7 !important;
  transform: translateY(-2px) scale(1.02) !important;
}

/* Floating Prev/Next Arrow Buttons */
.slider-arrow {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.78) !important;
  backdrop-filter: blur(8px) !important;
  border: 1px solid rgba(255, 255, 255, 0.9) !important;
  color: #D91F73 !important;
  font-size: 1.2rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  z-index: 10 !important;
  transition: all 0.2s ease !important;
  box-shadow: 0 4px 15px rgba(0,0,0,0.15) !important;
}

.slider-arrow:hover {
  background: #FFFFFF !important;
  transform: translateY(-50%) scale(1.1) !important;
  color: #C2185B !important;
  box-shadow: 0 6px 20px rgba(0,0,0,0.25) !important;
}

.slider-arrow-prev { left: 14px !important; }
.slider-arrow-next { right: 14px !important; }

/* Dots Pagination Bar */
.slider-dots-container {
  position: absolute !important;
  bottom: 14px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  z-index: 10 !important;
  background: rgba(0, 0, 0, 0.35) !important;
  padding: 6px 14px !important;
  border-radius: 50px !important;
  backdrop-filter: blur(6px) !important;
}

.slider-dot {
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.5) !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
}

.slider-dot.active {
  width: 22px !important;
  border-radius: 10px !important;
  background: #FFFFFF !important;
}

@media (max-width: 900px) {
  .brand-slide-banner {
    min-height: 280px !important;
    padding: 1.5rem !important;
  }
  .slider-arrow {
    width: 36px !important;
    height: 36px !important;
    font-size: 1rem !important;
  }
}



/* ===== PATCH FINAL 2026-08: HEADER GLOBAL PERMANENTE ===== */
@media (min-width: 921px) {
  .global-header .header-top-row {
    display:grid !important;
    grid-template-columns:minmax(180px,220px) minmax(360px,1fr) auto !important;
    align-items:center !important;
    gap:18px !important;
    max-width:1440px !important;
    margin:0 auto !important;
    width:100% !important;
    padding:10px 22px !important;
  }
  .global-header .header-left { grid-column:1 !important; min-width:0 !important; }
  .global-header .header-search-row {
    grid-column:2 !important;
    grid-row:1 !important;
    display:block !important;
    width:100% !important;
    max-width:none !important;
    padding:0 !important;
    margin:0 !important;
  }
  .global-header .header-actions { grid-column:3 !important; grid-row:1 !important; }
}
@media (max-width: 920px) {
  .global-header .header-top-row {
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:center !important;
    gap:8px !important;
    padding:8px 10px 10px !important;
  }
  .global-header .header-left { order:1 !important; flex:1 1 auto !important; }
  .global-header .header-actions { order:2 !important; flex:0 0 auto !important; }
  .global-header .header-search-row {
    order:3 !important;
    flex:0 0 100% !important;
    width:100% !important;
    padding:0 !important;
    margin:0 !important;
  }
}



/* ===== HOTFIX MOBILE 2026-08-08: AISLAMIENTO DEL BANNER =====
   Corrige cualquier tarjeta/producto que pueda invadir visualmente el hero en móvil.
   No modifica inventario, carrito, pedidos, endpoints ni sincronización. */
@media (max-width: 920px) {
  .hero-slider-wrapper {
    position: relative !important;
    z-index: 20 !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    isolation: isolate !important;
    contain: layout paint !important;
    border-radius: 20px !important;
    margin: 0 0 14px !important;
  }

  .hero-slider {
    display: flex !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .hero-slide {
    position: relative !important;
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .hero-slide > * {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  /* Portada principal: personaje integrado a la derecha, sin aumentar
     la altura hasta invadir los módulos que vienen debajo. */
  .hero-slide:first-child .hero-banner {
    position: relative !important;
    display: block !important;
    height: 310px !important;
    min-height: 310px !important;
    max-height: 310px !important;
    padding: 20px 16px !important;
    overflow: hidden !important;
    border-radius: 20px !important;
  }

  .hero-slide:first-child .hero-content {
    position: relative !important;
    z-index: 4 !important;
    width: 64% !important;
    max-width: 64% !important;
    padding-right: 4px !important;
  }

  .hero-slide:first-child .hero-tag {
    margin-bottom: 8px !important;
    padding: 5px 9px !important;
    font-size: .62rem !important;
  }

  .hero-slide:first-child .hero-content h1 {
    margin: 0 0 8px !important;
    font-size: clamp(1.38rem, 6.4vw, 1.8rem) !important;
    line-height: 1.08 !important;
  }

  .hero-slide:first-child .hero-content p {
    margin: 0 0 11px !important;
    font-size: .72rem !important;
    line-height: 1.38 !important;
  }

  .hero-slide:first-child .hero-actions {
    gap: 6px !important;
  }

  .hero-slide:first-child .btn-primary,
  .hero-slide:first-child .btn-secondary {
    min-height: 36px !important;
    padding: 0 10px !important;
    border-radius: 11px !important;
    font-size: .67rem !important;
  }

  .hero-slide:first-child .hero-character {
    position: absolute !important;
    right: -6px !important;
    bottom: 0 !important;
    top: auto !important;
    width: 43% !important;
    max-width: 43% !important;
    height: 94% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: flex-end !important;
    overflow: hidden !important;
    z-index: 2 !important;
    pointer-events: none !important;
  }

  .hero-slide:first-child .hero-character-video,
  .hero-slide:first-child .hero-character-static {
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: right bottom !important;
  }

  .hero-slide:first-child .hero-kiss-fx {
    overflow: hidden !important;
  }

  /* Los banners de marca conservan exactamente la misma caja del carrusel. */
  .brand-slide-banner {
    height: 310px !important;
    min-height: 310px !important;
    max-height: 310px !important;
    overflow: hidden !important;
    border-radius: 20px !important;
    padding: 20px 18px !important;
    background-position: center !important;
  }

  .brand-slide-overlay {
    max-width: 78% !important;
  }

  .brand-slide-overlay h2 {
    font-size: clamp(1.45rem, 7vw, 2rem) !important;
  }

  .brand-slide-overlay p {
    font-size: .78rem !important;
  }

  .slider-arrow {
    width: 32px !important;
    height: 32px !important;
  }

  .slider-arrow-prev { left: 7px !important; }
  .slider-arrow-next { right: 7px !important; }

  .slider-dots-container {
    bottom: 8px !important;
    padding: 5px 10px !important;
  }

  /* Blindaje de los módulos inferiores: ningún badge o imagen de producto
     puede escapar de su tarjeta y pintarse por encima del banner. */
  .modern-quick-access,
  .section-new-arrivals,
  .controls-container,
  .main-layout-container,
  .products-section,
  #productGrid {
    position: relative !important;
    z-index: 1 !important;
    clear: both !important;
  }

  .product-card {
    position: relative !important;
    z-index: 0 !important;
    isolation: isolate !important;
    overflow: hidden !important;
  }
}

@media (max-width: 380px) {
  .hero-slide:first-child .hero-content {
    width: 67% !important;
    max-width: 67% !important;
  }
  .hero-slide:first-child .hero-character {
    right: -12px !important;
    width: 42% !important;
    max-width: 42% !important;
  }
  .hero-slide:first-child .hero-content p {
    font-size: .68rem !important;
  }
}

/* =========================================================
   LETY SHOP V4 — NAVEGACIÓN / MARCAS / HERO RESPONSIVE
   Cambios visuales únicamente. No modifica endpoints ni payloads.
   ========================================================= */

/* A. El catálogo de escritorio gana el espacio de la antigua columna lateral. */
.desktop-category-rail{display:none!important}
.desktop-shop-shell{
  grid-template-columns:minmax(0,1fr) 280px!important;
  max-width:1440px;
}
@media(max-width:1180px){
  .desktop-shop-shell{grid-template-columns:minmax(0,1fr) 235px!important}
}
@media(max-width:920px){
  .desktop-shop-shell{display:block!important}
}

/* B. Drawer profesional: categorías a la izquierda y subcategorías a la derecha. */
.side-drawer.drawer-mega{
  width:min(84vw,790px)!important;
  left:-820px!important;
  overflow:hidden!important;
}
.side-drawer.drawer-mega.active{left:0!important}
.drawer-mega .drawer-header{flex:0 0 auto}
.drawer-layout{
  position:relative;
  flex:1;
  min-height:0;
  display:grid;
  grid-template-columns:310px minmax(0,1fr);
  background:#fff;
}
.drawer-primary-pane{
  min-width:0;
  display:flex;
  flex-direction:column;
  background:#FFFAFC;
  border-right:1px solid #F0D9E4;
  overflow:hidden;
}
.drawer-primary-pane .drawer-body{
  overflow-y:auto;
  padding:12px 10px 8px;
}
.drawer-mega .drawer-item{
  width:100%;
  border:0;
  cursor:pointer;
  text-decoration:none;
  justify-content:flex-start;
  background:transparent;
  text-align:left;
}
.drawer-categories-toggle .drawer-chevron{margin-left:auto;width:auto!important;transition:transform .2s ease}
.drawer-categories-toggle[aria-expanded="true"] .drawer-chevron{transform:rotate(90deg)}
.drawer-categories-list{
  display:none;
  padding:4px 0 8px 9px;
  margin:0 0 5px 11px;
  border-left:1px solid #EAC8D8;
}
.drawer-categories-list.open{display:grid;gap:2px}
.drawer-category-btn{
  width:100%;
  min-height:39px;
  border:0;
  border-radius:10px;
  background:transparent;
  display:grid;
  grid-template-columns:28px minmax(0,1fr) 18px;
  align-items:center;
  gap:6px;
  padding:6px 8px;
  color:#554950;
  font-size:.76rem;
  font-weight:650;
  text-align:left;
  cursor:pointer;
  transition:.18s ease;
}
.drawer-category-btn:hover,.drawer-category-btn.active{background:#FFF0F7;color:var(--primary)}
.drawer-category-btn .cat-emoji{font-size:1rem;text-align:center}
.drawer-category-btn i{color:#B08A9C;font-size:.7rem}
.drawer-primary-pane .drawer-footer{margin-top:auto}
.drawer-subpanel{
  min-width:0;
  background:#fff;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
.drawer-subpanel-header{
  min-height:72px;
  padding:14px 18px;
  display:flex;
  align-items:center;
  gap:10px;
  border-bottom:1px solid #F0DCE5;
  background:linear-gradient(135deg,#FFF,#FFF5FA);
}
.drawer-subpanel-header small{display:block;color:#A15A79;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.drawer-subpanel-header strong{display:block;margin-top:2px;color:#3D3137;font-size:1rem;line-height:1.2}
.drawer-mobile-back{display:none;width:36px;height:36px;border-radius:99px;border:1px solid #E6C6D5;background:#fff;color:var(--primary);place-items:center;cursor:pointer;flex:0 0 auto}
.drawer-subcategory-list{padding:14px 16px 22px;overflow:auto;display:grid;align-content:start;gap:6px}
.drawer-subcategory-placeholder{padding:28px 18px;text-align:center;color:#84747C;font-size:.82rem;line-height:1.5}
.drawer-subcategory-placeholder i{display:block;font-size:2rem;color:#E3A6C2;margin-bottom:8px}
.drawer-subcategory-btn{
  width:100%;
  min-height:44px;
  border:1px solid #F0D8E4;
  border-radius:12px;
  background:#fff;
  color:#4F4248;
  padding:9px 12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  text-align:left;
  font-size:.79rem;
  font-weight:650;
  cursor:pointer;
  transition:.18s ease;
}
.drawer-subcategory-btn:hover{background:#FFF0F7;border-color:#E6B0C9;color:var(--primary);transform:translateX(2px)}
.drawer-subcategory-btn.all-option{background:#FFF4F9;color:#A1255A;font-weight:800;border-color:#EBC4D7}
.drawer-subcategory-btn i{font-size:.68rem;color:#BE7B9A}

/* Móvil: el segundo nivel entra horizontalmente desde la derecha; nunca crece hacia abajo. */
@media(max-width:920px){
  .side-drawer.drawer-mega{width:min(92vw,410px)!important;left:-430px!important;overflow:hidden!important}
  .drawer-layout{display:block;height:calc(100dvh - 69px)}
  .drawer-primary-pane{height:100%;border-right:0}
  .drawer-subpanel{
    position:absolute;
    inset:0;
    left:100%;
    z-index:5;
    transition:left .26s cubic-bezier(.16,1,.3,1);
    box-shadow:-14px 0 32px rgba(57,28,42,.12);
  }
  .drawer-subpanel.mobile-open{left:0}
  .drawer-mobile-back{display:grid}
  .drawer-subpanel-header{min-height:64px;padding:10px 12px}
  .drawer-subcategory-list{padding:12px 11px 20px}
  .drawer-subcategory-btn{min-height:46px;font-size:.78rem}
}

/* C. Página de marca aislada, como una vista profesional independiente. */
body.brand-page-active .desktop-shop-shell{display:none!important}
body.brand-page-active #brandDedicatedPage{display:block!important}
#brandDedicatedPage{padding-top:14px!important}
.brand-page-toolbar{
  min-height:48px;
  margin:0 0 12px;
  padding:8px 10px;
  border:1px solid #ECD4DF;
  border-radius:14px;
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
  box-shadow:0 5px 16px rgba(67,30,48,.04);
}
.brand-page-back{
  min-height:34px;
  padding:0 11px;
  border:1px solid #E5B4CA;
  border-radius:10px;
  background:#FFF7FB;
  color:var(--primary);
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:.72rem;
  font-weight:800;
  cursor:pointer;
}
.brand-page-back:hover{background:var(--primary);color:#fff}
.brand-breadcrumb{color:#766A70;font-size:.72rem;font-weight:600}
.brand-breadcrumb strong{color:#A1265B}
.brand-search-scope{padding:5px 9px;border-radius:99px;background:#FFF0F7;color:#A2295C;font-size:.65rem;font-weight:800}
.brand-hero-box{position:relative!important}
.brand-hero-copy{
  position:absolute;
  inset:auto auto 22px 24px;
  z-index:3;
  width:min(520px,calc(100% - 48px));
  padding:16px 18px;
  border-radius:16px;
  background:rgba(31,18,25,.62);
  color:#fff;
  backdrop-filter:blur(8px);
}
/* El arte del banner queda limpio; la marca ya se identifica en la barra superior. */
.brand-hero-copy{display:none!important}
.brand-hero-copy span{font-size:.65rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase;color:#FBCFE8}
.brand-hero-copy h1{margin:4px 0 5px;font-size:clamp(1.35rem,3vw,2.25rem);line-height:1.1}
.brand-hero-copy p{margin:0;font-size:.78rem;line-height:1.45;color:#FFF4F9}
@media(max-width:700px){
  #brandDedicatedPage{padding:9px 8px 80px!important}
  .brand-page-toolbar{align-items:flex-start}
  .brand-search-scope{width:100%}
  .brand-hero-copy{left:10px;right:10px;bottom:10px;width:auto;padding:12px}
  .brand-hero-copy h1{font-size:1.25rem}
  .brand-hero-copy p{font-size:.7rem}
  .brand-hero-box>div{min-height:230px!important;max-height:300px!important}
  #brandHeroBannerImg{min-height:230px!important;max-height:300px!important}
}

/* D. Hero móvil: swipe + puntos. Las flechas son solo de escritorio. */
.hero-slider-wrapper{
  overflow:hidden!important;
  isolation:isolate!important;
  contain:layout paint!important;
  position:relative!important;
}
.hero-slider{overflow:visible!important;will-change:transform}
.hero-slide{overflow:hidden!important;position:relative!important;isolation:isolate!important}
.hero-slide>*{max-width:100%!important}
.product-card,.img-container{isolation:isolate!important}
@media(max-width:900px){
  .hero-slider-wrapper .slider-arrow,
  .hero-slider-wrapper .slider-arrow-prev,
  .hero-slider-wrapper .slider-arrow-next{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  .hero-slider-wrapper{touch-action:pan-y!important;width:100%!important}
  .hero-slider{display:flex!important;width:100%!important;touch-action:pan-y!important}
  .hero-slide{flex:0 0 100%!important;min-width:100%!important;width:100%!important}
  .hero-slider-wrapper .slider-dots-container{
    display:flex!important;
    bottom:8px!important;
    gap:6px!important;
    padding:5px 9px!important;
    background:rgba(35,20,29,.22)!important;
    border-radius:999px!important;
    backdrop-filter:blur(5px)!important;
  }
  .hero-slider-wrapper .slider-dot{width:6px!important;height:6px!important;min-width:6px!important;background:rgba(255,255,255,.65)!important}
  .hero-slider-wrapper .slider-dot.active{width:18px!important;height:6px!important;border-radius:99px!important;background:#fff!important}
}
@media(min-width:901px){
  .hero-slider-wrapper .slider-arrow{display:flex!important;visibility:visible!important;pointer-events:auto!important}
}



/* =========================================================
   V5 — BANNERS DE MARCA LIMPIOS EN MÓVIL
   En móvil la fotografía del banner ya contiene la información,
   por lo tanto ocultamos texto/botones superpuestos y dejamos la
   imagen completamente visible. Desktop conserva overlay y CTA.
   ========================================================= */
@media (max-width: 900px) {
  /* Solo banners de marcas; el primer banner principal no se modifica. */
  .hero-slide .brand-slide-banner {
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    aspect-ratio: 16 / 9 !important;
    padding: 0 !important;
    border-radius: 18px !important;
    overflow: hidden !important;

    /* Prioridad: mostrar la fotografía completa, sin recortar textos del arte. */
    background-image: var(--brand-banner) !important;
    background-size: contain !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-color: #FFF4F9 !important;
  }

  /* Elimina la capa oscura que estaba pensada para dar contraste al texto. */
  .hero-slide .brand-slide-banner::before {
    display: none !important;
    content: none !important;
    background: none !important;
  }

  /* La información ya está impresa en el arte del banner. */
  .hero-slide .brand-slide-overlay,
  .hero-slide .brand-slide-tag,
  .hero-slide .brand-slide-overlay h2,
  .hero-slide .brand-slide-overlay p,
  .hero-slide .btn-brand-action {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  /* Mantiene los indicadores discretos y fuera del centro visual del arte. */
  .hero-slider-wrapper {
    padding-bottom: 18px !important;
    background: transparent !important;
  }

  .hero-slider-wrapper .slider-dots-container {
    bottom: 2px !important;
    background: rgba(217,31,115,.10) !important;
    border: 1px solid rgba(217,31,115,.12) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    padding: 4px 8px !important;
  }

  .hero-slider-wrapper .slider-dot {
    background: rgba(217,31,115,.30) !important;
  }

  .hero-slider-wrapper .slider-dot.active {
    background: #D91F73 !important;
  }
}

/* En escritorio se conserva la información comercial y los botones. */
@media (min-width: 901px) {
  .hero-slide .brand-slide-overlay {
    display: block !important;
    visibility: visible !important;
  }
  .hero-slide .brand-slide-tag,
  .hero-slide .brand-slide-overlay h2,
  .hero-slide .brand-slide-overlay p,
  .hero-slide .btn-brand-action {
    visibility: visible !important;
  }
}



/* =========================================================
   LETY SHOP V6 — HOME DE DESCUBRIMIENTO + CATÁLOGO DEDICADO
   UI/UX únicamente. No cambia endpoints, carrito, PRW ni WhatsApp.
   ========================================================= */

/* La portada deja de ser un catálogo infinito: usa todo el ancho. */
body:not(.brand-page-active) .desktop-shop-shell{
  display:block!important;
  max-width:1440px!important;
  margin:14px auto 0!important;
  padding:0 18px 42px!important;
}
body:not(.brand-page-active) .desktop-main-column{width:100%!important;min-width:0!important}
body:not(.brand-page-active) .desktop-utility-rail{display:none!important}
body:not(.brand-page-active) .desktop-category-rail{display:none!important}

/* Secciones antiguas del Home quedan fuera de la experiencia V6. */
.modern-quick-access,
.category-covers-section,
#newArrivalsSection,
.controls-container,
#bestSellersSection,
#recommendationsSection{
  display:none!important;
}
#mobileSubcategoryChipsBar{display:none!important}

/* ---------- Home ---------- */
.v6-home-feed{display:block;margin-top:16px}
.v6-feed-section{
  margin:0 0 22px;
  padding:18px;
  border:1px solid #EED9E3;
  border-radius:22px;
  background:#fff;
  box-shadow:0 8px 26px rgba(96,35,65,.055);
}
.v6-feed-section.v6-recommended{
  background:linear-gradient(145deg,#FFF,#FFF3F8 72%,#FDE6F0);
  border-color:#E9BED2;
}
.v6-section-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  margin-bottom:14px;
}
.v6-section-kicker{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-bottom:4px;
  color:#B02863;
  font-size:.66rem;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.v6-section-head h2{margin:0;color:#332A2F;font-size:1.32rem;font-weight:850;letter-spacing:-.025em}
.v6-section-head p{margin:5px 0 0;color:#7A6D74;font-size:.74rem;line-height:1.45}
.v6-section-link{
  flex:0 0 auto;
  min-height:36px;
  padding:0 12px;
  border:1px solid #E7B7CD;
  border-radius:999px;
  background:#FFF7FB;
  color:var(--primary);
  font-size:.68rem;
  font-weight:800;
  cursor:pointer;
}
.v6-section-link:hover{background:var(--primary);color:#fff}
.v6-product-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:11px;
}
.v6-product-grid .product-card{height:100%}

/* ===== V6 HOME FEED HORIZONTAL SCROLL CAROUSELS ===== */
.v6-home-feed .v6-product-grid{
  display:flex!important;
  flex-wrap:nowrap!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  scroll-behavior:smooth!important;
  gap:12px!important;
  padding:4px 2px 10px!important;
  -webkit-overflow-scrolling:touch!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
.v6-home-feed .v6-product-grid::-webkit-scrollbar{
  display:none!important;
}
.v6-home-feed .v6-product-grid .product-card,
.v6-home-feed .v6-product-grid .v6-skeleton-card{
  flex:0 0 215px!important;
  min-width:215px!important;
  max-width:215px!important;
  scroll-snap-align:start!important;
  height:auto!important;
}
.v6-swipe-badge{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:3px 9px;
  border-radius:99px;
  background:#FFF0F7;
  color:var(--v9-pink,#db2777);
  font-size:.62rem;
  font-weight:800;
  border:1px solid #F7D5E5;
}
@media (max-width:920px){
  .v6-home-feed .v6-product-grid .product-card,
  .v6-home-feed .v6-product-grid .v6-skeleton-card{
    flex:0 0 172px!important;
    min-width:172px!important;
    max-width:172px!important;
  }
}

.v6-feed-empty{grid-column:1/-1;padding:28px 16px;text-align:center;color:#81737B;font-size:.8rem}
.v6-personal-note{
  display:inline-flex;
  align-items:center;
  gap:5px;
  margin-top:7px;
  color:#9A607A;
  font-size:.64rem;
  font-weight:650;
}
.v6-skeleton-card{height:280px;border-radius:16px;background:linear-gradient(90deg,#FFF4F8 25%,#FBE5EF 38%,#FFF4F8 63%);background-size:400% 100%;animation:v6Shimmer 1.2s ease-in-out infinite}
@keyframes v6Shimmer{0%{background-position:100% 0}100%{background-position:0 0}}


/* V10 — Las imágenes creadas por Lety Shop son portadas, no fotos de producto. */
.v6-category-card.v10-official-cover img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  padding:0!important;
  background:#FFF5FA!important;
}
.v10-category-cover-visual{
  overflow:hidden;
  border-radius:18px;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.28);
  box-shadow:0 14px 30px rgba(91,27,56,.13);
}
.v6-category-hero-visual .v10-category-hero-image{
  width:100%!important;
  height:220px!important;
  max-height:220px!important;
  object-fit:cover!important;
  object-position:center!important;
  padding:0!important;
  border-radius:17px!important;
  filter:none!important;
}
.v6-subcategory-thumb.v10-official-subcover img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  padding:0!important;
}

/* La portada añadida por Antigravity no debe reaparecer en Home. */
.category-covers-section{display:none!important}

@media(max-width:920px){
  .v6-category-card.v10-official-cover img{padding:0!important}
  .v6-category-hero-visual .v10-category-hero-image{
    height:155px!important;
    max-height:155px!important;
    border-radius:13px!important;
  }
}

/* ---------- Catálogo dedicado ---------- */
.v6-catalog-view{display:none;animation:v6ViewIn .24s ease both}
.v6-catalog-view.active{display:block}
.v6-home-feed.is-hidden,.hero-slider-wrapper.is-v6-hidden{display:none!important}
@keyframes v6ViewIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.v6-catalog-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:2px 0 14px;
  padding:10px 12px;
  border:1px solid #EED8E3;
  border-radius:16px;
  background:#fff;
  box-shadow:0 6px 18px rgba(77,30,52,.045);
}
.v6-catalog-back{
  min-height:36px;padding:0 12px;border:1px solid #E6BCD0;border-radius:11px;background:#FFF7FB;color:var(--primary);font-size:.72rem;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;gap:6px
}
.v6-catalog-back:hover{background:var(--primary);color:#fff}
.v6-catalog-path{min-width:0;color:#83727A;font-size:.7rem;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:right}
.v6-catalog-path strong{color:#A3275B}
.v6-catalog-intro{margin-bottom:14px}
.v6-catalog-intro .v6-section-kicker{margin-bottom:7px}
.v6-catalog-intro h1{margin:0;color:#30262C;font-size:clamp(1.55rem,3vw,2.35rem);font-weight:900;letter-spacing:-.04em}
.v6-catalog-intro p{max-width:690px;margin:7px 0 0;color:#766971;font-size:.82rem;line-height:1.55}
.v6-parent-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.v6-category-card{
  position:relative;
  min-height:210px;
  overflow:hidden;
  border:1px solid #ECD3DF;
  border-radius:20px;
  background:linear-gradient(145deg,#FFF7FB,#F9DDEB);
  cursor:pointer;
  box-shadow:0 7px 20px rgba(88,31,58,.06);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
  isolation:isolate;
}
.v6-category-card:hover{transform:translateY(-4px);border-color:#DEA2BE;box-shadow:0 14px 30px rgba(88,31,58,.11)}
.v6-category-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:12px 12px 54px;z-index:0;background:radial-gradient(circle at 50% 35%,#fff 0%,#FFF6FA 56%,#F8D9E8 100%)}
.v6-category-card .v6-cat-fallback{position:absolute;inset:0 0 48px;display:grid;place-items:center;font-size:4.3rem;z-index:0}
.v6-category-card::after{content:'';position:absolute;inset:auto 0 0;height:76px;background:linear-gradient(180deg,rgba(255,255,255,0),rgba(55,25,39,.82));z-index:1}
.v6-category-card-copy{position:absolute;left:12px;right:12px;bottom:11px;z-index:2;color:#fff}
.v6-category-card-copy strong{display:block;font-size:.82rem;line-height:1.15;font-weight:850;text-shadow:0 1px 8px rgba(0,0,0,.16)}
.v6-category-card-copy small{display:block;margin-top:3px;font-size:.61rem;opacity:.9;font-weight:650}

.v6-category-detail{display:none}
.v6-category-detail.active{display:block}
.v6-category-hero{
  position:relative;
  min-height:260px;
  margin-bottom:14px;
  overflow:hidden;
  border-radius:24px;
  border:1px solid #E7BED1;
  background:linear-gradient(115deg,#D91F73 0%,#EE77AE 52%,#F8D8E7 100%);
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(250px,.7fr);
  align-items:center;
  padding:28px 30px;
}
.v6-category-hero-copy{position:relative;z-index:2;color:#fff;max-width:620px}
.v6-category-hero-copy span{display:inline-flex;padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.32);font-size:.64rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase}
.v6-category-hero-copy h1{margin:7px 0 6px;font-size:clamp(1.6rem,3.4vw,2.8rem);line-height:1.05;font-weight:900;letter-spacing:-.04em}
.v6-category-hero-copy p{margin:0;color:#FFF5F9;font-size:.79rem;font-weight:600}
.v6-category-hero-visual{position:relative;z-index:2;min-height:205px;display:grid;place-items:center}
.v6-category-hero-visual img{width:100%;height:205px;object-fit:contain;filter:drop-shadow(0 14px 18px rgba(64,19,39,.18))}
.v6-category-hero-visual .v6-cat-fallback{font-size:6.5rem;filter:drop-shadow(0 12px 18px rgba(64,19,39,.18))}
.v6-subsection-label{display:flex;align-items:end;justify-content:space-between;gap:10px;margin:16px 0 9px}
.v6-subsection-label h2{margin:0;color:#392E34;font-size:1rem;font-weight:850}
.v6-subsection-label small{color:#86747D;font-size:.65rem}
.v6-subcategory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:18px}
.v6-subcategory-card{
  min-height:86px;
  border:1px solid #ECD7E1;
  border-radius:16px;
  background:#fff;
  padding:8px;
  display:grid;
  grid-template-columns:66px minmax(0,1fr) 18px;
  align-items:center;
  gap:9px;
  text-align:left;
  color:#4F4249;
  cursor:pointer;
  transition:.18s ease;
}
.v6-subcategory-card:hover,.v6-subcategory-card.active{background:#FFF2F8;border-color:#E3A9C4;color:var(--primary);transform:translateY(-1px)}
.v6-subcategory-thumb{width:66px;height:66px;border-radius:12px;overflow:hidden;background:#FFF5FA;display:grid;place-items:center;font-size:1.65rem;border:1px solid #F1DDE7}
.v6-subcategory-thumb img{width:100%;height:100%;object-fit:contain;padding:3px}
.v6-subcategory-card strong{font-size:.69rem;line-height:1.25;font-weight:800}
.v6-subcategory-card i{font-size:.67rem;color:#C482A0}
.v6-products-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:18px 0 10px;padding-top:14px;border-top:1px solid #F0DCE5}
.v6-products-toolbar h2{margin:0;font-size:1.04rem;color:#3D3238;font-weight:850}
.v6-products-toolbar .v6-products-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.v6-product-count{display:inline-flex;min-height:29px;align-items:center;padding:0 9px;border-radius:999px;background:#FFF0F7;border:1px solid #EBC6D8;color:#A3295D;font-size:.66rem;font-weight:800}
.v6-sort-select{height:34px;border:1px solid #E1C3D1;border-radius:10px;background:#fff;color:#5A4B53;padding:0 9px;font-size:.68rem;font-weight:700;outline:none}
.v6-search-summary{display:none;margin:0 0 14px;padding:16px;border:1px solid #EBCEDC;border-radius:18px;background:linear-gradient(135deg,#FFF,#FFF2F8)}
.v6-search-summary.active{display:block}
.v6-search-summary h1{margin:2px 0 4px;font-size:1.35rem;color:#3A3035;font-weight:850}
.v6-search-summary p{margin:0;color:#7B6C74;font-size:.76rem}
#catalogProductHostV6 .main-layout-container{display:block!important;width:100%!important;margin:0!important;padding:0!important}
#catalogProductHostV6 .products-section{display:block!important}
#catalogProductHostV6 #productGrid{display:grid!important}

/* ---------- Navegación inferior: Inicio más reconocible + Catálogo independiente ---------- */
@media(max-width:920px){
  body{padding-bottom:78px!important}
  nav.bottom-nav-bar{height:68px!important;padding:5px 8px calc(7px + env(safe-area-inset-bottom))!important;background:rgba(255,255,255,.985)!important;backdrop-filter:blur(12px)!important}
  nav.bottom-nav-bar .nav-item{overflow:visible!important;gap:1px!important;font-size:.59rem!important}
  nav.bottom-nav-bar .nav-item i{width:32px;height:32px;border-radius:11px;display:grid;place-items:center;font-size:1.02rem!important;transition:.2s ease}
  nav.bottom-nav-bar .nav-item.active{background:transparent!important;color:var(--primary)!important;font-weight:800!important}
  nav.bottom-nav-bar .nav-item.active i{background:#FFF0F7;color:var(--primary);transform:translateY(-2px)}
  #navBtnInicio.active i{background:var(--primary-gradient)!important;color:#fff!important;box-shadow:0 7px 17px rgba(217,31,115,.28);transform:translateY(-5px) scale(1.06)!important}
  #navBtnInicio.active span{transform:translateY(-2px)}
  #navBtnCategorias.active i{background:#FFF0F7!important;color:var(--primary)!important;box-shadow:0 5px 13px rgba(217,31,115,.12)}

  body:not(.brand-page-active) .desktop-shop-shell{margin-top:9px!important;padding:0 8px 24px!important}
  .v6-home-feed{margin-top:10px}
  .v6-feed-section{margin-bottom:12px;padding:11px 8px 12px;border-radius:18px}
  .v6-section-head{align-items:flex-start;margin-bottom:9px;padding:0 2px}
  .v6-section-head h2{font-size:1rem}
  .v6-section-head p{font-size:.65rem;margin-top:3px}

  /* Catalog view remains 2-column grid on mobile */
  #catalogExperienceViewV6 .v6-product-grid,
  #catalogCategoryDetailV6 .v6-product-grid,
  .v6-catalog-view .v6-product-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  /* Home Discovery Feed sections remain 100% horizontal scroll carousels on mobile */
  .v6-home-feed .v6-product-grid {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    scroll-behavior: smooth !important;
    gap: 10px !important;
    padding: 4px 2px 12px !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
  }
  .v6-home-feed .v6-product-grid::-webkit-scrollbar {
    display: none !important;
  }
  .v6-home-feed .v6-product-grid .product-card,
  .v6-home-feed .v6-product-grid .v6-skeleton-card {
    flex: 0 0 168px !important;
    min-width: 168px !important;
    max-width: 168px !important;
    width: 168px !important;
    scroll-snap-align: start !important;
    height: auto !important;
  }
  .v6-product-grid .product-card{padding:6px!important}
  .v6-skeleton-card{height:240px;border-radius:14px}
  .v6-personal-note{font-size:.58rem}

  .v6-catalog-toolbar{margin:0 0 10px;padding:8px;border-radius:14px}
  .v6-catalog-back{min-height:34px;padding:0 9px;font-size:.65rem}
  .v6-catalog-path{font-size:.61rem;max-width:58%}
  .v6-catalog-intro{padding:2px 3px 0}
  .v6-catalog-intro h1{font-size:1.42rem}
  .v6-catalog-intro p{font-size:.7rem;margin-top:5px}
  .v6-parent-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .v6-category-card{min-height:178px;border-radius:17px}
  .v6-category-card img{padding:8px 8px 50px}
  .v6-category-card-copy{left:9px;right:9px;bottom:9px}
  .v6-category-card-copy strong{font-size:.72rem}
  .v6-category-card-copy small{font-size:.56rem}
  .v6-category-hero{min-height:215px;grid-template-columns:minmax(0,1fr) 105px;padding:18px 13px;border-radius:19px}
  .v6-category-hero-copy h1{font-size:1.38rem}
  .v6-category-hero-copy p{font-size:.65rem}
  .v6-category-hero-copy span{font-size:.55rem}
  .v6-category-hero-visual{min-height:155px}
  .v6-category-hero-visual img{height:155px}
  .v6-category-hero-visual .v6-cat-fallback{font-size:4.3rem}
  .v6-subsection-label{margin:13px 2px 7px}
  .v6-subsection-label h2{font-size:.88rem}
  .v6-subcategory-grid{display:flex;overflow-x:auto;gap:7px;margin:0 -2px 14px;padding:2px 2px 7px;scrollbar-width:none;scroll-snap-type:x proximity}
  .v6-subcategory-grid::-webkit-scrollbar{display:none}
  .v6-subcategory-card{flex:0 0 142px;min-height:72px;grid-template-columns:54px minmax(0,1fr);gap:7px;padding:7px;scroll-snap-align:start}
  .v6-subcategory-card>i{display:none}
  .v6-subcategory-thumb{width:54px;height:54px;border-radius:10px}
  .v6-subcategory-card strong{font-size:.61rem}
  .v6-products-toolbar{margin:12px 0 8px;padding-top:11px}
  .v6-products-toolbar h2{font-size:.9rem}
  .v6-product-count{font-size:.59rem;min-height:27px}
  .v6-sort-select{height:31px;font-size:.61rem;max-width:142px}
  .v6-search-summary{padding:12px;border-radius:15px}
  .v6-search-summary h1{font-size:1.08rem}
  .v6-search-summary p{font-size:.67rem}
}

@media(max-width:380px){
  .v6-category-card{min-height:162px}
  .v6-category-hero{grid-template-columns:minmax(0,1fr) 90px;padding:15px 10px}
  .v6-category-hero-copy h1{font-size:1.18rem}
  .v6-category-hero-visual img{height:135px}
}



/* =========================================================
   LETY SHOP V7 — PÁGINA PROFESIONAL DE TODAS LAS MARCAS
   Se alimenta dinámicamente del inventario REAL.
   ========================================================= */
body.v7-brands-active .hero-slider-wrapper,
body.v7-brands-active #homeDiscoveryViewV6,
body.v7-brands-active #catalogExperienceViewV6{
  display:none!important;
}
.v7-brands-view{display:none;width:100%;min-width:0;padding:0 0 34px}
.v7-brands-view.active{display:block}
.v7-brands-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 14px;padding:10px 12px;background:#fff;border:1px solid #eed9e3;border-radius:16px;box-shadow:var(--shadow-soft)}
.v7-brands-back{min-height:36px;padding:0 12px;border-radius:11px;border:1px solid #e5b4ca;background:#fff;color:var(--primary);display:inline-flex;align-items:center;gap:7px;font-size:.7rem;font-weight:800;cursor:pointer;transition:.18s}
.v7-brands-back:hover{background:var(--primary);color:#fff}
.v7-brands-path{font-size:.68rem;color:#766a70;font-weight:650;text-align:right}.v7-brands-path strong{color:#a1265b}
.v7-brands-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(220px,.75fr);align-items:center;gap:22px;min-height:230px;padding:30px 32px;margin-bottom:14px;border-radius:24px;background:linear-gradient(118deg,#fff6fb 0%,#fbddeb 48%,#f3b8d4 100%);border:1px solid #ebc3d7;box-shadow:var(--shadow-card)}
.v7-brands-hero::after{content:'';position:absolute;width:300px;height:300px;right:-90px;bottom:-150px;border-radius:50%;background:radial-gradient(circle,rgba(217,31,115,.24),rgba(217,31,115,0) 68%)}
.v7-brands-copy{position:relative;z-index:2;max-width:690px}.v7-brands-kicker{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;margin-bottom:9px;border-radius:999px;background:#fff;border:1px solid #edbed5;color:#a2265a;font-size:.63rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.v7-brands-copy h1{margin:0;color:#392e34;font-size:clamp(1.65rem,3vw,2.65rem);line-height:1.05;letter-spacing:-.03em;font-weight:850}.v7-brands-copy h1 strong{color:var(--primary)}
.v7-brands-copy p{max-width:620px;margin:10px 0 0;color:#6c5c64;font-size:.82rem;line-height:1.55}
.v7-brands-hero-visual{position:relative;z-index:2;display:grid;grid-template-columns:repeat(2,94px);gap:9px;justify-content:end;align-content:center}
.v7-brand-mini{height:76px;border-radius:17px;background:rgba(255,255,255,.86);border:1px solid rgba(255,255,255,.92);box-shadow:0 10px 25px rgba(101,38,67,.1);display:grid;place-items:center;padding:10px;color:var(--primary);font-size:1.45rem;transform:rotate(-2deg)}
.v7-brand-mini:nth-child(2),.v7-brand-mini:nth-child(3){transform:rotate(2deg)}
.v7-brands-controls{display:grid;grid-template-columns:minmax(250px,1fr) auto;gap:10px;align-items:center;margin-bottom:13px;padding:11px 12px;background:#fff;border:1px solid #eed9e3;border-radius:16px;box-shadow:var(--shadow-soft)}
.v7-brand-search{position:relative;display:flex;align-items:center}.v7-brand-search i{position:absolute;left:13px;color:#9b2c60}.v7-brand-search input{width:100%;height:42px;border-radius:12px;border:1px solid #e6c4d4;background:#fff9fc;color:#342b30;padding:0 13px 0 38px;outline:none;font-size:.76rem;font-weight:600}.v7-brand-search input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(217,31,115,.08)}
.v7-brands-count{min-height:38px;padding:0 12px;border-radius:11px;background:#fff0f7;border:1px solid #ecc7d8;color:#9e2759;display:flex;align-items:center;justify-content:center;white-space:nowrap;font-size:.68rem;font-weight:850}
.v7-brand-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.v7-brand-card{position:relative;min-width:0;overflow:hidden;border:1px solid #ecd8e2;border-radius:19px;background:#fff;box-shadow:0 6px 20px rgba(66,30,48,.05);cursor:pointer;text-align:left;padding:0;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.v7-brand-card:hover{transform:translateY(-3px);border-color:#dda5bf;box-shadow:0 13px 31px rgba(79,30,53,.11)}
.v7-brand-visual{position:relative;height:145px;background:linear-gradient(145deg,#fff8fb,#f9e1ec);overflow:hidden;display:grid;place-items:center}.v7-brand-visual img{width:100%;height:100%;object-fit:contain;padding:14px;position:relative;z-index:2}.v7-brand-fallback{position:absolute;inset:0;display:grid;place-items:center;color:#c42a6c;font-size:2.15rem;font-weight:900;letter-spacing:-.08em;background:radial-gradient(circle at 30% 20%,#fff 0,#fce4ef 45%,#f7d0e2 100%);z-index:1}
.v7-brand-card-body{padding:11px 12px 12px;display:grid;grid-template-columns:minmax(0,1fr) 30px;gap:8px;align-items:center}.v7-brand-card-copy{min-width:0}.v7-brand-card-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#40353a;font-size:.78rem;font-weight:850}.v7-brand-card-copy small{display:block;margin-top:3px;color:#88767f;font-size:.61rem;font-weight:600}.v7-brand-arrow{width:30px;height:30px;border-radius:10px;background:#fff0f7;color:var(--primary);display:grid;place-items:center;font-size:.8rem;transition:.18s}.v7-brand-card:hover .v7-brand-arrow{background:var(--primary);color:#fff;transform:translateX(2px)}
.v7-brands-empty{display:none;padding:38px 15px;text-align:center;border:1px dashed #e6b8cd;border-radius:18px;background:#fff;color:#786a71;font-size:.78rem}.v7-brands-empty i{display:block;margin-bottom:7px;color:var(--primary);font-size:1.8rem}

@media(max-width:1180px){.v7-brand-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:920px){
  .v7-brands-view{padding:0 0 78px}
  .v7-brands-toolbar{margin:0 0 9px;padding:8px 9px;border-radius:13px}.v7-brands-path{font-size:.6rem}
  .v7-brands-hero{grid-template-columns:1fr;min-height:auto;padding:20px 16px;border-radius:19px;margin-bottom:9px}.v7-brands-copy h1{font-size:1.5rem}.v7-brands-copy p{font-size:.7rem}.v7-brands-hero-visual{display:none}
  .v7-brands-controls{grid-template-columns:1fr auto;padding:8px;margin-bottom:9px;border-radius:14px}.v7-brand-search input{height:39px;font-size:.69rem}.v7-brands-count{min-height:35px;font-size:.6rem;padding:0 9px}
  .v7-brand-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.v7-brand-card{border-radius:16px}.v7-brand-visual{height:116px}.v7-brand-visual img{padding:9px}.v7-brand-card-body{padding:9px 9px 10px;grid-template-columns:minmax(0,1fr) 27px}.v7-brand-card-copy strong{font-size:.69rem}.v7-brand-card-copy small{font-size:.55rem}.v7-brand-arrow{width:27px;height:27px;border-radius:9px}
}
@media(max-width:420px){.v7-brands-controls{grid-template-columns:1fr}.v7-brands-count{justify-self:start}.v7-brand-visual{height:105px}}

/* =========================================================
   LETY SHOP V8 — PERFIL DE CLIENTE PROFESIONAL
   Vista dedicada, foto opcional y sincronización preparada.
   ========================================================= */
body.v8-profile-active .hero-slider-wrapper,
body.v8-profile-active #homeDiscoveryViewV6,
body.v8-profile-active #catalogExperienceViewV6,
body.v8-profile-active #brandsExperienceViewV7,
body.v8-profile-active #brandDedicatedPage{
  display:none!important;
}
body.v8-profile-active .desktop-shop-shell{
  display:block!important;
  max-width:1180px!important;
  margin:14px auto 0!important;
  padding:0 18px 42px!important;
}
body.v8-profile-active .desktop-main-column{width:100%!important;min-width:0!important}
body.v8-profile-active .desktop-category-rail,
body.v8-profile-active .desktop-utility-rail{display:none!important}

.v8-profile-view{display:none;width:100%;min-width:0;padding:0 0 34px}
.v8-profile-view.active{display:block}
.v8-profile-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding:10px 12px;background:#fff;border:1px solid #eed9e3;border-radius:16px;box-shadow:var(--shadow-soft)}
.v8-profile-back{min-height:36px;padding:0 12px;border-radius:11px;border:1px solid #e5b4ca;background:#fff;color:var(--primary);display:inline-flex;align-items:center;gap:7px;font-size:.7rem;font-weight:800;cursor:pointer;transition:.18s}
.v8-profile-back:hover{background:var(--primary);color:#fff}
.v8-profile-path{font-size:.68rem;color:#766a70;font-weight:650;text-align:right}.v8-profile-path strong{color:#a1265b}

.v8-profile-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(180px,.7fr);align-items:center;gap:20px;min-height:200px;padding:28px 30px;margin-bottom:14px;border-radius:24px;background:linear-gradient(118deg,#fff7fb 0%,#fce5f0 48%,#f4bfd8 100%);border:1px solid #ebc3d7;box-shadow:var(--shadow-card)}
.v8-profile-hero::after{content:'';position:absolute;width:300px;height:300px;right:-90px;bottom:-170px;border-radius:50%;background:radial-gradient(circle,rgba(217,31,115,.25),rgba(217,31,115,0) 68%)}
.v8-profile-hero-copy{position:relative;z-index:2;max-width:680px}.v8-profile-kicker{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;margin-bottom:8px;border-radius:999px;background:#fff;border:1px solid #edbed5;color:#a2265a;font-size:.62rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.v8-profile-hero-copy h1{margin:0;color:#392e34;font-size:clamp(1.55rem,3vw,2.45rem);line-height:1.06;letter-spacing:-.03em;font-weight:850}.v8-profile-hero-copy h1 strong{color:var(--primary)}
.v8-profile-hero-copy p{max-width:620px;margin:9px 0 0;color:#6c5c64;font-size:.8rem;line-height:1.55}
.v8-profile-hero-icon{position:relative;z-index:2;justify-self:end;width:118px;height:118px;border-radius:30px;background:rgba(255,255,255,.84);border:1px solid rgba(255,255,255,.92);box-shadow:0 14px 30px rgba(101,38,67,.12);display:grid;place-items:center;color:var(--primary);font-size:3rem;transform:rotate(3deg)}

.v8-profile-layout{display:grid;grid-template-columns:310px minmax(0,1fr);gap:14px;align-items:start}
.v8-profile-card{background:#fff;border:1px solid #eed9e3;border-radius:20px;box-shadow:var(--shadow-soft)}
.v8-avatar-card{padding:20px;position:sticky;top:92px;text-align:center}
.v8-avatar-shell{position:relative;width:142px;height:142px;margin:0 auto 14px;border-radius:50%;padding:5px;background:linear-gradient(135deg,#f7b4d2,#d91f73);box-shadow:0 12px 28px rgba(217,31,115,.18)}
.v8-avatar-shell img{width:100%;height:100%;border-radius:50%;object-fit:cover;background:#fff}
.v8-avatar-placeholder{position:absolute;inset:5px;border-radius:50%;background:linear-gradient(145deg,#fff,#fce5f0);display:grid;place-items:center;color:var(--primary);font-size:3rem}
.v8-avatar-placeholder.hide{display:none}
.v8-avatar-camera{position:absolute;right:2px;bottom:8px;width:38px;height:38px;border-radius:50%;border:3px solid #fff;background:var(--primary);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 5px 14px rgba(69,27,47,.18)}
.v8-avatar-card h2{margin:0;color:#40343a;font-size:1rem;font-weight:850}.v8-avatar-card>p{margin:5px 0 14px;color:#81747a;font-size:.68rem;line-height:1.45}
.v8-avatar-actions{display:flex;justify-content:center;gap:7px;flex-wrap:wrap}.v8-avatar-actions button{min-height:34px;padding:0 10px;border-radius:10px;font-size:.63rem;font-weight:800;cursor:pointer}.v8-avatar-change{background:#fff0f7;color:var(--primary);border:1px solid #e7b9ce}.v8-avatar-remove{background:#fff;color:#8a6f7b;border:1px solid #eadbe2}
.v8-profile-mini-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}.v8-profile-stat{padding:10px 6px;border-radius:13px;background:#fff8fb;border:1px solid #f0dce5}.v8-profile-stat strong{display:block;color:#af245f;font-size:1rem}.v8-profile-stat span{display:block;margin-top:2px;color:#81747a;font-size:.58rem;font-weight:650}
.v8-profile-privacy{margin-top:14px;padding:10px;border-radius:12px;background:#fff9fc;border:1px solid #f0dce5;color:#776870;font-size:.59rem;line-height:1.45;text-align:left}.v8-profile-privacy i{color:var(--primary);margin-right:4px}

.v8-profile-form-card{padding:20px}
.v8-profile-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-bottom:13px;margin-bottom:14px;border-bottom:1px solid #f1e1e8}.v8-profile-section-head h2{margin:0;color:#40343a;font-size:1rem;font-weight:850}.v8-profile-section-head p{margin:4px 0 0;color:#81747a;font-size:.65rem;line-height:1.4}.v8-profile-cloud-state{flex:0 0 auto;min-height:30px;padding:0 9px;border-radius:999px;background:#fff0f7;border:1px solid #edc8d9;color:#9e2a5c;display:inline-flex;align-items:center;gap:5px;font-size:.58rem;font-weight:800}.v8-profile-cloud-state.synced{background:#edf9f1;border-color:#ccebd7;color:#247744}.v8-profile-cloud-state.local{background:#fff8e8;border-color:#f1ddb2;color:#8a681c}.v8-profile-cloud-state.error{background:#fff0f2;border-color:#f0c7cf;color:#a63d50}
.v8-profile-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.v8-profile-field{display:flex;flex-direction:column;gap:5px}.v8-profile-field.full{grid-column:1/-1}.v8-profile-field label{font-size:.62rem;color:#665860;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.v8-profile-field label span{color:#b8a9b0;text-transform:none;letter-spacing:0;font-weight:600}.v8-profile-field input,.v8-profile-field select,.v8-profile-field textarea{width:100%;border:1px solid #dfc5d2;background:#fff;color:#322a2e;border-radius:11px;outline:none;font-size:.76rem;font-weight:550;transition:.18s}.v8-profile-field input,.v8-profile-field select{height:42px;padding:0 11px}.v8-profile-field textarea{min-height:88px;resize:vertical;padding:10px 11px;line-height:1.45}.v8-profile-field input:focus,.v8-profile-field select:focus,.v8-profile-field textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(217,31,115,.07)}.v8-profile-field.invalid input,.v8-profile-field.invalid select,.v8-profile-field.invalid textarea{border-color:#df5367;background:#fff8f9}
.v8-profile-helper{color:#91838a;font-size:.57rem;line-height:1.35}.v8-profile-save-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px;padding-top:14px;border-top:1px solid #f1e1e8}.v8-profile-save-note{color:#82757b;font-size:.6rem;line-height:1.4;max-width:430px}.v8-profile-save{min-height:42px;padding:0 17px;border:0;border-radius:12px;background:var(--primary);color:#fff;display:inline-flex;align-items:center;gap:7px;font-size:.7rem;font-weight:850;cursor:pointer;box-shadow:0 8px 18px rgba(217,31,115,.18);transition:.18s}.v8-profile-save:hover{background:var(--primary-hover);transform:translateY(-1px)}.v8-profile-save:disabled{opacity:.6;cursor:wait;transform:none}
.v8-profile-message{display:none;margin-top:12px;padding:10px 11px;border-radius:11px;font-size:.65rem;font-weight:700;line-height:1.4}.v8-profile-message.show{display:block}.v8-profile-message.ok{background:#edf9f1;border:1px solid #ccebd7;color:#247744}.v8-profile-message.warn{background:#fff8e8;border:1px solid #f1ddb2;color:#816219}.v8-profile-message.error{background:#fff0f2;border:1px solid #f0c7cf;color:#a63d50}

@media(max-width:920px){
  body.v8-profile-active .desktop-shop-shell{padding:0 8px 84px!important;margin-top:9px!important}
  .v8-profile-view{padding-bottom:80px}.v8-profile-toolbar{padding:8px 9px;margin-bottom:9px;border-radius:13px}.v8-profile-path{font-size:.6rem}
  .v8-profile-hero{grid-template-columns:1fr;min-height:auto;padding:19px 16px;border-radius:19px;margin-bottom:9px}.v8-profile-hero-copy h1{font-size:1.45rem}.v8-profile-hero-copy p{font-size:.69rem}.v8-profile-hero-icon{display:none}
  .v8-profile-layout{grid-template-columns:1fr;gap:9px}.v8-avatar-card{position:static;padding:16px}.v8-avatar-shell{width:112px;height:112px}.v8-avatar-placeholder{font-size:2.4rem}.v8-avatar-camera{width:34px;height:34px}
  .v8-profile-mini-stats{max-width:320px;margin:14px auto 0}.v8-profile-form-card{padding:15px}.v8-profile-section-head{align-items:center}.v8-profile-form-grid{grid-template-columns:1fr;gap:10px}.v8-profile-field.full{grid-column:auto}.v8-profile-save-row{align-items:stretch;flex-direction:column}.v8-profile-save{width:100%;justify-content:center}
}


/* ── CATEGORY COVERS GRID (10 PORTADAS DE CATEGORÍAS PADRE) ── */
.category-covers-section {
  margin: 0 0 1.5rem 0 !important;
  background: #FFFFFF !important;
  border: 1px solid #EED9E3 !important;
  border-radius: 20px !important;
  padding: 1.2rem !important;
  box-shadow: 0 8px 24px rgba(217, 31, 115, 0.06) !important;
}

.category-covers-section .modern-section-heading {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-bottom: 1rem !important;
}

.category-covers-section .modern-section-heading h2 {
  font-size: 1.05rem !important;
  font-weight: 850 !important;
  color: #28232A !important;
  margin: 0 !important;
}

.category-covers-section .sub-text {
  font-size: 0.76rem !important;
  color: #8A727F !important;
  font-weight: 600 !important;
}

.category-covers-grid {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 12px !important;
}

@media (max-width: 990px) {
  .category-covers-grid {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 10px !important;
  }
}

@media (max-width: 560px) {
  .category-covers-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 8px !important;
  }
}

.category-cover-card {
  position: relative !important;
  aspect-ratio: 1 / 1 !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  border: 1.5px solid #F0DCE5 !important;
  box-shadow: 0 4px 14px rgba(217, 31, 115, 0.08) !important;
  cursor: pointer !important;
  transition: all 0.25s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

.category-cover-card:hover {
  transform: translateY(-4px) scale(1.02) !important;
  box-shadow: 0 10px 24px rgba(217, 31, 115, 0.2) !important;
  border-color: var(--primary) !important;
}

.category-cover-img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform 0.35s ease !important;
}

.category-cover-card:hover .category-cover-img {
  transform: scale(1.08) !important;
}

.category-cover-overlay {
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg, rgba(40,35,42,0.02) 0%, rgba(40,35,42,0.45) 60%, rgba(30,20,25,0.88) 100%) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
  padding: 10px 11px !important;
  color: #FFFFFF !important;
}

.category-cover-title {
  font-size: 0.78rem !important;
  font-weight: 850 !important;
  line-height: 1.15 !important;
  text-transform: uppercase !important;
  color: #FFFFFF !important;
  text-shadow: 0 2px 5px rgba(0,0,0,0.6) !important;
}

.category-cover-badge {
  font-size: 0.64rem !important;
  font-weight: 700 !important;
  color: #FBCFE8 !important;
  margin-top: 2px !important;
  display: flex !important;
  align-items: center !important;
  gap: 3px !important;
}


/* ── SUBCATEGORY DROPDOWN WITH COVERS ── */
#globalCategoryDropdown button {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 8px 12px !important;
  font-weight: 700 !important;
  font-size: 0.84rem !important;
  border-radius: 12px !important;
}

#globalCategoryDropdown button img {
  flex-shrink: 0 !important;
  box-shadow: 0 2px 6px rgba(0,0,0,0.08) !important;
}

/* --- Bloque Style #2 --- */
/* =========================================================
   LETY SHOP V9 — EXPERIENCIA DE COMPRA PROFESIONAL
   Ficha dedicada + búsqueda inteligente + recientes + cross-sell
   ========================================================= */
:root{--v9-pink:#D91F73;--v9-pink-dark:#B8195C;--v9-soft:#FFF1F7;--v9-border:#EEC9DB;--v9-text:#332A2F;--v9-muted:#756970}

/* Smart search */
.search-input-wrapper{z-index:20}
.v9-search-panel{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:5200;background:#fff;border:1px solid var(--v9-border);border-radius:18px;box-shadow:0 20px 55px rgba(67,29,48,.20);overflow:hidden;display:none;max-height:min(70vh,620px)}
.v9-search-panel.open{display:block}
.v9-search-scroll{overflow:auto;max-height:min(70vh,620px);padding:8px}
.v9-search-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 8px 8px;color:#6e6067;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.v9-search-head button{border:0;background:transparent;color:var(--v9-pink);font-size:.68rem;font-weight:850;cursor:pointer}
.v9-search-group{padding:4px 0 7px}.v9-search-group+.v9-search-group{border-top:1px solid #f2e1e9}
.v9-search-label{padding:6px 8px;color:#9a7184;font-size:.61rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.v9-search-result{width:100%;border:0;background:transparent;border-radius:12px;padding:7px 8px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:9px;text-align:left;cursor:pointer;color:var(--v9-text)}
.v9-search-result:hover,.v9-search-result.is-active{background:#fff1f7}
.v9-search-thumb{width:48px;height:48px;border-radius:10px;overflow:hidden;background:#fff7fa;border:1px solid #f1dfe7;display:grid;place-items:center;font-size:1.3rem}
.v9-search-thumb img{width:100%;height:100%;object-fit:contain;padding:2px}
.v9-search-copy{min-width:0}.v9-search-copy strong{display:block;font-size:.75rem;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v9-search-copy small{display:block;margin-top:2px;color:#8b7d84;font-size:.61rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v9-search-price{color:var(--v9-pink-dark);font-size:.7rem;font-weight:900;white-space:nowrap}
.v9-search-simple{width:100%;border:0;background:transparent;border-radius:11px;padding:8px 10px;display:flex;align-items:center;gap:9px;color:#4e4148;cursor:pointer;text-align:left;font-size:.72rem;font-weight:700}
.v9-search-simple:hover{background:#fff1f7;color:var(--v9-pink)}.v9-search-simple i{width:27px;height:27px;border-radius:9px;background:#fff0f7;color:var(--v9-pink);display:grid;place-items:center}
.v9-search-footer{position:sticky;bottom:0;background:#fff;padding:8px;border-top:1px solid #f1dde7}.v9-search-all{width:100%;min-height:38px;border:0;border-radius:11px;background:var(--v9-pink);color:#fff;font-size:.7rem;font-weight:850;cursor:pointer}
.v9-search-empty{padding:20px 14px;text-align:center;color:#7c6e75;font-size:.72rem}.v9-search-empty i{display:block;font-size:1.5rem;color:#d996b6;margin-bottom:5px}

/* Dedicated product page */
#productExperienceViewV9{display:none;position:fixed;inset:76px 0 0;z-index:3500;max-width:none;margin:0;padding:18px 22px 54px;overflow-y:auto;overscroll-behavior:contain;background:rgba(54,31,43,.38);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
body.v9-product-active #productExperienceViewV9{display:block;animation:v9ProductFadeIn .16s ease-out both}
@keyframes v9ProductFadeIn{from{opacity:.35}to{opacity:1}}
#productExperienceViewV9>.v9-product-toolbar,#productExperienceViewV9>.v9-product-shell,#productExperienceViewV9>.v9-related{width:100%;max-width:1180px;margin-left:auto;margin-right:auto}
.v9-product-toolbar{position:sticky;top:0;z-index:6;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding:8px 10px;border:1px solid rgba(232,198,214,.9);border-radius:14px;background:rgba(255,255,255,.97);box-shadow:0 7px 20px rgba(48,25,37,.10)}
.v9-back-btn{min-height:40px;border:1px solid #e4bfd1;background:#fff;color:#8f2a57;border-radius:12px;padding:0 13px;display:inline-flex;align-items:center;gap:7px;font-size:.72rem;font-weight:850;cursor:pointer}
.v9-breadcrumb{min-width:0;color:#8b7b83;font-size:.68rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:right}
.v9-product-shell{display:grid;grid-template-columns:minmax(340px,.95fr) minmax(370px,1.05fr);gap:24px;background:#fff;border:1px solid #eed9e3;border-radius:24px;padding:20px;box-shadow:0 12px 34px rgba(69,30,49,.07)}
.v9-gallery{min-width:0}.v9-main-photo{position:relative;aspect-ratio:1;border-radius:18px;background:#fff8fb;border:1px solid #f0dce5;overflow:hidden;display:grid;place-items:center}
.v9-main-photo img{width:100%;height:100%;object-fit:contain;padding:12px;transition:opacity .18s ease}
.v9-gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:50%;border:1px solid #e8c6d6;background:rgba(255,255,255,.94);color:var(--v9-pink);display:none;place-items:center;cursor:pointer;z-index:3;box-shadow:0 5px 15px rgba(61,29,44,.10)}
.v9-gallery-arrow.show{display:grid}.v9-gallery-arrow.prev{left:10px}.v9-gallery-arrow.next{right:10px}
.v9-thumbs{display:flex;gap:7px;overflow:auto;padding:9px 1px 2px;scrollbar-width:thin}.v9-thumb{flex:0 0 62px;width:62px;height:62px;border:2px solid #efdee6;border-radius:11px;background:#fff;overflow:hidden;cursor:pointer;padding:0}.v9-thumb.active{border-color:var(--v9-pink)}.v9-thumb img{width:100%;height:100%;object-fit:contain;padding:3px}
.v9-detail{display:flex;flex-direction:column;min-width:0;padding:3px 4px}.v9-brand-btn{width:max-content;max-width:100%;border:0;background:#fff0f7;color:var(--v9-pink);border-radius:999px;padding:6px 10px;font-size:.65rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v9-product-title{margin:11px 0 8px;color:#30272c;font-size:clamp(1.55rem,2.4vw,2.25rem);line-height:1.12;letter-spacing:-.025em;font-weight:850}.v9-product-meta{display:flex;gap:8px 14px;flex-wrap:wrap;color:#887980;font-size:.67rem;padding-bottom:12px;border-bottom:1px solid #f0e1e8}
.v9-rating-real{display:none;align-items:center;gap:6px;margin-top:11px;color:#6f6269;font-size:.7rem}.v9-rating-real.show{display:flex}.v9-rating-real .stars{color:#d99a17}
.v9-product-price{margin:14px 0 5px;color:#b7195c;font-size:2rem;line-height:1;font-weight:950}.v9-stock-line{display:flex;align-items:center;gap:8px;margin:4px 0 12px}.v9-live-dot{width:8px;height:8px;border-radius:50%;background:#31a65b;box-shadow:0 0 0 4px #e8f7ed}.v9-stock-line.out .v9-live-dot{background:#c84e61;box-shadow:0 0 0 4px #fff0f2}.v9-stock-line span{font-size:.72rem;font-weight:800;color:#4d714f}.v9-stock-line.out span{color:#ae4253}
.v9-description{margin:4px 0 15px;color:#655860;font-size:.79rem;line-height:1.6;white-space:pre-line}.v9-description.empty{color:#9a8c93;font-style:italic}
.v9-purchase-actions{display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:8px;margin-top:10px}.v9-add-main{min-height:48px;border:0;border-radius:13px;background:var(--v9-pink);color:#fff;font-weight:900;font-size:.78rem;display:flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;box-shadow:0 8px 19px rgba(217,31,115,.18)}.v9-add-main:hover{background:#c41764}.v9-add-main:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.v9-fav-main{width:48px;height:48px;border-radius:13px;border:1px solid #e7c6d5;background:#fff8fb;color:var(--v9-pink);font-size:1.05rem;cursor:pointer}.v9-fav-main.active{background:#fff0f7;color:#c41562;border-color:#e8a9c7}
.v9-secondary-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:9px}.v9-secondary-actions button{min-height:36px;border:1px solid #ead1dd;background:#fff;color:#6d5963;border-radius:10px;padding:0 11px;font-size:.65rem;font-weight:800;display:flex;align-items:center;gap:6px;cursor:pointer}.v9-secondary-actions button:hover{background:#fff5fa;color:var(--v9-pink)}
.v9-trust-box{margin-top:17px;border:1px solid #f0dce5;border-radius:14px;background:#fff9fc;padding:10px 12px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.v9-trust-item{display:grid;grid-template-columns:29px 1fr;gap:7px;align-items:center;min-width:0}.v9-trust-item i{width:29px;height:29px;border-radius:9px;background:#fff0f7;color:var(--v9-pink);display:grid;place-items:center}.v9-trust-item strong{display:block;color:#4e4148;font-size:.62rem}.v9-trust-item small{display:block;color:#8b7e84;font-size:.55rem;line-height:1.25}
.v9-related{margin-top:18px;background:#fff;border:1px solid #eed9e3;border-radius:20px;padding:15px;box-shadow:0 8px 25px rgba(62,28,45,.05)}.v9-related-head{display:flex;align-items:end;justify-content:space-between;gap:10px;margin-bottom:10px}.v9-related-head h2{font-size:1rem;color:#40343a}.v9-related-head p{margin-top:2px;color:#82757b;font-size:.65rem}.v9-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.v9-mini-card{position:relative;border:1px solid #efdee6;border-radius:14px;background:#fff;overflow:hidden;cursor:pointer;display:flex;flex-direction:column;min-width:0}.v9-mini-card:hover{border-color:#e2a8c3;box-shadow:0 8px 20px rgba(66,30,48,.07)}.v9-mini-img{aspect-ratio:1;background:#fff8fb;display:grid;place-items:center;overflow:hidden}.v9-mini-img img{width:100%;height:100%;object-fit:contain;padding:5px}.v9-mini-copy{padding:8px}.v9-mini-brand{font-size:.53rem;font-weight:900;color:var(--v9-pink);text-transform:uppercase}.v9-mini-title{margin:3px 0 6px;font-size:.67rem;line-height:1.25;height:1.7rem;overflow:hidden;color:#453940;font-weight:700}.v9-mini-price{font-size:.74rem;font-weight:900;color:#b7195c}
.v9-mobile-buybar{display:none}

/* Recently viewed */
.v9-recent-section{display:none}.v9-recent-section.has-items{display:block}.v9-recent-head-note{display:inline-flex;align-items:center;gap:5px;color:#8c7d84;font-size:.61rem}

/* Cart cross sell */
.v9-cart-crosssell{display:none;padding:10px;border:1px solid #efd7e2;border-radius:14px;background:#fff;margin:3px 0 2px}.v9-cart-crosssell.show{display:block}.v9-cart-crosssell-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}.v9-cart-crosssell-head strong{font-size:.71rem;color:#4e4148}.v9-cart-crosssell-head small{font-size:.56rem;color:#9a8c93}.v9-cart-crosssell-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.v9-cart-suggest{border:1px solid #f0dce5;background:#fff9fc;border-radius:10px;padding:5px;min-width:0;cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.v9-cart-suggest:hover{border-color:#e2a8c3;transform:translateY(-1px);box-shadow:0 4px 12px rgba(66,30,48,.07)}.v9-cart-suggest img{width:100%;aspect-ratio:1;object-fit:contain;background:#fff;border-radius:7px}.v9-cart-suggest strong{display:block;margin:4px 0 2px;font-size:.55rem;line-height:1.2;height:1.35rem;overflow:hidden;color:#51454b}.v9-cart-suggest span{display:block;color:#b7195c;font-size:.58rem;font-weight:900}.v9-cart-suggest button{width:100%;min-height:27px;margin-top:4px;border:0;border-radius:7px;background:#fff0f7;color:var(--v9-pink);font-size:.53rem;font-weight:900;cursor:pointer}

@media(max-width:920px){
  .v9-search-panel{position:fixed;left:8px;right:8px;top:104px;max-height:calc(100dvh - 180px);border-radius:16px}.v9-search-scroll{max-height:calc(100dvh - 180px)}
  #productExperienceViewV9{top:104px;bottom:68px;padding:8px 8px 22px}.v9-product-toolbar{margin-bottom:8px}.v9-breadcrumb{font-size:.6rem}.v9-back-btn{min-height:36px;padding:0 10px;font-size:.66rem}
  .v9-product-shell{grid-template-columns:1fr;gap:12px;padding:9px;border-radius:17px}.v9-main-photo{border-radius:14px}.v9-main-photo img{padding:7px}.v9-gallery-arrow{display:none!important}.v9-thumbs{padding-top:7px}.v9-thumb{flex-basis:48px;width:48px;height:48px}
  .v9-detail{padding:5px 6px 7px}.v9-product-title{font-size:1.28rem;margin:9px 0 6px}.v9-product-meta{font-size:.6rem;padding-bottom:9px}.v9-product-price{font-size:1.55rem;margin-top:11px}.v9-description{font-size:.72rem;margin-bottom:11px}.v9-purchase-actions{display:none}.v9-secondary-actions{margin-top:4px}.v9-trust-box{grid-template-columns:1fr;gap:5px;margin-top:12px}.v9-trust-item{grid-template-columns:27px 1fr}.v9-trust-item i{width:27px;height:27px}.v9-trust-item small{font-size:.56rem}
  .v9-related{margin-top:10px;padding:10px;border-radius:16px}.v9-related-head h2{font-size:.86rem}.v9-related-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.v9-mini-copy{padding:6px}.v9-mini-title{font-size:.62rem}.v9-mini-price{font-size:.68rem}
  body.v9-product-active .v9-mobile-buybar{display:grid;position:static;grid-template-columns:auto minmax(0,1fr) 43px;gap:7px;align-items:center;margin-top:10px;padding:9px;background:#fff;border:1px solid #ecd1de;border-radius:13px;box-shadow:0 7px 18px rgba(61,29,45,.07)}.v9-mobile-buybar strong{color:#b7195c;font-size:.84rem;white-space:nowrap}.v9-mobile-buybar button{height:42px;border:0;border-radius:11px;background:var(--v9-pink);color:#fff;font-size:.67rem;font-weight:900;cursor:pointer}.v9-mobile-buybar .fav{background:#fff0f7;color:var(--v9-pink);border:1px solid #e8bed1;font-size:.9rem}
  .v9-cart-crosssell-grid{grid-template-columns:repeat(3,minmax(82px,1fr));overflow-x:auto}.v9-cart-suggest{min-width:82px}
}
@media(max-width:560px){
  .v9-search-panel{top:96px}.v9-search-result{grid-template-columns:42px minmax(0,1fr) auto;padding:6px}.v9-search-thumb{width:42px;height:42px}.v9-search-copy strong{font-size:.69rem}.v9-search-price{font-size:.64rem}
  .v9-product-toolbar{align-items:center}.v9-breadcrumb{max-width:56%}.v9-product-shell{padding:7px}.v9-detail{padding-inline:4px}.v9-brand-btn{font-size:.58rem}.v9-product-title{font-size:1.18rem}.v9-related-grid{gap:6px}
}

/* --- Bloque Style #3 --- */
/* V12 - banners completos, sin recorte, con acceso directo a la marca */
.hero-slide .brand-slide-banner {
  position: relative !important;
  min-height: 240px !important;
  max-height: 380px !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  background: linear-gradient(135deg, #fff0f7, #fce7f3) !important;
  border-radius: 24px !important;
  overflow: hidden !important;
}
.brand-banner-img {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  display: block !important;
  z-index: 1 !important;
  background: linear-gradient(135deg, #fff0f7, #fce7f3) !important;
}
@media (max-width: 900px) {
  /* Mantiene la altura del carrusel y muestra la imagen completa de la marca al instante */
  .hero-slide .brand-slide-banner {
    position: relative !important;
    height: 220px !important;
    min-height: 180px !important;
    max-height: 250px !important;
    aspect-ratio: auto !important;
    background: linear-gradient(135deg, #fff0f7, #fce7f3) !important;
    isolation: isolate !important;
    border-radius: 18px !important;
    overflow: hidden !important;
  }
  .hero-slide .brand-slide-banner::before{
    display:none!important;
    content:none!important;
  }
  .hero-slide .brand-slide-banner::after{
    display:none!important;
    content:none!important;
  }
  /* Móvil: mostrar solo el botón de acceso a la marca abajo a la izquierda. */
  .hero-slide .brand-slide-overlay{
    position:absolute!important;
    left:0!important;
    right:auto!important;
    bottom:0!important;
    top:auto!important;
    z-index:3!important;
    display:flex!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    width:auto!important;
    max-width:none!important;
    padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom))!important;
    pointer-events:auto!important;
  }
  .hero-slide .brand-slide-overlay .brand-slide-tag,
  .hero-slide .brand-slide-overlay h2,
  .hero-slide .brand-slide-overlay p{
    display:none!important;
    visibility:hidden!important;
  }
  .hero-slide .brand-slide-overlay .btn-brand-action{
    display:inline-flex!important;
    visibility:visible!important;
    pointer-events:auto!important;
    margin:0!important;
    padding:0.7rem 1rem!important;
    font-size:0.82rem!important;
    border-radius:999px!important;
    box-shadow:0 10px 24px rgba(0,0,0,0.24)!important;
  }
}

/* --- Bloque Style #4 --- */
/* =========================================================
   LETY SHOP V13 — ESTABILIDAD VISUAL / DESKTOP + MOBILE
   ========================================================= */

/* La ficha V9 pasa de overlay flotante a página dedicada real. */
#productExperienceViewV9{
  position:relative!important;
  inset:auto!important;
  z-index:auto!important;
  width:min(100%,1440px)!important;
  max-width:1440px!important;
  margin:14px auto 0!important;
  padding:14px 22px 54px!important;
  overflow:visible!important;
  overscroll-behavior:auto!important;
  background:transparent!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}

/* Cuando hay producto activo, no dejar la tienda anterior visible debajo. */
body.v9-product-active .desktop-shop-shell{
  display:none!important;
}
body.v9-product-active #productExperienceViewV9{
  display:block!important;
}

/* Toolbar de producto siempre debajo del header sticky. */
body.v9-product-active .v9-product-toolbar{
  top:82px!important;
}

/* Evita capas invisibles capturando toques. */
.drawer-overlay:not(.active),
.cart-overlay:not(.active){
  pointer-events:none!important;
}
.cart-panel:not(.open){
  pointer-events:none!important;
}
.cart-panel.open{
  pointer-events:auto!important;
}

/* Móvil: ficha de producto como PÁGINA INDEPENDIENTE a pantalla completa.
   Se abre instantáneamente sin desplazar el scroll del catálogo. */
@media(max-width:920px){
  #productExperienceViewV9{
    position:fixed!important;
    inset:0!important;
    z-index:3500!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:60px 8px calc(12px + env(safe-area-inset-bottom))!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    background:#FFFAFC!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  body.v9-product-active .v9-product-toolbar{
    position:sticky!important;
    top:0!important;
    z-index:10!important;
  }

}

/* Escritorio: las páginas dedicadas quedan centradas y sin overlays de móvil. */
@media(min-width:921px){
  nav.bottom-nav-bar{display:none!important}
  #productExperienceViewV9>.v9-product-toolbar,
  #productExperienceViewV9>.v9-product-shell,
  #productExperienceViewV9>.v9-related{
    max-width:1180px!important;
  }
}

/* ==========================================================================
   UX MEJORAS: TOAST NOTIFICATIONS, SEARCH CLEAR, INPUT ERROR & MOBILE NAV
   ========================================================================== */

/* Toast Container & Notification Cards */
.toast-container {
  position: fixed;
  bottom: 80px;
  right: 20px;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  gap: 10px;
  pointer-events: none;
  max-width: 360px;
  width: calc(100% - 40px);
}
@media (max-width: 920px) {
  .toast-container {
    bottom: 75px;
    left: 50%;
    transform: translateX(-50%);
    right: auto;
  }
}

.toast-notification {
  background: #ffffff;
  color: #1f2937;
  padding: 0.8rem 1.1rem;
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(219, 39, 119, 0.22), 0 2px 8px rgba(0, 0, 0, 0.08);
  border-left: 5px solid #db2777;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.8rem;
  font-size: 0.88rem;
  font-weight: 700;
  pointer-events: auto;
  animation: slideInUpToast 0.35s cubic-bezier(0.16, 1, 0.3, 1) forwards;
  backdrop-filter: blur(8px);
}
.toast-notification.success {
  border-left-color: #10b981;
}
.toast-notification.warning {
  border-left-color: #f59e0b;
}
.toast-notification.error {
  border-left-color: #ef4444;
}

.toast-action-btn {
  background: #fce7f3;
  color: #be185d;
  border: 1px solid #fbcfe8;
  padding: 0.35rem 0.75rem;
  border-radius: 12px;
  font-size: 0.78rem;
  font-weight: 800;
  cursor: pointer;
  white-space: nowrap;
  transition: all 0.2s ease;
}
.toast-action-btn:hover {
  background: #db2777;
  color: #ffffff;
}

@keyframes slideInUpToast {
  from {
    opacity: 0;
    transform: translateY(20px) scale(0.95);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

/* Clear Search Button */
.search-input-wrapper {
  position: relative;
}
.search-clear-btn {
  position: absolute;
  right: 42px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  color: #9ca3af;
  font-size: 1.1rem;
  cursor: pointer;
  padding: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color 0.2s ease;
  z-index: 5;
}
.search-clear-btn:hover {
  color: #db2777;
}

/* Form Validation Error Highlighting */
.checkout-form input.input-error,
.checkout-form select.input-error {
  border: 2px solid #ef4444 !important;
  background-color: #fef2f2 !important;
  animation: shakeInput 0.4s ease-in-out;
}
@keyframes shakeInput {
  0%, 100% { transform: translateX(0); }
  20%, 60% { transform: translateX(-6px); }
  40%, 80% { transform: translateX(6px); }
}

/* Responsive Bottom Navigation Adjustment for 5 Items */
@media (max-width: 920px) {
  nav.bottom-nav-bar {
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    padding: 4px 2px calc(5px + env(safe-area-inset-bottom)) !important;
    height: 64px !important;
    overflow: hidden !important;
  }
  nav.bottom-nav-bar .nav-item {
    font-size: 0.54rem !important;
    gap: 1px !important;
    white-space: nowrap !important;
    overflow: visible !important;
    min-width: 0 !important;
    padding: 2px 0 !important;
  }
  nav.bottom-nav-bar .nav-item span {
    font-size: 0.54rem !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }
  nav.bottom-nav-bar .nav-item i {
    font-size: 1.05rem !important;
  }
  .nav-badge {
    right: calc(50% - 15px) !important;
    top: 2px !important;
  }
}

/* Floating Cart Action Button on Mobile */
.floating-cart-fab {
  display: none;
}
@media (max-width: 920px) {
  .floating-cart-fab {
    display: flex !important;
    position: fixed !important;
    bottom: 82px !important;
    right: 18px !important;
    z-index: 3900 !important;
    width: 52px !important;
    height: 52px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #db2777, #be185d) !important;
    color: #ffffff !important;
    border: 2px solid #ffffff !important;
    box-shadow: 0 8px 24px rgba(219, 39, 119, 0.45) !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 1.4rem !important;
    cursor: pointer !important;
    transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
  }
  .floating-cart-fab:active {
    transform: scale(0.92) !important;
  }
  .floating-cart-badge {
    position: absolute !important;
    top: -4px !important;
    right: -4px !important;
    background: #ffffff !important;
    color: #be185d !important;
    border: 2px solid #db2777 !important;
    font-weight: 900 !important;
    font-size: 0.72rem !important;
    min-width: 20px !important;
    height: 20px !important;
    border-radius: 99px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 4px !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15) !important;
  }
}

/* Improved Empty Search State */
.empty-catalog-box {
  text-align: center;
  padding: 3.5rem 1.5rem;
  background: #ffffff;
  border-radius: 24px;
  border: 2px dashed #fbcfe8;
  box-shadow: 0 10px 30px rgba(219, 39, 119, 0.05);
  margin: 2rem auto;
  max-width: 520px;
}
.empty-catalog-icon {
  font-size: 3.2rem;
  color: #db2777;
  margin-bottom: 1rem;
}
.empty-catalog-btn {
  margin-top: 1.2rem;
  background: linear-gradient(135deg, #db2777, #be185d);
  color: white;
  border: none;
  padding: 0.7rem 1.5rem;
  border-radius: 25px;
  font-weight: 800;
  cursor: pointer;
  box-shadow: 0 6px 20px rgba(219, 39, 119, 0.3);
  transition: transform 0.2s ease;
}
.empty-catalog-btn:hover {
  transform: scale(1.03);
}

