/* Desktop product centre follows the measured reference category/card layout. */
body.fidelity.ecommerce-view{min-width:1366px;background:#fff;font-family:"Noto Sans SC","Microsoft YaHei",sans-serif}
.ecommerce-page{padding:24px 40px 48px;background:#fff;min-height:calc(100vh - 127px);scroll-margin-top:127px}
.ec-page-layout{display:grid;grid-template-columns:240px minmax(0,1fr);align-items:start;gap:24px}
.ec-sidebar{position:sticky;top:94px;min-width:0;padding:8px;background:#fff;border-radius:8px;box-shadow:0 0 12px #0000000d;max-height:calc(100vh - 118px);overflow-y:auto;scrollbar-width:thin}
.ec-sidebar-title{padding:12px;font-size:16px;font-weight:500;line-height:24px;color:#333}
.ec-category-row+.ec-category-row{border-top:1px dashed #e7e7e7}
.ec-category-item{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:12px;border-radius:4px;background:transparent;color:#888;font-size:14px;line-height:24px;text-align:left;transition:background .3s,color .3s}
.ec-category-item>img{width:14px;height:14px;flex:none;opacity:.4;transition:transform .3s}
.ec-category-item:hover{background:#f8f8f8;color:#444}
.ec-category-item.active{background:#333;color:#fff;font-weight:600}
.ec-category-item.active>img{filter:brightness(0) invert(1);opacity:1;transform:rotate(90deg)}
.ec-main{min-width:0}
.ec-banner{display:flex;align-items:center;justify-content:space-between;gap:24px;height:160px;margin-bottom:24px;padding:20px 36px 20px 64px;overflow:hidden;border-radius:8px;background:#e0eaf3}
.ec-banner-copy{display:flex;align-items:center;gap:28px;min-width:0}
.ec-banner-copy h1{margin:0;color:#333;font-size:52px;font-weight:700;line-height:1.4;white-space:nowrap}
.ec-banner-copy h2{margin:0 0 4px;color:#555;font-size:28px;font-weight:700;line-height:1.5;white-space:nowrap}
.ec-banner-copy p{margin:0;color:#929ca5;font-size:14px;line-height:1.7}
.ec-banner-images{display:grid;grid-template-columns:repeat(var(--ec-banner-image-count),108px);align-items:center;gap:10px;flex:none}
.ec-banner-images>img{display:block;width:108px;height:120px;border-radius:6px;background:#fff;object-fit:contain}
.ec-product-groups{min-height:720px;padding:32px 16px 28px;border-radius:8px;background:#f8f8f8}
.ec-product-group{scroll-margin-top:100px}
.ec-product-group+.ec-product-group{margin-top:16px}
.ec-product-group>h2{margin:0 0 16px;color:#222;font-size:18px;font-weight:500;line-height:27px}
.ec-product-row{display:flex;flex-wrap:wrap;align-items:flex-start;gap:20px}
.ec-product-card{display:block;flex:none;width:240px;padding:8px;overflow:hidden;border-radius:8px;background:#fff;color:#222;text-align:center;transition:box-shadow .3s}
.ec-product-image{display:block;width:224px;height:224px;overflow:hidden;border-radius:8px;background:#fff}
.ec-product-image>img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}
.ec-product-card[data-ec-product="wooden-easel"] .ec-product-image>img{object-fit:contain}
.ec-product-card[data-ec-product="person-cutout"] .ec-product-image>img{object-position:center bottom}
.ec-product-name{display:block;padding-top:4px;font-size:14px;font-weight:400;line-height:22px}
.ec-product-card:hover{box-shadow:0 0 10px #0000001a}
.ec-product-card:hover .ec-product-image>img{transform:scale(1.2)}
.ecommerce-page button:focus-visible{outline:2px solid #a58a00;outline-offset:3px}
@media(max-width:1800px){.ec-banner{padding-left:32px}.ec-banner-copy{gap:24px}.ec-banner-copy h1{font-size:40px}.ec-banner-copy h2{font-size:24px}.ec-banner-images{grid-template-columns:repeat(var(--ec-banner-image-count),88px)}.ec-banner-images>img{width:88px;height:112px}}
@media(max-width:1536px){.ec-banner{padding-right:24px}.ec-banner-copy{display:block}.ec-banner-copy h1{font-size:32px;line-height:1.3}.ec-banner-copy h2{font-size:20px;line-height:1.5;margin-top:4px}.ec-banner-copy p{font-size:12px}.ec-banner-images{grid-template-columns:repeat(var(--ec-banner-image-count),80px)}.ec-banner-images>img{width:80px;height:112px}}
@media(prefers-reduced-motion:reduce){.ecommerce-page *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.ec-product-card:hover .ec-product-image>img{transform:none}}
