.shop-content { max-width: 1300px; margin-inline: auto; padding: clamp(22px, 5vw, 66px) clamp(18px, 6vw, 78px) 72px; }
.shop-hero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .9fr); align-items: center; gap: 26px 52px; padding: clamp(22px, 5vw, 62px); background: #efd8bd; border: 1px solid #ddbc98; }
.shop-hero h2 { margin: .2em 0; font: 700 clamp(41px, 7vw, 84px)/1.14 "Songti SC", SimSun, serif; color: #773223; }
.shop-hero p:not(.brand-kicker) { line-height: 1.7; }
.shop-entry { min-width: 0; padding: clamp(16px, 3vw, 28px); background: #fbf1e1; border-top: 3px solid #9b3b2c; }
.shop-entry h3 { margin: 0 0 10px; font: 700 25px/1.15 "Songti SC", SimSun, serif; }
.shop-entry p { font-size: .86rem; }
.shop-visit { display: inline-flex; align-items: center; min-height: 44px; margin-top: 16px; padding: 0 16px; border-radius: 4px; background: #903b2c; color: #fff6ea; }
.shop-visit:hover { background: #713025; }
.shop-wechat { margin-top: 16px; }
.shop-wechat summary { width: fit-content; cursor: pointer; color: #803628; font-size: .82rem; }
.shop-code-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 16px; }
.shop-code { flex: 1 1 13em; width: 100%; min-width: 0; min-height: 44px; box-sizing: border-box; border: 1px solid #c9a88a; border-radius: 4px; background: #fff9ef; color: #39261e; font: inherit; font-size: .8rem; padding: 8px; }
.shop-copy { min-height: 44px; padding: 0 15px; border-radius: 4px; background: #903b2c; color: #fff6ea; white-space: nowrap; }
.shop-copy:hover { background: #713025; }
.shop-entry .shop-feedback:not(:empty) { margin-top: 8px; color: #7c3125; }
.shop-collection { margin-top: clamp(36px, 6vw, 70px); }
.shop-collection-heading { display: flex; justify-content: space-between; align-items: end; flex-wrap: wrap; gap: 9px 24px; margin-bottom: 20px; }
.shop-collection-heading h3 { margin: 0; font: 700 clamp(27px, 4vw, 44px)/1.2 "Songti SC", SimSun, serif; }
.shop-collection-heading p { font-size: .8rem; color: #674e40; }
.shop-products { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px 22px; }
.shop-products article { padding-bottom: 14px; border-bottom: 1px solid #ddc6ae; }
.shop-products img { display: block; width: 100%; box-sizing: border-box; aspect-ratio: 1.2; padding: 14px; object-fit: contain; background: #f0e1ce; }
.shop-products .brand-product-type { margin-top: 11px; color: #803628; font-size: .74rem; }
.shop-products h4 { margin: 7px 0 10px; }
.shop-product-link { display: block; color: inherit; }
.shop-product-action { display: inline-block; color: #803628; font-size: .84rem; padding-block: 6px; }
.shop-product-link:hover .shop-product-action { text-decoration: underline; text-underline-offset: 4px; }
@media (max-width: 740px) {
  .shop-hero { grid-template-columns: 1fr; }
  .shop-products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 14px; }
  .shop-products img { padding: 8px; }
}
