/* A shared editorial grid for the case-study index and full descriptions. */
.cases-intro {padding:65px var(--pad) 48px;}
.cases-intro h1 {font-size:clamp(48px,6vw,88px);font-weight:550;line-height:1.06;letter-spacing:-.055em;margin:20px 0 26px;}
.cases-description {max-width:660px;font-size:19px;line-height:1.6;}
.case-index {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:0 var(--pad);border-top:1px solid var(--ink);border-bottom:1px solid var(--line);}
.case-index a {display:flex;align-items:baseline;gap:18px;padding:24px 0;font-size:16px;line-height:1.5;}
.case-index a>span:first-child {font-size:11px;color:#555;}
.case-index a:hover>span:last-child {text-decoration:underline;text-underline-offset:5px;}
.case-collection {padding:0 var(--pad) 28px;}
.case-study {display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:6vw;padding:65px 0;border-bottom:1px solid var(--line);scroll-margin-top:30px;}
.case-study:last-child {border-bottom:0;}
.case-category {display:flex;align-items:baseline;gap:20px;font-size:12px;line-height:1.6;margin-bottom:24px;}
.case-number {font-size:11px;color:#555;flex-shrink:0;}
.case-context h2 {max-width:490px;font-size:clamp(29px,3vw,44px);font-weight:500;letter-spacing:-.04em;line-height:1.14;text-wrap:balance;}
.case-status {font-size:12px;line-height:1.5;margin-top:24px;color:#555;}
.case-copy {max-width:660px;}
.case-copy .case-lead {font-size:19px;line-height:1.65;}
.case-copy h3 {font-size:12px;font-weight:550;line-height:1.5;letter-spacing:.04em;margin:30px 0 12px;}
.case-copy>p:not(.case-lead) {font-size:16px;line-height:1.7;}
.case-process {font-size:13px;line-height:1.8;padding-top:23px;border-top:1px solid var(--line);margin-top:28px;}
.case-process span {color:#777;margin:0 8px;}
.site-nav [aria-current=page] {text-decoration:underline;text-underline-offset:6px;}
[data-direction=a] .cases-intro {background:var(--blue);color:white;}
[data-direction=a] .case-index {margin-top:35px;}
html[lang=ja] .cases-intro h1 {font-size:clamp(40px,5vw,72px);line-height:1.3;}
html[lang=ja] .case-context h2 {font-size:clamp(27px,2.6vw,38px);line-height:1.4;text-wrap:wrap;}
html[lang=ja] .cases-description,html[lang=ja] .case-copy .case-lead {font-size:17px;line-height:1.85;}
html[lang=ja] .case-copy>p:not(.case-lead) {line-height:1.9;}
@media(max-width:1000px){
  .case-study {grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:35px;}
  .case-index {gap:24px;}
  .case-index a {gap:12px;font-size:14px;}
}
@media(max-width:700px){
  .site-nav>.minarai-nav,.site-nav>.programme-link {display:none;}
  .review-bar .review-label {display:none;}
  .review-bar .review-note {display:block;font-size:8px;}
  .cases-intro {padding:38px var(--pad) 32px;}
  .cases-intro h1 {font-size:46px;margin:18px 0 22px;}
  .cases-description {font-size:16px;}
  .case-index {grid-template-columns:1fr;gap:0;}
  .case-index a {padding:16px 0;font-size:15px;gap:20px;}
  .case-index a+a {border-top:1px solid var(--line);}
  .case-study {grid-template-columns:1fr;gap:25px;padding:38px 0;}
  .case-category {margin-bottom:18px;}
  .case-context h2 {font-size:32px;max-width:520px;}
  .case-status {margin-top:16px;}
  .case-copy .case-lead {font-size:17px;}
  .case-copy>p:not(.case-lead) {font-size:15px;}
  .case-copy h3 {margin-top:24px;}
  .case-process {font-size:12px;}
  .case-process span {margin:0 4px;}
  html[lang=ja] .cases-intro h1 {font-size:40px;}
  html[lang=ja] .case-context h2 {font-size:28px;}
  html[lang=ja] .cases-description,html[lang=ja] .case-copy .case-lead {font-size:16px;}
}
