.shop-card{display:flex;align-items:center;gap:14px;border:1px solid #e6dfda;border-radius:12px;background:#fff;padding:10px 12px;margin:10px 0 18px;text-decoration:none;color:inherit;max-width:520px;transition:box-shadow .15s}
.shop-card:hover{box-shadow:0 4px 14px rgba(0,0,0,.08)}
.shop-card__img{width:84px;height:84px;border-radius:8px;object-fit:cover;flex:none;background:#eee}
.shop-card__body{flex:1;min-width:0}
.shop-card__eyebrow{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#8a7f79;margin-bottom:2px}
.shop-card__title{display:block;font-size:15px;font-weight:700;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.shop-card__price{display:block;font-size:14px}
.shop-card__price s{color:#999;margin-left:6px;font-weight:400}
.shop-card__btn{flex:none;background:#4b384c;color:#fff;font-size:13px;font-weight:700;padding:10px 14px;border-radius:999px;white-space:nowrap}
.shop-card--soldout .shop-card__btn{background:#bbb}
.rte a.shop-card,.rte a.shop-card *{text-decoration:none!important;background-image:none!important;box-shadow:none!important}
.rte .shop-card__title{color:#4b384c}
.rte .shop-card__price s{text-decoration:line-through!important;color:#999}
@media(max-width:480px){
  .shop-card{flex-wrap:wrap;gap:10px 12px}
  .shop-card__img{width:100px;height:100px}
  .shop-card__body{flex:1 1 0;min-width:0}
  .shop-card__title{white-space:normal;font-size:14px}
  .shop-card__btn{flex:1 1 100%;text-align:center;padding:11px}
}
.faq details{border-bottom:1px solid #e6dfda;padding:12px 0}
.faq summary{font-weight:700;cursor:pointer;list-style:none;display:flex;justify-content:space-between}
.faq summary::after{content:"+";font-size:20px;line-height:1}
.faq details[open] summary::after{content:"–"}
.faq p{margin:8px 0 0;color:#444}