/* cases page · every selector scoped to .pg-cases */
.pg-cases .pill{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 14px;border-radius:999px;background:var(--blue-50);color:#1557c0;font-size:14px;font-weight:600}
.pg-cases .pill i{width:6px;height:6px;border-radius:50%;background:var(--blue)}
.pg-cases .hero-note{margin:18px 0 0;font-size:14px;color:var(--g600)}
.pg-cases .checklist{margin:0;padding:0;list-style:none}
.pg-cases .checklist li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:12px;padding:10px 0;border-bottom:1px solid rgba(2,32,71,.06)}
.pg-cases .checklist li:last-child{border-bottom:0}
.pg-cases .check{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--blue);color:#fff;font-size:13px}
.pg-cases .check .ico{stroke-width:3}
.pg-cases .checklist b{display:block;font-size:15px;font-weight:700;line-height:1.5;color:var(--g900)}
.pg-cases .checklist div>span{display:block;margin-top:2px;font-size:14px;line-height:1.6;color:var(--g700)}
.pg-cases .checklist.cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}
.pg-cases .checklist.cols li:nth-last-child(2):nth-child(odd){border-bottom:0}
@media (max-width:760px){.pg-cases .checklist.cols{grid-template-columns:minmax(0,1fr)}.pg-cases .checklist.cols li:nth-last-child(2):nth-child(odd){border-bottom:1px solid rgba(2,32,71,.06)}}
.pg-cases .checklist.plain b{font-weight:600;color:var(--g800)}

/* hero card stack */
.pg-cases .hs{position:relative;width:100%;max-width:440px;padding:28px 0 36px}
.pg-cases .hs-back{position:absolute;left:28px;right:28px;top:0;height:60px;border-radius:24px;background:#fff;box-shadow:var(--shadow-card);opacity:.55;transform:scale(.92)}
.pg-cases .hs-back.b2{top:14px;opacity:.8;transform:scale(.96)}
.pg-cases .hs-card{position:relative;padding:24px 22px 18px;border-radius:28px;background:#fff;box-shadow:var(--shadow-float)}
.pg-cases .hs-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.pg-cases .hs-top b{font-size:14px;font-weight:800;color:var(--blue-700)}
.pg-cases .hs-title{margin:12px 0 16px;font-size:21px;line-height:1.42;font-weight:800;letter-spacing:-.02em}
.pg-cases .hs-rows{display:grid;gap:6px;margin:0;padding:0;list-style:none;counter-reset:hs}
.pg-cases .hs-rows li{display:grid;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 12px;border-radius:14px;background:var(--g50);font-size:14px;font-weight:600;color:var(--g800);counter-increment:hs}
.pg-cases .hs-rows li::before{content:counter(hs);display:grid;place-items:center;width:26px;height:26px;border-radius:9px;background:#fff;color:var(--blue-700);font-size:12px;font-weight:800}
.pg-cases .hs-rows li.on{background:var(--blue-50);color:var(--g900)}
.pg-cases .hs-rows small{font-size:12px;font-weight:600;color:var(--g600)}
.pg-cases .hs-rows li.on small{color:var(--blue-700)}
.pg-cases .hs-float{position:absolute;right:-12px;bottom:0;display:flex;align-items:center;gap:10px;max-width:260px;padding:12px 16px;border-radius:18px;background:var(--g900);color:#fff;font-size:13px;font-weight:600;line-height:1.45;box-shadow:var(--shadow-float)}
.pg-cases .hs-float .ico{flex:none;font-size:18px;color:#6fb1ff}
@media (max-width:520px){.pg-cases .hs-float{position:relative;right:auto;margin:-10px 12px 0 auto}.pg-cases .hs{padding-bottom:0}}

/* overview navigator with descriptions */
.pg-cases .case-nav{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}
.pg-cases .case-nav a{align-items:start;gap:14px;padding:20px 20px 18px;border-radius:22px;transition:background .2s,transform .3s var(--ease)}
.pg-cases .case-nav a:hover{transform:translateY(-2px)}
.pg-cases .case-nav a>div b{display:block;font-size:17px;font-weight:700;line-height:1.45}
.pg-cases .case-nav a>div small{display:block;margin-top:6px;font-size:14px;font-weight:500;line-height:1.6;color:var(--g700)}
.pg-cases .case-nav a>div>span.tag{display:inline-flex;width:auto;height:26px;margin-top:10px;padding:0 10px;border-radius:8px;background:#fff;color:var(--g700);font-size:13px;font-weight:600}
@media (max-width:400px){.pg-cases .case-nav{grid-template-columns:minmax(0,1fr)}}

/* seven slots */
.pg-cases .slots{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:0;padding:0;list-style:none}
.pg-cases .slots li{padding:20px 18px;border-radius:20px;background:#fff}
.pg-cases .slots .ic{width:40px;height:40px;border-radius:12px;font-size:19px}
.pg-cases .slots b{display:block;margin-top:14px;font-size:16px;font-weight:700;line-height:1.4}
.pg-cases .slots li>span:not(.ic){display:block;margin-top:4px;font-size:14px;line-height:1.55;color:var(--g700)}
.pg-cases .slots em{font-style:normal;font-size:12px;font-weight:800;color:var(--blue-700)}

/* start tabs panel */
.pg-cases .start-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:16px;margin-top:24px}
.pg-cases .start-panel[hidden]{display:none}
.pg-cases .start-panel>div{padding:28px;border-radius:24px;background:var(--g50)}
.pg-cases .start-h{margin:0 0 14px;font-size:15px;font-weight:700;color:var(--g700)}
.pg-cases .start-panel p{margin:0;font-size:16px;line-height:1.7;color:var(--g800)}
.pg-cases .start-links{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:18px}
.pg-cases .start-panel .rows{border-top:0}
.pg-cases .start-panel .rows>li{border-bottom-color:var(--g200)}
.pg-cases .start-panel .rows>li:last-child{border-bottom:0}
.pg-cases .start-panel .row{padding:14px 4px}
.pg-cases .start-panel .row b{font-size:16px}
.pg-cases .rnum{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#fff;color:var(--blue-700);font-size:14px;font-weight:800}
@media (max-width:860px){.pg-cases .start-panel{grid-template-columns:minmax(0,1fr)}.pg-cases .start-panel>div{padding:22px 20px}}

/* case intro: story + visual */
.pg-cases .case-sub{margin:0 0 14px;font-size:15px;font-weight:600;color:var(--g600)}
.pg-cases .ci{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:28px;align-items:center;margin-top:8px}
.pg-cases .ci-why{margin-top:22px;padding:22px 24px;border-radius:22px;background:var(--blue-50)}
.pg-cases .ci-why h4{margin:0;display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--blue-700)}
.pg-cases .ci-why strong{display:block;margin:8px 0 6px;font-size:clamp(19px,1.9vw,23px);line-height:1.45;font-weight:800;letter-spacing:-.02em;color:var(--g900)}
.pg-cases .ci-why p{margin:0;font-size:15px;line-height:1.65;color:var(--g700)}
.pg-cases .ci-vis{margin:0;padding:24px;border-radius:24px;background:var(--g50)}
.pg-cases .ci-vis figcaption{margin-top:14px;font-size:13px;line-height:1.55;color:var(--g600);text-align:center}
.pg-cases .ci-links{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:18px}
.pg-cases .ci-links .link{font-size:15px}
@media (max-width:960px){.pg-cases .ci{grid-template-columns:minmax(0,1fr)}}
@media (max-width:520px){.pg-cases .ci-vis{padding:16px 12px}}

/* mock pieces */
.pg-cases .pagemock{box-shadow:0 1px 2px rgba(2,32,71,.06),0 8px 24px rgba(2,32,71,.06)}
.pg-cases .pm-url span{overflow-wrap:anywhere;word-break:break-all}
.pg-cases .pm-body{padding:4px 14px 16px}
.pg-cases .sched{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.pg-cases .sched>div{padding:14px;border-radius:14px;background:var(--g50)}
.pg-cases .sched b{display:block;font-size:13px;font-weight:700;color:var(--g600)}
.pg-cases .sched strong{display:block;margin:4px 0 8px;font-size:16px;font-weight:800;line-height:1.35}
.pg-cases .sched small{display:block;margin-top:8px;font-size:12px;line-height:1.5;color:var(--g600)}
.pg-cases .sched .muted strong{color:var(--g600)}
.pg-cases .mini-rows{display:grid;gap:6px;margin:0;padding:0 14px 16px;list-style:none}
.pg-cases .mini-rows li{padding:10px 12px;border-radius:12px;background:var(--g50);font-size:14px;font-weight:600;color:var(--g700)}
.pg-cases .mini-rows li.aside{background:none;box-shadow:inset 0 0 0 1px var(--g200);color:var(--g600);font-weight:500}
.pg-cases .ba{display:grid;gap:10px}
.pg-cases .ba-label{display:flex;align-items:center;gap:8px;margin:0 0 8px;font-size:13px;font-weight:700;color:var(--g600)}
.pg-cases .ba-arrow{display:grid;place-items:center;color:var(--g500);font-size:22px}
.pg-cases .ba.row2{grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr);align-items:center}
.pg-cases .nf-box{display:grid;place-items:center;gap:6px;padding:26px 14px 24px;text-align:center;font-size:14px;font-weight:700;color:var(--g700)}
.pg-cases .nf-box span{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--red-50);color:var(--red);font-size:20px}
@media (max-width:520px){.pg-cases .ba.row2{grid-template-columns:minmax(0,1fr)}.pg-cases .ba.row2 .ba-arrow{transform:rotate(90deg)}.pg-cases .sched{grid-template-columns:minmax(0,1fr)}}

/* compact phone-style screen */
.pg-cases .ph{max-width:340px;margin:0 auto;padding:8px;border-radius:36px;background:#0f1114;box-shadow:var(--shadow-float)}
.pg-cases .ph-in{overflow:hidden;border-radius:29px;background:#fff}
.pg-cases .ph-top{display:flex;align-items:center;gap:6px;padding:16px 16px 6px;font-size:16px;font-weight:700}
.pg-cases .ph-top .ico{font-size:20px}
.pg-cases .ph-top .tag{margin-left:auto}
.pg-cases .ph-body{padding:4px 16px 16px}
.pg-cases .ph-sub{margin:0 0 10px;font-size:13px;color:var(--g600)}
.pg-cases .ph-kicker{display:block;margin-bottom:10px;padding:10px 12px;border-radius:12px;background:var(--orange-50);font-size:13px;font-weight:700;color:#b35300}
.pg-cases .ph-kicker.blue{background:var(--blue-50);color:var(--blue-700)}
.pg-cases .ph-row{margin-top:6px;padding:12px;border-radius:14px;background:var(--g50)}
.pg-cases .ph-row b{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:14px;font-weight:700}
.pg-cases .ph-row p{margin:4px 0 0;font-size:13px;line-height:1.55;color:var(--g700)}
.pg-cases .ph-row .tag{height:22px;padding:0 8px;font-size:12px}
.pg-cases .ph-q{margin:0 0 10px;padding:12px 14px;border-radius:16px 16px 16px 6px;background:var(--g100);font-size:14px;font-weight:600}
.pg-cases .ph-kv{display:flex;justify-content:space-between;gap:10px;padding:9px 2px;border-bottom:1px solid var(--g100);font-size:13px;color:var(--g700)}
.pg-cases .ph-kv em{font-style:normal;font-weight:700;color:var(--g900);text-align:right}
.pg-cases .ph-kv em.bad{color:#d22030}
.pg-cases .ph-kv em.ok{color:#027a4a}
.pg-cases .ph-bar{margin-top:10px;padding:10px 12px;border-radius:12px;background:var(--g50);font-size:13px;font-weight:600;color:var(--g700)}
.pg-cases .ph-bar em{font-style:normal;color:#d22030}
.pg-cases .ph-sec{margin:12px 0 4px;font-size:12px;font-weight:700;color:var(--g600)}
.pg-cases .ph-list{margin:0;padding:0;list-style:none}
.pg-cases .ph-list li{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:13px;color:var(--g800)}
.pg-cases .ph-list .ico{flex:none;color:var(--blue);stroke-width:3}
.pg-cases .ph-list .dot{flex:none;width:8px;height:8px;margin:0 3px;border-radius:50%;background:var(--orange)}
.pg-cases .ph-field{display:flex;justify-content:space-between;gap:10px;margin-top:6px;padding:11px 12px;border-radius:12px;box-shadow:inset 0 0 0 1px var(--g200);font-size:13px;color:var(--g600)}
.pg-cases .ph-field b{font-weight:700;color:var(--g900)}
.pg-cases .ph-diff{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}
.pg-cases .ph-diff div{padding:10px;border-radius:12px;background:var(--g50);font-size:12px;line-height:1.5;color:var(--g700)}
.pg-cases .ph-diff b{display:block;font-size:12px;color:var(--g600)}
.pg-cases .ph-btns{display:grid;grid-template-columns:1fr 1.3fr;gap:6px;padding:0 16px 18px}
.pg-cases .ph-btns span{display:grid;place-items:center;height:46px;border-radius:13px;background:var(--g100);font-size:14px;font-weight:600;color:var(--g800)}
.pg-cases .ph-btns span.pri{background:var(--blue-btn);color:#fff}
.pg-cases .ph-btns span.dis{background:#c9e2ff;color:#fff}
.pg-cases .ph-toast{margin:0 16px 12px;padding:10px 12px;border-radius:12px;background:var(--g900);color:#fff;font-size:12px;font-weight:600;text-align:center}
.pg-cases .ph-step{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--g100);font-size:14px;font-weight:600}
.pg-cases .ph-step i{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--g100);color:var(--g600);font-style:normal;font-size:12px;font-weight:800}
.pg-cases .ph-step .st{padding:4px 8px;border-radius:8px;font-size:12px;font-weight:700}
.pg-cases .st.ok{background:var(--green-50);color:#027a4a}
.pg-cases .st.fail{background:var(--red-50);color:#c01f2e}
.pg-cases .st.wait{background:var(--g100);color:var(--g700)}

/* inside case-grid */
.pg-cases .case-grid>section.lim{background:var(--orange-50)}
.pg-cases .case-grid>section.lim h4 .ico{color:#c25e00}
.pg-cases .case-grid>section.lim.info{background:var(--blue-50)}
.pg-cases .case-grid>section.lim.info h4 .ico{color:var(--blue-700)}
.pg-cases .case-grid .fine{margin-top:12px;font-size:13px}
.pg-cases .case-grid .kc-note{margin:12px 0 0;font-size:13px;color:var(--g600)}
.pg-cases .case-grid .checklist,.pg-cases .case-grid .flow,.pg-cases .case-grid .dlv,.pg-cases .case-grid .rows,.pg-cases .case-grid .states{padding-left:0}
.pg-cases .case-grid .checklist li+li,.pg-cases .case-grid .flow li+li,.pg-cases .case-grid .dlv li+li,.pg-cases .case-grid .states li+li{margin-top:0}
.pg-cases .h4-sub{margin:-4px 0 14px;font-size:14px;color:var(--g600)}

/* process flow with owner and result */
.pg-cases .flow{margin:0;list-style:none;counter-reset:fl}
.pg-cases .flow>li{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);gap:14px;padding:0 0 18px;counter-increment:fl}
.pg-cases .flow>li:not(:last-child)::after{content:"";position:absolute;left:16.5px;top:38px;bottom:4px;width:1px;background:var(--g300)}
.pg-cases .flow>li::before{content:counter(fl);display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff;color:var(--blue-700);font-size:14px;font-weight:800;box-shadow:inset 0 0 0 1px var(--g200)}
.pg-cases .flow b{display:block;padding-top:5px;font-size:16px;font-weight:700;line-height:1.5;color:var(--g900)}
.pg-cases .flow p{margin:4px 0 0}
.pg-cases .flow .who{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.pg-cases .flow .who .tag{height:auto;min-height:26px;padding:4px 10px;white-space:normal;line-height:1.4;background:#fff}
.pg-cases .flow .who .tag.blue{background:var(--blue-50)}

/* deliverables list */
.pg-cases .dlv{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;list-style:none}
.pg-cases .dlv li{display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;padding:14px;border-radius:16px;background:#fff}
.pg-cases .dlv .ic{width:36px;height:36px;border-radius:11px;font-size:17px}
.pg-cases .dlv b{display:block;font-size:15px;font-weight:700;line-height:1.45;color:var(--g900)}
.pg-cases .dlv div>span{display:block;margin-top:2px;font-size:14px;line-height:1.6;color:var(--g700)}
.pg-cases .dlv small{display:inline-block;margin-top:8px;padding:3px 8px;border-radius:7px;background:var(--g100);font-size:12px;font-weight:600;line-height:1.45;color:var(--g700)}
@media (max-width:760px){.pg-cases .dlv{grid-template-columns:minmax(0,1fr)}}

/* evidence rows inside a case */
.pg-cases .case-grid .rows{border-top:0}
.pg-cases .case-grid .rows>li{border-bottom-color:var(--g200)}
.pg-cases .case-grid .rows>li:last-child{border-bottom:0}
.pg-cases .case-grid .row{padding:14px 2px;gap:12px}
.pg-cases .case-grid .row b{font-size:15px}
.pg-cases .case-grid .row p{font-size:14px}
.pg-cases .case-grid .row .end{font-size:13px;font-weight:600;color:var(--blue-700)}
.pg-cases .case-grid .row .end .ico{font-size:16px}

/* status chips */
.pg-cases .states{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;margin:0;list-style:none}
.pg-cases .states li{padding:12px 14px;border-radius:14px;background:#fff}
.pg-cases .states b{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:700;color:var(--g900)}
.pg-cases .states b::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--g400)}
.pg-cases .states li.s-blue b::before{background:var(--blue)}
.pg-cases .states li.s-green b::before{background:var(--green)}
.pg-cases .states li.s-orange b::before{background:var(--orange)}
.pg-cases .states li.s-red b::before{background:var(--red)}
.pg-cases .states span{display:block;margin-top:2px;font-size:13px;line-height:1.55;color:var(--g700)}

/* tables inside case cards */
.pg-cases .case-grid .tbl-wrap{margin-top:4px}
.pg-cases .case-grid .tbl{font-size:14px}
.pg-cases .case-grid .tbl th,.pg-cases .case-grid .tbl td{padding:12px 14px}
.pg-cases .case-grid .tbl caption{padding-bottom:10px;font-size:13px}
.pg-cases .tbl code,.pg-cases .urls code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em;overflow-wrap:anywhere;word-break:break-all}
@media (max-width:760px){.pg-cases .case-grid .tbl tr{background:#fff}}

/* page divider between the url split mocks & report mock */
.pg-cases .report{margin-top:4px}
.pg-cases .report .pm-rows li{align-items:flex-start;flex-wrap:wrap}
.pg-cases .report .pm-rows li>div{flex:1;min-width:0}
.pg-cases .report .pm-rows small{display:block;margin-top:2px;font-size:13px;font-weight:500;color:var(--g600)}
.pg-cases .report .pm-rows em{display:block;margin-top:6px;padding:6px 10px;border-radius:8px;background:var(--g50);font-style:normal;font-size:13px;font-weight:500;color:var(--g700)}

/* formula */
.pg-cases .formula-mini{padding:22px 24px;border-radius:20px;background:var(--g900);color:#fff}
.pg-cases .formula-mini small{font-size:13px;font-weight:600;color:var(--g400)}
.pg-cases .formula-mini .eq{margin:14px 0 16px;font-size:clamp(18px,2vw,24px)}
.pg-cases .formula-mini .frac{font-size:14px}
.pg-cases .formula-mini ul{margin:0;padding-left:18px}
.pg-cases .formula-mini li{font-size:14px;line-height:1.65;color:var(--g300)}

/* case end CTA row */
.pg-cases .case-end{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:20px;padding-top:20px;border-top:1px solid var(--g100)}
.pg-cases .case-end p{margin:0;font-size:14px;color:var(--g600)}

/* pilot callout */
.pg-cases .pilot-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:16px;align-items:stretch}
.pg-cases .pilot-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.pg-cases .pilot-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-radius:16px;background:#fff;font-size:16px;font-weight:600}
.pg-cases .pilot-list em{font-style:normal;font-size:13px;font-weight:700;color:var(--blue-700);white-space:nowrap}
@media (max-width:860px){.pg-cases .pilot-grid{grid-template-columns:minmax(0,1fr)}}

.pg-cases .src dd .tag{margin:2px 4px 0 0}
.pg-cases .src-link{overflow-wrap:anywhere}
.pg-cases .more-links{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:10px}

/* compare & misc inside case cards */
.pg-cases .case-grid .compare>div{padding:22px 20px;border-radius:18px}
.pg-cases .case-grid .compare>.no{background:#fff}
.pg-cases .case-grid .compare li{font-size:15px}
.pg-cases .cmp-h{margin:0 0 6px;font-size:17px;font-weight:800;color:var(--g900)}
.pg-cases .case-grid .note{background:#fff}
.pg-cases .case-grid .note.warn{background:var(--orange-50)}
.pg-cases .ci-vis figcaption .link{font-size:13px}
.pg-cases .srcs>.card{justify-content:center}
.pg-cases .plist li span .link{font-size:15px}
.pg-cases .tbl th .tag{white-space:normal}

/* ── QA pass: layout fixes ── */
/* overview navigator: 7 cards, first card spans the row so no card is left alone */
.pg-cases .case-nav{grid-template-columns:repeat(3,minmax(0,1fr))}
.pg-cases .case-nav>li:first-child{grid-column:1/-1}
@media (max-width:1000px){.pg-cases .case-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.pg-cases .case-nav{grid-template-columns:minmax(0,1fr)}}

/* seven slots: one row of 7 on desktop, compact rows on mobile */
.pg-cases .slots{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.pg-cases .slots li{padding:18px 14px}
.pg-cases .slots b{font-size:15px}
@media (max-width:1100px){.pg-cases .slots{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:640px){
  .pg-cases .slots{grid-template-columns:minmax(0,1fr)}
  .pg-cases .slots li{display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:14px;align-items:center;padding:14px 16px}
  .pg-cases .slots .ic{grid-row:1/span 2}
  .pg-cases .slots b{margin-top:0}
  .pg-cases .slots li>span:not(.ic){grid-column:2;margin-top:2px}
}

/* case intro: keep the story at the top next to a taller visual */
.pg-cases .ci{align-items:start}

/* stacked mobile tables inside case cards (captions come from components.css) */
@media (max-width:760px){.pg-cases .case-grid .tbl th,.pg-cases .case-grid .tbl td{padding:10px 0}}

/* status chips: no single chip on the last row */
.pg-cases .states:has(>li:nth-child(9):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}
.pg-cases .states:has(>li:nth-child(10):last-child){grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width:1000px){.pg-cases .states:has(>li:nth-child(10):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.pg-cases .states:has(>li:nth-child(9):last-child),.pg-cases .states:has(>li:nth-child(10):last-child){grid-template-columns:minmax(0,1fr)}}

/* deliverables: an odd last card takes the full row */
.pg-cases .dlv>li:last-child:nth-child(odd){grid-column:1/-1}

/* evidence rows: tags aligned with text; on phones the text end ("근거 보기", wrapped in a span so it is not treated as a lone chevron) drops under the text */
.pg-cases .case-grid .tags{padding-left:0}
@media (max-width:640px){.pg-cases .case-grid .row.no-ic{gap:8px}}

/* source card links on one baseline */
.pg-cases .more-links{align-items:center;margin-top:auto;padding-top:18px}
.pg-cases .more-links .src-link{margin:0;padding:0}
.pg-cases .more-links .link{font-size:14px}

/* pilot: list rows share the height of the note */
.pg-cases .pilot-list{grid-auto-rows:1fr}
