/* ── 23. Pull to continue ────────────────────────────── */
.s23 { height: 620px; background: var(--gray-0); color: var(--gray-850); }
.pc-sc { position: absolute; inset: 0; overflow-y: auto; scrollbar-width: none; overscroll-behavior: contain; }
.pc-sc::-webkit-scrollbar { display: none; }
.pc-hero { height: 360px; display: flex; flex-direction: column; justify-content: flex-end; padding: 0 clamp(22px, 5cqw, 60px) 40px; color: var(--gray-0); }
.pc-hero small { font-size: 13px; font-weight: 550; opacity: .75; }
.pc-hero h3 { margin: 8px 0 0; font-size: clamp(40px, 8cqw, 96px); line-height: .92; letter-spacing: -0.022em; font-weight: 550; }
.pc-meta { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; padding: 30px clamp(22px, 5cqw, 60px); border-bottom: 1px solid var(--gray-50); font-size: 13px; }
.pc-meta span { display: block; color: var(--gray-400); font-size: 12px; margin-bottom: 2px; }
.pc-body { padding: 10px clamp(22px, 5cqw, 60px) 40px; max-width: 760px; }
.pc-body p { font-size: 17px; line-height: 1.6; color: var(--gray-700); margin: 24px 0 0; }
.pc-body i { display: block; height: 280px; border-radius: 8px; margin-top: 28px; }
.pc-next { position: relative; height: 200px; margin-top: 40px; overflow: hidden; }
.pc-card { position: absolute; left: 0; right: 0; bottom: 0; top: 0; padding: 30px clamp(22px, 5cqw, 60px); color: var(--gray-0); display: flex; flex-direction: column; justify-content: space-between; cursor: default; border: 0; text-align: left; font: inherit; width: 100%; }
.pc-card small { font-size: 13px; font-weight: 550; opacity: .8; }
.pc-card b { font-size: clamp(32px, 6cqw, 64px); line-height: .95; letter-spacing: -0.022em; font-weight: 550; }
.pc-ring { position: absolute; right: clamp(22px, 5cqw, 60px); top: 26px; width: 44px; height: 44px; }
.pc-ring svg { width: 44px; height: 44px; transform: rotate(-90deg); }
.pc-ring circle { fill: none; stroke-width: 2.5; }
.pc-hintx { position: absolute; right: calc(clamp(22px, 5cqw, 60px) + 56px); top: 38px; font-size: 13px; opacity: .8; color: var(--gray-0); }
.pc-cover { position: absolute; z-index: 20; left: 0; top: 0; width: 0; height: 0; pointer-events: none; opacity: 0; }
@container (max-width: 700px) { .pc-meta { grid-template-columns: 1fr 1fr; } .pc-hintx { display: none; } }

