/* =============================================
   LUMIK HEADER v3
   ============================================= */
:root { --lh-header-h: 3.6rem; --lh-total-h: 5.2rem; }
body { padding-top: var(--lh-total-h); }
.ast-above-header-bar,.ast-below-header-bar,.ast-primary-header-bar,.ast-mobile-header-wrap,.site-header { display: none !important; }

.lh-header { position: fixed; top: 0; left: 0; right: 0; z-index: 20; background: #960946; color: #FEF3E7; contain: layout style; }
.lh-header__inner { display: flex; align-items: center; justify-content: space-between; padding: 0.6rem 1.5rem 0.8rem; }
.lh-header__hamburger { background: none; border: none; color: inherit; cursor: pointer; padding: 0.4rem; display: flex; align-items: center; flex-shrink: 0; -webkit-tap-highlight-color: transparent; }
.lh-header__logo { position: absolute; left: 50%; transform: translateX(-50%); display: flex; }
.lh-header__logo img { width: 11rem; height: auto; }
.lh-header__actions { display: flex; align-items: center; gap: 0.8rem; flex-shrink: 0; }
.lh-header__action-btn { background: none; border: none; color: inherit; cursor: pointer; padding: 0.3rem; display: flex; align-items: center; text-decoration: none; position: relative; -webkit-tap-highlight-color: transparent; }
.lh-header__cart-count { position: absolute; top: -4px; right: -6px; background: #FEF3E7; color: #960946; font-size: 0.65rem; font-weight: 700; min-width: 1.1rem; height: 1.1rem; border-radius: 50%; display: flex; align-items: center; justify-content: center; line-height: 1; }

/* Announcement slider */
.lh-announcement { position: fixed; top: var(--lh-header-h); left: 0; right: 0; z-index: 19; background: #960946; color: #FEF3E7; text-align: center; padding: 0.45rem 1rem; contain: layout style; overflow: hidden; }
.lh-announcement__slider { position: relative; height: 1.3em; }
.lh-announcement__slide { position: absolute; inset: 0; margin: 0; font-size: 0.85rem; font-style: italic; opacity: 0; transition: opacity 0.5s ease; display: flex; align-items: center; justify-content: center; }
.lh-announcement__slide--active { opacity: 1; }

/* Search overlay */
.lh-search-overlay { position: fixed; inset: 0; z-index: 30; background: rgba(0,0,0,0.6); display: flex; align-items: flex-start; justify-content: center; padding-top: 6rem; opacity: 0; visibility: hidden; transition: opacity 0.25s, visibility 0.25s; }
.lh-search-overlay--open { opacity: 1; visibility: visible; }
.lh-search-overlay__inner { background: #FEF3E7; border-radius: 1rem; padding: 1.5rem; width: 90%; max-width: 36rem; position: relative; }
.lh-search-overlay__close { position: absolute; top: 0.8rem; right: 0.8rem; background: none; border: none; color: #960946; cursor: pointer; padding: 0.3rem; display: flex; }

/* Drawer */
.lh-drawer-backdrop { position: fixed; inset: 0; z-index: 25; background: rgba(0,0,0,0.5); opacity: 0; visibility: hidden; transition: opacity 0.3s, visibility 0.3s; }
.lh-drawer-backdrop--open { opacity: 1; visibility: visible; }
.lh-drawer { position: fixed; top: 0; left: 0; bottom: 0; z-index: 26; width: 20rem; max-width: 80vw; background: #FEF3E7; transform: translateX(-100%); transition: transform 0.35s cubic-bezier(0.4,0,0.2,1); display: flex; flex-direction: column; border-radius: 0 16px 16px 0; overflow: hidden; will-change: transform; }
.lh-drawer--open { transform: translateX(0); }
.lh-drawer__close { position: absolute; top: 50%; right: -3.4rem; transform: translateY(-50%); background: #960946; border: none; color: #FEF3E7; cursor: pointer; padding: 0.4rem; border-radius: 50%; display: flex; z-index: 2; transition: background 0.2s; }
.lh-drawer__close:hover { background: #BB5D80; }
.lh-drawer__scroll { flex: 1; overflow-y: auto; display: flex; flex-direction: column; align-items: center; min-height: 0; overscroll-behavior: contain; }
.lh-drawer__scroll::-webkit-scrollbar { width: 6px; }
.lh-drawer__scroll::-webkit-scrollbar-thumb { background-color: rgba(187,93,128,0.36); border-radius: 6rem; }
.lh-drawer__scroll::-webkit-scrollbar-track { background-color: #F3DBD7; border-radius: 6rem; }
.lh-drawer__logo-wrap { padding: 1.5rem 2rem 0; display: flex; justify-content: center; }
.lh-drawer__logo img { width: 12rem; height: auto; }
.lh-drawer__separator { width: 70%; height: 3px; background: #960946; margin: 1.5rem auto; border-radius: 2px; }
.lh-drawer__nav { width: 100%; }
.lh-drawer__menu { list-style: none; margin: 0; padding: 0; }
.lh-drawer__item { list-style: none; }
.lh-drawer__link, .lh-drawer__link--parent { display: flex; align-items: center; justify-content: center; gap: 0.5rem; width: 100%; padding: 0.9rem 2rem; font-family: 'Founders Grotesk Official',sans-serif; font-size: 1.2rem; font-weight: 300; color: #BB5D80; text-decoration: none; text-align: center; background: none; border: none; cursor: pointer; position: relative; transition: background 0.15s; }
.lh-drawer__link:hover, .lh-drawer__link--parent:hover { background: #F3DBD7; }
.lh-drawer__link--active { background: #F3DBD7; font-weight: 400; }
.lh-drawer__link--active::after { content: ''; position: absolute; bottom: 0; width: 30%; height: 2px; background: #BB5D80; }
.lh-drawer__arrow { transition: transform 0.25s; flex-shrink: 0; }
.lh-drawer__link--parent[aria-expanded="true"] .lh-drawer__arrow { transform: rotate(180deg); }
.lh-drawer__submenu { list-style: none; margin: 0; padding: 0; background: #F8E7DF; max-height: 0; overflow: hidden; transition: max-height 0.3s ease; }
.lh-drawer__submenu--open { max-height: 30rem; }
.lh-drawer__sublink { display: block; padding: 0.7rem 2rem; font-family: 'Founders Grotesk Official',sans-serif; font-size: 1.1rem; font-weight: 300; color: #BB5D80; text-decoration: none; text-align: center; transition: background 0.15s; }
.lh-drawer__sublink:hover { background: #F3DBD7; }
.lh-drawer__login { background: #F8E7DF; padding: 0.6rem 2rem; display: flex; flex-direction: column; align-items: center; gap: 0.3rem; margin-top: auto; }
.lh-drawer__login-link { font-family: 'Founders Grotesk Official',sans-serif; font-size: 1.2rem; font-weight: 300; color: #BB5D80; text-decoration: none; padding: 0.4rem 0; transition: opacity 0.2s; }
.lh-drawer__login-link:hover { opacity: 0.6; }
.lh-drawer__social { background: #960946; padding: 0.8rem 2rem; display: flex; justify-content: center; gap: 1rem; flex-shrink: 0; }
.lh-drawer__social-icon { display: flex; align-items: center; justify-content: center; width: 2.8rem; height: 2.8rem; background: #FEF3E7; border-radius: 50%; color: #BB5D80; text-decoration: none; transition: opacity 0.2s; }
.lh-drawer__social-icon:hover { opacity: 0.8; }
body.lh-drawer-open { overflow: hidden; }

/* Desktop */
@media (min-width: 1025px) {
    .lh-header__inner { padding: 0.6rem 3rem 0.8rem; }
    .lh-drawer { width: 24rem; }
    .lh-drawer__link, .lh-drawer__link--parent { padding: 1rem 5rem; font-size: 1.3rem; }
    .lh-drawer__sublink { font-size: 1.2rem; }
    .lh-drawer__login-link { font-size: 1.3rem; }
    .lh-drawer__social-icon { width: 3rem; height: 3rem; }
}

/* Mobile */
@media (max-width: 767px) {
    .lh-header__logo img { width: 9rem; }
    .lh-header__inner { padding: 0.5rem 1rem 0.6rem; }
    .lh-drawer__logo-wrap { padding: 1rem 1.5rem 0; }
    .lh-drawer__logo img { width: 10rem; }
    .lh-drawer__separator { width: 76%; margin: 1rem auto; }
    .lh-drawer__link, .lh-drawer__link--parent { padding: 0.8rem 2.4rem; font-size: 1.2rem; }
    .lh-drawer__sublink { font-size: 1.1rem; }
    .lh-drawer__login { padding: 0.4rem 1.5rem; }
    .lh-drawer__login-link { font-size: 1.2rem; }
}