
:root {
  --ink: #18201d;
  --muted: #69716d;
  --paper: #f4f1e9;
  --cream: #ebe4d5;
  --white: #fffdf8;
  --orange: #f05a32;
  --orange-dark: #d84420;
  --line: rgba(24, 32, 29, .14);
  --shadow: 0 24px 70px rgba(35, 40, 36, .10);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--white); color: var(--ink); font-family: "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", Arial, sans-serif; }
a { color: inherit; text-decoration: none; }
button, input, select { font: inherit; }
button { color: inherit; }
.shell { width: min(1180px, calc(100% - 44px)); margin: 0 auto; }

.announcement { background: var(--ink); color: #f8f2e7; font-size: 12px; letter-spacing: .08em; }
.announcement-inner { min-height: 34px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.announcement-note { color: rgba(255,255,255,.56); }
.site-header { background: rgba(255,253,248,.96); position: sticky; top: 0; z-index: 40; backdrop-filter: blur(16px); border-bottom: 1px solid var(--line); }
.header-main { min-height: 82px; display: grid; grid-template-columns: 230px minmax(280px, 1fr) 340px; align-items: center; gap: 24px; }
.brand { display: inline-flex; align-items: center; gap: 12px; width: fit-content; }
.brand > span:last-child { display: flex; flex-direction: column; }
.brand strong { font-size: 24px; letter-spacing: .12em; line-height: 1; }
.brand small { font-size: 9px; color: var(--muted); letter-spacing: .22em; margin-top: 6px; }
.brand-mark { width: 40px; height: 40px; display: grid; place-items: center; position: relative; border-radius: 50%; background: var(--orange); overflow: hidden; }
.brand-mark i { width: 28px; height: 5px; background: var(--ink); position: absolute; border-radius: 99px; transform: rotate(-24deg); }
.brand-mark i:nth-child(1) { top: 10px; left: 7px; }
.brand-mark i:nth-child(2) { top: 18px; left: 3px; width: 32px; }
.brand-mark i:nth-child(3) { top: 26px; left: 10px; width: 25px; }
.search { display: flex; height: 44px; border: 1px solid var(--line); background: #fff; border-radius: 3px; overflow: hidden; }
.search:focus-within { outline: 2px solid rgba(240, 90, 50, .18); border-color: var(--orange); }
.search input { flex: 1; border: 0; outline: 0; padding: 0 16px; min-width: 0; color: var(--ink); background: transparent; }
.search input::placeholder { color: #9a9e9b; }
.search button { border: 0; min-width: 74px; cursor: pointer; background: var(--orange); color: white; font-weight: 700; }
.search button:hover { background: var(--orange-dark); }
.header-actions { display: flex; justify-content: flex-end; gap: 22px; font-size: 13px; align-items: center; }
.header-actions a { white-space: nowrap; }
.header-actions .account-link { padding: 9px 14px; border-radius: 99px; background: var(--ink); color: white; }
.mobile-account-link { display: none; }
.cart-link { display: inline-flex; align-items: center; gap: 8px; }
.cart-link b { min-width: 22px; height: 22px; padding: 0 6px; border-radius: 99px; display: grid; place-items: center; background: var(--ink); color: white; font-size: 11px; }
.category-nav { border-top: 1px solid rgba(24,32,29,.08); }
.category-nav-inner { height: 44px; display: flex; gap: 36px; align-items: center; font-size: 13px; font-weight: 650; }
.category-nav a { position: relative; }
.category-nav a:hover { color: var(--orange); }

.hero { background: var(--paper); overflow: hidden; }
.hero-grid { min-height: 620px; display: grid; grid-template-columns: 48% 52%; align-items: center; }
.hero-copy { padding: 72px 60px 72px 0; position: relative; z-index: 2; }
.eyebrow, .section-kicker { display: flex; align-items: center; gap: 10px; font-size: 11px; letter-spacing: .18em; font-weight: 800; color: var(--orange); }
.eyebrow span { width: 34px; height: 2px; background: var(--orange); }
.hero h1 { font-size: clamp(56px, 6vw, 86px); line-height: .98; letter-spacing: -.07em; margin: 23px 0 28px; font-family: Georgia, "Songti SC", serif; font-weight: 700; }
.hero h1 em { color: var(--orange); font-style: normal; }
.hero-copy > p { font-size: 17px; line-height: 1.9; color: #5c6561; max-width: 510px; }
.hero-actions { display: flex; align-items: center; gap: 28px; margin-top: 38px; }
.primary-button { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 28px; border: 0; background: var(--ink); color: white; border-radius: 2px; font-weight: 750; cursor: pointer; transition: transform .2s, background .2s; }
.primary-button:hover { background: var(--orange); transform: translateY(-2px); }
.text-button { font-weight: 700; display: inline-flex; gap: 12px; align-items: center; }
.text-button span { color: var(--orange); font-size: 20px; }
.hero-stats { margin-top: 58px; display: flex; gap: 36px; }
.hero-stats div { display: flex; flex-direction: column; padding-right: 34px; border-right: 1px solid var(--line); }
.hero-stats div:last-child { border: 0; }
.hero-stats strong { font-family: Georgia, serif; font-size: 28px; line-height: 1; }
.hero-stats span { color: var(--muted); font-size: 11px; margin-top: 9px; }
.hero-art { min-height: 620px; position: relative; display: grid; place-items: center; background: #d9d2c4; }
.hero-art::before { content: ""; position: absolute; inset: 24px; border: 1px solid rgba(24,32,29,.12); }
.hero-visual { width: min(510px, 86%); aspect-ratio: .88; box-shadow: 0 32px 90px rgba(20,23,20,.18); transform: rotate(2deg); }
.floating-card { position: absolute; background: rgba(255,253,248,.94); backdrop-filter: blur(10px); padding: 15px 18px; min-width: 135px; box-shadow: 0 15px 40px rgba(24,32,29,.12); display: flex; flex-direction: column; }
.floating-card b { font-size: 10px; letter-spacing: .14em; }
.floating-card span { font-size: 13px; color: var(--muted); margin-top: 5px; }
.floating-one { left: 4%; top: 18%; }
.floating-two { right: 2%; bottom: 13%; }

.product-visual { position: relative; overflow: hidden; aspect-ratio: 1.06; background: #e9e2d5; isolation: isolate; }
.product-visual::before, .product-visual::after { content: ""; position: absolute; inset: -20%; background: repeating-radial-gradient(circle at 20% 30%, rgba(30,35,31,.12) 0 1px, transparent 1px 5px); opacity: .38; mix-blend-mode: multiply; }
.product-visual::after { inset: 0; background: linear-gradient(125deg, transparent 42%, rgba(255,255,255,.45) 50%, transparent 58%); opacity: .5; }
.product-visual em { position: absolute; z-index: 4; bottom: 20px; right: 22px; font-family: Georgia, serif; font-size: 11px; letter-spacing: .25em; color: rgba(255,255,255,.82); font-style: normal; }
.stroke { position: absolute; display: block; z-index: 2; background: #202623; border-radius: 48% 56% 42% 52%; filter: blur(.2px); }
.stroke-a { width: 76%; height: 18%; left: 8%; top: 26%; transform: rotate(-15deg); clip-path: polygon(0 42%, 7% 12%, 64% 0, 100% 38%, 92% 72%, 20% 100%); }
.stroke-b { width: 68%; height: 13%; left: 22%; top: 48%; transform: rotate(8deg); clip-path: polygon(0 28%, 15% 8%, 100% 20%, 91% 81%, 20% 100%); opacity: .82; }
.stroke-c { width: 38%; height: 8%; left: 10%; top: 66%; transform: rotate(-5deg); opacity: .56; }
.texture-dot { position: absolute; width: 70px; height: 70px; z-index: 1; border-radius: 50%; filter: blur(1px); opacity: .5; }
.dot-a { right: 12%; top: 10%; background: var(--orange); }
.dot-b { left: 15%; bottom: 10%; background: #827f59; width: 35px; height: 35px; }
.visual-ink { background: #d9d1c2; }
.visual-ink .stroke { background: #17201d; }
.visual-pastel { background: #e0b9a0; }
.visual-pastel .stroke { background: #bd4934; box-shadow: 0 0 0 12px rgba(242,197,116,.7); }
.visual-pastel .dot-a { background: #5a7769; }
.visual-line { background: #e7dfd1; }
.visual-line .stroke { height: 4px; background: #222; border-radius: 99px; box-shadow: 0 14px 0 #222, 0 28px 0 #222, 0 42px 0 #222; }
.visual-line .stroke-a { clip-path: none; transform: rotate(-18deg); }
.visual-line .stroke-b { transform: rotate(23deg); opacity: .4; }
.visual-botanical { background: #c8d3bd; }
.visual-botanical .stroke { background: #405845; border-radius: 100% 0 100% 0; }
.visual-botanical .stroke-a { width: 45%; height: 22%; left: 20%; transform: rotate(-35deg); clip-path: none; }
.visual-botanical .stroke-b { width: 38%; height: 18%; left: 48%; transform: rotate(28deg); clip-path: none; }
.visual-grain { background: #e7cb90; }
.visual-grain .stroke { background: #5e475b; filter: url("#noise"); }
.visual-watercolor { background: #d7e3e0; }
.visual-watercolor .stroke { background: rgba(49,125,137,.68); filter: blur(8px); }
.visual-watercolor .stroke-b { background: rgba(224,100,75,.65); }
.visual-chalk { background: #394a44; }
.visual-chalk .stroke { background: #f0e8d7; opacity: .78; }
.visual-paper { background: #e5dccb; }
.visual-paper .stroke { background: #8c735c; opacity: .35; }

.benefits { background: var(--ink); color: white; }
.benefits-grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.benefits-grid > div { padding: 26px 28px; border-right: 1px solid rgba(255,255,255,.12); display: grid; grid-template-columns: 34px 1fr; column-gap: 12px; }
.benefits-grid > div:first-child { border-left: 1px solid rgba(255,255,255,.12); }
.benefits span { grid-row: 1 / span 2; color: var(--orange); font: 700 12px Georgia, serif; }
.benefits strong { font-size: 14px; }
.benefits p { margin: 5px 0 0; color: rgba(255,255,255,.53); font-size: 11px; }

.section { padding-top: 105px; padding-bottom: 105px; }
.section-heading { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 42px; }
.section-heading h2, .editorial-copy h2, .detail-info h2, .guide-cta h2 { font: 700 clamp(32px, 4vw, 50px)/1.1 Georgia, "Songti SC", serif; letter-spacing: -.035em; margin: 13px 0 0; }
.section-heading > a { font-size: 13px; font-weight: 700; padding-bottom: 5px; border-bottom: 1px solid var(--ink); }
.category-cards { display: grid; grid-template-columns: 1.2fr 1fr 1fr; gap: 18px; }
.category-card { min-height: 330px; padding: 28px; position: relative; display: flex; flex-direction: column; justify-content: space-between; transition: transform .24s, box-shadow .24s; overflow: hidden; }
.category-card:hover { transform: translateY(-7px); box-shadow: var(--shadow); }
.category-card::after { content: ""; width: 210px; height: 210px; border: 28px solid currentColor; opacity: .07; border-radius: 50%; position: absolute; right: -85px; bottom: -82px; }
.category-dark { background: var(--ink); color: white; }
.category-orange { background: var(--orange); color: #fff8ed; }
.category-cream { background: var(--cream); color: var(--ink); }
.category-card > span { font: 700 12px Georgia, serif; opacity: .55; }
.category-card small { font-size: 9px; letter-spacing: .14em; opacity: .6; }
.category-card h3 { font: 700 38px/1.08 Georgia, "Songti SC", serif; margin: 13px 0; }
.category-card p { font-size: 12px; opacity: .7; }
.category-card > b { font-size: 27px; position: absolute; right: 28px; bottom: 24px; }

.product-section { background: #f8f6f0; }
.product-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px 18px; }
.product-card { min-width: 0; background: var(--white); border: 1px solid rgba(24,32,29,.09); transition: transform .2s, box-shadow .2s; }
.product-card:hover { transform: translateY(-5px); box-shadow: 0 20px 55px rgba(27,35,31,.09); }
.product-media { display: block; position: relative; overflow: hidden; }
.product-media .product-visual { transition: transform .4s; }
.product-card:hover .product-visual { transform: scale(1.025); }
.product-badge, .product-category { position: absolute; top: 12px; left: 12px; background: var(--orange); color: white; font-size: 10px; font-weight: 800; padding: 7px 9px; z-index: 5; }
.product-category { left: auto; right: 12px; background: rgba(255,253,248,.88); color: var(--ink); backdrop-filter: blur(8px); }
.product-card-body { padding: 18px; }
.tag-row { display: flex; flex-wrap: wrap; gap: 7px; }
.tag-row span { font-size: 9px; padding: 5px 8px; background: #efede7; color: #68706c; border-radius: 2px; }
.product-card h3 { font-size: 16px; line-height: 1.45; margin: 13px 0 7px; }
.product-card h3 a:hover { color: var(--orange); }
.product-card-body > p { color: var(--muted); font-size: 12px; line-height: 1.6; min-height: 38px; margin: 0 0 15px; }
.price-row { padding-top: 14px; border-top: 1px solid var(--line); display: flex; align-items: baseline; gap: 8px; }
.price-row strong { font: 700 20px Georgia, serif; color: var(--orange); }
.price-row del { font-size: 11px; color: #aaa; }
.price-row a { margin-left: auto; font-size: 11px; font-weight: 700; }

.editorial { margin-top: 105px; margin-bottom: 105px; padding: 0; display: grid; grid-template-columns: 56% 44%; min-height: 500px; background: var(--cream); }
.editorial-art { min-height: 500px; overflow: hidden; }
.editorial-art .product-visual { height: 100%; aspect-ratio: auto; }
.editorial-copy { padding: 70px; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; }
.editorial-copy p { color: var(--muted); line-height: 1.85; margin: 24px 0 34px; }

.site-footer { background: #111715; color: white; padding-top: 68px; }
.footer-grid { display: grid; grid-template-columns: 2fr repeat(3, 1fr); gap: 70px; }
.footer-brand { font: 700 27px Georgia, "Songti SC", serif; margin-bottom: 18px; }
.site-footer p { color: rgba(255,255,255,.48); font-size: 12px; line-height: 1.9; margin: 0; }
.site-footer h3 { font-size: 13px; margin: 5px 0 18px; }
.site-footer a { display: block; color: rgba(255,255,255,.55); font-size: 12px; margin: 11px 0; }
.site-footer a:hover { color: var(--orange); }
.footer-bottom { margin-top: 60px; padding: 22px 0; border-top: 1px solid rgba(255,255,255,.1); color: rgba(255,255,255,.32); font-size: 11px; }

.catalog-hero, .guide-hero { background: var(--ink); color: white; padding: 72px 0; }
.catalog-hero h1, .guide-hero h1, .page-heading h1 { font: 700 clamp(44px, 6vw, 68px)/1.05 Georgia, "Songti SC", serif; letter-spacing: -.05em; margin: 18px 0; }
.catalog-hero p, .guide-hero p, .page-heading p { color: rgba(255,255,255,.56); margin: 0; }
.catalog-body { display: grid; grid-template-columns: 220px 1fr; gap: 50px; padding-top: 65px; padding-bottom: 110px; }
.catalog-sidebar h2 { font-size: 14px; margin: 0 0 18px; }
.filter-list { border-top: 1px solid var(--line); }
.filter-list button { width: 100%; display: flex; justify-content: space-between; border: 0; border-bottom: 1px solid var(--line); background: transparent; padding: 15px 2px; cursor: pointer; font-size: 13px; }
.filter-list button b { min-width: 23px; height: 20px; display: grid; place-items: center; background: #efede7; color: var(--muted); font-size: 9px; border-radius: 99px; }
.filter-list button:hover, .filter-list button.active { color: var(--orange); }
.filter-list button.active { font-weight: 800; }
.sidebar-note { background: var(--paper); padding: 22px; margin-top: 35px; }
.sidebar-note b { font-size: 13px; }
.sidebar-note p { font-size: 11px; line-height: 1.75; color: var(--muted); margin: 10px 0 0; }
.catalog-toolbar { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 30px; }
.catalog-search { display: flex; flex-direction: column; gap: 8px; font-size: 11px; color: var(--muted); }
.catalog-search input { width: 260px; height: 40px; border: 1px solid var(--line); padding: 0 12px; background: white; outline: none; }
.catalog-search input:focus { border-color: var(--orange); }
.catalog-toolbar > div { display: flex; align-items: center; gap: 16px; color: var(--muted); font-size: 11px; }
.catalog-toolbar select { height: 40px; border: 1px solid var(--line); background: white; padding: 0 26px 0 12px; }
.catalog-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.catalog-pagination { margin-top: 46px; padding-top: 25px; border-top: 1px solid var(--line); display: grid; grid-template-columns: 120px 1fr 120px; align-items: center; gap: 18px; }
.pagination-pages { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 7px; }
.pagination-page { width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid var(--line); background: white; font-size: 12px; font-weight: 700; }
.pagination-page:hover, .pagination-page.active { border-color: var(--ink); background: var(--ink); color: white; }
.pagination-direction { font-size: 12px; font-weight: 700; }
.pagination-direction:last-child { text-align: right; }
.pagination-direction:hover { color: var(--orange); }
.pagination-direction.disabled { color: #b4b6b4; cursor: default; }
.pagination-gap { width: 26px; text-align: center; color: var(--muted); }
.empty-state { min-height: 350px; display: grid; place-items: center; align-content: center; background: var(--paper); }
.empty-state p { color: var(--muted); font-size: 13px; }

.product-page { padding-top: 30px; padding-bottom: 110px; }
.breadcrumbs { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; font-size: 11px; color: var(--muted); margin-bottom: 30px; }
.breadcrumbs b { color: var(--ink); font-weight: 600; }
.product-detail { display: grid; grid-template-columns: 54% 46%; background: #f7f4ed; }
.detail-gallery { min-height: 600px; padding: 34px; background: #ded7ca; display: flex; flex-direction: column; }
.detail-gallery .product-visual { flex: 1; aspect-ratio: auto; min-height: 500px; }
.gallery-caption { display: flex; justify-content: space-between; padding-top: 16px; font-size: 10px; letter-spacing: .08em; }
.detail-copy { padding: 58px; }
.detail-copy h1 { font: 700 clamp(34px, 4vw, 52px)/1.13 Georgia, "Songti SC", serif; letter-spacing: -.04em; margin: 22px 0 12px; }
.detail-subtitle { color: var(--muted); font-size: 16px; }
.detail-price { background: var(--white); border-left: 3px solid var(--orange); padding: 18px 20px; display: flex; align-items: baseline; gap: 13px; margin: 28px 0; }
.detail-price strong { color: var(--orange); font: 700 33px Georgia, serif; }
.detail-price del { color: #aaa; }
.detail-price span { margin-left: auto; font-size: 10px; color: var(--muted); }
.detail-description { color: #59615d; line-height: 1.9; font-size: 14px; }
.included-box { padding: 22px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); margin: 28px 0; }
.included-box h2 { font-size: 13px; margin: 0 0 14px; }
.included-box ul { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; list-style: none; margin: 0; padding: 0; font-size: 12px; }
.included-box li span { color: var(--orange); margin-right: 8px; }
.add-button { width: 100%; background: var(--orange); }
.add-button:hover { background: var(--orange-dark); }
.detail-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.detail-actions .add-button { background: transparent; color: var(--ink); border: 1px solid var(--ink); }
.detail-actions .add-button:hover { background: var(--ink); color: white; }
.detail-actions .buy-now-button { width: 100%; background: var(--orange); }
.detail-actions .buy-now-button:hover { background: var(--orange-dark); }
.member-claim-button { width: 100%; background: var(--orange); }
.member-quota-note { margin: 11px 0 0; color: var(--muted); font-size: 11px; text-align: center; }
.member-quota-note b { color: var(--orange); }
.membership-inline-link { display: block; margin-top: 14px; color: var(--orange); font-size: 11px; text-align: center; }
.detail-assurance { display: flex; justify-content: space-between; font-size: 10px; color: var(--muted); margin-top: 16px; }
.detail-info { display: grid; grid-template-columns: 34% 66%; padding: 90px 0; border-bottom: 1px solid var(--line); }
.detail-info ol { list-style: none; margin: 0; padding: 0; }
.detail-info li { display: grid; grid-template-columns: 70px 1fr; padding: 23px 0; border-top: 1px solid var(--line); }
.detail-info li b { color: var(--orange); font: 700 17px Georgia, serif; }
.detail-info li strong { font-size: 15px; }
.detail-info li p { color: var(--muted); font-size: 12px; line-height: 1.7; margin: 7px 0 0; }
.related { padding-top: 85px; }
.related-grid { grid-template-columns: repeat(3, 1fr); }

.cart-page, .checkout-page { padding-top: 80px; padding-bottom: 120px; min-height: 650px; }
.page-heading { margin-bottom: 48px; }
.page-heading p { color: var(--muted); }
.empty-cart { min-height: 410px; background: var(--paper); display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.empty-cart-mark { width: 72px; height: 72px; border-radius: 50%; display: grid; place-items: center; background: var(--orange); color: white; font-size: 40px; }
.empty-cart h2 { font: 700 30px Georgia, "Songti SC", serif; margin: 22px 0 5px; }
.empty-cart p { color: var(--muted); margin-bottom: 25px; }
.cart-layout { display: grid; grid-template-columns: 1fr 350px; gap: 35px; }
.cart-lines { border: 1px solid var(--line); padding: 28px; }
.cart-lines-title { display: flex; align-items: center; justify-content: space-between; padding-bottom: 20px; border-bottom: 1px solid var(--line); }
.cart-lines-title h2 { margin: 0; font-size: 17px; }
.cart-lines-title button, .cart-line button { border: 0; background: transparent; color: var(--muted); font-size: 11px; cursor: pointer; }
.cart-line { display: grid; grid-template-columns: 120px 1fr auto; gap: 20px; align-items: center; padding: 22px 0; border-bottom: 1px solid var(--line); }
.cart-line:last-child { border: 0; }
.cart-line .product-visual { width: 120px; }
.cart-line h3 { margin: 0 0 7px; font-size: 15px; }
.cart-line p { font-size: 11px; color: var(--muted); }
.cart-line button { padding: 0; text-decoration: underline; }
.cart-line > strong { color: var(--orange); font: 700 19px Georgia, serif; }
.order-summary { background: var(--paper); padding: 30px; align-self: start; position: sticky; top: 180px; }
.order-summary h2 { margin: 0 0 26px; font-size: 18px; }
.order-summary > div { display: flex; justify-content: space-between; font-size: 12px; margin: 16px 0; }
.summary-total { border-top: 1px solid var(--line); padding-top: 22px; align-items: baseline; }
.summary-total strong { color: var(--orange); font: 700 27px Georgia, serif; }
.order-summary .primary-button { width: 100%; margin-top: 15px; }
.order-summary > p { font-size: 10px; color: var(--muted); text-align: center; line-height: 1.6; }
.checkout-page { display: grid; place-items: center; }
.checkout-card { max-width: 720px; background: var(--paper); padding: 70px; position: relative; overflow: hidden; }
.checkout-index { position: absolute; right: -5px; top: -35px; color: rgba(24,32,29,.05); font: 700 180px Georgia, serif; }
.checkout-card h1 { font: 700 48px/1.1 Georgia, "Songti SC", serif; margin: 18px 0; }
.checkout-card > p { color: var(--muted); line-height: 1.85; }
.checkout-plan { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--line); margin: 35px 0; }
.checkout-plan div { background: var(--white); padding: 20px; display: flex; flex-direction: column; }
.checkout-plan b { font-size: 12px; }
.checkout-plan span { color: var(--muted); font-size: 10px; line-height: 1.6; margin-top: 8px; }

.guide-content { padding-top: 55px; padding-bottom: 110px; }
.guide-content > article { display: grid; grid-template-columns: 140px 1fr; padding: 48px 0; border-bottom: 1px solid var(--line); }
.guide-number { color: var(--orange); font: 700 34px Georgia, serif; }
.guide-content article h2 { font: 700 28px Georgia, "Songti SC", serif; margin: 0 0 14px; }
.guide-content article p { color: var(--muted); line-height: 1.9; font-size: 14px; max-width: 700px; }
.guide-cta { margin-top: 80px; background: var(--cream); padding: 50px; display: flex; justify-content: space-between; align-items: center; gap: 30px; }
.not-found { min-height: 620px; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; }
.not-found > span { color: var(--orange); font: 700 100px Georgia, serif; }
.not-found h1 { font: 700 38px Georgia, "Songti SC", serif; margin: 0; }
.not-found p { color: var(--muted); margin-bottom: 28px; }

@media (max-width: 980px) {
  .header-main { grid-template-columns: 210px 1fr; padding: 14px 0; }
  .header-actions { display: none; }
  .mobile-account-link { display: inline-flex; }
  .category-nav-inner { overflow-x: auto; gap: 24px; white-space: nowrap; }
  .hero-grid { grid-template-columns: 1fr 1fr; }
  .hero-copy { padding-right: 28px; }
  .hero h1 { font-size: 56px; }
  .hero-stats { gap: 20px; }
  .hero-stats div { padding-right: 18px; }
  .product-grid { grid-template-columns: repeat(3, 1fr); }
  .category-cards { grid-template-columns: 1fr 1fr; }
  .category-card:first-child { grid-column: 1 / -1; }
  .footer-grid { grid-template-columns: 2fr 1fr 1fr; }
  .footer-grid > div:last-child { display: none; }
  .product-detail { grid-template-columns: 1fr; }
  .detail-gallery { min-height: 500px; }
  .catalog-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 720px) {
  .shell { width: min(100% - 28px, 1180px); }
  .announcement-note { display: none; }
  .announcement-inner { justify-content: center; text-align: center; font-size: 9px; }
  .header-main { grid-template-columns: 1fr; gap: 12px; }
  .brand { margin: 0 auto; }
  .search { width: 100%; }
  .category-nav-inner { height: 42px; }
  .hero-grid { display: flex; flex-direction: column; }
  .hero-copy { padding: 62px 0 50px; }
  .hero h1 { font-size: 51px; }
  .hero-copy > p { font-size: 14px; }
  .hero-stats { margin-top: 45px; }
  .hero-stats span { font-size: 9px; }
  .hero-art { width: calc(100% + 28px); min-height: 480px; }
  .benefits-grid { grid-template-columns: 1fr 1fr; }
  .benefits-grid > div { border-bottom: 1px solid rgba(255,255,255,.12); }
  .section { padding-top: 72px; padding-bottom: 72px; }
  .section-heading { align-items: flex-start; }
  .section-heading > a { font-size: 11px; }
  .category-cards { grid-template-columns: 1fr; }
  .category-card:first-child { grid-column: auto; }
  .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px 10px; }
  .product-card-body { padding: 13px; }
  .product-card h3 { font-size: 14px; }
  .product-card-body > p { display: none; }
  .price-row a { display: none; }
  .editorial { margin: 70px auto; grid-template-columns: 1fr; }
  .editorial-art { min-height: 350px; }
  .editorial-copy { padding: 42px 28px; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 42px 25px; }
  .footer-grid > div:first-child { grid-column: 1 / -1; }
  .catalog-hero, .guide-hero { padding: 52px 0; }
  .catalog-body { grid-template-columns: 1fr; gap: 30px; padding-top: 35px; }
  .catalog-sidebar { display: none; }
  .catalog-toolbar { align-items: stretch; flex-direction: column; }
  .catalog-search input { width: 100%; }
  .catalog-toolbar > div { justify-content: space-between; }
  .catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .catalog-pagination { grid-template-columns: 1fr 1fr; }
  .pagination-pages { grid-column: 1 / -1; grid-row: 1; }
  .pagination-direction { grid-row: 2; padding-top: 10px; }
  .product-page { padding-top: 20px; }
  .detail-gallery { min-height: 400px; padding: 18px; }
  .detail-gallery .product-visual { min-height: 360px; }
  .detail-copy { padding: 34px 24px; }
  .included-box ul { grid-template-columns: 1fr; }
  .detail-assurance { gap: 8px; font-size: 8px; }
  .detail-info { grid-template-columns: 1fr; gap: 28px; padding: 65px 0; }
  .related-grid { grid-template-columns: repeat(2, 1fr); }
  .cart-page { padding-top: 55px; }
  .cart-layout { grid-template-columns: 1fr; }
  .cart-lines { padding: 18px; }
  .cart-line { grid-template-columns: 90px 1fr; }
  .cart-line .product-visual { width: 90px; }
  .cart-line > strong { grid-column: 2; }
  .order-summary { position: static; }
  .checkout-card { padding: 45px 25px; }
  .checkout-card h1 { font-size: 38px; }
  .checkout-plan { grid-template-columns: 1fr; }
  .guide-content > article { grid-template-columns: 65px 1fr; }
  .guide-cta { padding: 34px 25px; flex-direction: column; align-items: flex-start; }
}

/* Independent store additions */
textarea { font: inherit; }
.card-cart-button { margin-left: auto; border: 0; padding: 0; background: transparent; font-size: 11px; font-weight: 800; cursor: pointer; color: var(--ink); }
.card-cart-button:hover { color: var(--orange); }
.filter-link { width: 100%; display: flex; border-bottom: 1px solid var(--line); padding: 15px 2px; font-size: 13px; }
.filter-link:hover, .filter-link.active { color: var(--orange); }
.filter-link.active { font-weight: 800; }
.small-button { min-height: 40px; padding: 0 18px; border: 0; background: var(--ink); color: white; cursor: pointer; }
.product-photo-wrap { background: #eee9de; }
.product-photo { width: 100%; height: 100%; object-fit: contain; display: block; position: relative; z-index: 3; }
.real-gallery { display: grid; grid-template-columns: 1fr; gap: 0; margin-top: 18px; background: white; }
.real-gallery img { display: block; width: 100%; height: auto; object-fit: contain; background: white; }
.cart-loading { min-height: 330px; display: grid; place-items: center; background: var(--paper); color: var(--muted); }
.cart-layout .product-photo { width: 120px; height: 110px; object-fit: cover; }
.cart-line-image { width: 120px; height: 110px; background: var(--cream); overflow: hidden; }
.cart-line-image .product-visual { width: 100%; height: 100%; }
.cart-line-image .product-photo { width: 100%; height: 100%; }
.checkout-layout { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 38px; align-items: start; }
.checkout-form { border: 1px solid var(--line); padding: 34px; display: grid; gap: 22px; }
.checkout-form > label { display: grid; gap: 9px; font-size: 13px; font-weight: 700; }
.checkout-form em { color: var(--orange); font-style: normal; }
.checkout-form input, .checkout-form textarea { width: 100%; border: 1px solid var(--line); background: white; padding: 12px 13px; outline: 0; }
.checkout-form input:focus, .checkout-form textarea:focus { border-color: var(--orange); }
.checkout-form fieldset { border: 1px solid var(--line); margin: 0; padding: 20px; display: grid; gap: 12px; }
.checkout-form legend { font-size: 13px; font-weight: 800; padding: 0 8px; }
.payment-choice { display: flex; align-items: center; gap: 12px; padding: 14px; background: var(--paper); cursor: pointer; }
.payment-choice input { width: auto; }
.payment-choice span { display: flex; flex-direction: column; gap: 4px; }
.payment-choice small { color: var(--muted); font-weight: 400; }
.form-note { color: var(--muted); font-size: 11px; line-height: 1.7; margin: 0; }
.form-error { padding: 13px; background: #ffe7df; color: #9d3217; font-size: 12px; }
.order-page { padding-top: 80px; padding-bottom: 110px; min-height: 650px; }
.order-success { padding-bottom: 32px; border-bottom: 1px solid var(--line); }
.order-success h1 { font: 700 clamp(34px, 5vw, 55px)/1.1 Georgia, "Songti SC", serif; margin: 18px 0 10px; }
.order-success p { color: var(--muted); font-size: 12px; }
.status-pill { display: inline-flex; padding: 8px 12px; background: var(--paper); font-size: 11px; font-weight: 800; }
.status-paid { background: #dff2e5; color: #24663a; }
.status-pending { background: #fff0ce; color: #8a5910; }
.status-cancelled, .status-refunded { background: #ecebea; color: #666; }
.order-detail-grid { display: grid; grid-template-columns: 1fr 340px; gap: 28px; margin-top: 38px; }
.order-items, .customer-card, .delivery-box, .payment-pending { border: 1px solid var(--line); padding: 30px; }
.order-items h2, .customer-card h2, .delivery-box h2, .payment-pending h2 { margin: 0 0 23px; font-size: 18px; }
.order-items > div { display: flex; justify-content: space-between; gap: 20px; padding: 14px 0; border-bottom: 1px solid var(--line); font-size: 13px; }
.order-items .order-total { padding-top: 22px; border-bottom: 0; }
.order-total strong { color: var(--orange); font-size: 23px; }
.customer-card p { color: var(--muted); font-size: 12px; line-height: 1.8; }
.delivery-box, .payment-pending { margin-top: 28px; background: var(--paper); }
.delivery-box article { background: white; padding: 22px; margin-top: 12px; }
.delivery-box article h3 { margin: 0 0 14px; }
.delivery-box article p { overflow-wrap: anywhere; font-size: 13px; line-height: 1.7; }
.delivery-box a { color: var(--orange); text-decoration: underline; }
.delivery-box code { padding: 4px 8px; background: #eee; font-weight: 800; }

body.payment-modal-open { overflow: hidden; }
.quick-pay-dialog { width: min(620px, calc(100% - 28px)); max-height: min(860px, calc(100vh - 28px)); padding: 0; border: 0; border-radius: 12px; background: transparent; color: var(--ink); box-shadow: 0 34px 110px rgba(0,0,0,.28); }
.quick-pay-dialog::backdrop { background: rgba(14, 20, 18, .66); backdrop-filter: blur(5px); }
.quick-pay-card { position: relative; overflow: auto; max-height: min(860px, calc(100vh - 28px)); padding: 38px; background: var(--white); }
.quick-pay-close { position: absolute; z-index: 2; top: 16px; right: 16px; width: 36px; height: 36px; display: grid; place-items: center; border: 0; border-radius: 50%; background: var(--paper); color: var(--muted); font-size: 24px; line-height: 1; cursor: pointer; }
.quick-pay-close:hover { color: var(--ink); background: var(--cream); }
.quick-pay-card h2 { margin: 12px 45px 8px 0; font: 700 34px/1.15 Georgia, "Songti SC", serif; }
.quick-pay-lead { margin: 0 0 24px; color: var(--muted); font-size: 13px; line-height: 1.75; }
.quick-pay-summary { padding: 18px 20px; background: var(--paper); }
.quick-pay-summary > div { display: flex; justify-content: space-between; gap: 20px; padding: 7px 0; font-size: 12px; }
.quick-pay-summary .quick-pay-total { align-items: baseline; margin-top: 8px; padding-top: 16px; border-top: 1px solid var(--line); }
.quick-pay-total strong { color: var(--orange); font: 700 27px Georgia, serif; }
.quick-pay-form { display: grid; gap: 18px; margin-top: 22px; }
.quick-pay-form fieldset { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 0; padding: 0; border: 0; }
.quick-pay-form legend { width: 100%; margin-bottom: 10px; font-size: 12px; font-weight: 800; }
.quick-payment-choice { display: flex; align-items: center; gap: 10px; padding: 15px; border: 1px solid var(--line); background: white; cursor: pointer; }
.quick-payment-choice:has(input:checked) { border-color: var(--orange); box-shadow: inset 0 0 0 1px var(--orange); background: #fff7f1; }
.quick-payment-choice input { accent-color: var(--orange); }
.quick-payment-choice span { display: grid; gap: 3px; }
.quick-payment-choice b { font-size: 13px; }
.quick-payment-choice small { color: var(--muted); font-size: 10px; font-weight: 400; }
.quick-pay-form > label { display: grid; grid-template-columns: auto 1fr; gap: 5px 10px; font-size: 12px; font-weight: 800; }
.quick-pay-form > label small { justify-self: end; color: var(--muted); font-weight: 400; }
.quick-pay-form > label input { grid-column: 1 / -1; width: 100%; min-height: 46px; padding: 0 13px; border: 1px solid var(--line); outline: 0; background: white; }
.quick-pay-form > label input:focus { border-color: var(--orange); }
.quick-pay-submit { width: 100%; background: var(--orange); }
.quick-pay-submit:hover { background: var(--orange-dark); }
.payment-state { text-align: center; padding: 12px 0 4px; }
.payment-state-icon { width: 58px; height: 58px; display: grid; place-items: center; margin: 0 auto 22px; border-radius: 50%; background: var(--paper); color: var(--orange); font: 700 28px Georgia, serif; }
.payment-state h2 { margin: 12px 0 10px; }
.payment-state > p { color: var(--muted); font-size: 13px; line-height: 1.75; }
.payment-order-meta { display: grid; grid-template-columns: 1fr auto; gap: 11px 20px; margin: 25px 0; padding: 20px; background: var(--paper); text-align: left; font-size: 12px; }
.payment-order-meta span { color: var(--muted); }
.payment-order-meta strong { text-align: right; }
.payment-status-text { min-height: 24px; }
.payment-state > .primary-button { width: 100%; margin-top: 8px; }
.payment-order-link { display: inline-block; margin-top: 17px; color: var(--muted); font-size: 11px; text-decoration: underline; }
.payment-success .payment-state-icon { color: #24663a; background: #dff2e5; }
.payment-delivery-list { display: grid; gap: 13px; margin: 24px 0; text-align: left; }
.payment-delivery-card { padding: 20px; border: 1px solid var(--line); background: var(--paper); }
.payment-delivery-card h3 { margin: 0 0 14px; font-size: 15px; }
.delivery-link-button { display: flex; justify-content: center; align-items: center; min-height: 44px; background: var(--orange); color: white; font-weight: 800; font-size: 12px; }
.delivery-url { overflow-wrap: anywhere; color: var(--muted); font-size: 10px; }
.delivery-code { display: flex; align-items: center; gap: 10px; margin: 14px 0; padding: 11px 12px; background: white; font-size: 11px; }
.delivery-code code { color: var(--orange); font-size: 16px; font-weight: 900; }
.delivery-code button { margin-left: auto; padding: 6px 10px; border: 1px solid var(--line); background: white; cursor: pointer; font-size: 10px; }
.delivery-note { margin: 12px 0 0; color: var(--muted); font-size: 11px; line-height: 1.65; }
.secondary-payment-button { width: 100%; min-height: 46px; border: 0; background: var(--ink); color: white; cursor: pointer; font-weight: 800; }

.member-auth-page { min-height: 690px; padding-top: 70px; padding-bottom: 90px; display: grid; place-items: start center; }
.member-auth-card { width: min(480px, 100%); padding: 42px; border: 1px solid var(--line); background: var(--paper); }
.member-auth-card h1 { margin: 12px 0; font: 700 36px/1.15 Georgia, "Songti SC", serif; }
.member-auth-card > p { color: var(--muted); font-size: 12px; line-height: 1.7; }
.member-auth-card form { display: grid; gap: 17px; margin-top: 28px; }
.member-auth-card form label { display: grid; gap: 8px; font-size: 12px; font-weight: 800; }
.member-auth-card form em { color: var(--orange); font-style: normal; }
.member-auth-card form input { min-height: 46px; padding: 0 13px; border: 1px solid var(--line); background: white; outline: 0; }
.member-auth-card form input:focus { border-color: var(--orange); }
.member-auth-error { margin: 18px 0; padding: 13px; background: #ffe7df; color: #9d3217; font-size: 12px; }
.member-auth-switch { margin-top: 20px !important; text-align: center; }
.member-auth-switch a { color: var(--orange); font-weight: 800; }

.membership-page { padding-bottom: 110px; }
.membership-hero { padding: 82px 0 130px; background: var(--ink); color: white; text-align: center; }
.membership-hero h1 { margin: 15px 0 18px; font: 700 clamp(42px, 6vw, 72px)/1.05 Georgia, "Songti SC", serif; }
.membership-hero > .shell > p { max-width: 690px; margin: 0 auto; color: rgba(255,255,255,.62); line-height: 1.8; }
.current-membership { max-width: 560px; margin: 28px auto 0; padding: 16px 20px; display: flex; align-items: center; gap: 16px; border: 1px solid rgba(255,255,255,.2); background: rgba(255,255,255,.07); text-align: left; }
.current-membership > span { color: rgba(255,255,255,.55); font-size: 10px; }
.current-membership strong { font-size: 15px; }
.current-membership small { color: rgba(255,255,255,.6); }
.current-membership a { margin-left: auto; color: var(--orange); font-size: 11px; font-weight: 800; }
.membership-plans { position: relative; z-index: 2; margin-top: -70px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; align-items: stretch; }
.membership-plan-card { position: relative; padding: 34px; border: 1px solid var(--line); background: var(--white); box-shadow: 0 22px 65px rgba(13,25,20,.09); }
.membership-plan-card.featured { border-top: 5px solid var(--orange); transform: translateY(-10px); }
.membership-popular { position: absolute; right: 20px; top: 18px; padding: 5px 8px; background: var(--orange); color: white; font-size: 9px; font-weight: 900; }
.membership-plan-name { font-size: 18px; font-weight: 900; }
.membership-price { display: flex; align-items: baseline; gap: 7px; margin: 24px 0; }
.membership-price strong { color: var(--orange); font: 700 38px Georgia, serif; }
.membership-price span { color: var(--muted); font-size: 11px; }
.membership-plan-card ul { min-height: 150px; margin: 0 0 26px; padding: 0; list-style: none; }
.membership-plan-card li { padding: 8px 0; color: var(--muted); font-size: 12px; border-bottom: 1px solid rgba(24,32,29,.07); }
.membership-plan-card li::before { content: "✓"; margin-right: 8px; color: var(--orange); font-weight: 900; }
.membership-plan-card .primary-button { width: 100%; }
.membership-rules { padding-top: 90px; }
.membership-rules h2 { font: 700 34px Georgia, "Songti SC", serif; }
.membership-rules > div { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.membership-rules article { padding: 26px; background: var(--paper); }
.membership-rules article b { font-size: 14px; }
.membership-rules article p { margin: 11px 0 0; color: var(--muted); font-size: 12px; line-height: 1.75; }

.member-center-page { padding: 48px 0 110px; background: #f2f3f4; min-height: 760px; }
.member-center-layout { display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 26px; align-items: start; }
.member-profile-card { position: sticky; top: 170px; padding: 28px; background: white; border: 1px solid #e1e3e4; text-align: center; }
.member-avatar { width: 78px; height: 78px; display: grid; place-items: center; margin: 0 auto 15px; border-radius: 50%; background: var(--orange); color: white; font: 700 30px Georgia, serif; }
.member-profile-card h2 { margin: 0; font-size: 18px; }
.member-profile-card > p { margin: 7px 0; color: var(--muted); font-size: 11px; overflow-wrap: anywhere; }
.member-type { display: inline-flex; padding: 6px 9px; background: var(--paper); color: var(--muted); border-radius: 99px; font-size: 10px; font-weight: 800; }
.member-quota { margin: 22px -28px 0; padding: 19px; display: grid; gap: 7px; background: #e8f7ef; color: #178d55; }
.member-quota strong { font-size: 13px; }
.member-quota span { font-size: 10px; }
.member-profile-card nav { display: grid; margin-top: 20px; text-align: left; }
.member-profile-card nav a { padding: 12px 8px; border-bottom: 1px solid #eceeed; color: #58615d; font-size: 12px; }
.member-profile-card nav a:hover { color: var(--orange); }
.member-center-content { min-width: 0; display: grid; gap: 20px; }
.member-panel { padding: 28px; border: 1px solid #e1e3e4; background: white; }
.member-panel h2 { margin: 0 0 20px; font-size: 18px; }
.member-notice { padding: 14px 17px; background: #e4f5ea; color: #26633c; font-size: 12px; }
.member-status-panel { display: grid; grid-template-columns: 1fr 100px auto; align-items: center; gap: 24px; }
.member-status-panel h1 { margin: 8px 0 4px; font: 700 30px Georgia, "Songti SC", serif; }
.member-status-panel p { margin: 0; color: var(--muted); font-size: 11px; }
.member-usage-ring { width: 92px; height: 92px; display: grid; place-items: center; align-content: center; border: 8px solid #dff2e5; border-top-color: var(--orange); border-radius: 50%; }
.member-usage-ring strong { font: 700 27px Georgia, serif; }
.member-usage-ring span { color: var(--muted); font-size: 9px; }
.member-record { min-width: 0; display: flex; justify-content: space-between; align-items: center; gap: 18px; padding: 15px 0; border-bottom: 1px solid #eceeed; }
.member-record:last-child { border-bottom: 0; }
.member-record > div { min-width: 0; display: flex; align-items: center; gap: 12px; }
.member-record > div:first-child { flex-direction: column; align-items: flex-start; }
.member-record strong { font-size: 12px; }
.member-record small { color: var(--muted); font-size: 10px; }
.member-record a { color: var(--orange); font-size: 11px; font-weight: 800; }
.member-record code { padding: 5px 8px; background: var(--paper); color: var(--ink); font-weight: 900; }
.member-order-status { padding: 5px 7px; border-radius: 99px; font-size: 9px; font-weight: 900; }
.member-empty { padding: 28px; background: var(--paper); color: var(--muted); text-align: center; font-size: 12px; }
.member-settings-form { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.member-settings-form label { display: grid; gap: 7px; font-size: 11px; font-weight: 800; }
.member-settings-form input { min-height: 44px; padding: 0 12px; border: 1px solid var(--line); outline: 0; }
.member-settings-form input:focus { border-color: var(--orange); }
.member-settings-form .primary-button { align-self: end; }
.membership-activated { border-left: 4px solid #2e8b57; }

@media (max-width: 800px) {
  .checkout-layout, .order-detail-grid { grid-template-columns: 1fr; }
  .checkout-layout .order-summary { order: -1; position: static; }
  .membership-plans { max-width: 650px; grid-template-columns: 1fr; }
  .membership-plan-card.featured { transform: none; }
  .membership-rules > div { grid-template-columns: 1fr; }
  .member-center-layout { grid-template-columns: 1fr; }
  .member-profile-card { position: static; }
  .member-profile-card nav { grid-template-columns: 1fr 1fr; }
  .member-status-panel { grid-template-columns: 1fr 90px; }
  .member-status-panel .primary-button { grid-column: 1 / -1; }
}

@media (max-width: 540px) {
  .checkout-form { padding: 22px; }
  .cart-line { grid-template-columns: 80px 1fr; }
  .cart-line-image { width: 80px; height: 80px; }
  .cart-line > strong { grid-column: 2; }
  .order-items, .customer-card, .delivery-box, .payment-pending { padding: 22px; }
  .detail-actions { grid-template-columns: 1fr; }
  .quick-pay-card { padding: 30px 20px 22px; }
  .quick-pay-form fieldset { grid-template-columns: 1fr; }
  .quick-pay-card h2 { font-size: 29px; }
  .member-auth-card { padding: 30px 20px; }
  .current-membership { align-items: flex-start; flex-direction: column; }
  .current-membership a { margin-left: 0; }
  .membership-plan-card { padding: 28px 24px; }
  .member-status-panel { grid-template-columns: 1fr; }
  .member-record, .member-record > div { align-items: flex-start; flex-direction: column; }
  .member-settings-form { grid-template-columns: 1fr; }
}

@media (max-width: 420px) {
  .hero-actions { align-items: flex-start; flex-direction: column; gap: 18px; }
  .hero-stats { justify-content: space-between; }
  .hero-stats div { padding-right: 12px; }
  .product-grid, .catalog-grid, .related-grid { grid-template-columns: 1fr; }
  .benefits-grid { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; }
}
