/* =========================================================
   FOOTER
========================================================= */
.pa-footer{
  background:var(--pa-accent);
  color:rgba(255,255,255,.82);
  margin-top:20px;
}
.pa-footer__grid{
  display:grid;
  grid-template-columns:1.6fr 1fr 1fr 1.2fr;
  gap:36px;
  padding:56px var(--pa-gutter) 40px;
}
.pa-footer__brand .pa-logo-text{color:#fff;}
.pa-footer__brand img{max-height:44px;margin-bottom:14px;}
.pa-footer__brand p{
  font-size:13.5px;
  line-height:1.7;
  color:rgba(255,255,255,.65);
  margin:14px 0 18px;
  max-width:320px;
}

.pa-footer__col h4{
  color:#fff;
  font-size:15px;
  margin-bottom:16px;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.pa-footer-menu li{margin-bottom:10px;}
.pa-footer-menu a{
  font-size:14px;
  color:rgba(255,255,255,.7);
  transition:color .15s ease;
}
.pa-footer-menu a:hover{color:#fff;}

.pa-footer-contact{display:flex;flex-direction:column;gap:12px;}
.pa-footer-contact li{
  display:flex;
  align-items:flex-start;
  gap:10px;
  font-size:13.5px;
  color:rgba(255,255,255,.75);
}
.pa-footer-contact svg{flex-shrink:0;margin-top:2px;color:var(--pa-accent-2);}
.pa-footer-contact a{color:rgba(255,255,255,.75);}
.pa-footer-contact a:hover{color:#fff;}

.pa-social-links{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.pa-social-link{
  display:flex;
  align-items:center;
  justify-content:center;
  width:36px;
  height:36px;
  border-radius:50%;
  background:rgba(255,255,255,.08);
  color:#fff;
  transition:background .15s ease, transform .15s ease;
}
.pa-social-link:hover{background:var(--pa-primary);transform:translateY(-2px);}
.pa-social-links--mobile .pa-social-link{background:var(--pa-bg-alt);color:var(--pa-ink);}
.pa-social-links--mobile .pa-social-link:hover{background:var(--pa-primary);color:#fff;}

.footer-widget-title{color:#fff;font-size:15px;margin-bottom:12px;}
.footer-widget{color:rgba(255,255,255,.7);font-size:13.5px;}

.pa-footer__bottom{
  border-top:1px solid rgba(255,255,255,.1);
}
.pa-footer__bottom-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  padding:18px var(--pa-gutter);
  font-size:12.5px;
  color:rgba(255,255,255,.55);
}

@media(max-width:1024px){
  .pa-footer__grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:600px){
  .pa-footer__grid{grid-template-columns:1fr;padding:40px var(--pa-gutter) 30px;gap:28px;}
  .pa-footer__bottom-inner{flex-direction:column;text-align:center;}
}

/* =========================================================
   WHATSAPP FLOAT BUTTON
========================================================= */
.pa-whatsapp-float{
  position:fixed;
  bottom:22px;
  right:22px;
  width:58px;
  height:58px;
  border-radius:50%;
  background:#25D366;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 8px 24px rgba(37,211,102,.45);
  z-index:75;
  transition:transform .2s ease;
}
.pa-whatsapp-float:hover{transform:scale(1.08);}
.pa-whatsapp-float svg{width:28px;height:28px;}

@media(max-width:1023px){
  .pa-whatsapp-float{bottom:calc(60px + env(safe-area-inset-bottom, 0px) + 14px);}
}
@media(max-width:480px){
  .pa-whatsapp-float{width:50px;height:50px;right:16px;}
  .pa-whatsapp-float svg{width:24px;height:24px;}
}

/* =========================================================
   FIXED MOBILE BOTTOM NAVIGATION (app-style)
   Home / Categories / Search / Cart / Account.
   Hidden on desktop (>=1024px) — see body padding rule too.
========================================================= */
.pa-bottom-nav{
  display:none;
}
@media(max-width:1023px){
  body{padding-bottom:calc(60px + env(safe-area-inset-bottom, 0px));}

  .pa-bottom-nav{
    display:flex;
    align-items:stretch;
    justify-content:space-between;
    position:fixed;
    left:0;right:0;bottom:0;
    height:60px;
    padding:6px 6px calc(6px + env(safe-area-inset-bottom, 0px));
    background:rgba(255,255,255,.92);
    -webkit-backdrop-filter:saturate(180%) blur(14px);
    backdrop-filter:saturate(180%) blur(14px);
    border-top:1px solid var(--pa-border);
    border-radius:18px 18px 0 0;
    box-shadow:0 -8px 28px rgba(16,24,40,.14);
    z-index:70;
  }

  .pa-bottom-nav__item{
    position:relative;
    flex:1;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:3px;
    border:none;
    background:transparent;
    color:#8b93a3;
    font-size:10.5px;
    font-weight:700;
    letter-spacing:.01em;
    line-height:1;
    min-width:44px;
    min-height:44px;
    padding:6px 2px 5px;
    border-radius:14px;
    cursor:pointer;
    -webkit-tap-highlight-color:transparent;
    transition:color .18s ease;
  }

  /* Icon sits on its own "pill" that lights up + lifts slightly when active,
     the way native shopping apps (and premium marketplace apps) indicate
     the current tab — much closer to a real app than a plain text link. */
  .pa-bottom-nav__icon-wrap{
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:34px;
    height:26px;
    border-radius:999px;
    transition:background .2s ease, transform .2s ease;
  }
  .pa-bottom-nav__item svg{
    position:relative;
    z-index:1;
    transition:transform .18s cubic-bezier(.34,1.56,.64,1);
  }

  .pa-bottom-nav__item.is-active{color:var(--pa-primary);}
  .pa-bottom-nav__item.is-active .pa-bottom-nav__icon-wrap{
    background:var(--pa-primary-light);
    transform:translateY(-1px);
  }
  .pa-bottom-nav__item.is-active svg{transform:scale(1.06);}
  .pa-bottom-nav__item.is-active::after{
    content:"";
    position:absolute;
    bottom:1px;
    width:4px;height:4px;
    border-radius:50%;
    background:var(--pa-primary);
  }

  .pa-bottom-nav__item:active .pa-bottom-nav__icon-wrap{
    background:var(--pa-bg-alt);
    transform:scale(.92);
  }

  .pa-bottom-nav__badge{
    position:absolute;
    top:-2px;right:2px;
    z-index:2;
    background:var(--pa-primary);
    color:#fff;
    font-size:10px;
    font-weight:800;
    min-width:17px;
    height:17px;
    border:2px solid rgba(255,255,255,.92);
    border-radius:999px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:0 3px;
    box-shadow:0 2px 6px rgba(225,29,46,.4);
  }
  .pa-cart-bump ~ .pa-bottom-nav .pa-bottom-nav__badge,
  .pa-bottom-nav__badge.pa-cart-bump{
    animation:pa-badge-pop .35s ease;
  }
  @keyframes pa-badge-pop{
    0%{transform:scale(1);}
    40%{transform:scale(1.35);}
    100%{transform:scale(1);}
  }
}
@media(max-width:359px){
  .pa-bottom-nav__item{font-size:9.5px;}
}
@media(min-width:1024px){
  body{padding-bottom:0;}
  .pa-bottom-nav{display:none !important;}
}
