/* Benchmarking, Interview Research and Cases */
.casepage { background: #fff; }
.casepage main { overflow: clip; }
.casepage .page-hero { min-height: 520px; align-items: stretch; }
.casepage .page-heading { min-height: 520px; padding-top: 76px; padding-bottom: 70px; align-items: center; }
.benchmark-hero::before {
  background: linear-gradient(90deg, rgba(4,14,39,.98) 0%, rgba(5,25,67,.90) 52%, rgba(8,37,88,.55) 100%), url("../images/benchmark/parts-exploded.jpg") center/cover no-repeat;
}
.interviews-hero::before {
  background:
    radial-gradient(circle at 82% 28%, rgba(86,201,222,.22), transparent 24%),
    radial-gradient(circle at 62% 88%, rgba(17,17,183,.30), transparent 30%),
    linear-gradient(115deg, #040e24 0%, #071b44 58%, #0a2b69 100%);
}
.cases-hero::before {
  background: linear-gradient(90deg, rgba(4,14,39,.98) 0%, rgba(5,24,65,.88) 50%, rgba(7,38,91,.54) 100%), url("../images/cases/case-hero.jpg") center/cover no-repeat;
}
.inner-hero-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(360px,.72fr); gap: 72px; }
.inner-hero-grid > div:first-child { position: relative; z-index: 1; }
.casepage .page-heading h1 { max-width: 810px; font-size: clamp(48px,5.3vw,74px); }
.casepage .page-heading p { max-width: 760px; }

.hero-metric-panel {
  position: relative; z-index: 1; align-self: end; display: grid; grid-template-columns: 1fr 1fr;
  color: #fff; background: rgba(5,23,61,.78); border: 1px solid rgba(255,255,255,.20);
  border-radius: 18px; box-shadow: 0 28px 70px rgba(0,0,0,.25); backdrop-filter: blur(12px);
}
.hero-metric-panel > div { min-height: 132px; padding: 24px; display: flex; flex-direction: column; justify-content: flex-end; }
.hero-metric-panel > div + div { border-left: 1px solid rgba(255,255,255,.16); }
.hero-metric-panel strong { color: var(--cyan); font-size: 39px; line-height: 1; letter-spacing: -.04em; }
.hero-metric-panel span { margin-top: 10px; color: rgba(255,255,255,.72); font-size: 12px; font-weight: 800; }
.hero-metric-panel > p { grid-column: 1/-1; max-width: none; margin: 0; padding: 16px 24px; color: rgba(255,255,255,.72); border-top: 1px solid rgba(255,255,255,.16); font-size: 11px; letter-spacing: .06em; }

.section-jump {
  position: sticky; top: 78px; z-index: 30; min-height: 58px; margin-top: -29px; margin-bottom: -29px;
  display: flex; align-items: stretch; overflow-x: auto; color: #fff; background: var(--ink);
  border: 1px solid rgba(255,255,255,.12); border-radius: 999px; box-shadow: 0 16px 45px rgba(4,18,49,.18);
  scrollbar-width: none;
}
.section-jump::-webkit-scrollbar { display: none; }
.section-jump a { flex: 1 0 auto; min-width: 150px; padding: 17px 22px; display: grid; place-items: center; border-right: 1px solid rgba(255,255,255,.13); color: rgba(255,255,255,.76); font-size: 12px; line-height: 1.3; font-weight: 850; text-align: center; }
.section-jump a:last-child { border-right: 0; }
.section-jump a:hover { color: #fff; background: rgba(86,201,222,.10); }
#evaluation, #method, #samples, #deliverables, #themes, #design, #process, #interview-samples, #governance,
#case-cockpit, #case-ev, #case-interview, #case-global { scroll-margin-top: 150px; }

/* Benchmarking */
.axis-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
.axis-card { position: relative; min-height: 270px; padding: 27px; overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: 14px; box-shadow: 0 12px 34px rgba(5,23,61,.07); }
.axis-card::after { content: ""; position: absolute; right: -58px; bottom: -78px; width: 170px; height: 170px; border: 1px solid rgba(23,72,212,.12); border-radius: 50%; box-shadow: 0 0 0 26px rgba(23,72,212,.035); }
.axis-card > span { display: grid; place-items: center; width: 42px; height: 42px; color: var(--blue); background: #edf2ff; border-radius: 50%; font-size: 12px; font-weight: 900; }
.axis-card h3 { margin: 28px 0 0; color: var(--ink); font-size: 22px; }
.axis-card p { position: relative; z-index: 1; margin: 13px 0 0; color: var(--muted); font-size: 14px; line-height: 1.8; }
.axis-card > b { position: absolute; left: 27px; bottom: 21px; color: #5b6678; font-size: 11px; letter-spacing: .13em; }
.benchmark-process .process-step { background: #fff; }
.method-disclaimer { margin: 28px 0 0; }

.artifact-gallery { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px; }
.artifact-card { min-width: 0; overflow: hidden; color: var(--text); background: #fff; border: 1px solid rgba(255,255,255,.13); border-radius: 14px; box-shadow: 0 22px 55px rgba(0,0,0,.19); }
.artifact-card-wide { grid-column: 1/-1; display: grid; grid-template-columns: minmax(0,1.45fr) minmax(300px,.55fr); }
.artifact-media { position: relative; aspect-ratio: 16/9; overflow: hidden; background: #e9edf4; }
.artifact-card-wide .artifact-media { aspect-ratio: auto; min-height: 390px; }
.artifact-media img { width: 100%; height: 100%; object-fit: cover; user-select: none; -webkit-user-drag: none; pointer-events: none; }
.protected-sample::before { content: attr(data-protection); position: absolute; z-index: 2; top: 14px; right: 14px; padding: 6px 9px; color: #fff; background: rgba(5,23,61,.76); border: 1px solid rgba(255,255,255,.34); font-size: 9px; line-height: 1; font-weight: 900; letter-spacing: .12em; }
.protected-sample::after { content: "一部情報を抽象化  ·  © J-Tech,LTD"; position: absolute; z-index: 2; left: 0; right: 0; bottom: 0; padding: 22px 13px 9px; color: rgba(255,255,255,.80); background: linear-gradient(transparent,rgba(5,19,49,.82)); font-size: 8px; line-height: 1; text-align: right; }
.artifact-card figcaption { padding: 22px 24px 25px; }
.artifact-card-wide figcaption { padding: 34px; display: flex; flex-direction: column; justify-content: center; }
.artifact-card figcaption > span { color: var(--blue); font-size: 10px; font-weight: 900; letter-spacing: .14em; }
.artifact-card figcaption h3 { margin: 9px 0 0; color: var(--ink); font-size: 20px; line-height: 1.45; }
.artifact-card figcaption p { margin: 9px 0 0; color: var(--muted); font-size: 13px; line-height: 1.75; }
.sample-legal { margin: 30px 0 0; padding: 17px 20px; color: rgba(255,255,255,.54); background: rgba(255,255,255,.045); border-left: 3px solid var(--cyan); font-size: 11px; line-height: 1.8; }
.benchmark-deliverables { display: grid; grid-template-columns: .72fr 1.28fr; gap: 70px; align-items: start; }
.benchmark-deliverables h2, .governance-layout h2, .respondent-layout h2 { margin: 0; color: var(--ink); font-size: clamp(34px,4vw,54px); line-height: 1.25; }

/* Interview research */
.interviews-hero-grid { grid-template-columns: minmax(0,1fr) minmax(440px,.9fr); }
.signal-board { position: relative; z-index: 1; align-self: center; padding: 25px; display: grid; grid-template-columns: 1fr auto 1fr auto 1fr auto 1.15fr; gap: 8px; align-items: center; background: rgba(4,14,36,.72); border: 1px solid rgba(255,255,255,.17); border-radius: 20px; backdrop-filter: blur(12px); box-shadow: 0 28px 70px rgba(0,0,0,.26); }
.signal-board > i { color: rgba(86,201,222,.58); font-style: normal; }
.signal-node { min-height: 128px; padding: 14px 10px; display: flex; flex-direction: column; justify-content: center; text-align: center; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.10); }
.signal-node.accent { background: linear-gradient(145deg,rgba(17,17,183,.85),rgba(31,88,174,.78)); border-color: rgba(86,201,222,.45); }
.signal-node b { color: var(--cyan); font-size: 11px; }
.signal-node span { margin-top: 7px; color: #fff; font-size: 11px; line-height: 1.3; font-weight: 900; letter-spacing: .07em; }
.signal-node small { margin-top: 9px; color: rgba(255,255,255,.55); font-size: 9px; }

.topic-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
.topic-grid article { min-height: 230px; padding: 27px; background: #fff; border-top: 3px solid var(--blue); box-shadow: 0 12px 34px rgba(5,23,61,.07); }
.topic-grid span { color: var(--blue); font-size: 12px; font-weight: 900; letter-spacing: .15em; }
.topic-grid h3 { margin: 31px 0 0; color: var(--ink); font-size: 20px; }
.topic-grid p { margin: 12px 0 0; color: var(--muted); font-size: 13px; line-height: 1.8; }

.respondent-layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: 72px; align-items: center; }
.respondent-layout h2 { font-size: clamp(34px,3.5vw,48px); }
.respondent-map { position: relative; min-height: 470px; padding: 26px 26px 118px; display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; color: #fff; background: var(--ink); border-radius: 20px; box-shadow: var(--shadow); overflow: hidden; }
.respondent-map::before { content: ""; position: absolute; inset: 0; opacity: .25; background-image: linear-gradient(rgba(86,201,222,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(86,201,222,.18) 1px,transparent 1px); background-size: 34px 34px; }
.respondent-map article { position: relative; z-index: 1; min-width: 0; padding: 22px 18px; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.12); }
.respondent-map article b { color: var(--cyan); font-size: 9px; letter-spacing: .12em; }
.respondent-map article h3 { margin: 18px 0 0; font-size: 16px; line-height: 1.5; }
.respondent-map article p { margin: 10px 0 0; color: rgba(255,255,255,.63); font-size: 11px; line-height: 1.7; }
.respondent-core { position: absolute; z-index: 2; left: 50%; bottom: 25px; transform: translateX(-50%); width: 180px; height: 76px; display: grid; place-items: center; color: #fff; background: var(--brand); border: 1px solid rgba(255,255,255,.35); border-radius: 999px; box-shadow: 0 0 0 18px rgba(86,201,222,.07); text-align: center; }
.respondent-core span { font-size: 10px; line-height: 1.45; font-weight: 900; letter-spacing: .1em; }

.interview-sample-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.intelligence-sheet { min-width: 0; min-height: 510px; overflow: hidden; color: var(--text); background: #f7f8fb; border: 1px solid rgba(255,255,255,.14); border-radius: 10px; box-shadow: 0 22px 55px rgba(0,0,0,.2); }
.intelligence-sheet > header { min-height: 96px; padding: 18px 20px; display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; color: #fff; background: linear-gradient(110deg,#1111b7,#173b82); }
.intelligence-sheet > header span { display: block; color: var(--cyan); font-size: 9px; font-weight: 900; letter-spacing: .12em; }
.intelligence-sheet > header h3 { margin: 7px 0 0; font-size: 16px; line-height: 1.4; }
.intelligence-sheet > header > b { color: rgba(255,255,255,.58); font-size: 9px; letter-spacing: .12em; }
.intelligence-sheet > footer { margin: 0 18px; min-height: 45px; display: flex; align-items: center; justify-content: space-between; gap: 10px; color: #566174; border-top: 1px solid #d9deea; font-size: 9px; }
.evidence-ledger { padding: 22px 18px 16px; }
.evidence-ledger > div { display: grid; grid-template-columns: 1.25fr .9fr 1fr 55px; align-items: center; gap: 8px; min-height: 68px; padding: 9px 8px; border-bottom: 1px solid #dce1ea; font-size: 9px; }
.evidence-ledger .ledger-head { min-height: 32px; color: #4c586b; background: #edf0f5; font-weight: 850; }
.evidence-ledger strong { color: #14233f; font-size: 10px; }
.evidence-ledger i { padding: 4px 3px; color: #fff; font-style: normal; font-size: 8px; font-weight: 900; text-align: center; }
.level-high { background: #127e87; }.level-mid { background: #2854c5; }.level-open { background: #596576; }
.theme-map { padding: 22px 18px 16px; }
.theme-axis { display: grid; grid-template-columns: repeat(4,1fr); gap: 4px; }
.theme-axis span { min-height: 45px; display: grid; place-items: center; padding: 4px; color: #17315f; background: #e5ebf7; font-size: 8px; font-weight: 850; text-align: center; }
.theme-canvas { position: relative; height: 280px; margin-top: 12px; background-image: linear-gradient(#dfe4ed 1px,transparent 1px),linear-gradient(90deg,#dfe4ed 1px,transparent 1px); background-size: 25% 25%; border: 1px solid #d6dce7; }
.theme-canvas::before,.theme-canvas::after { content: ""; position: absolute; background: #91a0b4; }
.theme-canvas::before { left: 50%; top: 0; bottom: 0; width: 1px; }.theme-canvas::after { top: 50%; left: 0; right: 0; height: 1px; }
.theme-canvas .dot { position: absolute; z-index: 2; width: 22px; height: 22px; background: var(--blue); border: 4px solid rgba(255,255,255,.82); border-radius: 50%; box-shadow: 0 5px 12px rgba(5,23,61,.2); }
.theme-canvas .dot.a { left: 19%; top: 60%; }.theme-canvas .dot.b { left: 38%; top: 35%; background: var(--teal); }.theme-canvas .dot.c { left: 63%; top: 24%; }.theme-canvas .dot.d { left: 72%; top: 56%; background:#1111b7; }.theme-canvas .dot.e { left: 48%; top: 69%; background:#7b8799; }
.theme-canvas .zone { position: absolute; left: 8px; bottom: 8px; color: #778397; font-size: 8px; font-weight: 850; }.theme-canvas .zone.strong { left: auto; right: 8px; bottom: auto; top: 8px; color: var(--blue); }
.decision-brief { padding: 22px 18px 16px; display: grid; gap: 12px; }
.decision-brief section { min-height: 96px; padding: 14px; background: #fff; border-left: 4px solid var(--blue); }
.decision-brief section:nth-child(2) { border-left-color: var(--teal); }.decision-brief section:nth-child(3) { border-left-color: #8a96a8; }
.decision-brief b { color: var(--blue); font-size: 8px; letter-spacing: .1em; }
.decision-brief h4 { margin: 5px 0 0; color: var(--ink); font-size: 12px; }
.decision-brief p { margin: 6px 0 0; color: var(--muted); font-size: 9px; line-height: 1.55; }

.governance-layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: 70px; align-items: start; }
.governance-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 14px; }
.governance-grid article { min-height: 190px; padding: 24px; background: #fff; border: 1px solid var(--line); }
.governance-grid b { color: var(--blue); font-size: 11px; }
.governance-grid h3 { margin: 26px 0 0; color: var(--ink); font-size: 17px; }
.governance-grid p { margin: 10px 0 0; color: var(--muted); font-size: 12px; line-height: 1.75; }

/* Case index and case detail */
.case-hero-index { position: relative; z-index: 1; align-self: end; display: grid; grid-template-columns: repeat(2,1fr); background: rgba(5,23,61,.72); border: 1px solid rgba(255,255,255,.18); border-radius: 16px; overflow: hidden; backdrop-filter: blur(10px); }
.case-hero-index span { min-height: 70px; padding: 16px; display: flex; align-items: center; color: rgba(255,255,255,.74); border-right: 1px solid rgba(255,255,255,.12); border-bottom: 1px solid rgba(255,255,255,.12); font-size: 10px; line-height: 1.5; font-weight: 850; letter-spacing: .08em; }
.case-hero-index span:nth-child(even) { border-right: 0; }.case-hero-index span:nth-child(n+3) { border-bottom: 0; }
.case-index-grid { margin-top: 60px; display: grid; grid-template-columns: repeat(4,1fr); border: 1px solid var(--line); }
.case-index-grid a { min-height: 170px; padding: 24px; display: flex; flex-direction: column; justify-content: flex-end; background: #fff; border-right: 1px solid var(--line); transition: color .2s, background .2s; }
.case-index-grid a:last-child { border-right: 0; }
.case-index-grid a:hover { color: #fff; background: var(--ink); }
.case-index-grid b { color: var(--blue); font-size: 10px; letter-spacing: .13em; }
.case-index-grid a:hover b { color: var(--cyan); }
.case-index-grid span { margin-top: 23px; font-size: 16px; line-height: 1.45; font-weight: 850; }
.case-index-grid small { margin-top: 8px; color: var(--muted); font-size: 10px; }.case-index-grid a:hover small { color: rgba(255,255,255,.62); }

.case-detail { padding-bottom: 94px; background: #fff; }
.case-detail-alt { background: var(--paper); }
.case-detail-header { position: relative; color: #fff; background: linear-gradient(125deg,#06152f,#0a2d6c); overflow: hidden; }
.case-detail-alt .case-detail-header { background: linear-gradient(125deg,#1111a8,#173d8e); }
.case-detail-header::after { content: ""; position: absolute; right: -150px; top: -210px; width: 520px; height: 520px; border: 1px solid rgba(86,201,222,.20); border-radius: 50%; box-shadow: 0 0 0 48px rgba(86,201,222,.04),0 0 0 98px rgba(86,201,222,.025); }
.case-detail-title { position: relative; z-index: 1; min-height: 390px; padding-top: 70px; padding-bottom: 64px; display: grid; grid-template-columns: .55fr 1.25fr .8fr; gap: 46px; align-items: end; }
.case-number { color: var(--cyan); font-size: 13px; font-weight: 900; letter-spacing: .16em; }
.case-tags { margin-top: 24px; display: flex; flex-direction: column; align-items: flex-start; gap: 7px; }
.case-tags b { padding: 6px 9px; color: rgba(255,255,255,.68); background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.14); font-size: 9px; line-height: 1.2; letter-spacing: .08em; }
.case-detail-title h2 { margin: 0; font-size: clamp(36px,3.7vw,50px); line-height: 1.25; letter-spacing: -.03em; }
.case-detail-title > p { margin: 0; color: rgba(255,255,255,.70); font-size: 15px; line-height: 1.9; }
.case-story-grid { position: relative; z-index: 2; margin-top: -38px; display: grid; grid-template-columns: repeat(4,1fr); background: #fff; border: 1px solid var(--line); box-shadow: 0 24px 62px rgba(5,23,61,.13); }
.case-story-grid section { min-height: 290px; padding: 27px; border-right: 1px solid var(--line); }
.case-story-grid section:last-child { border-right: 0; }
.case-story-grid section > b { color: var(--blue); font-size: 11px; letter-spacing: .12em; }
.case-story-grid h3 { margin: 32px 0 0; color: var(--ink); font-size: 18px; line-height: 1.5; }
.case-story-grid p { margin: 13px 0 0; color: var(--muted); font-size: 12px; line-height: 1.85; }
.case-output-block { padding-top: 70px; }
.case-output-heading { margin-bottom: 28px; display: grid; grid-template-columns: 1fr .7fr; gap: 42px; align-items: end; }
.case-output-heading span { color: var(--blue); font-size: 10px; font-weight: 900; letter-spacing: .15em; }
.case-output-heading h3 { margin: 8px 0 0; color: var(--ink); font-size: 32px; }
.case-output-heading p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.8; }
.case-sample-gallery { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.case-sample-gallery .artifact-card { border-color: var(--line); box-shadow: 0 16px 45px rgba(5,23,61,.10); }
.case-sample-gallery .artifact-card figcaption { padding: 18px 20px 22px; }

.mini-deliverable { min-height: 400px; overflow: hidden; background: #f8f9fc; border: 1px solid var(--line); box-shadow: 0 16px 45px rgba(5,23,61,.10); }
.mini-deliverable > header { min-height: 74px; padding: 16px 18px; display: flex; align-items: center; justify-content: space-between; color: #fff; background: linear-gradient(110deg,#1111b7,#173d83); }
.mini-deliverable > header span { display: grid; place-items: center; width: 31px; height: 31px; border: 1px solid rgba(255,255,255,.35); border-radius: 50%; font-size: 9px; }
.mini-deliverable > header b { font-size: 9px; letter-spacing: .12em; }
.mini-deliverable > footer { min-height: 55px; padding: 0 18px; display: flex; align-items: center; color: #566174; border-top: 1px solid var(--line); font-size: 10px; }
.mini-evidence { min-height: 270px; padding: 25px 18px; display: grid; gap: 12px; align-content: center; }
.mini-evidence p { margin: 0; min-height: 62px; padding: 11px; display: grid; grid-template-columns: 56px 1fr 43px; gap: 8px; align-items: center; background: #fff; border-left: 3px solid var(--blue); }
.mini-evidence i { color: var(--blue); font-size: 8px; font-style: normal; font-weight: 900; }.mini-evidence strong { color: var(--ink); font-size: 10px; }.mini-evidence em { padding: 4px; color:#fff; background:#1d4bc4; font-size:7px; font-style:normal; text-align:center; }
.mini-theme { position: relative; min-height: 270px; margin: 25px 18px; display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: 1fr 1fr; border: 1px solid #cfd6e3; }
.mini-theme::before,.mini-theme::after { content:""; position:absolute; background:#cfd6e3; }.mini-theme::before { left:50%; top:0; bottom:0; width:1px; }.mini-theme::after { top:50%; left:0; right:0; height:1px; }
.mini-theme span { padding: 10px; color:#4f5b6f; font-size:10px; font-weight:800; }.mini-theme span:nth-child(2),.mini-theme span:nth-child(4) { text-align:right; }.mini-theme span:nth-child(n+3) { align-self:end; }
.mini-theme i { position:absolute; width:20px; height:20px; background:var(--blue); border:4px solid #fff; border-radius:50%; box-shadow:0 4px 10px rgba(5,23,61,.18); }.mini-theme i.a { left:20%; top:57%; }.mini-theme i.b { left:44%; top:26%; background:var(--teal); }.mini-theme i.c { left:66%; top:39%; }.mini-theme i.d { left:74%; top:67%; background:#818c9e; }
.mini-brief { min-height: 270px; padding: 25px 18px; display:grid; gap:12px; align-content:center; }
.mini-brief p { margin:0; min-height:62px; padding:13px; display:flex; flex-direction:column; justify-content:center; color:var(--muted); background:#fff; border-left:3px solid var(--blue); font-size:10px; }.mini-brief p:nth-child(2){border-left-color:var(--teal)}.mini-brief p:nth-child(3){border-left-color:#8792a3}.mini-brief b{display:block;margin-bottom:4px;color:var(--ink);font-size:8px;letter-spacing:.1em}
.mini-scorecard { min-height:270px; padding:31px 22px; display:grid; grid-template-columns:82px 1fr; gap:18px 12px; align-items:center; }.mini-scorecard b{color:var(--ink);font-size:9px}.mini-scorecard i{position:relative;height:12px;background:#e4e8ef}.mini-scorecard i::after{content:"";position:absolute;inset:0 auto 0 0;width:var(--score);background:linear-gradient(90deg,var(--blue),var(--cyan))}
.entry-grid { min-height:270px; padding:28px 18px; display:grid; grid-template-columns:repeat(4,1fr); gap:7px; align-content:center; }.entry-grid span{min-height:35px;display:grid;place-items:center;color:#17315f;background:#e8edf7;font-size:7px;font-weight:850}.entry-grid i{display:block;height:43px;background:#e6e9ef}.entry-grid i.high{background:#2148c5}.entry-grid i.mid{background:#5fc6d8}.entry-grid i.low{background:#cfd5df}

.case-disclosure h2 { margin: 0; color: var(--ink); font-size: clamp(34px,4vw,52px); }
.disclosure-grid { margin-top: 36px; display: grid; grid-template-columns: repeat(4,1fr); border: 1px solid var(--line); }
.disclosure-grid p { min-height: 170px; margin: 0; padding: 25px; display: flex; flex-direction: column; border-right: 1px solid var(--line); }.disclosure-grid p:last-child{border-right:0}.disclosure-grid b{color:var(--blue);font-size:13px}.disclosure-grid span{margin-top:25px;color:var(--muted);font-size:12px;line-height:1.75}

@media (max-width: 1100px) {
  .inner-hero-grid, .interviews-hero-grid { grid-template-columns: minmax(0,1fr) minmax(330px,.78fr); gap: 38px; }
  .signal-board { grid-template-columns: repeat(2,1fr); }
  .signal-board > i { display: none; }
  .signal-node { min-height: 92px; }
  .case-index-grid { grid-template-columns: repeat(2,1fr); }
  .case-index-grid a:nth-child(2) { border-right: 0; }.case-index-grid a:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .case-detail-title { grid-template-columns: .45fr 1.15fr .8fr; gap: 28px; }
  .case-story-grid { grid-template-columns: repeat(2,1fr); }
  .case-story-grid section:nth-child(2) { border-right: 0; }.case-story-grid section:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .case-sample-gallery { grid-template-columns: repeat(2,1fr); }.case-sample-gallery > :first-child { grid-column:1/-1; }
  .disclosure-grid { grid-template-columns:repeat(2,1fr) }.disclosure-grid p:nth-child(2){border-right:0}.disclosure-grid p:nth-child(-n+2){border-bottom:1px solid var(--line)}
}

@media (max-width: 860px) {
  .casepage .page-hero, .casepage .page-heading { min-height: 560px; }
  .inner-hero-grid, .interviews-hero-grid { grid-template-columns: 1fr; align-content: center; gap: 30px; }
  .casepage .page-heading h1 { font-size: 48px; }
  .hero-metric-panel { max-width: 560px; }
  .section-jump { top: 70px; }
  .axis-grid, .topic-grid { grid-template-columns: repeat(2,1fr); }
  .artifact-card-wide { grid-template-columns: 1fr; }.artifact-card-wide .artifact-media{min-height:0;aspect-ratio:16/9}
  .benchmark-deliverables, .respondent-layout, .governance-layout { grid-template-columns:1fr; gap:42px; }
  .interview-sample-grid { grid-template-columns:1fr; }.intelligence-sheet{min-height:0}.intelligence-sheet > footer{min-height:42px}
  .respondent-map { min-height:420px; }
  .governance-grid { grid-template-columns: repeat(2,1fr); }
  .case-detail-title { min-height:440px; grid-template-columns:1fr; gap:20px; align-content:end; }.case-tags{flex-direction:row;flex-wrap:wrap}.case-detail-title > p{max-width:650px}
  .case-output-heading { grid-template-columns:1fr; gap:10px; }
}

@media (max-width: 600px) {
  .casepage .page-hero, .casepage .page-heading { min-height: 590px; }
  .casepage .page-heading { padding-top: 52px; padding-bottom: 48px; }
  .casepage .page-heading h1 { font-size: 39px; }
  .hero-metric-panel > div { min-height:108px; padding:18px }.hero-metric-panel strong{font-size:32px}.hero-metric-panel > p{padding:13px 18px;font-size:9px}
  .section-jump { width:100%; margin-top:0; margin-bottom:0; border-radius:0; }
  .section-jump a { min-width:130px; padding-inline:16px; }
  .axis-grid, .topic-grid, .artifact-gallery, .governance-grid { grid-template-columns:1fr; }
  .axis-card,.topic-grid article{min-height:220px}.artifact-card-wide{grid-column:auto}.artifact-card-wide figcaption{padding:22px 24px}
  .respondent-map { min-height:650px; padding:20px 20px 112px; grid-template-columns:1fr; }.respondent-map article{padding:16px}.respondent-map article h3{margin-top:10px}
  .signal-board { padding:14px; gap:6px; }.signal-node{min-height:82px;padding:8px}.signal-node span{font-size:9px}
  .evidence-ledger{padding-inline:10px}.evidence-ledger > div{grid-template-columns:1.1fr .8fr .9fr 42px;gap:4px;padding-inline:4px;font-size:7px}.evidence-ledger strong{font-size:8px}
  .theme-map,.decision-brief{padding-inline:12px}
  .case-hero-index span { min-height:60px; padding:12px; font-size:8px; }
  .case-index-grid { grid-template-columns:1fr; }.case-index-grid a,.case-index-grid a:nth-child(2){min-height:135px;border-right:0;border-bottom:1px solid var(--line)}.case-index-grid a:last-child{border-bottom:0}
  .case-detail { padding-bottom:65px; }.case-detail-title{min-height:450px;padding-top:56px;padding-bottom:58px}.case-detail-title h2{font-size:35px}.case-detail-title > p{font-size:13px}
  .case-story-grid { grid-template-columns:1fr; margin-top:-25px }.case-story-grid section,.case-story-grid section:nth-child(2){min-height:0;border-right:0;border-bottom:1px solid var(--line)}.case-story-grid section:last-child{border-bottom:0}
  .case-output-block{padding-top:50px}.case-sample-gallery{grid-template-columns:1fr}.case-sample-gallery > :first-child{grid-column:auto}.case-output-heading h3{font-size:27px}
  .mini-deliverable{min-height:390px}
  .disclosure-grid { grid-template-columns:1fr }.disclosure-grid p,.disclosure-grid p:nth-child(2){min-height:140px;border-right:0;border-bottom:1px solid var(--line)}.disclosure-grid p:last-child{border-bottom:0}
}
