/* ═══════════════════════════════════════════════
   VIGAS EVENTOS — Shared Stylesheet
   Paleta: Laranja #FF6500 (primário) · Ciano #00B8C8 (acento)
═══════════════════════════════════════════════ */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:'Inter',sans-serif;background:#F5F7FA;color:#1A1A2E;line-height:1.5;min-height:100dvh}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
button{cursor:pointer;border:none;outline:none;font-family:inherit}
input,select,textarea{font-family:inherit}
ul{list-style:none}

:root{
  --orange:#FF6500;
  --orange-dark:#D95500;
  --orange-light:#FFF0E8;
  --cyan:#00B8C8;
  --cyan-dark:#0095A3;
  --cyan-light:#E0F7FA;
  --dark:#1A1A2E;
  --text:#1A1A2E;
  --muted:#6B7280;
  --bg:#F5F7FA;
  --white:#FFFFFF;
  --border:#E5E7EB;
  --shadow:0 2px 8px rgba(0,0,0,.08);
  --shadow-md:0 4px 16px rgba(0,0,0,.12);
  --shadow-lg:0 8px 32px rgba(0,0,0,.16);
  --radius:12px;
  --radius-sm:8px;
  --nav-h:180px;
}

::-webkit-scrollbar{width:6px;height:6px}
::-webkit-scrollbar-track{background:var(--bg)}
::-webkit-scrollbar-thumb{background:#D1D5DB;border-radius:3px}

.container{max-width:1280px;margin:0 auto;padding:0 20px}
.section{padding:56px 0}
.section-sm{padding:36px 0}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;border-radius:var(--radius-sm);font-weight:600;font-size:14px;transition:all .2s ease;cursor:pointer;line-height:1;text-align:center}
.btn-primary{background:var(--orange);color:#fff}
.btn-primary:hover{background:var(--orange-dark);transform:translateY(-1px);box-shadow:0 4px 16px rgba(255,101,0,.35)}
.btn-secondary{background:var(--cyan);color:#fff}
.btn-secondary:hover{background:var(--cyan-dark);transform:translateY(-1px);box-shadow:0 4px 16px rgba(0,184,200,.35)}
.btn-outline{background:transparent;border:2px solid var(--orange);color:var(--orange)}
.btn-outline:hover{background:var(--orange);color:#fff}
.btn-ghost{background:rgba(255,255,255,.15);border:1.5px solid rgba(255,255,255,.4);color:#fff}
.btn-ghost:hover{background:rgba(255,255,255,.25)}
.btn-whatsapp{background:#25D366;color:#fff}
.btn-whatsapp:hover{background:#1da851;transform:translateY(-1px);box-shadow:0 4px 16px rgba(37,211,102,.4)}
.btn-lg{padding:14px 28px;font-size:15px;border-radius:10px}
.btn-sm{padding:8px 16px;font-size:13px;border-radius:6px}
@media(max-width:600px){
  .btn{padding:11px 18px;font-size:13px}
  .btn-lg{padding:12px 22px;font-size:14px}
}

.badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600}
.badge-orange{background:var(--orange-light);color:var(--orange-dark)}
.badge-cyan{background:var(--cyan-light);color:var(--cyan-dark)}
.badge-green{background:#E6F7EF;color:#007D43}

.section-title{font-size:clamp(22px,3vw,30px);font-weight:800;color:var(--text);line-height:1.2}
.section-sub{font-size:15px;color:var(--muted);margin-top:6px}

.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8 50%,#f0f0f0 75%);background-size:200%;animation:shimmer 1.5s infinite;border-radius:6px}
@keyframes shimmer{0%{background-position:200%}100%{background-position:-200%}}

/* ── Header estilo Magalu / Mercado Livre ── */
.ml-header{background:var(--orange);position:sticky;top:0;z-index:100;box-shadow:0 1px 8px rgba(0,0,0,.12)}
.ml-header-row{display:flex;align-items:center;flex-wrap:wrap;padding:8px 12px 12px;gap:10px;max-width:1280px;margin:0 auto}
.ml-icon-btn{background:transparent;color:#fff;border:0;width:40px;height:40px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:19px;cursor:pointer;position:relative;text-decoration:none;transition:background .15s;padding:0;flex-shrink:0}
.ml-icon-btn:hover,.ml-icon-btn:focus{background:rgba(255,255,255,.18)}
.ml-logo{display:flex;align-items:center;justify-content:center;flex:1;min-width:0;order:1}
.ml-logo img{height:64px;width:auto;object-fit:contain}
.ml-menu-btn{order:0}
.ml-header-actions{display:flex;align-items:center;gap:2px;flex-shrink:0;order:2}
.ml-action-link{display:none;align-items:center;gap:6px;color:#fff;text-decoration:none;font-size:13px;font-weight:600;padding:8px 12px;border-radius:8px;transition:background .15s}
.ml-action-link i{font-size:16px}
.ml-action-link:hover{background:rgba(255,255,255,.18)}
.ml-cart-btn .cart-badge{position:absolute;top:2px;right:2px;background:#FFE600;color:#222;min-width:18px;height:18px;padding:0 4px;border-radius:9px;font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center;border:2px solid var(--orange);box-sizing:content-box}
.cart-badge{position:absolute;top:2px;right:2px;background:#FFE600;color:#222;min-width:18px;height:18px;padding:0 4px;border-radius:9px;font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center}

.ml-search-box{position:relative;flex:1 0 100%;order:3}
.ml-search-input{display:flex;align-items:center;background:#fff;border-radius:24px;padding:0 18px;height:44px;box-shadow:0 2px 6px rgba(0,0,0,.12)}
.ml-search-input i.fa-search{color:var(--muted);font-size:15px;margin-right:10px;pointer-events:none;flex-shrink:0}
.ml-search-input input{flex:1;border:0;outline:none;font-size:16px;color:#333;background:transparent;font-family:inherit;min-width:0}
.ml-search-input input::placeholder{color:#9aa0a6}
.ml-search-clear{background:transparent;border:0;color:#9aa0a6;cursor:pointer;padding:4px;font-size:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.ml-search-clear:hover{color:var(--orange)}
.ml-search-suggest{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border-radius:12px;box-shadow:0 8px 28px rgba(0,0,0,.18);max-height:70vh;overflow-y:auto;z-index:200;display:none;border:1px solid var(--border)}
.ml-search-suggest.open{display:block}
.ml-suggest-item{display:flex;align-items:center;gap:12px;padding:10px 14px;cursor:pointer;text-decoration:none;color:inherit;border-bottom:1px solid var(--border);transition:background .15s}
.ml-suggest-item:last-child{border-bottom:0}
.ml-suggest-item:hover,.ml-suggest-item.active{background:var(--orange-light)}
.ml-suggest-thumb{width:46px;height:46px;border-radius:8px;background:var(--bg);flex-shrink:0;display:flex;align-items:center;justify-content:center;overflow:hidden;font-size:22px}
.ml-suggest-thumb img{width:100%;height:100%;object-fit:cover}
.ml-suggest-info{flex:1;min-width:0}
.ml-suggest-name{font-size:14px;font-weight:600;color:#222;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ml-suggest-name mark{background:transparent;color:var(--orange);font-weight:700;padding:0}
.ml-suggest-meta{font-size:12px;color:var(--muted);margin-top:2px;display:flex;align-items:center;gap:6px}
.ml-suggest-price{color:var(--orange);font-weight:700}
.ml-suggest-empty{padding:18px 14px;text-align:center;color:var(--muted);font-size:13px}
.ml-suggest-foot{display:flex;align-items:center;justify-content:center;gap:8px;padding:11px 14px;background:var(--bg);font-size:13px;font-weight:600;color:var(--orange);cursor:pointer;text-decoration:none;border-top:1px solid var(--border)}
.ml-suggest-foot:hover{background:var(--orange-light)}

/* Barra de categorias (estilo Mercado Livre row 2) */
.ml-cat-bar{background:var(--orange-dark);border-top:1px solid rgba(255,255,255,.18)}
.ml-cat-bar-inner{display:flex;align-items:center;gap:4px;padding:8px 12px;max-width:1280px;margin:0 auto;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.ml-cat-bar-inner::-webkit-scrollbar{display:none}
.ml-cat-location{display:inline-flex;align-items:center;gap:6px;color:#fff;font-size:12.5px;font-weight:600;padding:6px 12px 6px 4px;border-right:1px solid rgba(255,255,255,.25);margin-right:6px;white-space:nowrap;flex-shrink:0}
.ml-cat-location i{font-size:13px;color:#FFE600}
.ml-cat-link{display:inline-flex;align-items:center;gap:5px;color:#fff;text-decoration:none;font-size:13px;font-weight:500;padding:6px 12px;border-radius:18px;white-space:nowrap;flex-shrink:0;transition:background .15s}
.ml-cat-link:hover{background:rgba(255,255,255,.22)}
.ml-cat-link i{font-size:11px}
.ml-cat-highlight{background:#FFE600;color:#222;font-weight:700}
.ml-cat-highlight:hover{background:#FFD500;color:#222}
.ml-cat-highlight i{color:var(--orange-dark)}

@media(min-width:900px){
  :root{--nav-h:148px}
  .ml-header-row{padding:12px 24px;gap:24px;flex-wrap:nowrap}
  .ml-menu-btn{display:none}
  .ml-logo{flex:0 0 auto;justify-content:flex-start;order:0}
  .ml-logo img{height:72px}
  .ml-search-box{flex:1 1 auto;order:1;max-width:780px}
  .ml-search-input{height:46px;font-size:15px;padding:0 6px 0 18px}
  .ml-search-input input{font-size:14.5px}
  .ml-header-actions{order:2;gap:6px}
  .ml-action-link{display:inline-flex}
  .ml-icon-btn{font-size:20px;width:44px;height:44px}
  .ml-cat-bar-inner{padding:10px 24px;gap:6px}
  .ml-cat-link{font-size:13.5px;padding:7px 14px}
  .ml-cat-location{font-size:13px;padding:6px 16px 6px 4px}
}
@media(max-width:380px){
  .ml-logo img{height:54px}
  .ml-icon-btn{width:36px;height:36px;font-size:17px}
  .ml-cat-link{font-size:12.5px;padding:5px 10px}
}

/* Side menu drawer */
.ml-side-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:300;opacity:0;pointer-events:none;transition:opacity .25s}
.ml-side-overlay.open{opacity:1;pointer-events:all}
.ml-side-menu{position:fixed;top:0;left:0;bottom:0;width:300px;max-width:82vw;background:#fff;z-index:301;transform:translateX(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:4px 0 24px rgba(0,0,0,.18);display:flex;flex-direction:column}
.ml-side-menu.open{transform:translateX(0)}
.ml-side-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--orange);flex-shrink:0}
.ml-side-head img{height:54px;width:auto;filter:brightness(0) invert(1)}
.ml-side-nav{padding:8px 0;flex:1;overflow-y:auto}
.ml-side-nav a{display:flex;align-items:center;gap:14px;padding:14px 22px;font-size:15px;color:#333;font-weight:500;text-decoration:none;border-bottom:1px solid #f5f5f5;transition:background .15s}
.ml-side-nav a:hover{background:var(--orange-light);color:var(--orange)}
.ml-side-nav a i{width:22px;text-align:center;color:var(--orange);font-size:17px}
.ml-side-foot{padding:18px 22px;border-top:1px solid #eee;background:#fafafa}
.ml-side-foot p{font-size:13px;color:#666;margin:0 0 6px;line-height:1.5}

/* ── Cart Sidebar ── */
.cart-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:200;opacity:0;pointer-events:none;transition:opacity .3s}
.cart-overlay.open{opacity:1;pointer-events:all}
.cart-sidebar{position:fixed;top:0;right:0;bottom:0;width:100%;max-width:400px;background:var(--white);z-index:201;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:-4px 0 32px rgba(0,0,0,.15)}
.cart-sidebar.open{transform:translateX(0)}
.cart-head{padding:20px 20px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}
.cart-head h2{font-size:18px;font-weight:700;display:flex;align-items:center;gap:8px}
.cart-head h2 i{color:var(--orange)}
.close-btn{width:36px;height:36px;border-radius:var(--radius-sm);background:var(--bg);display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--muted);cursor:pointer;transition:all .2s}
.close-btn:hover{background:var(--border);color:var(--text)}
.cart-body{flex:1;overflow-y:auto;padding:16px 20px}
.cart-empty{text-align:center;padding:48px 20px;color:var(--muted)}
.cart-empty i{font-size:48px;margin-bottom:12px;opacity:.3}
.cart-empty p{font-size:14px}
.cart-item{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--border);align-items:flex-start}
.ci-img{width:56px;height:56px;border-radius:var(--radius-sm);overflow:hidden;flex-shrink:0;background:var(--bg);display:flex;align-items:center;justify-content:center;font-size:24px}
.ci-img img{width:100%;height:100%;object-fit:cover}
.ci-info{flex:1;min-width:0}
.ci-name{font-size:13px;font-weight:600;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ci-price{font-size:14px;font-weight:700;color:var(--orange);margin-bottom:6px}
.ci-qty{display:flex;align-items:center;gap:8px}
.qty-btn{width:28px;height:28px;border-radius:6px;background:var(--bg);border:1px solid var(--border);cursor:pointer;font-size:16px;font-weight:600;display:flex;align-items:center;justify-content:center;transition:all .2s}
.qty-btn:hover{background:var(--orange-light);border-color:var(--orange);color:var(--orange)}
.qty-val{font-size:14px;font-weight:700;min-width:20px;text-align:center}
.ci-remove{color:var(--muted);cursor:pointer;font-size:14px;padding:4px;flex-shrink:0;transition:color .2s}
.ci-remove:hover{color:#ef4444}
.cart-foot{padding:16px 20px;border-top:1px solid var(--border)}
.cart-total{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.cart-total-label{font-size:14px;color:var(--muted)}
.cart-total-val{font-size:22px;font-weight:800;color:var(--orange)}
.cart-cta{width:100%;padding:14px;background:var(--orange);color:#fff;font-size:16px;font-weight:700;border-radius:10px;display:flex;align-items:center;justify-content:center;gap:8px;transition:background .2s}
.cart-cta:hover{background:var(--orange-dark)}

/* ── Toast ── */
.toast-wrap{position:fixed;bottom:24px;right:24px;z-index:400;display:flex;flex-direction:column;gap:8px;pointer-events:none}
.toast{background:var(--dark);color:#fff;padding:12px 16px;border-radius:10px;font-size:13px;font-weight:500;display:flex;align-items:center;gap:8px;transform:translateX(120%);transition:transform .3s;pointer-events:none;box-shadow:var(--shadow-lg)}
.toast.show{transform:translateX(0)}
.toast.success{background:#D95500}
.toast.error{background:#dc2626}

/* ── WhatsApp Float ── */
.wa-float{position:fixed;bottom:24px;right:18px;z-index:150;width:54px;height:54px;background:#25D366;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:26px;color:#fff;box-shadow:0 4px 20px rgba(37,211,102,.5);animation:wa-pulse 2s infinite;text-decoration:none}
.wa-float:hover{transform:scale(1.1)}
@keyframes wa-pulse{0%,100%{box-shadow:0 4px 20px rgba(37,211,102,.5)}50%{box-shadow:0 4px 30px rgba(37,211,102,.8)}}
@media(max-width:600px){.wa-float{width:48px;height:48px;font-size:22px;bottom:18px;right:14px}}

/* ── Breadcrumb ── */
.breadcrumb{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);padding:16px 0}
.breadcrumb a{color:var(--muted);transition:color .2s}
.breadcrumb a:hover{color:var(--orange)}
.breadcrumb i{font-size:10px}
.breadcrumb .current{color:var(--text);font-weight:500}

/* ── Page Header ── */
.page-header{background:linear-gradient(135deg,var(--orange-dark) 0%,var(--orange) 100%);padding:32px 0;color:#fff}
.page-header h1{font-size:clamp(24px,4vw,36px);font-weight:800;margin-bottom:4px}
.page-header p{font-size:15px;opacity:.85}

/* ── Product Card ── */
.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px}
@media(max-width:480px){.products-grid{grid-template-columns:repeat(2,1fr);gap:10px}}

.product-card{background:var(--white);border-radius:var(--radius);border:1px solid var(--border);overflow:hidden;transition:box-shadow .2s,transform .2s;display:flex;flex-direction:column;position:relative}
.product-card:hover{box-shadow:0 4px 20px rgba(255,101,0,.15);transform:translateY(-3px);border-color:rgba(255,101,0,.2)}
.pc-img{aspect-ratio:4/3;overflow:hidden;background:#FFF5EE;position:relative;cursor:pointer}
.pc-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.product-card:hover .pc-img img{transform:scale(1.05)}
.pc-img .pc-icon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:48px;opacity:.7}
.pc-badge{position:absolute;top:8px;left:8px;background:var(--orange);color:#fff;font-size:10px;font-weight:700;padding:3px 8px;border-radius:4px;z-index:1}
.pc-unavail{position:absolute;inset:0;background:rgba(255,255,255,.7);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--muted)}
.pc-body{padding:14px;flex:1;display:flex;flex-direction:column}
.pc-cat{font-size:11px;color:var(--orange-dark);margin-bottom:4px;text-transform:uppercase;letter-spacing:.4px;font-weight:600}
.pc-name{font-size:14px;font-weight:700;color:var(--text);margin-bottom:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.4;cursor:pointer}
.pc-name:hover{color:var(--orange)}
.pc-price{font-size:20px;font-weight:800;color:var(--orange);margin-bottom:4px;line-height:1}
.pc-price-label{font-size:11px;color:var(--muted);font-weight:400;margin-bottom:12px}
.pc-footer{margin-top:auto;display:flex;gap:8px}
.pc-add{flex:1;padding:9px;background:var(--orange);color:#fff;border-radius:6px;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:5px;transition:background .2s;border:none;cursor:pointer}
.pc-add:hover{background:var(--orange-dark)}
.pc-view{width:36px;height:36px;border-radius:6px;background:var(--bg);border:1.5px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:14px;transition:all .2s;flex-shrink:0;cursor:pointer}
.pc-view:hover{border-color:var(--orange);color:var(--orange);background:var(--orange-light)}
.pc-view.in-cart{background:var(--cyan);border-color:var(--cyan);color:#fff}
.pc-view.in-cart:hover{background:var(--cyan-dark)}
.pc-qty-wrap{display:flex;align-items:center;gap:6px;flex:1}
.pc-qty-val{font-size:14px;font-weight:700;min-width:22px;text-align:center}

/* ── Filters ── */
.filters-bar{background:var(--white);border-bottom:1px solid var(--border);padding:12px 0;position:sticky;top:var(--nav-h);z-index:80}
.filters-inner{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;align-items:center}
.filters-inner::-webkit-scrollbar{display:none}
.filter-pill{flex-shrink:0;padding:8px 16px;border-radius:20px;border:1.5px solid var(--border);background:var(--white);font-size:13px;font-weight:500;color:var(--muted);cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:6px;white-space:nowrap}
.filter-pill:hover{border-color:var(--orange);color:var(--orange)}
.filter-pill.active{background:var(--orange);border-color:var(--orange);color:#fff}

/* ── Footer ── */
.footer{background:var(--dark);color:rgba(255,255,255,.8);padding-top:48px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;padding-bottom:40px}
@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr;gap:32px 24px;padding-bottom:32px}.footer-brand{grid-column:1/-1}}
@media(max-width:600px){.footer-grid{grid-template-columns:1fr 1fr;gap:28px 16px;padding-bottom:24px}}
@media(max-width:380px){.footer-grid{gap:22px 12px}}
.footer-brand img{height:44px;margin-bottom:14px;filter:brightness(0) invert(1)}
.footer-brand p{font-size:13px;line-height:1.6;max-width:360px;opacity:.7}
.footer h4{font-size:13px;font-weight:700;color:#fff;margin-bottom:14px;text-transform:uppercase;letter-spacing:.5px}
.footer-links li{margin-bottom:8px}
.footer-links a{font-size:13px;opacity:.7;transition:opacity .2s,color .2s;display:inline-block;padding:4px 0;min-height:32px}
.footer-links a:hover{opacity:1;color:var(--orange)}
.footer-links span{font-size:13px;opacity:.6}
.social-row{display:flex;gap:8px;margin-top:18px}
.social-btn{width:40px;height:40px;background:rgba(255,255,255,.1);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:16px;color:rgba(255,255,255,.7);transition:all .2s}
.social-btn:hover{background:var(--orange);color:#fff}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding:16px 0;display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:12px}
.footer-bottom p{font-size:12px;color:rgba(255,255,255,.35);margin:0}
@media(max-width:600px){.footer-bottom{padding:12px 0;gap:10px}.footer-bottom p{font-size:11px;line-height:1.3}}
@media(max-width:380px){.footer-bottom p{font-size:10px}}

@media(max-width:768px){
  .section{padding:32px 0}
  .container{padding:0 14px}
  .section-title{font-size:20px}
  .section-sub{font-size:13px}
  .footer{padding-top:40px}
}
@media(max-width:480px){
  .section{padding:24px 0}
  .section-title{font-size:18px}
  .footer{padding-top:32px}
  .footer h4{font-size:12px;margin-bottom:10px}
  .footer-links a, .footer-links span{font-size:12.5px}
  .footer-brand p{font-size:12.5px}
  .footer-brand img{height:38px;margin-bottom:10px}
  .social-row{margin-top:14px;gap:6px}
}

/* ── Shop Card (categoria page) ── */
.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px}
@media(max-width:500px){.shop-grid{grid-template-columns:repeat(2,1fr);gap:12px}}
.shop-card{background:#fff;border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);transition:box-shadow .2s,transform .2s;display:flex;flex-direction:column}
.shop-card:hover{box-shadow:0 4px 20px rgba(255,101,0,.12);transform:translateY(-2px)}
.shop-card-img{display:block;aspect-ratio:1;background:#f8f8f8;overflow:hidden;position:relative}
.shop-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.shop-card:hover .shop-card-img img{transform:scale(1.05)}
.shop-card-icon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:52px;opacity:.55}
.shop-card-body{padding:10px 12px 14px;display:flex;flex-direction:column;flex:1}
.shop-card-name{font-size:12.5px;color:var(--orange);font-weight:600;line-height:1.4;margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-decoration:none}
.shop-card-name:hover{text-decoration:underline}
.shop-card-price{font-size:17px;font-weight:800;color:#222;margin-bottom:10px}
.shop-card-btn{width:100%;padding:9px;background:var(--orange);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:background .2s}
.shop-card-btn:hover{background:var(--orange-dark)}
.shop-card-btn.in-cart{background:#16a34a}
.shop-card-btn.in-cart:hover{background:#15803d}

/* ── Sidebar Filter ── */
.cat-layout{display:grid;grid-template-columns:220px 1fr;gap:24px;align-items:start}
@media(max-width:860px){.cat-layout{grid-template-columns:1fr}}
.filter-sidebar{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:18px}
.fs-clear-btn{width:100%;padding:10px;border:1.5px solid #ddd;background:#f5f5f5;border-radius:8px;font-size:13px;font-weight:700;color:#555;cursor:pointer;transition:all .2s;margin-bottom:18px;letter-spacing:.3px}
.fs-clear-btn:hover{border-color:var(--orange);color:var(--orange)}
.fs-section{margin-bottom:20px}
.fs-section h4{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.8px;color:#888;margin-bottom:10px}
.fs-range-row{display:flex;justify-content:space-between;font-size:11px;font-weight:700;color:var(--orange);margin-bottom:6px}
.fs-range{width:100%;accent-color:var(--orange);cursor:pointer}
.fs-cat-list{display:flex;flex-direction:column;gap:2px}
.fs-cat-item{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:6px;cursor:pointer;font-size:13px;color:#444;font-weight:500;transition:background .15s}
.fs-cat-item:hover{background:var(--orange-light);color:var(--orange)}
.fs-cat-item.active{background:var(--orange);color:#fff;font-weight:700}
.fs-cat-item i{font-size:10px;opacity:.6}
.fs-cat-count{margin-left:auto;font-size:11px;opacity:.6;font-weight:600}
.fs-cat-item.active .fs-cat-count{opacity:.8}

/* ── Chat Widget ── */
.chat-widget{position:fixed;bottom:90px;right:18px;z-index:149;display:flex;flex-direction:column;align-items:flex-end;gap:10px}
@media(max-width:600px){.chat-widget{bottom:140px;right:14px}}
.cw-toggle-btn{width:48px;height:48px;border-radius:50%;background:#fff;border:2px solid var(--border);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 16px rgba(0,0,0,.15);transition:all .2s;position:relative}
.cw-toggle-btn:hover{border-color:var(--orange);transform:scale(1.08)}
.cw-toggle-btn i{font-size:20px;color:var(--orange)}
.cw-notif-dot{position:absolute;top:-3px;right:-3px;width:14px;height:14px;background:#16a34a;border-radius:50%;border:2px solid #fff;animation:cw-pulse 2s infinite}
@keyframes cw-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.25)}}
.cw-panel{width:300px;background:#fff;border-radius:16px;box-shadow:0 8px 40px rgba(0,0,0,.18);overflow:hidden;display:none;flex-direction:column;max-height:440px}
@media(max-width:380px){.cw-panel{width:calc(100vw - 28px)}}
.cw-panel.open{display:flex;animation:cw-slide-in .25s ease}
@keyframes cw-slide-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
.cw-head{background:var(--orange);padding:14px 16px;display:flex;align-items:center;justify-content:space-between}
.cw-head-left{display:flex;align-items:center;gap:10px}
.cw-avatar-icon{width:40px;height:40px;background:#fff;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:2px solid rgba(255,255,255,.4)}
.cw-avatar-icon img{width:100%;height:100%;object-fit:cover;display:block}
.cw-avatar-icon i{font-size:16px;color:var(--orange)}
.cw-title{font-size:14px;font-weight:700;color:#fff}
.cw-online{font-size:11px;color:rgba(255,255,255,.85);display:flex;align-items:center;gap:4px}
.cw-online-dot{width:7px;height:7px;background:#4ade80;border-radius:50%;flex-shrink:0}
.cw-close{background:none;border:none;color:#fff;font-size:16px;cursor:pointer;padding:4px;opacity:.8;transition:opacity .2s}
.cw-close:hover{opacity:1}
.cw-messages{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:8px;background:#f8f8f8}
.cw-msg{display:flex;gap:8px;align-items:flex-end}
.cw-msg.bot .cw-msg-avatar{width:30px;height:30px;border-radius:50%;background:#eee;overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center}
.cw-msg.bot .cw-msg-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.cw-msg.user{flex-direction:row-reverse}
.cw-bubble-msg{max-width:210px;padding:9px 13px;border-radius:14px;font-size:13px;line-height:1.5}
.cw-msg.bot .cw-bubble-msg{background:#fff;color:#333;border-radius:4px 14px 14px 14px;box-shadow:0 1px 4px rgba(0,0,0,.08)}
.cw-msg.user .cw-bubble-msg{background:var(--orange);color:#fff;border-radius:14px 14px 4px 14px}
.cw-quick{padding:10px 14px;display:flex;flex-wrap:wrap;gap:6px;background:#fff;border-top:1px solid #f0f0f0}
.cw-quick-btn{padding:6px 12px;border:1.5px solid var(--orange);color:var(--orange);background:#fff;border-radius:20px;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}
.cw-quick-btn:hover{background:var(--orange);color:#fff}
.cw-input-row{display:flex;border-top:1px solid #eee;background:#fff}
.cw-input{flex:1;padding:11px 14px;border:none;outline:none;font-size:13px;color:#333}
.cw-send{width:42px;background:none;border:none;color:var(--orange);font-size:16px;cursor:pointer;transition:opacity .2s}
.cw-send:hover{opacity:.7}

/* ═══════════════════════════════════════════════
   OTIMIZAÇÃO MOBILE — tap targets, scroll, fontes
═══════════════════════════════════════════════ */
@media(max-width:600px){
  /* Touch-friendly: mínimo 44x44px (Apple HIG / WCAG 2.5.5) */
  .ml-icon-btn{width:44px;height:44px;font-size:20px}
  .qty-btn{width:36px;height:36px;font-size:18px}
  .close-btn{width:40px;height:40px;font-size:17px}
  .cw-quick-btn{padding:8px 14px;font-size:13px}
  .footer-links a{padding:6px 0;min-height:36px;display:inline-flex;align-items:center}

  /* Logo header: 56px mobile (era 64px desktop) */
  .ml-logo img{height:56px}

  /* Cart sidebar mobile: ocupa 100%, sem max-width */
  .cart-sidebar{max-width:100%;width:100%}
  .cart-head{padding:16px}
  .cart-body{padding:12px 16px}
  .cart-foot{padding:14px 16px}
  .ci-img{width:64px;height:64px}
  .ci-name{font-size:14px;white-space:normal;line-height:1.3}
  .ci-price{font-size:15px}
  .cart-cta{padding:16px;font-size:16px;min-height:52px}
  .cart-total-val{font-size:20px}

  /* Hero carousel: altura aspect-ratio em vez de fixed */
  .hc-viewport{aspect-ratio:16/9;max-height:280px}
  .hc-btn{width:36px;height:36px;font-size:14px}

  /* Search input: 16px previne zoom no iOS Safari */
  .ml-search-input input{font-size:16px}
  .ml-search-input{height:44px}

  /* Page header (categoria/produto) menor */
  .page-header{padding:24px 0}
  .page-header h1{font-size:22px}
  .page-header p{font-size:13px}

  /* WhatsApp float — não sobrepor footer */
  .wa-float{bottom:80px}

  /* Toast em cima do bottom nav / WA float */
  .toast-wrap{bottom:90px;right:14px;left:14px}
  .toast{font-size:14px}

  /* Cards de categoria scroll horizontal smooth */
  .shop-grid{gap:10px}
  .shop-card-img{aspect-ratio:1}
  .product-card{font-size:13px}
  .pc-img{aspect-ratio:1/1}

  /* Container respiro */
  .container{padding:0 12px}

  /* Chat widget: padding e tamanhos */
  .cw-bubble-msg{max-width:80vw;font-size:14px}
  .cw-input{padding:14px;font-size:16px}
  .cw-send{width:48px;font-size:18px}
  .cw-quick{padding:10px 12px;gap:6px}
}

@media(max-width:380px){
  /* Telas muito pequenas (iPhone SE, etc) — fontes/spacing menores */
  .ml-logo img{height:48px}
  .ml-header-row{padding:6px 8px 10px;gap:6px}
  .container{padding:0 10px}
  .ci-img{width:56px;height:56px}
  .cart-cta{font-size:15px;padding:14px}
}

/* Suporte a notch (iPhone X+) e safe-area */
@supports(padding:max(0px)){
  .ml-header,.footer-bottom,.cart-foot,.wa-float{
    padding-left:max(12px,env(safe-area-inset-left));
    padding-right:max(12px,env(safe-area-inset-right));
  }
  .footer-bottom{padding-bottom:max(16px,env(safe-area-inset-bottom))}
}

/* Animations: respeitar prefers-reduced-motion */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
    scroll-behavior:auto!important;
  }
}

/* ================================================================
   MOBILE AUDIT FIXES (2026-06-13)
   Tap targets >=40px, inputs 16px, leitura no celular
   ================================================================ */
@media(max-width:600px){
  /* Fix 1: qty-btn (botões − +) — Apple HIG mínimo 40px na área de toque */
  .qty-btn{
    width:40px;height:40px;font-size:18px;
  }
  .qty-val{font-size:16px;min-width:28px}
  .ci-name{font-size:14px}
  .ci-price{font-size:15px}

  /* Fix 2: Nav-cat-bar (Todos / Outros / Kit festa…)
     Era 32px de altura — agora padding generoso vira ~44px */
  .ml-cat-link{
    padding:11px 14px!important;
    min-height:44px;
    display:inline-flex;
    align-items:center;
    font-size:14px;
  }
  .ml-cat-location{
    padding:11px 12px;
    min-height:44px;
    display:inline-flex;
    align-items:center;
  }

  /* Fix 3: Inputs / selects / range — força 16px pra evitar zoom iOS */
  input[type="range"],
  input[type="number"],
  input[type="search"],
  input[type="text"],
  input[type="tel"],
  input[type="email"],
  input[type="password"],
  input[type="date"],
  input[type="datetime-local"],
  textarea,
  select{
    font-size:16px!important;
  }

  /* Fix 4: Radio / checkbox e seus labels (autocadastro) — 16px */
  input[type="radio"]+label,
  input[type="checkbox"]+label,
  label:has(input[type="radio"]),
  label:has(input[type="checkbox"]){
    font-size:16px;
  }
  input[type="radio"], input[type="checkbox"]{
    width:20px;height:20px;
  }

  /* Fix 5: Footer — sobe 11px pra 12px (limite WCAG) */
  .footer-bottom p{font-size:12px!important;line-height:1.35}
  .footer-links a{font-size:13px}

  /* Fix bonus: ci-remove (lixeira do carrinho) área de toque maior */
  .ci-remove{
    padding:12px;
    min-width:40px;min-height:40px;
    display:inline-flex;align-items:center;justify-content:center;
  }
}

/* ================================================================
   MOBILE AUDIT FIXES — PASSE 2 (2026-06-13)
   Pega o que sobrou: hero dots, featured cards, shop cards, footer
   ================================================================ */
@media(max-width:600px){
  /* Hero carousel dots — bolinha visual fica 8px mas área clicável 30x30 */
  .hc-dot{
    position:relative;
  }
  .hc-dot::before{
    content:"";
    position:absolute;
    inset:-12px;
    background:transparent;
  }

  /* Featured "Adicionar ao carrinho" (botão + dos cards horizontais) */
  .featured-btn{
    width:40px!important;
    height:40px!important;
    font-size:16px;
  }

  /* Shop cards (catálogo: nome do produto + Alugar) */
  .shop-card-name{
    padding:8px 0;
    min-height:44px;
    display:flex;
    align-items:center;
    line-height:1.3;
  }
  .shop-card-btn{
    min-height:44px;
    font-size:14px;
  }
  .prod-cat-tag{
    min-height:36px;
    display:inline-flex;
    align-items:center;
  }

  /* Footer links — categorias e navegação no rodapé */
  .footer-links li a, .footer-links a{
    padding:10px 0;
    min-height:40px;
    display:inline-flex;
    align-items:center;
  }

  /* Botão buscar CEP do autocadastro */
  .ac-cep-btn{
    width:44px!important;
    height:44px!important;
  }

  /* Radio/checkbox inputs em si (sem :has, mais robusto) */
  input[type="radio"],
  input[type="checkbox"]{
    font-size:16px;
    transform:scale(1.2);
    margin-right:6px;
  }
}

/* ================================================================
   MOBILE FIXES — PASSE 3 (último ajuste pontual)
   Footer links 40→44, hc-dot e pc-dot mantém ::before como área de toque
   ================================================================ */
@media(max-width:600px){
  .footer-links li a, .footer-links a{
    min-height:44px;
  }
  /* Forçar área de toque generosa nos dots dos carrosséis */
  .hc-dot, .pc-dot{
    position:relative!important;
    z-index:6;
  }
  .hc-dot::after, .pc-dot::after{
    content:"";
    position:absolute;
    inset:-15px;
    background:transparent;
  }
}

/* ════════════════════════════════════════════════════════
   HEADER NOVO 2026-06-13 (replicado do index.html)
   Aplicado a todas as páginas via navbarHTML() em app.js
   ════════════════════════════════════════════════════════ */
:root{
  --hn-orange:#E85A00;
  --hn-orange-dark:#C84B00;
  --hn-ink:#1A1A1F;
  --hn-gray-700:#374151;
  --hn-gray-500:#6B7280;
  --hn-gray-200:#E5E7EB;
  --hn-gray-100:#F3F4F6;
}
.hn-container{max-width:1400px;margin:0 auto;padding:0 24px}
@media(max-width:600px){.hn-container{padding:0 14px}}

/* ── TOPBAR laranja ── */
.hn-topbar{
  background:var(--hn-orange);
  color:#fff;
  font-size:13px;font-weight:500;
  padding:8px 0;
}
.hn-topbar-inner{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.hn-topbar-left{display:flex;align-items:center;gap:8px}
.hn-topbar-left i{font-size:14px}
.hn-topbar-right{display:flex;align-items:center;gap:24px}
.hn-topbar-right a{display:inline-flex;align-items:center;gap:6px;color:#fff;font-weight:500;transition:opacity .2s;text-decoration:none}
.hn-topbar-right a:hover{opacity:.85}
.hn-topbar-social{display:flex;align-items:center;gap:10px}
.hn-topbar-social a{padding:0;width:auto}
.hn-topbar-social i{font-size:16px}
@media(max-width:780px){
  .hn-topbar{font-size:12px;padding:7px 0}
  .hn-topbar-left span{display:none}
  .hn-topbar-left::before{content:"🚛 Entrega pontual em Salvador";font-weight:600}
}
@media(max-width:480px){
  .hn-topbar-right > a:first-child > span{display:none}
  .hn-topbar-right > a:first-child::after{content:"WhatsApp"}
}

/* ── MAIN HEADER branco ── */
.hn-main-header{
  background:#fff;
  padding:16px 0;
  border-bottom:1px solid var(--hn-gray-200);
  position:sticky;top:0;z-index:50;
}
.hn-main-row{display:flex;align-items:center;gap:24px}
.hn-brand{flex-shrink:0}
.hn-brand img{height:64px;width:auto;display:block}

.hn-search-wrap{flex:1;max-width:680px;position:relative}
.hn-search-input{
  display:flex;align-items:center;
  background:#fff;
  border:1.5px solid var(--hn-gray-200);
  border-radius:8px;
  padding:0 16px;height:48px;
  transition:border-color .15s,box-shadow .15s;
}
.hn-search-input:focus-within{border-color:var(--hn-orange);box-shadow:0 0 0 3px rgba(232,90,0,.1)}
.hn-search-input i{color:var(--hn-gray-500);font-size:16px;margin-right:10px}
.hn-search-input input{
  flex:1;border:0;outline:none;background:transparent;
  font-family:inherit;font-size:15px;color:var(--hn-ink);min-width:0;
}
.hn-search-input input::placeholder{color:var(--hn-gray-500)}

.hn-location-btn{
  display:inline-flex;align-items:center;gap:8px;
  color:var(--hn-gray-700);font-weight:500;font-size:14px;
  padding:8px 12px;border-radius:8px;
  transition:background .15s;white-space:nowrap;text-decoration:none;
}
.hn-location-btn i{color:var(--hn-orange)}
.hn-location-btn:hover{background:var(--hn-gray-100)}

.hn-cta-whatsapp{
  display:inline-flex;align-items:center;gap:10px;
  background:var(--hn-orange);color:#fff;
  padding:12px 22px;border-radius:999px;
  font-weight:700;font-size:14px;
  transition:background .15s,transform .15s;
  border:0;white-space:nowrap;text-decoration:none;
}
.hn-cta-whatsapp:hover{background:var(--hn-orange-dark);transform:translateY(-1px);color:#fff}
.hn-cta-whatsapp .hn-wa-icon{
  width:28px;height:28px;border-radius:50%;background:#fff;
  display:flex;align-items:center;justify-content:center;
  color:var(--hn-orange);font-size:14px;
}

.hn-header-action{
  display:inline-flex;align-items:center;gap:8px;
  color:var(--hn-gray-700);font-weight:500;font-size:14px;
  padding:8px 6px;border-radius:8px;
  transition:color .15s;white-space:nowrap;text-decoration:none;
}
.hn-header-action:hover{color:var(--hn-orange)}
.hn-header-action i{font-size:18px}

.hn-cart-btn{
  position:relative;width:44px;height:44px;
  display:flex;align-items:center;justify-content:center;
  font-size:20px;color:var(--hn-gray-700);
  border-radius:50%;background:transparent;border:0;cursor:pointer;
  transition:background .15s,color .15s;
}
.hn-cart-btn:hover{background:var(--hn-gray-100);color:var(--hn-orange)}
.hn-cart-btn .cart-badge{
  position:absolute;top:0;right:0;
  min-width:20px;height:20px;padding:0 5px;
  background:var(--hn-orange);color:#fff;
  border-radius:10px;font-size:11px;font-weight:800;
  display:flex;align-items:center;justify-content:center;
  border:2px solid #fff;
}

.hn-menu-toggle{display:none;background:transparent;border:0;cursor:pointer;color:var(--hn-gray-700);font-size:20px}

@media(max-width:920px){
  .hn-main-row{flex-wrap:wrap;gap:12px}
  .hn-search-wrap{order:5;flex-basis:100%;max-width:none}
  .hn-location-btn .hn-loc-text{display:none}
  .hn-cta-whatsapp .hn-cta-text{display:none}
  .hn-cta-whatsapp{padding:10px 14px}
  .hn-header-action span{display:none}
}
@media(max-width:600px){
  .hn-main-header{padding:10px 0}
  .hn-main-row{gap:10px}
  .hn-brand{flex:1}
  .hn-brand img{height:44px}
  .hn-search-input{height:44px;font-size:16px}
  .hn-menu-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px}
  /* No mobile, esconde Localização, CTA WhatsApp e Cadastre-se — float verde + side menu cobrem */
  .hn-location-btn,
  .hn-cta-whatsapp,
  .hn-header-action{display:none}
}

/* Topbar do navbarHTML (hn-*) — também simplifica no mobile */
@media(max-width:780px){
  .hn-topbar{font-size:12px;padding:6px 0}
  .hn-topbar-left span{display:none}
  .hn-topbar-left::before{content:"Entrega pontual em Salvador";font-weight:600}
  .hn-topbar-right > a:first-child,
  .hn-topbar-right > span{display:none}
  .hn-topbar-social > span{display:none}
  .hn-topbar-social{gap:14px}
  .hn-topbar-social i{font-size:18px}
}

/* ── CATEGORY NAV branca ── */
.hn-cat-nav{
  background:#fff;
  border-bottom:1px solid var(--hn-gray-200);
  position:sticky;top:0;z-index:40;
}
.hn-cat-inner{
  display:flex;align-items:center;gap:4px;
  overflow-x:auto;scrollbar-width:none;
  padding:4px 0;
}
.hn-cat-inner::-webkit-scrollbar{display:none}
.hn-cat-link{
  display:inline-flex;align-items:center;gap:8px;
  padding:14px 18px;font-size:14px;font-weight:600;
  color:var(--hn-gray-700);white-space:nowrap;
  border-bottom:3px solid transparent;
  transition:color .15s,border-color .15s;
  min-height:48px;text-decoration:none;
}
.hn-cat-link i{font-size:16px;color:var(--hn-gray-500)}
.hn-cat-link:hover, .hn-cat-link:hover i{color:var(--hn-orange)}
.hn-cat-link.active, .hn-cat-link.active i{color:var(--hn-orange)}
.hn-cat-link.active{border-bottom-color:var(--hn-orange)}
@media(max-width:600px){
  .hn-cat-link{padding:12px 14px;font-size:13px}
  .hn-cat-link i{font-size:15px}
}

/* ── Sugestões de busca (mantém compatibilidade c/ #nav-search-suggest) ── */
.hn-search-wrap .ml-search-suggest{top:calc(100% + 6px)}

/* ════════════════════════════════════════════════════════
   BOTÕES "Adicionar" / "Alugar" — animação pulse + shine
   Aplica a .add-btn (home), .pc-add (home/produto), .shop-card-btn (cat)
   ════════════════════════════════════════════════════════ */
.product-card .add-btn,
.pc-add,
.shop-card-btn{
  position:relative;
  overflow:hidden;
  z-index:1;
  box-shadow:0 0 0 0 rgba(232,90,0,.55);
  animation:btnAddPulse 2.6s ease-out infinite;
  transition:background .18s ease, transform .18s ease, box-shadow .25s ease;
}
.product-card .add-btn::before,
.pc-add::before,
.shop-card-btn::before{
  content:"";
  position:absolute;
  top:-50%;left:-60%;
  width:50%;height:200%;
  background:linear-gradient(120deg,
    transparent 0%,
    rgba(255,255,255,.30) 50%,
    transparent 100%);
  transform:skewX(-20deg);
  animation:btnAddShine 3.6s ease-in-out infinite;
  pointer-events:none;
}
.product-card .add-btn:hover,
.pc-add:hover,
.shop-card-btn:hover{
  transform:translateY(-1px) scale(1.02);
  box-shadow:0 6px 16px rgba(232,90,0,.4);
  animation-play-state:paused;
}
.product-card .add-btn:active,
.pc-add:active,
.shop-card-btn:active{transform:translateY(0) scale(.99)}

/* Quando o item já está no carrinho, pausa a animação (verde, fica calmo) */
.shop-card-btn.in-cart{
  animation:none;
  box-shadow:none;
}
.shop-card-btn.in-cart::before{display:none}

@keyframes btnAddPulse{
  0%   { box-shadow:0 0 0 0 rgba(232,90,0,.55); }
  60%  { box-shadow:0 0 0 12px rgba(232,90,0,0); }
  100% { box-shadow:0 0 0 0 rgba(232,90,0,0); }
}
@keyframes btnAddShine{
  0%, 65% { left:-60%; }
  100%    { left:130%; }
}
