/* Mobile side drawers — menu left, cart right */

.drawer-overlay{
  position:fixed;inset:0;z-index:90;
  background:rgba(11,18,32,.48);
  backdrop-filter:blur(2px);
  opacity:0;visibility:hidden;
  transition:opacity .25s ease, visibility .25s ease
}
.drawer-overlay.is-open{opacity:1;visibility:visible}

.drawer{
  position:fixed;top:0;bottom:0;z-index:100;
  width:min(84vw, 320px);
  max-width:calc(100vw - 48px);
  background:#fff;
  display:flex;flex-direction:column;
  box-shadow:0 20px 50px rgba(15,23,42,.22);
  transition:transform .28s cubic-bezier(.22,1,.36,1);
  -webkit-overflow-scrolling:touch;
  padding-bottom:env(safe-area-inset-bottom)
}
.drawer--menu{left:0;right:auto;transform:translateX(-105%)}
.drawer--cart{left:auto;right:0;transform:translateX(105%);width:min(88vw, 360px)}
.drawer.is-open{transform:translateX(0)}
body.drawer-open .floating-call,
body.drawer-open .pp-sticky{visibility:hidden;pointer-events:none}

.drawer__head{
  display:flex;align-items:flex-start;justify-content:space-between;gap:12px;
  padding:16px 16px 14px;border-bottom:1px solid #E6EEF2;flex:0 0 auto
}
.drawer__brand{display:flex;align-items:center;gap:10px;min-width:0}
.drawer__brand img{width:36px;height:36px;border-radius:10px;flex:0 0 auto}
.drawer__brand strong{display:block;font-family:var(--font-display);font-size:.98rem;line-height:1.2}
.drawer__brand span{display:block;font-size:.72rem;color:#64748B;margin-top:2px}
.drawer__title{display:block;font-family:var(--font-display);font-size:1.05rem}
.drawer__meta{display:block;font-size:.8rem;color:#64748B;margin-top:2px}
.drawer__close{
  width:36px;height:36px;border-radius:10px;border:1px solid #E2E8F0;
  background:#F8FAFC;font-size:1.35rem;line-height:1;cursor:pointer;color:#334155;flex:0 0 auto
}
.drawer__close:hover{background:#F0FDFA;border-color:#99F6E4}

.drawer__body{flex:1 1 auto;overflow-y:auto;padding:8px 0 16px}
.drawer__body--cart{padding:12px 14px 16px}

.drawer-nav{display:flex;flex-direction:column;padding:4px 10px}
.drawer-nav a{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:12px 14px;border-radius:12px;
  color:#334155;font-weight:700;font-size:.95rem
}
.drawer-nav a:hover,.drawer-nav a.is-active{
  background:#F0FDFA;color:var(--teal-dark)
}
.drawer-section{margin-top:10px;padding-top:6px;border-top:1px solid #E6EEF2}
.drawer-section__label{
  margin:0;padding:8px 24px 4px;font-size:.72rem;font-weight:800;
  letter-spacing:.06em;text-transform:uppercase;color:#64748B
}
.drawer-nav--products a{font-size:.92rem}
.nav-count{
  min-width:24px;height:22px;padding:0 7px;border-radius:999px;
  display:inline-flex;align-items:center;justify-content:center;
  background:#ECFDF5;color:var(--teal-dark);font-size:.72rem;font-weight:800
}
.drawer-nav a.is-active .nav-count{background:#fff;color:var(--teal-dark)}

.drawer__foot{
  flex:0 0 auto;padding:14px 16px 18px;border-top:1px solid #E6EEF2;
  display:grid;gap:8px;background:#fff
}
.drawer-subtotal{
  display:flex;justify-content:space-between;align-items:center;
  margin-bottom:4px;font-size:.95rem
}
.drawer-subtotal strong{font-family:var(--font-display);font-size:1.15rem}

.drawer-empty{text-align:center;padding:28px 10px}
.drawer-empty p{margin:0 0 14px;color:#64748B}

.drawer-cart-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.drawer-cart-item{
  display:grid;grid-template-columns:64px 1fr auto;gap:10px;
  align-items:start;padding:10px;border:1px solid #E6EEF2;border-radius:14px;background:#F8FFFE
}
.drawer-cart-item__img{
  width:64px;height:64px;border-radius:10px;background:#fff;
  display:grid;place-items:center;overflow:hidden;border:1px solid #E6EEF2
}
.drawer-cart-item__img img{max-width:52px;max-height:52px;object-fit:contain}
.drawer-cart-item__info{min-width:0}
.drawer-cart-item__info > a{
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  font-weight:700;font-size:.84rem;line-height:1.3;color:var(--ink)
}
.drawer-cart-item__meta{
  display:flex;gap:8px;margin:4px 0;font-size:.78rem;color:#64748B
}
.drawer-cart-item__info strong{font-family:var(--font-display);font-size:.95rem}
.drawer-cart-item__remove button{
  width:28px;height:28px;border:0;border-radius:8px;background:#FEE2E2;color:#B91C1C;
  font-size:1.1rem;cursor:pointer;line-height:1
}

body.drawer-open{overflow:hidden;touch-action:none}

/* Header cart: button opens drawer on mobile; link on desktop */
.cart-btn[data-cart-open]{border:0;cursor:pointer;font:inherit}
.cart-btn--desktop{display:none}

@media (max-width:980px){
  .main-nav{display:none !important}
  .cat-strip{display:block}
  .cart-btn[data-cart-open]{display:inline-flex}
  .cart-btn--desktop{display:none !important}
  .floating-call{
    left:auto;right:14px;bottom:14px;width:auto;
    border-radius:999px;padding:12px 16px;
    flex-direction:row;gap:8px;align-items:center;
    box-shadow:0 12px 28px rgba(194,65,12,.35)
  }
  .floating-call span{display:none}
  .floating-call strong{font-size:.95rem}
}

@media (min-width:981px){
  .drawer,.drawer-overlay{display:none !important}
  .cart-btn[data-cart-open]{display:none !important}
  .cart-btn--desktop{display:inline-flex !important}
  .nav-toggle{display:none !important}
}
