/* 版型總覽頁（/demo/）。 */
.s-index { --bg: #f6f5f2; --fg: #1b1b1d; --muted: #6a6a70; --line: #e2e0da; --accent: #1286c0; }
.idx-head { padding-block: clamp(48px, 8vw, 96px) 24px; }
.idx-eyebrow { color: var(--accent); letter-spacing: .2em; font-size: .85rem; font-weight: 700; }
.idx-head h1 { font-size: clamp(2.2rem, 6vw, 3.6rem); margin: 8px 0 18px; }
.idx-lede { color: var(--muted); max-width: 44em; }
.idx-lede + .idx-lede { margin-top: 8px; }
.idx-tier { padding-block: 32px 48px; }
.idx-tier h2 { font-size: 1.6rem; margin-bottom: 22px; display: flex; align-items: baseline; gap: 14px; flex-wrap: wrap; }
.idx-tier h2 small { font: 500 .9rem var(--sans); color: var(--muted); }
.idx-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(300px, 100%), 1fr)); gap: 22px; }
.idx-card { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--line); border-radius: 16px; overflow: hidden; text-decoration: none;
  transition: transform .25s, box-shadow .25s; }
.idx-card:hover { transform: translateY(-4px); box-shadow: 0 16px 36px rgba(0,0,0,.1); }
.idx-pic { aspect-ratio: 16 / 10; overflow: hidden; background: #ddd; }
.idx-pic img { width: 100%; height: 100%; object-fit: cover; }
.idx-body { display: grid; gap: 6px; padding: 18px 20px 20px; }
.idx-name { font-size: 1.25rem; }
.idx-look { color: var(--muted); }
.idx-eg { font-size: .88rem; color: var(--muted); }
.idx-go { color: var(--accent); font-weight: 700; margin-top: 4px; }
.idx-foot { border-top: 1px solid var(--line); padding-block: 36px; color: var(--muted); font-size: .9rem; }
.idx-foot a { color: var(--accent); }
