.promo-grid{grid-template-columns:repeat(3,1fr);gap:2.5rem 2rem;padding:3rem 0 6rem;display:grid}.promoCard{background:0 0;border:none;border-radius:20px;flex-direction:column;height:100%;transition:transform .3s cubic-bezier(.16,1,.3,1);display:flex;overflow:hidden}.promoCard:hover{transform:translateY(-6px)}.promoCard__media{background:0 0;padding:0;position:relative}.promoCard__imgLink{background:0 0;border-radius:15px;width:100%;display:block;overflow:hidden}.promoCard__img{object-fit:cover;background:0 0;border-radius:15px;width:100%;height:auto;transition:transform .4s;display:block}.promoCard:hover .promoCard__img{transform:scale(1.02)}.promoCard__mediaSwiper .swiper-pagination-bullet{opacity:.25;background:#0f172a;width:6px;height:6px;transition:width .3s,border-radius .3s}.promoCard__mediaSwiper .swiper-pagination-bullet-active{opacity:1;background:#168a40;border-radius:3px;width:16px}.promoCard__body{flex-direction:column;flex-grow:1;gap:.65rem;padding:1.25rem .25rem .5rem;display:flex}.promoCard__title{color:#0f172a;letter-spacing:-.03em;text-align:left;margin:0;font-size:1.25rem;font-weight:800;line-height:1.3}.promoCard__title a{color:inherit;text-decoration:none;transition:color .2s}.promoCard:hover .promoCard__title a{color:#168a40}.promoCard__desc{color:#475569;text-align:left;-webkit-line-clamp:3;text-overflow:ellipsis;-webkit-box-orient:vertical;min-height:4.8rem;margin:0;font-size:.94rem;line-height:1.6;display:-webkit-box;overflow:hidden}.promoCard__actions{align-items:center;gap:.75rem;width:100%;margin-top:auto;padding-top:1.25rem;display:flex}.promo__cta{border:1px solid var(--color-primary,#168a40);background:var(--color-primary,#168a40);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;height:56px;text-decoration:none;transition:transform .18s,background-color .2s,border-color .2s;display:inline-flex;overflow:hidden;color:#fff!important}.promo__cta:hover{text-decoration:none;transform:translateY(-1px)}.promo__cta-label,.promo__cta-arrow,.promo__cta-icon{justify-content:center;align-items:center;min-height:56px;transition:transform .2s;display:inline-flex}.promo__cta--detail{flex:1;justify-content:space-between;gap:.75rem;padding:0 1.4rem}.promo__cta--detail:hover{background:#116a31;border-color:#116a31}.promo__cta--whatsapp{background:#116a31;border-color:#116a31;width:56px;min-width:56px}.promo__cta--whatsapp:hover{background:#0f5f2b;border-color:#0f5f2b}.promo__cta-label{letter-spacing:-.01em;white-space:nowrap;flex:1;font-size:.96rem;font-weight:700}.promo__cta-arrow{font-size:1.35rem}.promo__cta-icon{font-size:1.25rem}.promo__cta:hover .promo__cta-arrow,.promo__cta:hover .promo__cta-icon{transform:translate(2px)}.promo__cta-icon i{transition:transform .2s;display:inline-flex}.promo__cta:hover .promo__cta-icon i{transform:scale(1.1)}.promo-list-loading,.promo-list-error,.promo-list-empty{text-align:center;color:#64748b;padding:8rem 0;font-weight:500}.promo-spinner{border:3px solid #e2e8f0;border-top-color:#168a40;border-radius:50%;width:36px;height:36px;margin:0 auto 1.25rem;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:1024px){.promo-grid{grid-template-columns:repeat(2,1fr);gap:2rem 1.5rem;padding:2.5rem 0 5rem}}@media (max-width:768px){.promo-grid{grid-template-columns:1fr;gap:2.25rem;padding:2rem 0 4rem}.promoCard__body{padding-top:1rem}.promoCard__title{font-size:1.15rem}.promoCard__desc{-webkit-line-clamp:3;min-height:auto}.promoCard__actions{padding-top:1rem}.promo__cta{height:50px}.promo__cta-label,.promo__cta-arrow,.promo__cta-icon{min-height:50px}.promo__cta--whatsapp{width:50px;min-width:50px}.promo__cta-label{padding:0;font-size:.9rem}}@media (max-width:480px){.promoCard__actions{gap:.6rem}}
