
        /* page-default の本文は .layout__main--full が container-narrow(~920px) で縛るため、
           実績ページ（.wn-cr を含む）に限り解除し、トップ(1200px)と幅を一致させる。 */
        .container.layout:has(.wn-cr) { max-width: none; }
        .layout__main--full:has(.wn-cr) { max-width: var(--container, 1200px); }
        /* セクション間余白＝サイト基準 --section-y に統一。セクション内＝共通値。 */
        .wn-cr { display: grid; gap: var(--section-y, clamp(3.5rem, 2.4rem + 5.5vw, 7rem)); color: var(--c-ink, #1B2547); width: 100%; max-width: var(--container, 1200px); margin-inline: auto; }
        .wn-cr .wn-cr-sec { display: grid; gap: clamp(1.5rem, 1.2rem + 1vw, 2.25rem); }

        /* intro */
        .wn-cr .wn-cr-intro { display: grid; gap: .9rem; padding-bottom: .5rem; }
        .wn-cr .wn-cr-eyebrow { font-size: .8rem; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; color: var(--c-eyebrow, var(--c-accent-text, #B5430D)); }
        .wn-cr .wn-cr-title { margin: 0; font-size: clamp(1.5rem, 3.4vw, 2.2rem); font-weight: 800; line-height: 1.4; color: var(--c-ink, #1B2547); }
        .wn-cr .wn-cr-title em { font-style: normal; color: var(--c-eyebrow, var(--c-accent-text, #B5430D)); }
        .wn-cr .wn-cr-lede { margin: 0; max-width: 62ch; font-size: clamp(.98rem, 1.4vw, 1.08rem); line-height: 1.95; color: var(--c-text-mute, #5F6B89); }

        /* section heading */
        .wn-cr .wn-cr-h3 { display: flex; align-items: center; gap: .7rem; margin: 0; font-size: clamp(1.2rem, 2.2vw, 1.5rem); font-weight: 800; color: var(--c-ink, #1B2547); }
        .wn-cr .wn-cr-no { display: inline-flex; align-items: center; justify-content: center; width: 2rem; height: 2rem; border-radius: 8px; font-size: .9rem; font-weight: 800; color: #fff; background: var(--c-accent-fill, #B5430D); }

        /* stats */
        .wn-cr .wn-cr-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: clamp(.75rem, 1.6vw, 1.1rem); }
        .wn-cr .wn-cr-stat { display: grid; gap: .25rem; padding: 1.25rem 1rem; background: var(--c-paper, #fff); border: 1px solid var(--c-border, #E1E7F2); border-radius: 14px; text-align: center; box-shadow: var(--shadow-1); }
        .wn-cr .wn-cr-stat__num { font-size: clamp(1.7rem, 4vw, 2.4rem); font-weight: 800; line-height: 1; color: var(--c-ink, #1B2547); font-variant-numeric: tabular-nums; }
        .wn-cr .wn-cr-stat__num small { font-size: .5em; margin-left: .12em; color: var(--c-text-mute, #5F6B89); }
        .wn-cr .wn-cr-stat__label { font-size: .9rem; font-weight: 800; color: var(--c-ink, #1B2547); }
        .wn-cr .wn-cr-stat__sub { font-size: .72rem; color: var(--c-text-mute, #5F6B89); line-height: 1.5; }

        /* note */
        .wn-cr .wn-cr-note { margin: 0; padding: 1rem 1.2rem; font-size: .85rem; line-height: 1.85; color: var(--c-text-mute, #5F6B89); background: var(--c-mist, #F6F9FE); border: 1px solid var(--c-border-soft, #EEF2FA); border-radius: 12px; }
        .wn-cr .wn-cr-note strong { color: var(--c-ink, #1B2547); }

        /* source cards */
        .wn-cr .wn-cr-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(.85rem, 1.8vw, 1.25rem); }
        .wn-cr .wn-cr-card { display: grid; gap: .5rem; align-content: start; padding: clamp(1.1rem, 2vw, 1.5rem); background: var(--c-paper, #fff); border: 1px solid var(--c-border, #E1E7F2); border-radius: 14px; box-shadow: var(--shadow-1); transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
        .wn-cr .wn-cr-card:hover { transform: translateY(-3px); box-shadow: var(--shadow-3); border-color: var(--c-accent, #F26B22); }
        .wn-cr .wn-cr-card h4 { margin: 0; font-size: 1rem; font-weight: 800; color: var(--c-eyebrow, var(--c-accent-text, #B5430D)); }
        .wn-cr .wn-cr-card p { margin: 0; font-size: .86rem; line-height: 1.85; color: var(--c-text, #1B2547); }

        /* cases */
        .wn-cr .wn-cr-cases { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(.85rem, 1.8vw, 1.25rem); }
        .wn-cr .wn-cr-case { display: grid; gap: .85rem; align-content: start; padding: clamp(1.2rem, 2.2vw, 1.6rem); background: var(--c-paper, #fff); border: 1px solid var(--c-border, #E1E7F2); border-radius: 16px; box-shadow: var(--shadow-1); }
        .wn-cr .wn-cr-case__tag { width: max-content; font-size: .7rem; font-weight: 800; letter-spacing: .1em; color: var(--c-eyebrow, var(--c-accent-text, #B5430D)); background: var(--c-accent-soft, #FFE2D2); padding: .25rem .7rem; border-radius: 999px; }
        .wn-cr .wn-cr-case__title { margin: 0; font-size: 1.1rem; font-weight: 800; color: var(--c-ink, #1B2547); }
        .wn-cr .wn-cr-case__rows { margin: 0; display: grid; gap: .55rem; }
        .wn-cr .wn-cr-case__rows > div { display: grid; grid-template-columns: 5.5rem 1fr; gap: .6rem; align-items: start; }
        .wn-cr .wn-cr-case__rows dt { font-size: .72rem; font-weight: 800; color: #fff; background: var(--c-ink, #1B2547); padding: .2rem .5rem; border-radius: 6px; height: max-content; text-align: center; }
        .wn-cr .wn-cr-case__rows dd { margin: 0; font-size: .85rem; line-height: 1.8; color: var(--c-text, #1B2547); }
        .wn-cr .wn-cr-case__time { width: max-content; font-size: .78rem; font-weight: 800; color: var(--c-accent-deep, #D45417); background: rgba(242,107,34,.1); padding: .3rem .8rem; border-radius: 999px; }

        /* tech */
        .wn-cr .wn-cr-tech { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(.85rem, 1.8vw, 1.25rem); }
        .wn-cr .wn-cr-tech__group { padding: 1.1rem 1.25rem; background: var(--c-paper, #fff); border: 1px solid var(--c-border, #E1E7F2); border-radius: 14px; }
        .wn-cr .wn-cr-tech__group h5 { margin: 0 0 .7rem; font-size: .8rem; font-weight: 800; letter-spacing: .08em; color: var(--c-eyebrow, var(--c-accent-text, #B5430D)); text-transform: uppercase; }
        .wn-cr .wn-cr-chips { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .4rem .5rem; }
        .wn-cr .wn-cr-chips li { font-size: .78rem; font-weight: 600; color: var(--c-ink, #1B2547); background: var(--c-mist, #F6F9FE); border: 1px solid var(--c-border-soft, #EEF2FA); border-radius: 8px; padding: .3rem .65rem; }

        /* voices */
        .wn-cr .wn-cr-voices { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(.85rem, 1.8vw, 1.25rem); }
        .wn-cr .wn-cr-voice { position: relative; margin: 0; padding: 1.4rem 1.4rem 1.1rem; background: var(--c-mist, #F6F9FE); border: 1px solid var(--c-border, #E1E7F2); border-left: 4px solid var(--c-accent, #F26B22); border-radius: 12px; }
        .wn-cr .wn-cr-voice::before { content: "\201C"; position: absolute; top: .1rem; right: .9rem; font-size: 2.6rem; line-height: 1; color: var(--c-eyebrow, var(--c-accent-text, #B5430D)); opacity: .18; font-family: Georgia, serif; }
        .wn-cr .wn-cr-voice p { margin: 0 0 .7rem; font-size: .86rem; line-height: 1.9; color: var(--c-text, #1B2547); }
        .wn-cr .wn-cr-voice cite { font-style: normal; font-weight: 800; font-size: .8rem; color: var(--c-eyebrow, var(--c-accent-text, #B5430D)); }

        /* cta */
        .wn-cr .wn-cr-cta { display: grid; gap: .6rem; justify-items: center; text-align: center; padding: clamp(2rem, 5vw, 3.25rem) 1.5rem; border-radius: 22px; background: linear-gradient(135deg, #1B2547, #283464); color: #fff; }
        .wn-cr .wn-cr-cta__eyebrow { margin: 0; font-size: .78rem; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; color: #ffb37a; }
        .wn-cr .wn-cr-cta__title { margin: 0; font-size: clamp(1.2rem, 2.4vw, 1.6rem); font-weight: 800; color: #fff; }
        .wn-cr .wn-cr-cta__lede { margin: 0 0 .75rem; font-size: .92rem; color: rgba(255,255,255,.85); }
        .wn-cr .wn-cr-cta__btns { display: flex; flex-wrap: wrap; gap: .75rem; justify-content: center; }
        .wn-cr .wn-cr-cta .wn-btn-primary { background: var(--c-accent-fill, #B5430D); color: #fff; border-color: var(--c-accent, #F26B22); box-shadow: 0 8px 22px -8px rgba(242,107,34,.5); }
        .wn-cr .wn-cr-cta .wn-btn-ghost { color: #fff; border-color: rgba(255,255,255,.4); background: rgba(255,255,255,.08); }

        /* ===== レスポンシブ ===== */
        @media (max-width: 900px) {
            .wn-cr .wn-cr-stats { grid-template-columns: repeat(2, 1fr); }
            .wn-cr .wn-cr-cards, .wn-cr .wn-cr-cases, .wn-cr .wn-cr-tech, .wn-cr .wn-cr-voices { grid-template-columns: 1fr; }
        }
        @media (max-width: 480px) {
            .wn-cr .wn-cr-stats { grid-template-columns: 1fr; }
            .wn-cr .wn-cr-case__rows > div { grid-template-columns: 1fr; gap: .25rem; }
            .wn-cr .wn-cr-case__rows dt { width: max-content; }
        }

        /* ===== ダークモード ===== */
        html[data-theme="dark"] .wn-cr,
        html[data-theme="dark"] .wn-cr .wn-cr-title,
        html[data-theme="dark"] .wn-cr .wn-cr-h3,
        html[data-theme="dark"] .wn-cr .wn-cr-stat__label { color: #f4f4f4; }
        html[data-theme="dark"] .wn-cr .wn-cr-lede,
        html[data-theme="dark"] .wn-cr .wn-cr-stat__sub,
        html[data-theme="dark"] .wn-cr .wn-cr-card p,
        html[data-theme="dark"] .wn-cr .wn-cr-case__rows dd,
        html[data-theme="dark"] .wn-cr .wn-cr-voice p,
        html[data-theme="dark"] .wn-cr .wn-cr-note { color: #c7cddb; }
        html[data-theme="dark"] .wn-cr .wn-cr-stat,
        html[data-theme="dark"] .wn-cr .wn-cr-card,
        html[data-theme="dark"] .wn-cr .wn-cr-case,
        html[data-theme="dark"] .wn-cr .wn-cr-tech__group { background: rgba(255,255,255,.04); border-color: rgba(255,255,255,.12); }
        html[data-theme="dark"] .wn-cr .wn-cr-stat__num,
        html[data-theme="dark"] .wn-cr .wn-cr-case__title { color: #f4f4f4; }
        html[data-theme="dark"] .wn-cr .wn-cr-note,
        html[data-theme="dark"] .wn-cr .wn-cr-voice { background: rgba(255,255,255,.05); border-color: rgba(255,255,255,.12); }
        html[data-theme="dark"] .wn-cr .wn-cr-chips li { background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.12); color: #e8e8e8; }
        html[data-theme="dark"] .wn-cr .wn-cr-note strong { color: #fff; }
        html[data-theme="dark"] .wn-cr .wn-cr-case__rows dt { background: rgba(255,255,255,.14); color: #eef2fa; }
        html[data-theme="dark"] .wn-cr .wn-cr-case__time { color: #ffb37a; background: rgba(242,107,34,.16); }
        html[data-theme="dark"] .wn-cr .wn-cr-case__tag { background: rgba(242,107,34,.2); color: #ffb37a; }
        html[data-theme="dark"] .wn-cr .wn-cr-card h4,
        html[data-theme="dark"] .wn-cr .wn-cr-voice cite { color: #ffb37a; }
    