/* Approved case layout shared across languages and viewport sizes. */

@media (min-width:0px) {
 body[data-page="case-detail"] { background:#fff; }
 body[data-page="case-detail"] .case-v027-detail { background:#fff; color:#526779; --case-line:#d9e5ef; --case-muted:#526779; }
 body[data-page="case-detail"] :is(.case-v027-hero,.case-v027-media,.case-v027-overview:not(.case-overview-with-architecture)) { display:none; }
 body[data-page="case-detail"] .case-overview-with-architecture :is(.case-v027-section-heading,.case-v027-overview-copy) { display:none; }
 body[data-page="case-detail"] .case-overview-with-architecture { background:#fff; }
 body[data-page="case-detail"] .case-project-architecture-description p { color:#526779; }
 body[data-page="case-detail"] .case-pilot-hero {
  min-height:70svh; box-sizing:border-box; padding:104px 0 56px; display:flex; align-items:center;
  background:linear-gradient(90deg,rgba(247,251,255,.96),rgba(245,250,255,.83) 42%,rgba(241,247,253,.58)),var(--case-category-bg) center/cover;
  border-bottom:1px solid #e0eaf3;
 }
 body[data-page="case-detail"] .case-breadcrumb { margin:0 0 36px; color:#647b8f; font-size:13px; }
 body[data-page="case-detail"] .case-pilot-hero-grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr); align-items:center; gap:56px; }
 body[data-page="case-detail"] .case-pilot-hero h1 { margin:0 0 24px; color:#102a43; font-size:clamp(38px,3.1vw,54px); line-height:1.22; font-weight:650; letter-spacing:-.035em; text-wrap:balance; }
 body[data-page="case-detail"] .case-heading-word { display:inline-block; white-space:nowrap; }
 body[data-page="case-detail"] .case-pilot-hero-copy p { margin:0; color:#526779; font-size:clamp(13px,1.08vw,16px); line-height:1.9; }
 body[data-page="case-detail"] .case-pilot-hero-media { margin:0; border:1px solid #cadce9; border-radius:12px; overflow:hidden; box-shadow:0 18px 48px #1e4c7220; }
 body[data-page="case-detail"] .case-pilot-hero-media :is(img,video) { display:block; width:100%; height:auto; }
 body[data-page="case-detail"] .case-v027-highlights { padding:72px 0 88px; background:#fff; }
 body[data-page="case-detail"] .case-v027-section-heading h2 { color:#102a43; font-size:clamp(38px,3.1vw,54px); line-height:1.2; }
 body[data-page="case-detail"] .case-v027-highlights > .container > .case-v027-section-heading { margin-bottom:44px; }
 body[data-page="case-detail"] .case-v027-highlight-list { gap:112px; }
 body[data-page="case-detail"] .case-v027-highlight-copy h3 { color:#102a43; font-size:clamp(26px,2.5vw,38px); line-height:1.35; margin-bottom:20px; }
 body[data-page="case-detail"] .case-v027-highlight-copy p { color:#526779; font-size:clamp(13px,1.08vw,16px); line-height:1.9; }
 body[data-page="case-detail"] .case-v027-highlight-media { height:auto; background:#f2f7fb; border-color:#dce7f0; box-shadow:none; }
 body[data-page="case-detail"] .case-v027-highlight-media img { height:auto; background:#f2f7fb; }
}
@media (min-width:821px) and (max-width:1100px) {
 body[data-page="case-detail"] .case-pilot-hero-grid { gap:28px; }
}

@media (max-width:820px) {
 body[data-page="case-detail"] .case-pilot-hero { min-height:0; padding:100px 0 36px; }
 body[data-page="case-detail"] .case-pilot-hero-grid { grid-template-columns:minmax(0,1fr); gap:28px; }
 body[data-page="case-detail"] .case-pilot-hero h1 { font-size:clamp(28px,7vw,38px); line-height:1.25; }
 body[data-page="case-detail"] .case-breadcrumb { margin-bottom:24px; flex-wrap:wrap; }
 body[data-page="case-detail"] .case-pilot-hero-copy p,
 body[data-page="case-detail"] .case-v027-highlight-copy p { font-size:15px; line-height:1.8; }
 body[data-page="case-detail"] .case-v027-highlights { padding:44px 0; }
 body[data-page="case-detail"] .case-v027-section-heading h2 { font-size:30px; }
 body[data-page="case-detail"] .case-v027-highlight-list { gap:48px; }
 body[data-page="case-detail"] .case-v027-highlight-copy h3 { font-size:24px; }
 body[data-page="case-detail"] .case-title-phrase { white-space:normal; }
}
body.locale-en[data-page="case-detail"] .case-pilot-hero h1 { font-size:clamp(30px,3vw,48px); line-height:1.2; letter-spacing:-.025em; }

/* Compact PPT image groups for the box-girder case. */
body[data-page="case-detail"][data-id="box-girder-rebar-inspection"] .case-v027-highlights > .container { max-width:1280px; }
body[data-page="case-detail"][data-id="box-girder-rebar-inspection"] .case-v027-highlight-list { gap:64px; }
body[data-page="case-detail"][data-id="box-girder-rebar-inspection"] .case-v027-highlight,
body[data-page="case-detail"][data-id="box-girder-rebar-inspection"] .case-v027-highlight.is-reverse {
 grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:48px;
}
body[data-page="case-detail"][data-id="box-girder-rebar-inspection"] .case-v027-highlight .case-v027-highlight-copy { order:0; }
body[data-page="case-detail"][data-id="box-girder-rebar-inspection"] .case-highlight-gallery {
 display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; min-width:0; order:1;
}
body[data-page="case-detail"][data-id="box-girder-rebar-inspection"] .case-highlight-gallery > .case-v027-highlight-media:nth-child(n) {
 grid-column:auto; margin:0; height:220px;
}
body[data-page="case-detail"][data-id="box-girder-rebar-inspection"] .case-highlight-gallery > .case-v027-highlight-media img {
 width:100%; height:100%; object-fit:cover;
}
body[data-page="case-detail"][data-id="box-girder-rebar-inspection"] .case-highlight-gallery > .case-v027-highlight-media:only-child {
 grid-column:1/-1; height:280px;
}
body[data-page="case-detail"][data-id="box-girder-rebar-inspection"] .case-highlight-gallery > .case-v027-highlight-media:first-child:nth-last-child(3) {
 grid-column:1/-1; height:200px;
}
body[data-page="case-detail"][data-id="box-girder-rebar-inspection"] .case-highlight-gallery > .case-v027-highlight-media:first-child:nth-last-child(3) ~ figure { height:160px; }
body[data-page="case-detail"][data-id="box-girder-rebar-inspection"] .case-v027-highlight-copy h3 { font-size:clamp(24px,2vw,32px); margin-bottom:18px; }
body[data-page="case-detail"][data-id="box-girder-rebar-inspection"] .case-feature-points { gap:10px 18px; margin-top:20px; font-size:15px; }
@media(max-width:820px) {
 body[data-page="case-detail"][data-id="box-girder-rebar-inspection"] .case-v027-highlight,
 body[data-page="case-detail"][data-id="box-girder-rebar-inspection"] .case-v027-highlight.is-reverse { grid-template-columns:minmax(0,1fr); gap:24px; }
 body[data-page="case-detail"][data-id="box-girder-rebar-inspection"] .case-v027-highlight-list { gap:44px; }
 body[data-page="case-detail"][data-id="box-girder-rebar-inspection"] .case-highlight-gallery > .case-v027-highlight-media:nth-child(n) { height:clamp(120px,26vw,200px); }
 body[data-page="case-detail"][data-id="box-girder-rebar-inspection"] .case-highlight-gallery > .case-v027-highlight-media:only-child { height:220px; }
 body[data-page="case-detail"][data-id="box-girder-rebar-inspection"] .case-highlight-gallery > .case-v027-highlight-media:only-child img { height:100%; }
 body[data-page="case-detail"][data-id="box-girder-rebar-inspection"] .case-highlight-gallery > .case-v027-highlight-media:first-child:nth-last-child(3) { height:160px; }
 body[data-page="case-detail"][data-id="box-girder-rebar-inspection"] .case-highlight-gallery > .case-v027-highlight-media:first-child:nth-last-child(3) ~ figure { height:130px; }
}
