:root {
  --shop-blue: #315bd6;
  --shop-blue-soft: #eef2ff;
  --shop-card: #fffdf8;
}

.site-header nav { display:flex; gap:1.25rem; }
.site-header nav a { color:var(--ink); text-decoration:none; font-size:.92rem; }
.shop-index { width:min(1120px,calc(100% - 2rem)); margin:0 auto; padding:2rem 0 5rem; }
.shop-index .breadcrumbs { max-width:760px; }
.shop-index-header { max-width:760px; padding:3.5rem 0 5rem; }
.shop-index-header h1 { margin:.5rem 0 1.5rem; font-size:clamp(3rem,8vw,6rem); line-height:1.03; letter-spacing:-.04em; }
.shop-index-header > p:last-child { max-width:620px; color:#50554d; font-size:1.08rem; }
.shop-index-title { display:grid; grid-template-columns:1fr auto; align-items:end; gap:.25rem 2rem; margin-bottom:1.5rem; border-bottom:1px solid var(--line); }
.shop-index-title .category { grid-column:1 / -1; }
.shop-index-title h2 { margin:0 0 1rem; }
.shop-index-title > p:last-child { margin:0 0 1.35rem; color:var(--muted); }
.shop-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.shop-card { display:flex; min-height:270px; padding:1.5rem; border:1px solid var(--line); border-radius:18px; background:var(--shop-card); color:var(--ink); text-decoration:none; flex-direction:column; transition:transform .2s ease,box-shadow .2s ease; }
.shop-card:hover,.shop-card:focus-visible { transform:translateY(-4px); box-shadow:0 18px 42px rgba(44,48,40,.1); }
.shop-card small { color:var(--muted); }
.shop-card h2 { margin:.65rem 0; font-size:1.45rem; }
.shop-card p { margin:0 0 1.5rem; color:#555a52; }
.shop-card span { margin-top:auto; color:var(--green); font-weight:700; }
.shop-about { display:flex; justify-content:space-between; gap:1rem; margin-top:3rem; padding:1.5rem 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.shop-about p { margin:0; }
.shop-about a { font-weight:700; }

.shop-article-shell { width:min(900px,calc(100% - 2rem)); }
.legacy-article { max-width:760px; margin:0 auto; }
.legacy-article .eyebrow,.legacy-article .small { color:var(--muted); font-size:.84rem; }
.legacy-article h1 { margin:.5rem 0 1rem; font-size:clamp(2rem,7vw,3.45rem); }
.legacy-article h2 { padding-top:1.5rem; border-top:1px solid var(--line); }
.legacy-article h3 { margin-top:2rem; font-size:1.2rem; }
.legacy-article p,.legacy-article li { overflow-wrap:anywhere; }
.legacy-article li { padding:.2rem 0; }
.legacy-article .intro { color:#4f524b; font-size:1.08rem; }
.legacy-article .takeaway,.legacy-article .fit-verdict { margin:2rem 0; padding:1.5rem; border-radius:12px; background:#26322b; color:#fff; }
.legacy-article .takeaway .small,.legacy-article .fit-verdict .small { color:#e5ebe6; }
.legacy-article .note,.legacy-article .unique,.legacy-article .intent,.legacy-article .update-log { margin:1.5rem 0; padding:1rem 1.2rem; border-left:3px solid var(--shop-blue); background:var(--shop-blue-soft); }
.legacy-article .decision-box,.legacy-article .experience-proof,.legacy-article .stance,.legacy-article .fact { margin:1.5rem 0; padding:1.25rem; border:1px solid var(--line); border-radius:12px; background:#fff; }
.legacy-article .proof-grid,.legacy-article .facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; }
.legacy-article .proof-item { padding:.9rem; border-radius:8px; background:var(--shop-blue-soft); }
.legacy-article .proof-item small,.legacy-article .proof-item strong { display:block; }
.legacy-article .buy-actions { display:flex; flex-wrap:wrap; gap:.75rem; margin:1.25rem 0; }
.legacy-article .buy-primary,.legacy-article .buy-secondary { display:inline-block; padding:.85rem 1.1rem; border-radius:8px; font-weight:800; text-decoration:none; }
.legacy-article .buy-primary { background:var(--shop-blue); color:#fff; }
.legacy-article .buy-secondary { border:2px solid var(--shop-blue); background:#fff; color:#244bbd; }
.legacy-article .ad-note,.legacy-article .proof-caveat { color:var(--muted); font-size:.82rem; }
.legacy-article .related-reading { margin-top:3.5rem; padding-top:1.5rem; border-top:1px solid var(--line); }
.legacy-article .related-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.8rem; }
.legacy-article .related-card { padding:1rem; border:1px solid var(--line); border-radius:10px; background:#fff; color:var(--ink); text-decoration:none; }
.legacy-article .article-list a { font-weight:700; }
.legacy-article .article-list span { display:block; color:var(--muted); font-size:.82rem; }
.legacy-article table { width:100%; border-collapse:collapse; }
.legacy-article th,.legacy-article td { padding:.75rem; border:1px solid var(--line); text-align:left; vertical-align:top; }
.shop-return { max-width:760px; margin:3rem auto 0; padding-top:1.5rem; border-top:1px solid var(--line); }
.shop-return a { font-weight:700; }
.product-grid { display:grid; gap:.8rem; }
.product-card { padding:1.2rem; border:1px solid var(--line); border-radius:12px; background:#fff; }
.product-card h3 { margin-top:0; }
.disclosure { color:var(--muted); font-size:.85rem; }

@media (max-width:700px) {
  .shop-index-header { padding:2.25rem 0 3.5rem; }
  .shop-card-grid,.legacy-article .proof-grid,.legacy-article .facts,.legacy-article .related-grid { grid-template-columns:1fr; }
  .shop-card { min-height:0; }
  .shop-about { display:block; }
  .shop-about a { display:inline-block; margin-top:.5rem; }
  .legacy-article .buy-actions a { width:100%; text-align:center; }
  .legacy-article table { display:block; overflow-x:auto; }
}
