:root{
  --sp-text:#14231F;
  --sp-muted:#3a4844;
  --sp-border:rgba(20,35,31,.12);
  --sp-bg-soft:rgba(255,255,255,.78);
  --sp-shadow:0 24px 60px rgba(18,30,27,.10);
  --sp-shadow-soft:0 14px 34px rgba(18,30,27,.08);
  --sp-wa:#25D366;
  --sp-wa-dark:#1DA851;
  --sp-success:#22c55e;
  --sp-danger:#ef4444;
  --sp-warning:#f59e0b;
}
*{box-sizing:border-box}
body{margin:0;font-family:'Plus Jakarta Sans',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:linear-gradient(180deg, color-mix(in srgb, var(--sp-bg) 82%, #fff 18%) 0%, var(--sp-bg) 100%);color:var(--sp-text)}
a{text-decoration:none}
.reveal-ready{opacity:0;transform:translateY(14px);transition:opacity .42s ease,transform .42s ease;will-change:opacity,transform}
.reveal-ready.reveal-in,.reveal-in{opacity:1;transform:translateY(0)}
@media (prefers-reduced-motion: reduce){.reveal-ready,.reveal-ready.reveal-in,.reveal-in{opacity:1;transform:none;transition:none}}

/* ════ Breadcrumb Navigation ════ */
.store-breadcrumb {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 0;
  font-size: 13px;
  color: var(--sp-muted);
  margin-bottom: 12px;
  flex-wrap: wrap;
}
.store-breadcrumb a {
  color: var(--sp-primary, #0F5F55);
  font-weight: 600;
  text-decoration: none;
  transition: color 0.2s ease;
}
.store-breadcrumb a:hover {
  text-decoration: underline;
}
.breadcrumb-sep {
  opacity: 0.5;
}

.store-shell{max-width:var(--sd-page-max,1160px);margin:0 auto;padding:30px 18px 110px}
.hero-card{
  position:relative;
  overflow:hidden;
  border-radius:34px;
  padding:28px;
  background:linear-gradient(135deg,var(--sp-hero1),var(--sp-hero2));
  box-shadow:var(--sp-shadow);
}
.hero-card::before{
  content:"";position:absolute;inset:-40% auto auto -12%;width:320px;height:320px;border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,.18), rgba(255,255,255,0) 68%);
}
.hero-card::after{
  content:"";position:absolute;inset:auto -120px -180px auto;width:360px;height:360px;border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,.14), rgba(255,255,255,0) 70%);
}
.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:stretch}
.brand-block{display:flex;align-items:flex-start;gap:18px;min-width:0}
.logo-badge,.logo-placeholder{width:96px;height:96px;flex:0 0 96px;border-radius:28px;background:#fff;border:1px solid rgba(255,255,255,.22);box-shadow:0 18px 42px rgba(0,0,0,.14)}
.logo-badge{object-fit:cover}
.logo-placeholder{display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:900;color:var(--sp-primary)}
.brand-copy{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;min-height:96px}
.title-row{display:flex;align-items:center;gap:10px;min-width:0;flex-wrap:nowrap}
.store-name{margin:0;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:clamp(30px,4.2vw,46px);line-height:1.03;font-weight:900;letter-spacing:-.03em;color:#fff;text-shadow:0 12px 28px rgba(0,0,0,.16)}
.verify-badge{display:inline-flex;align-items:center;justify-content:center;flex:0 0 38px;width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.28);backdrop-filter:blur(10px);box-shadow:0 10px 24px rgba(0,0,0,.10);animation:softPulse 3s ease-in-out infinite}
.verify-badge i{font-size:18px;color:#FFD772}
.store-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;color:rgba(255,255,255,.84)}
.meta-chip{display:inline-flex;align-items:center;gap:7px;padding:8px 13px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16);font-size:13px;font-weight:700;backdrop-filter:blur(8px);color:#fff}
.store-copy{margin:14px 0 0;max-width:620px;font-size:14px;line-height:1.8;color:rgba(255,255,255,.82)}
.contact-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;max-width:620px}.hero-icon-row{align-items:center;gap:12px}

/* ════ PREMIUM HERO LAYOUT ════ */
.hero-grid-premium{position:relative;z-index:1;display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center;max-width:100%}
.hero-left{min-width:0}
.hero-right{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;min-width:200px}
.hero-actions{text-align:right}
.hero-action-title{font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.72);margin-bottom:16px}
.hero-icon-row-premium{display:flex;flex-direction:column;align-items:flex-end;gap:16px}
.hero-icon-row-horizontal{display:flex;flex-direction:row;align-items:center;gap:16px;justify-content:flex-end}
.hero-action-item{display:flex;flex-direction:column;align-items:center;gap:6px}
.hero-action-label{font-size:11px;font-weight:700;color:rgba(255,255,255,.84);text-align:center}
.hero-action-item .hero-icon-btn{width:52px;height:52px;border-radius:18px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.24);backdrop-filter:blur(10px);box-shadow:0 14px 32px rgba(0,0,0,.12);display:flex;align-items:center;justify-content:center;transition:transform 0.3s ease,box-shadow 0.3s ease,background 0.3s ease}
@media (hover: hover){.hero-action-item .hero-icon-btn:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(0,0,0,.18);background:rgba(255,255,255,.24)}}
.hero-action-item .hero-icon-btn i{font-size:22px;color:#fff;display:flex;align-items:center;justify-content:center;width:100%;height:100%}
.hero-action-item .hero-icon-wa{background:var(--sp-wa);border-color:rgba(255,255,255,.16);box-shadow:0 14px 32px rgba(37,211,102,.16)}
@media (hover: hover){.hero-action-item .hero-icon-wa:hover{background:var(--sp-wa-dark);border-color:rgba(255,255,255,.32)}}
.hero-action-item .hero-icon-btn:not(.hero-icon-wa){background:linear-gradient(135deg, rgba(255,255,255,.24), rgba(255,255,255,.16));border:1px solid rgba(255,255,255,.32)}
@media (hover: hover){.hero-action-item .hero-icon-btn:not(.hero-icon-wa):hover{background:linear-gradient(135deg, rgba(255,255,255,.32), rgba(255,255,255,.24))}}
.mobile-inline-actions{display:none}
.hero-aside{display:flex;align-items:stretch}
.hero-aside-card{width:100%;display:grid;align-content:center;gap:14px;padding:22px;border-radius:26px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(10px);box-shadow:0 20px 42px rgba(0,0,0,.10)}
.hero-aside-label{font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.72)}
.hero-aside-actions{display:grid;gap:10px}
.btn-brand,.btn-outline,.btn-whatsapp,.icon-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;border:none;border-radius:18px;padding:0 18px;font-weight:800;transition:transform .22s ease, box-shadow .22s ease, background .22s ease, color .22s ease, border-color .22s ease}
.btn-brand{background:linear-gradient(135deg,var(--sp-accent), color-mix(in srgb, var(--sp-accent) 72%, #fff 28%));color:var(--sp-primary-dark);box-shadow:0 18px 30px rgba(212,169,79,.24)}
.btn-outline{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);color:#fff;backdrop-filter:blur(8px)}
.btn-whatsapp{background:var(--sp-wa);color:#fff;box-shadow:0 16px 32px rgba(37,211,102,.20)}
.icon-button{width:50px;flex:0 0 50px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.18);color:#fff;padding:0}
.catalog-shell{margin-top:24px;display:grid;gap:18px}
.catalog-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px}
.catalog-title h2{margin:0;font-size:30px;line-height:1.1;font-weight:900;color:var(--sp-primary-dark)}
.catalog-title p{margin:6px 0 0;font-size:14px;color:var(--sp-muted);line-height:1.6}
.catalog-title strong{color:var(--sp-primary)}
.catalog-live-meta{font-size:12px;opacity:.9}
.catalog-tools{display:grid;grid-template-columns:minmax(320px,1fr) auto auto;gap:14px;align-items:center;min-width:0;width:100%}
.catalog-search-form{display:flex;min-width:0;max-width:none;width:100%}

/* ── Search Shell ── */
.search-shell{display:flex;align-items:center;gap:10px;width:100%;padding:12px 14px;border-radius:22px;background:var(--sp-surface);border:1px solid var(--sp-border);box-shadow:var(--sp-shadow-soft);min-width:0;position:relative}
.search-label{position:absolute;top:-22px;left:0;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--sp-muted);opacity:0;pointer-events:none}
.search-shell i{color:var(--sp-primary);flex:0 0 auto}
.search-shell input{flex:1;min-width:0;border:none;outline:none;background:transparent;color:var(--sp-text);font-size:14px;font-family:inherit}
.search-shell input::placeholder{color:var(--sp-muted)}
.search-shell input:focus{outline:none}
.search-submit{width:46px;height:46px;border:none;border-radius:15px;background:linear-gradient(135deg,var(--sp-primary),var(--sp-primary-dark));color:#fff;flex:0 0 46px;box-shadow:var(--sp-shadow-soft);cursor:pointer;transition:transform .22s ease, background .22s ease, border-color .22s ease}
.search-submit i{color:#fff}
.search-submit:hover{transform:translateY(-2px)}
.search-submit:focus{outline:2px solid var(--sp-primary);outline-offset:2px}

/* ── Sort Shell ── */
.sort-shell{display:flex;align-items:center;gap:8px;position:relative}
.sort-label{font-size:12px;font-weight:700;color:var(--sp-muted);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;display:flex;align-items:center;gap:6px}
.sort-select{background:var(--sp-surface);border:1px solid var(--sp-border);border-radius:16px;padding:10px 12px 10px 14px;font-family:inherit;font-size:13px;font-weight:600;color:var(--sp-text);cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease;box-shadow:var(--sp-shadow-soft);appearance:none;padding-right:32px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%234B5563' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right 6px center;background-repeat:no-repeat;background-size:20px}
@media (hover: hover){.sort-select:hover{border-color:var(--sp-primary);box-shadow:0 16px 40px rgba(15,95,85,.1)}}
.sort-select:focus{outline:none;border-color:var(--sp-primary);box-shadow:0 0 0 3px rgba(15,95,85,.1)}
.catalog-wishlist-trigger{
  position:relative;
  min-height:48px;
  padding:0 16px;
  border-radius:16px;
  border:1px solid color-mix(in srgb,var(--sp-accent) 28%, white 72%);
  background:linear-gradient(135deg,color-mix(in srgb,var(--sp-accent) 16%, white 84%), #fff7e8);
  color:var(--sp-primary-dark);
  box-shadow:var(--sp-shadow-soft);
  font-weight:800;
}
@media (hover: hover){
.catalog-wishlist-trigger:hover{
  border-color:var(--sp-accent);
  color:var(--sp-primary-dark);
  transform:translateY(-1px);
}
}
.catalog-wishlist-trigger i{color:var(--sp-accent)}

.catalog-body-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0;align-items:start;}
.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch;}
.product-card{display:flex;flex-direction:column;overflow:hidden;border-radius:28px;background:var(--sp-surface);border:1px solid var(--sp-border);transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease;min-width:0;box-shadow:var(--sp-shadow-soft)}
.product-media{position:relative;aspect-ratio:1/1;background:linear-gradient(180deg,color-mix(in srgb,var(--sp-primary) 6%, #fff 94%),#fff);overflow:hidden}
.product-media img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
.product-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#bcc9c4;font-size:34px}
.product-badge{position:absolute;top:14px;right:14px;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.96);border:1px solid rgba(22,35,31,.08);box-shadow:0 10px 22px rgba(18,30,27,.10);z-index:2}
.product-badge i{font-size:15px;color:var(--sp-primary)}
.product-badge.featured{background:linear-gradient(135deg,var(--sp-accent),var(--sp-accent-soft));border:none;color:#fff;width:auto;height:auto;padding:8px 12px;border-radius:999px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.product-body{display:flex;flex-direction:column;gap:12px;padding:18px;flex:1}
.product-top{display:grid;grid-template-columns:1fr;align-items:start;gap:6px}
.product-name-link{text-decoration:none;color:inherit}
.product-name{margin:0;min-width:0;font-size:16px;line-height:1.35;font-weight:800;color:var(--sp-primary-dark);overflow-wrap:anywhere;transition:color .2s ease}
@media (hover: hover){.product-name-link:hover .product-name{color:var(--sp-primary)}}
.product-price{font-size:22px;line-height:1.1;font-weight:900;color:var(--sp-primary);white-space:nowrap;justify-self:start;align-self:start}
.product-desc{margin:0;font-size:13px;line-height:1.6;color:var(--sp-muted);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.product-sub{display:flex;align-items:center;justify-content:flex-start;gap:10px;flex-wrap:wrap}
.stock-pill{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:999px;background:color-mix(in srgb,var(--sp-primary) 8%, white 92%);border:1px solid color-mix(in srgb,var(--sp-primary) 12%, white 88%);color:var(--sp-primary);font-size:11px;font-weight:800}
.stock-pill.stock-out{background:color-mix(in srgb,var(--sp-danger) 8%, white 92%);border-color:color-mix(in srgb,var(--sp-danger) 12%, white 88%);color:var(--sp-danger)}
.product-actions{display:flex;gap:9px;margin-top:auto}
.product-action-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:16px;min-height:44px;padding:11px 14px;font-size:13px;font-weight:800;transition:background .22s ease,color .22s ease,border-color .22s ease,box-shadow .22s ease;cursor:pointer}
.product-action-btn:disabled{opacity:0.5;cursor:not-allowed}
.product-action-btn:focus{outline:2px solid var(--sp-primary);outline-offset:2px}
.product-actions .btn-whatsapp,.product-actions .btn-brand{flex:1}
.section-card{border-radius:28px;padding:22px;background:var(--sp-surface);border:1px solid var(--sp-border);box-shadow:var(--sp-shadow-soft)}
.pagination-wrapper{margin-top:28px;display:flex;justify-content:center}
.pagination-wrapper .pagination{margin:0}
.page-item a, .page-item button{color:var(--sp-primary);text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}
@media (hover: hover){.page-item:hover a, .page-item:hover button{transform:translateY(-2px);box-shadow:0 8px 16px rgba(15,95,85,.15)}}
.page-item.active .page-link{background:var(--sp-primary)}
.page-link{border-color:var(--sp-border);color:var(--sp-primary)}
.page-link:focus{outline:2px solid var(--sp-primary);outline-offset:2px}

#toast-container{position:fixed;top:20px;left:50%;transform:translateX(-50%);z-index:1100;display:flex;flex-direction:column;gap:12px;pointer-events:none}
.toast-notification{background:rgba(0,0,0,.9);color:#fff;padding:12px 16px;border-radius:12px;font-size:13px;font-weight:600;box-shadow:0 16px 40px rgba(0,0,0,.3);transform:translateY(-20px);transition:opacity .3s ease, transform .3s ease;opacity:0;pointer-events:all;white-space:nowrap}
.toast-notification.show{opacity:1;transform:translateY(0)}
@media(min-width:861px){#toast-container{top:auto;bottom:168px;left:auto;transform:none;right:20px}.toast-notification{transform:translateY(100px)}.toast-notification.show{transform:translateY(0)}}

.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;backdrop-filter:blur(2px)}
.modal-content{background:var(--sp-surface);border-radius:24px;padding:28px 24px;max-width:420px;width:90%;box-shadow:0 28px 64px rgba(0,0,0,.15);max-height:80vh;overflow-y:auto;position:relative;animation:slideUp .3s ease}
.modal-content h3{margin:0 0 16px;font-size:20px;font-weight:800;color:var(--sp-primary-dark)}
.modal-close{position:absolute;top:16px;right:16px;width:40px;height:40px;border:none;border-radius:12px;background:rgba(0,0,0,.06);color:var(--sp-text);cursor:pointer;transition:background .2s ease;display:flex;align-items:center;justify-content:center}
.modal-close:hover{background:rgba(0,0,0,.1)}
.modal-close:focus{outline:2px solid var(--sp-primary)}
@keyframes slideUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}

.empty-state{text-align:center;padding:56px 22px}
.empty-state i{font-size:40px;color:#b7c4bf}
.empty-state p{margin:14px 0 0;color:var(--sp-muted)}
.empty-suggestions{margin-top:20px;font-size:13px;color:var(--sp-muted);text-align:left;display:inline-block}
.empty-suggestions a{color:var(--sp-primary);font-weight:600;text-decoration:none}
.empty-suggestions a:hover{text-decoration:underline}
.store-footer{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;margin-top:28px;padding-top:2px;color:var(--sp-muted);font-size:12px;text-align:center}
.store-footer a{font-weight:900;color:var(--sp-primary);letter-spacing:-.01em}
.store-footer-powered a span{font-weight:500;color:var(--sp-muted)}
.footer-sokodesk-link{color:var(--sp-primary);font-weight:900;text-decoration:none;transition:color .2s ease}
.footer-sokodesk-link:hover{color:var(--sp-primary-dark, #0a3d37);text-decoration:underline}
.store-footer-powered{margin-top:4px}
.social-row{display:flex;gap:8px;flex-wrap:wrap}
.social-row span{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:999px;background:var(--sp-surface);border:1px solid var(--sp-border);color:var(--sp-primary);box-shadow:0 10px 20px rgba(18,30,27,.04)}
.footer-social-link,.footer-badge{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:999px;background:var(--sp-surface);border:1px solid var(--sp-border);color:var(--sp-primary);box-shadow:0 10px 20px rgba(18,30,27,.04);text-decoration:none;transition:transform .2s ease,box-shadow .2s ease;cursor:pointer;font-size:12px}
@media (hover: hover){.footer-social-link:hover,.footer-badge:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(18,30,27,.12)}}
.footer-badge{border:none;background:transparent;font-weight:600}
.footer-badge:focus{outline:2px solid var(--sp-primary);outline-offset:4px}
.mobile-dock{display:none;position:fixed;bottom:0;left:0;right:0;padding:12px 12px calc(12px + env(safe-area-inset-bottom));background:var(--sp-surface);border-top:1px solid var(--sp-border);box-shadow:0 -12px 32px rgba(0,0,0,.08);z-index:1000;gap:10px}
.mobile-dock .btn-whatsapp,.mobile-dock .btn-brand,.mobile-dock .icon-button{min-height:44px;padding:11px 16px;font-size:13px;flex:1}
.mobile-dock .icon-button{width:auto;flex:0 1 auto;border-radius:14px;background:color-mix(in srgb,var(--sp-primary) 10%, white 90%);color:var(--sp-primary);border:1px solid color-mix(in srgb,var(--sp-primary) 16%, white 84%)}
@media(max-width:860px){.mobile-dock{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;padding:12px;border-radius:0;align-items:center}
.mobile-dock .btn-whatsapp,.mobile-dock .btn-brand{min-width:0;justify-content:center}}
@keyframes softPulse{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
@media (hover:hover){
  .product-card:hover{transform:translateY(-6px);box-shadow:0 28px 58px rgba(18,30,27,.13);border-color:color-mix(in srgb,var(--sp-primary) 22%, white 78%)}
  .product-card:hover .product-media img{transform:scale(1.04)}
  .btn-brand:hover,.btn-outline:hover,.btn-whatsapp:hover,.icon-button:hover,.search-submit:hover{transform:translateY(-2px)}
}
@media (min-width:861px){.mobile-dock{display:none}}
@media (max-width:860px){
  .store-shell{padding:18px 14px calc(80px + 24px)}
  .hero-card{padding:24px;border-radius:28px}
  .catalog-title h2{font-size:26px}
  .hero-grid{grid-template-columns:1fr}
  .hero-grid-premium{grid-template-columns:1fr;gap:24px}
  .hero-right{align-items:flex-start;min-width:0}
  .hero-actions{text-align:left}
  .hero-action-title{text-align:left}
  .hero-icon-row-horizontal{justify-content:flex-start}
  .hero-action-item .hero-icon-btn{width:46px;height:46px;border-radius:15px}
  .hero-action-item .hero-icon-btn i{font-size:18px}
  .catalog-body-grid{grid-template-columns:1fr;}
  .catalog-side-panel{display:none;}
  .desktop-actions{display:none}
  .hero-icon-row{display:flex}
  .catalog-tools{grid-template-columns:1fr 1fr;width:100%;gap:12px;align-items:stretch}
  .catalog-search-form{grid-column:1 / -1;max-width:none}
  .sort-shell{width:100%}
  .catalog-wishlist-trigger{width:100%;justify-content:center}
  .sort-label{white-space:normal}
  .sort-select{border:1px solid var(--sp-border);width:100%}
  .product-detail-container{grid-template-columns:1fr;gap:24px}
  .product-detail-media{border-radius:24px}
  .product-detail-title{font-size:24px}
  .price-value{font-size:28px}
  .product-detail-pricing{grid-template-columns:1fr;gap:16px}
}
  .hero-aside,.desktop-actions{display:none}
  .hero-icon-row{display:flex;justify-content:flex-start}
  .hero-action-item .hero-icon-btn{width:42px;height:42px;border-radius:14px}
  .hero-action-item .hero-icon-btn i{font-size:17px}
  .hero-action-label{font-size:10px}
  .contact-row{gap:8px;margin-top:14px}

  .brand-block{gap:12px;align-items:flex-start}
  .logo-badge,.logo-placeholder{width:72px;height:72px;flex-basis:72px;border-radius:22px}
  .brand-copy{min-height:72px}
  .store-name{font-size:26px}
  .store-meta{margin-top:8px}
  .catalog-head{align-items:stretch;flex-direction:column}
  .catalog-head form{width:100%}
  .search-shell{width:100%;min-width:0}
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
  .product-actions{flex-direction:row}
  .product-actions .btn-whatsapp,.product-actions .btn-brand{width:auto;flex:1}
  .store-footer{justify-content:center;text-align:center;margin-top:20px;gap:8px}
}
@media (max-width:480px){
  .store-shell{padding-inline:12px}
  .hero-card{padding:18px}
  .brand-block{gap:10px;align-items:flex-start}
  .logo-badge,.logo-placeholder{width:64px;height:64px;flex-basis:64px;border-radius:20px}
  .brand-copy{min-height:64px}
  .title-row{gap:8px}
  .store-name{font-size:23px}
  .verify-badge{width:32px;height:32px;flex-basis:32px}
  .meta-chip{padding:7px 11px;font-size:12px}
  .catalog-head{gap:14px}
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
  .product-top{grid-template-columns:1fr;gap:8px}
  .catalog-title h2{font-size:24px}
  .contact-row{display:flex;flex-wrap:nowrap;gap:10px}
  .contact-row .hero-icon-btn{width:48px;height:48px;flex:0 0 48px}
  .mobile-dock{grid-template-columns:1fr 1fr 52px}
  .floating-wa-btn{display:none}
  .back-to-top-btn{bottom:96px;right:16px}
  .hero-card{padding:16px}
  .store-copy{margin-top:10px;line-height:1.6}
  .section-card{padding:16px}
  .section-card .section-title{margin-bottom:10px}
  .store-meta{gap:6px}
  .store-footer-powered{margin-top:0}
}

@media (min-width: 861px){.desktop-actions{display:flex}.mobile-inline-actions{display:none}}

/* Side panel (desktop only, visible via JS toggle) */
.catalog-side-card{position:sticky;top:108px;border-radius:26px;padding:22px;background:var(--sp-surface);border:1px solid var(--sp-border);box-shadow:var(--sp-shadow-soft);display:grid;gap:14px;}
.catalog-side-title,.catalog-side-note{font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--sp-muted);}
.catalog-side-actions{display:grid;gap:10px;}
.catalog-side-actions .btn-whatsapp,.catalog-side-actions .btn-outline,.catalog-side-card .btn-brand{width:100%;justify-content:center;}
.catalog-body-main{min-width:0;}

@media (min-width:861px){.hero-icon-row{display:flex}.desktop-actions,.catalog-side-panel{display:none;}}
@media (max-width:420px){.product-grid{grid-template-columns:1fr;gap:14px;}.product-name{font-size:16px;}.product-price{font-size:20px;justify-self:start;}.product-body{padding:16px;gap:12px;}.product-actions{gap:8px;}}

/* ════ Hero Stats (Trust Indicators) ════ */
.hero-stats{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.hero-stat-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);font-size:12px;font-weight:700;color:#fff;backdrop-filter:blur(6px)}
.hero-stat-pill i{font-size:13px}
.hero-trust-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.hero-trust-pill{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.18);color:#fff;font-size:12px;font-weight:800;backdrop-filter:blur(8px)}
.hero-trust-pill i{font-size:13px}

/* ════ Category Filter Bar ════ */
.category-filter-bar{display:flex;flex-wrap:nowrap;gap:8px;margin-top:18px;margin-bottom:4px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:4px}
.category-filter-bar::-webkit-scrollbar{display:none}
.category-chip{display:inline-flex;align-items:center;padding:8px 16px;border-radius:999px;background:var(--sp-surface);border:1px solid var(--sp-border);font-size:13px;font-weight:700;color:var(--sp-muted);cursor:pointer;transition:border-color .2s ease,color .2s ease,transform .2s ease;text-decoration:none;box-shadow:var(--sp-shadow-soft)}
@media (hover: hover){.category-chip:hover{border-color:var(--sp-primary);color:var(--sp-primary);transform:translateY(-1px)}}
.category-chip.active{background:var(--sp-primary);border-color:var(--sp-primary);color:#fff}

/* ════ Quick View Modal ════ */
.quick-view-content{max-width:680px;padding:0;overflow:hidden}
.quick-view-grid{display:grid;grid-template-columns:1fr 1fr;gap:0}
.quick-view-image{background:linear-gradient(180deg,color-mix(in srgb,var(--sp-primary) 6%,#fff 94%),#fff);display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;overflow:hidden}
.quick-view-image img{width:100%;height:100%;object-fit:cover}
.quick-view-details{padding:28px 24px;display:flex;flex-direction:column;gap:14px}
.qv-title{margin:0;font-size:20px;font-weight:900;color:var(--sp-primary-dark);line-height:1.3}
.qv-price{font-size:26px;font-weight:900;color:var(--sp-primary)}
.qv-stock{display:flex;gap:8px}
.qv-desc{margin:0;font-size:14px;line-height:1.7;color:var(--sp-muted);flex:1;overflow-y:auto;max-height:140px}
.qv-actions{display:flex;flex-direction:column;gap:10px}
.qv-actions .btn-action{width:100%;justify-content:center}

/* ════ Wishlist Button ════ */
.wishlist-btn,.quick-view-btn{position:absolute;top:14px;width:34px;height:34px;border-radius:50%;border:none;background:rgba(255,255,255,.96);color:var(--sp-muted);cursor:pointer;display:flex!important;visibility:visible!important;align-items:center;justify-content:center;font-size:15px;transition:color .22s ease,transform .22s ease,opacity .22s ease;z-index:4;box-shadow:0 6px 16px rgba(0,0,0,.08);opacity:1}
@media (hover: hover){.product-card:hover .wishlist-btn,.product-card:hover .quick-view-btn,.product-media:hover .wishlist-btn,.product-media:hover .quick-view-btn{opacity:1}}
.wishlist-btn{right:58px}
@media (hover: hover){.wishlist-btn:hover{color:#ef4444;transform:scale(1.12)}}
.wishlist-btn.active{color:#ef4444;opacity:1}
.wishlist-btn.active i{font-weight:900}
.product-detail-wishlist.active{color:#ef4444;background:rgba(239,68,68,.08)}
.quick-view-btn{right:14px}
@media (hover: hover){.quick-view-btn:hover{color:var(--sp-primary);transform:scale(1.12)}}

/* ════ Recently Viewed ════ */
.recently-viewed-section{margin-top:20px;margin-bottom:8px}
.recently-viewed-title{font-size:15px;font-weight:800;color:var(--sp-muted);margin:0 0 12px;display:flex;align-items:center;gap:8px}
.recently-viewed-title i{font-size:16px;color:var(--sp-primary)}
.recently-viewed-scroll{display:flex;gap:12px;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}
.recently-viewed-scroll::-webkit-scrollbar{height:4px}
.recently-viewed-scroll::-webkit-scrollbar-thumb{background:var(--sp-border);border-radius:4px}
.rv-card{flex:0 0 35vw;max-width:160px;scroll-snap-align:start;border-radius:18px;overflow:hidden;background:var(--sp-surface);border:1px solid var(--sp-border);box-shadow:var(--sp-shadow-soft);transition:transform .22s ease}
@media (hover: hover){.rv-card:hover{transform:translateY(-3px)}}
.rv-card img{width:100%;aspect-ratio:1/1;object-fit:cover}
.rv-card .product-placeholder{width:100%;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;color:#bcc9c4;font-size:24px}
.rv-name{display:block;padding:8px 10px 2px;font-size:12px;font-weight:800;color:var(--sp-primary-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rv-price{display:block;padding:0 10px 10px;font-size:14px;font-weight:900;color:var(--sp-primary)}
.rv-card a{text-decoration:none;color:inherit}

/* ════ Wishlist Panel ════ */
.wishlist-empty{
  text-align:center;
  padding:34px 18px;
  color:var(--sp-muted);
}
.wishlist-empty i{
  font-size:34px;
  display:block;
  margin-bottom:10px;
  color:#e57474;
}
.wishlist-list{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.wishlist-item{
  display:flex;
  align-items:center;
  gap:12px;
  padding:12px;
  border:1px solid var(--sp-border);
  border-radius:16px;
  background:color-mix(in srgb,var(--sp-primary) 3%, #fff 97%);
}
.wishlist-item-media{
  width:58px;
  height:58px;
  flex:0 0 58px;
  border-radius:14px;
  overflow:hidden;
  background:linear-gradient(180deg,color-mix(in srgb,var(--sp-primary) 8%,#fff 92%),#fff);
  display:flex;
  align-items:center;
  justify-content:center;
}
.wishlist-item-media img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.wishlist-item-media i{
  color:#bcc9c4;
  font-size:20px;
}
.wishlist-item-body{
  flex:1;
  min-width:0;
}
.wishlist-item-name{
  display:block;
  color:var(--sp-primary-dark);
  font-size:14px;
  font-weight:800;
  line-height:1.35;
  text-decoration:none;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.wishlist-item-price{
  margin-top:4px;
  font-size:13px;
  font-weight:900;
  color:var(--sp-primary);
}
.wishlist-item-remove{
  width:38px;
  height:38px;
  border:none;
  border-radius:12px;
  background:rgba(231,76,60,.08);
  color:#e74c3c;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  flex:0 0 38px;
}
.wishlist-item-remove:hover{
  background:rgba(231,76,60,.14);
}

/* ════ Floating WhatsApp Button ════ */
.floating-wa-btn{position:fixed;bottom:var(--sd-float-bottom,104px);right:var(--sd-float-wa-right,20px);width:56px;height:56px;border-radius:50%;background:var(--sp-wa);color:#fff;display:flex;align-items:center;justify-content:center;font-size:28px;box-shadow:0 8px 24px rgba(37,211,102,.30);z-index:1030;transition:opacity .25s ease,transform .25s ease,box-shadow .3s ease;transform:translateY(16px);opacity:0;pointer-events:none}
.floating-wa-btn.visible{opacity:1;transform:translateY(0);pointer-events:auto}
@media (hover: hover){.floating-wa-btn:hover{box-shadow:0 12px 32px rgba(37,211,102,.40);transform:translateY(0) scale(1.08)}}
.floating-wa-btn i{display:flex;align-items:center;justify-content:center;font-size:24px;line-height:1;animation:softPulse 2.5s ease-in-out infinite}

/* ════ Back to Top Button ════ */
.back-to-top-btn{position:fixed;bottom:var(--sd-float-bottom,104px);right:var(--sd-float-btt-right,82px);width:var(--sd-float-btt-size,44px);height:var(--sd-float-btt-size,44px);border-radius:50%;background:var(--sp-primary);color:#fff;border:none;display:flex;align-items:center;justify-content:center;font-size:18px;box-shadow:0 8px 20px rgba(0,0,0,.15);z-index:1030;cursor:pointer;opacity:0;transform:translateY(20px);transition:opacity .3s ease,transform .3s ease,background .2s ease}
.back-to-top-btn.visible{opacity:1;transform:translateY(0)}
.back-to-top-btn:hover{background:var(--sp-primary-dark)}
.back-to-top-btn i{display:flex;align-items:center;justify-content:center;font-size:18px;line-height:1}

/* ════ Loading Skeletons ════ */
.skeleton-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.skeleton-card{border-radius:28px;background:var(--sp-surface);border:1px solid var(--sp-border);overflow:hidden;box-shadow:var(--sp-shadow-soft)}
.skeleton-img{aspect-ratio:1/1;background:linear-gradient(90deg,var(--sp-bg) 25%,var(--sp-surface) 50%,var(--sp-bg) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}
.skeleton-body{padding:18px;display:flex;flex-direction:column;gap:10px}
.skeleton-line{height:12px;border-radius:6px;background:linear-gradient(90deg,var(--sp-bg) 25%,var(--sp-surface) 50%,var(--sp-bg) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}
.skeleton-line.w80{width:80%}
.skeleton-line.w60{width:60%}
.skeleton-line.w50{width:50%}
@keyframes shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}

/* ════ Product Gallery (Detail Page) ════ */
.product-gallery-main{border-radius:24px;overflow:hidden;background:linear-gradient(180deg,color-mix(in srgb,var(--sp-primary) 6%,#fff 94%),#fff)}
.product-gallery-main .product-detail-image{width:100%;object-fit:cover;aspect-ratio:1/1}
.product-gallery-thumbs{display:flex;gap:8px;margin-top:10px;overflow-x:auto;padding-bottom:4px}
.product-gallery-thumbs::-webkit-scrollbar{height:3px}
.product-gallery-thumbs::-webkit-scrollbar-thumb{background:var(--sp-border);border-radius:3px}
.gallery-thumb{flex:0 0 64px;height:64px;border-radius:14px;overflow:hidden;cursor:pointer;border:2px solid transparent;transition:border-color .2s ease,transform .2s ease;opacity:.7}
.gallery-thumb:hover{opacity:.9}
.gallery-thumb.active{border-color:var(--sp-primary);opacity:1;transform:scale(1.05)}
.gallery-thumb img{width:100%;height:100%;object-fit:cover}

/* ════ Larger WhatsApp CTA on Detail ════ */
.product-detail-actions .btn-action.btn-wa-large{font-size:16px;padding:16px 24px;min-height:56px;border-radius:20px}

/* ════ Responsive: Quick View & Skeletons ════ */
@media(max-width:860px){
  .quick-view-grid{grid-template-columns:1fr}
  .quick-view-image{aspect-ratio:16/9}
  .skeleton-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .floating-wa-btn{bottom:104px;right:14px;width:50px;height:50px;font-size:24px}
  .back-to-top-btn{bottom:104px;right:74px;width:40px;height:40px}
  .wishlist-btn,.quick-view-btn{opacity:1}
  .product-gallery-thumbs{gap:6px}
  .gallery-thumb{flex:0 0 52px;height:52px;border-radius:12px}
}
@media(max-width:480px){
  .skeleton-grid{grid-template-columns:1fr;gap:12px}
  .back-to-top-btn{right:16px;bottom:96px;width:40px;height:40px}
  .floating-wa-btn{bottom:96px;right:12px;width:46px;height:46px}
  .rv-card{flex:0 0 110px;max-width:130px}
}
@media (hover: hover){.hero-icon-btn:hover{transform:translateY(-2px);color:#fff;}}

.store-copy{max-width:32ch;}

/* ════ PRODUCT DETAIL PAGE ════ */
.product-detail-container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(20px, 3vw, 40px);
  align-items: start;
  margin: clamp(20px, 4vw, 40px) 0;
}

.product-detail-media {
  border-radius: 32px;
  overflow: hidden;
  background: linear-gradient(180deg, color-mix(in srgb, var(--sp-primary) 6%, #fff 94%), #fff);
  box-shadow: var(--sp-shadow);
}

.product-detail-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.product-placeholder-large {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #bcc9c4;
  font-size: 64px;
}

.product-detail-info {
  display: grid;
  gap: 24px;
  align-content: start;
}

.product-detail-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
}

.product-detail-title {
  margin: 0;
  font-size: 28px;
  line-height: 1.2;
  font-weight: 900;
  color: var(--sp-primary-dark);
}

.product-detail-store {
  margin: 8px 0 0;
  font-size: 14px;
  color: var(--sp-muted);
  display: flex;
  align-items: center;
  gap: 6px;
}

.product-detail-store a {
  color: var(--sp-primary);
  font-weight: 600;
  text-decoration: none;
}

.product-detail-store i {
  font-size: 12px;
  color: var(--sp-accent);
}

.btn-share-detail {
  width: 48px;
  height: 48px;
  border: none;
  border-radius: 16px;
  background: rgba(0, 0, 0, 0.06);
  color: var(--sp-text);
  cursor: pointer;
  transition: background 0.2s ease, transform 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}

@media (hover: hover) {
.btn-share-detail:hover {
  background: rgba(0, 0, 0, 0.1);
  transform: translateY(-2px);
}
}

.btn-share-detail:focus {
  outline: 2px solid var(--sp-primary);
  outline-offset: 2px;
}

.product-detail-pricing {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 32px;
  padding: 20px;
  background: rgba(0, 0, 0, 0.02);
  border-radius: 20px;
  border: 1px solid var(--sp-border);
}

.price-section, .stock-section {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.price-label, .sku-label {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--sp-muted);
}

.price-value {
  font-size: 36px;
  font-weight: 900;
  color: var(--sp-primary);
  line-height: 1;
}

.stock-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--sp-primary) 10%, white 90%);
  border: 1px solid color-mix(in srgb, var(--sp-primary) 15%, white 85%);
  color: var(--sp-primary);
  font-weight: 700;
  width: fit-content;
  font-size: 14px;
}

.stock-badge.stock-out {
  background: color-mix(in srgb, var(--sp-danger) 10%, white 90%);
  border-color: color-mix(in srgb, var(--sp-danger) 15%, white 85%);
  color: var(--sp-danger);
}

.product-detail-desc {
  border-top: 1px solid var(--sp-border);
  padding-top: 24px;
}

.product-detail-desc h3 {
  margin: 0 0 12px;
  font-size: 14px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--sp-primary-dark);
}

.product-detail-desc p {
  margin: 0;
  font-size: 15px;
  line-height: 1.8;
  color: var(--sp-text);
}

.product-detail-desc .meta-chip{
  background:color-mix(in srgb,var(--sp-primary) 8%, #fff 92%);
  border-color:color-mix(in srgb,var(--sp-primary) 16%, #fff 84%);
  color:var(--sp-primary-dark);
}

.product-detail-desc .meta-chip i{
  color:var(--sp-primary);
}

.product-detail-sku {
  padding: 12px 16px;
  background: rgba(0, 0, 0, 0.02);
  border-radius: 12px;
  border: 1px solid var(--sp-border);
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 13px;
}

.product-detail-sku code {
  background: transparent;
  padding: 0;
  border: none;
  color: var(--sp-primary);
  font-family: 'Courier New', monospace;
  font-weight: 600;
}

.product-detail-actions {
  display: grid;
  gap: 12px;
  margin-top: 12px;
}
.product-reassurance{
  display:grid;
  gap:10px;
  margin-top:16px;
  padding:14px 16px;
  border-radius:20px;
  border:1px solid color-mix(in srgb,var(--sp-primary) 10%, white 90%);
  background:linear-gradient(180deg,color-mix(in srgb,var(--sp-primary) 4%, white 96%), #fff);
  box-shadow:var(--sp-shadow-soft);
}
.product-reassurance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
@media(max-width:480px){.product-reassurance-grid{grid-template-columns:1fr 1fr;gap:8px}}
.product-reassurance-item{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:16px;background:#fff;border:1px solid var(--sp-border);color:var(--sp-muted);font-size:12px;font-weight:700}
.product-reassurance-item i{color:var(--sp-primary)}
.product-info-note{margin-top:10px;font-size:12px;line-height:1.7;color:var(--sp-muted)}

.btn-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 16px 20px;
  border: none;
  border-radius: 20px;
  font-size: 15px;
  font-weight: 800;
  text-decoration: none;
  transition: transform 0.22s ease, box-shadow 0.22s ease, background 0.22s ease, color 0.22s ease;
  cursor: pointer;
  text-align: center;
}

.btn-action.btn-whatsapp {
  background: var(--sp-wa);
  color: #fff;
  box-shadow: 0 12px 28px rgba(37, 211, 102, 0.2);
}

@media (hover: hover) {
.btn-action.btn-whatsapp:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 36px rgba(37, 211, 102, 0.3);
}
}

.btn-action.btn-outline {
  background: rgba(0, 0, 0, 0.05);
  border: 1px solid var(--sp-border);
  color: var(--sp-primary);
}

@media (hover: hover) {
.btn-action.btn-outline:hover {
  background: rgba(0, 0, 0, 0.08);
  transform: translateY(-2px);
}
}

.btn-action:focus {
  outline: 2px solid var(--sp-primary);
  outline-offset: 2px;
}

.related-products-section {
  margin-top: 60px;
  border-top: 2px solid var(--sp-border);
  padding-top: 40px;
}

.related-products-section h2 {
  margin: 0 0 24px;
  font-size: 24px;
  font-weight: 900;
  color: var(--sp-primary-dark);
}

.product-detail-footer {
  margin-top: 40px;
  padding-top: 20px;
  border-top: 1px solid var(--sp-border);
  text-align: center;
}

.btn-back {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 20px;
  border-radius: 16px;
  background: rgba(0, 0, 0, 0.06);
  color: var(--sp-primary);
  font-weight: 600;
  text-decoration: none;
  transition: background 0.2s ease, transform 0.2s ease;
}

@media (hover: hover) {
.btn-back:hover {
  background: rgba(0, 0, 0, 0.1);
  transform: translateX(-4px);
}
}

/* ── Responsive Product Detail ── */
@media (max-width: 1024px) {
  .product-detail-container {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .product-detail-title {
    font-size: 24px;
  }

  .price-value {
    font-size: 28px;
  }
}

@media (max-width: 640px) {
  .product-detail-container {
    gap: 24px;
    margin: 24px 0;
  }

  .product-detail-title {
    font-size: 20px;
  }

  .product-detail-pricing {
    grid-template-columns: 1fr;
    gap: 16px;
    padding: 16px;
  }

  .price-value {
    font-size: 24px;
  }

  .product-detail-actions {
    grid-template-columns: 1fr;
  }
  .product-reassurance-grid{grid-template-columns:1fr}

  .btn-action {
    padding: 14px 16px;
    font-size: 14px;
  }

  .related-products-section {
    margin-top: 40px;
    padding-top: 24px;
  }

  .related-products-section h2 {
    font-size: 20px;
    margin-bottom: 16px;
  }
}
.hero-icon-row{margin-top:8px;}
.product-body{justify-content:space-between;}
.product-sub{margin-top:-2px;}
.product-actions{margin-top:auto;}
@media (max-width:640px){
  .product-body{text-align:left;}
  .product-price{font-size:21px;}
  .store-copy{max-width:24ch;}
  .hero-icon-row{justify-content:flex-start;}
  .hero-right,
  .hero-stats-desktop,
  .hero-trust-desktop,
  .hero-meta-primary,
  .hero-meta-secondary,
  .hero-about-short,
  .hero-page-title{
    display:none !important;
  }
  .hero-card{padding:18px 16px 20px;}
  .brand-block{align-items:flex-start;}
  .brand-copy{min-height:auto;}
  .store-name{font-size:22px;line-height:1.05;}
  .hero-headline{margin-top:6px;margin-bottom:10px !important;line-height:1.55;}
  .title-row{align-items:flex-start;}
  .brand-block .logo-badge,
  .brand-block .logo-placeholder{width:58px;height:58px;flex-basis:58px;border-radius:18px;}
  .brand-copy{gap:0}
  .verify-badge{width:30px;height:30px;flex-basis:30px;}
  .verify-badge i{font-size:16px;}
  .store-copy{max-width:none}
}


.catalog-toolbar-form {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 1 1 620px;
  flex-wrap: wrap;
}

.catalog-toolbar-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.catalog-reset-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 14px;
  border-radius: 999px;
  border: 1px solid rgba(15, 95, 85, 0.14);
  background: #fff;
  color: var(--sp-primary);
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 10px 24px rgba(10, 37, 64, 0.06);
}

@media (hover: hover) {
.catalog-reset-link:hover {
  transform: translateY(-1px);
}
}

.search-shell {
  flex: 1 1 320px;
}

.sort-shell {
  min-width: 188px;
}

.product-card,
.product-gallery-main,
.product-detail-desc,
.section-card {
  overflow: hidden;
}

.product-media img,
.product-detail-image,
.gallery-thumb img,
.logo-badge {
  display: block;
}

.product-desc {
  min-height: 3.9em;
  line-height: 1.55;
  color: #475467;
}

.product-detail-desc-content,
.store-rich-text {
  color: #344054;
  line-height: 1.78;
  font-size: .98rem;
}

.product-detail-desc-content p,
.store-rich-text p {
  margin: 0 0 12px;
}

.product-detail-desc-content p:last-child,
.store-rich-text p:last-child {
  margin-bottom: 0;
}

.formatted-description-list {
  margin: 0;
  padding-left: 1.15rem;
  display: grid;
  gap: 8px;
}

.mobile-dock-compact {
  grid-template-columns: minmax(0, 1fr) auto;
}

.mobile-dock-compact .btn-whatsapp,
.mobile-dock-compact .btn-brand {
  min-width: 0;
  justify-content: center;
}

@media (max-width: 860px) {
  .floating-wa-btn {
    display: none;
  }

  .catalog-tools {
    align-items: stretch;
  }

  .catalog-toolbar-form {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }

  .catalog-toolbar-actions {
    width: 100%;
    justify-content: space-between;
  }

  .catalog-reset-link,
  .catalog-wishlist-trigger {
    flex: 1 1 auto;
    justify-content: center;
  }
}

@media (max-width: 640px) {
  .catalog-reset-link span,
  .catalog-wishlist-trigger span {
    font-size: .92rem;
  }

  .catalog-live-meta {
    font-size: .94rem;
  }

  .mobile-dock-compact {
    gap: 10px;
    padding: 12px 14px calc(12px + env(safe-area-inset-bottom));
  }

  .product-detail-desc-content,
  .store-rich-text {
    font-size: .95rem;
  }
}


body.modal-open{overflow:hidden;touch-action:none}
.hours-list{list-style:none;margin:0;padding:0;display:grid;gap:.7rem}
.hours-list li{display:flex;align-items:flex-start;gap:.6rem;line-height:1.45;color:var(--sd-text,var(--sp-text,#1f2937))}
.hours-list li i{margin-top:.1rem;color:var(--sp-primary,#2563eb)}
.hours-empty{margin:0;color:var(--sp-muted,#6b7280);line-height:1.6}
.qv-desc.is-empty{color:var(--sp-muted,#6b7280);font-style:italic}
img.is-fallback-image{object-fit:cover;background:#f5f7fb}
#wishlist-items-container img[data-product-image="1"]{background:#f5f7fb}
@media (max-width:768px){body.modal-open .floating-store-actions,body.modal-open .floating-wa-btn{opacity:0;pointer-events:none}.quick-view-details{padding:20px 18px}.qv-actions{gap:.65rem}.hours-list li{font-size:.95rem}}

/* ════ HERO REDESIGN — Option B: Centered Statement (Minimalist) ════ */
.hero-card-minimalist {
  position: relative;
  overflow: hidden;
  border-radius: 28px;
  padding: clamp(28px, 5vw, 48px) 24px;
  text-align: center;
  background: var(--sd-primary-soft, #e8f4f1);
  border: 1px solid rgba(21,94,82,0.06);
  transition: background 0.3s ease;
}
.hero-card-minimalist.has-cover {
  padding-top: 0;
  background: transparent;
  border: none;
  border-radius: 28px 28px 0 0;
}
.hero-cover-wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 21/9;
  overflow: hidden;
  border-radius: 28px 28px 0 0;
}
.hero-cover-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.hero-cover-wrapper::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0.15) 0%, rgba(0,0,0,0.45) 100%);
}
.hero-card-minimalist.has-cover .hero-minimal-inner {
  position: relative;
  z-index: 2;
  margin-top: -48px;
  padding: 0 clamp(16px, 4vw, 40px) clamp(24px, 4vw, 40px);
}
.hero-minimal-inner {
  max-width: 560px;
  margin: 0 auto;
}
.hero-logo-centered {
  display: flex;
  justify-content: center;
  margin-bottom: 18px;
}
.hero-logo-centered .logo-badge,
.hero-logo-centered .logo-placeholder {
  width: clamp(64px, 12vw, 88px);
  height: clamp(64px, 12vw, 88px);
  flex-basis: clamp(64px, 12vw, 88px);
  border-radius: 22px;
  background: #fff;
  border: 2px solid rgba(255,255,255,0.3);
  box-shadow: 0 12px 32px rgba(0,0,0,0.10);
}
.hero-card-minimalist.has-cover .hero-logo-centered .logo-badge,
.hero-card-minimalist.has-cover .hero-logo-centered .logo-placeholder {
  border: 3px solid #fff;
  box-shadow: 0 8px 24px rgba(0,0,0,0.15);
}
.hero-minimal-name {
  margin: 0;
  font-size: clamp(24px, 4.5vw, 38px);
  line-height: 1.1;
  font-weight: 900;
  letter-spacing: -0.04em;
  color: var(--sp-primary-dark, #0f4b42);
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: 100%;
}
.hero-card-minimalist.has-cover .hero-minimal-name {
  color: #fff;
  text-shadow: 0 2px 8px rgba(0,0,0,0.2);
}
.hero-minimal-title-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-bottom: 10px;
}
.hero-minimal-tagline {
  margin: 8px auto 0;
  max-width: 420px;
  font-size: 14px;
  line-height: 1.6;
  color: var(--sp-muted, #5f6f69);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.hero-card-minimalist.has-cover .hero-minimal-tagline {
  color: rgba(255,255,255,0.85);
  text-shadow: 0 1px 4px rgba(0,0,0,0.15);
}
.hero-minimal-ctas {
  display: flex;
  justify-content: center;
  gap: 12px;
  margin-top: 20px;
  flex-wrap: wrap;
}
.hero-minimal-ctas .btn-whatsapp,
.hero-minimal-ctas .btn-brand {
  min-height: 48px;
  padding: 0 28px;
  font-size: 14px;
  font-weight: 800;
  border-radius: 16px;
}
.hero-minimal-trust {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 16px;
  font-size: 12px;
  color: var(--sp-muted, #5f6f69);
  opacity: 0.7;
}
.hero-minimal-trust span {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.hero-card-minimalist.has-cover .hero-minimal-trust {
  color: rgba(255,255,255,0.75);
}

/* ── Meta Info Bar (below hero) ── */
.store-meta-bar {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 16px;
  padding: 12px 16px;
  border-radius: 18px;
  background: var(--sp-surface, #fff);
  border: 1px solid var(--sp-border, rgba(20,35,31,0.12));
  box-shadow: var(--sp-shadow-soft, 0 14px 34px rgba(18,30,27,0.05));
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.store-meta-bar::-webkit-scrollbar { display: none }
.meta-bar-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 12px;
  border-radius: 12px;
  background: var(--sd-primary-soft, #e8f4f1);
  border: 1px solid rgba(21,94,82,0.06);
  font-size: 12px;
  font-weight: 700;
  color: var(--sp-primary-dark, #0f4b42);
  white-space: nowrap;
  text-decoration: none;
  transition: border-color 0.2s ease, transform 0.2s ease;
  flex-shrink: 0;
}
@media (hover: hover) {
.meta-bar-chip:hover {
  border-color: var(--sp-primary, #0f5f55);
  transform: translateY(-1px);
}
}
.meta-bar-chip i {
  font-size: 13px;
  color: var(--sp-primary, #0f5f55);
}
.meta-bar-separator {
  width: 1px;
  height: 18px;
  background: var(--sp-border, rgba(20,35,31,0.12));
  flex-shrink: 0;
}
.meta-bar-spacer {
  flex: 1;
}

@media (max-width: 860px) {
  .hero-card-minimalist { padding: 24px 16px; border-radius: 24px; }
  .hero-card-minimalist.has-cover { border-radius: 24px 24px 0 0; }
  .hero-cover-wrapper { aspect-ratio: 16/9; border-radius: 24px 24px 0 0; }
  .hero-minimal-ctas { flex-direction: column; align-items: stretch; padding: 0 8px; }
  .hero-minimal-ctas .btn-whatsapp,
  .hero-minimal-ctas .btn-brand { width: 100%; justify-content: center; }
  .store-meta-bar { margin-top: 12px; padding: 10px 12px; gap: 6px; }
  .meta-bar-chip { padding: 6px 10px; font-size: 11px; }
}

@media (max-width: 480px) {
  .hero-card-minimalist { padding: 20px 14px; }
  .hero-logo-centered .logo-badge,
  .hero-logo-centered .logo-placeholder { width: 64px; height: 64px; flex-basis: 64px; border-radius: 18px; }
  .hero-minimal-name { font-size: 24px; }
  .hero-minimal-tagline { font-size: 13px; }
  .hero-minimal-trust { font-size: 11px; }
  .store-meta-bar { border-radius: 14px; }
}


.product-grid .product-card{content-visibility:auto;contain-intrinsic-size:420px 360px}
.related-products-grid .related-product-card{content-visibility:auto;contain-intrinsic-size:320px 320px}
.store-footer,.product-detail-desc{content-visibility:auto;contain-intrinsic-size:240px 240px}
