/* Pulido visual propuesto: solo CSS, sin sumar peso a las imagenes. */
.product-grid{gap:24px;align-items:stretch}
.product-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(171,126,54,.28);border-radius:20px;background:#fffdfa;box-shadow:0 10px 30px rgba(54,38,17,.07);transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
.product-card:hover{transform:translateY(-6px);border-color:rgba(171,126,54,.5);box-shadow:0 20px 45px rgba(54,38,17,.14)}
.product-art{border-bottom:1px solid rgba(171,126,54,.16)}
.product-tag{top:16px;left:16px;padding:8px 12px;border:1px solid rgba(171,126,54,.2);border-radius:999px;box-shadow:0 7px 20px rgba(54,38,17,.08)}
.product-info{display:flex;flex:1;flex-direction:column;padding:22px 22px 20px}
.product-info small{min-height:2.4em;line-height:1.2}
.product-info h3{display:-webkit-box;min-height:2.35em;margin:10px 0 8px;overflow:hidden;font-size:20px;line-height:1.16;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.product-info p{display:-webkit-box;min-height:4.5em;height:auto;margin:5px 0 18px;overflow:hidden;font-size:12px;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.product-info>div{gap:14px;margin-top:auto;padding-top:16px;border-top:1px solid rgba(171,126,54,.2)}
.product-info strong{color:#17120d;font-family:Georgia,serif;font-size:21px;line-height:1;letter-spacing:-.3px}
.product-info button{min-height:40px;padding:10px 16px;border:1px solid #17120d;border-radius:999px;background:#17120d;color:#efd391;box-shadow:0 8px 20px rgba(23,18,13,.12);transition:background .2s ease,color .2s ease,transform .2s ease}
.product-info button:hover{transform:translateY(-1px);background:#a97629;border-color:#a97629;color:#fffdf8}
@media(max-width:580px){.announcement{height:26px}.site-header{height:60px;padding:0 12px}.brand-logo{height:52px}.cart-button{padding:8px 10px}.product-grid{gap:18px}.product-card{border-radius:17px}.product-info{padding:19px 18px 18px}.product-info h3{font-size:21px}.product-info p{font-size:13px}.product-info strong{font-size:22px}}
@media(prefers-reduced-motion:reduce){.product-card,.product-info button{transition:none}}

/* Filtros combinables de genero y marca. */
.catalog-refinements{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%}
.catalog-select{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-height:42px;padding:8px 12px;border:1px solid rgba(171,126,54,.26);border-radius:10px;background:#fffdfa}
.catalog-select span{font-size:8px;font-weight:800;letter-spacing:1.4px;color:#9e6f24}
.catalog-select select{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#2b2117;font:600 12px Inter,Segoe UI,Arial,sans-serif;cursor:pointer}
.catalog-select:focus-within{border-color:#a97629;box-shadow:0 0 0 3px rgba(169,118,41,.1)}
@media(max-width:580px){.catalog-refinements{grid-template-columns:1fr}.catalog-select{min-height:44px}.catalog-select select{font-size:14px}}

/* Portada con la marca completa como protagonista. */
.hero-brandmark{width:min(520px,92%);max-height:500px;object-fit:contain;filter:drop-shadow(0 28px 38px rgba(0,0,0,.34));transform:translateY(6px)}
@media(max-width:950px){.hero-brandmark{width:min(430px,78%);max-height:360px}}
@media(max-width:580px){.hero-brandmark{width:min(330px,88%);max-height:300px;transform:none}}

/* Icono autentico de WhatsApp en el acceso flotante. */
.whatsapp{display:grid;place-items:center;background:#25d366}
.whatsapp img{width:29px;height:29px;filter:brightness(0) invert(1)}
.whatsapp:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(18,140,74,.34)}
