.project-case-page { margin:0; background:#fff; color:#10171f; }
.project-case-section { padding:42px 0 72px; }
.project-case-article { max-width:980px; margin:0 auto; }
.project-case-actions { display:flex; align-items:center; margin:0 0 30px; }
.project-case-actions-bottom { margin:34px 0 0; }
.project-case-back { display:inline-flex; min-height:52px; align-items:center; justify-content:center; padding:0 22px; color:#17344a; font-size:14px; font-weight:800; text-decoration:none; border:1px solid #8facbd; border-radius:8px; background:#fff; }
.project-case-back:hover { background:#edf3f6; }
.project-case-filters { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 30px; }
.project-case-filter { display:inline-flex; min-height:40px; align-items:center; padding:0 14px; color:#102033; font-size:13px; font-weight:800; text-decoration:none; border:1px solid #d7dfe5; border-radius:999px; background:#fff; }
.project-case-filter:hover { border-color:#98aebe; }
.project-case-filter.is-active { color:#fff; border-color:#102033; background:#102033; }
.project-case-head { margin:0 0 42px; }
.project-case-meta { display:flex; flex-wrap:wrap; align-items:center; gap:10px 14px; margin:0 0 26px; color:#657183; font-size:14px; }
.project-case-tag { display:inline-flex; padding:6px 10px; color:#17344a; font-size:12px; font-weight:800; letter-spacing:.02em; border-radius:999px; background:#eaf1f5; }
.project-case-head h1 { max-width:920px; margin:0; color:#11171d; font-size:clamp(42px,5.5vw,76px); line-height:1.04; letter-spacing:0; text-wrap:balance; }
.project-case-lead { max-width:900px; margin:26px 0 0; color:#5f6f83; font-size:22px; line-height:1.55; }
.project-case-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; margin:0 0 52px; padding:1px; border-radius:8px; overflow:hidden; background:#d8e0e6; }
.project-case-fact { min-width:0; padding:22px; background:#fff; }
.project-case-fact strong { display:block; margin:0 0 8px; color:#17344a; font-size:12px; line-height:1.3; letter-spacing:.1em; text-transform:uppercase; }
.project-case-fact span { display:block; color:#172536; font-size:16px; line-height:1.55; }
.project-case-prose { max-width:900px; }
.project-case-prose h2 { margin:52px 0 16px; padding:0; color:#11171d; font-size:30px; line-height:1.2; letter-spacing:0; border:0; }
.project-case-prose h2:first-child { margin-top:0; }
.project-case-prose h3 { margin:32px 0 12px; font-size:22px; line-height:1.25; }
.project-case-prose p,.project-case-prose li { color:#344457; font-size:18px; line-height:1.72; }
.project-case-prose p { margin:0 0 18px; }
.project-case-prose ul,.project-case-prose ol { padding-left:24px; }
.project-case-prose a { color:#245f47; text-underline-offset:3px; }
.project-case-note { margin:30px 0 0; color:#6b7682; font-size:13px; line-height:1.6; }
.project-case-related { margin:54px 0 0; }
.project-case-related-label { margin:0 0 16px; color:#536275; font-size:12px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.project-case-related-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.project-case-related-card { display:grid; min-width:0; color:#11171d; text-decoration:none; border:1px solid #d5dfe6; border-radius:8px; overflow:hidden; background:#fff; }
.project-case-related-media { display:block; height:116px; background:#edf2f5; }
.project-case-related-body { display:flex; min-height:180px; flex-direction:column; align-items:flex-start; padding:20px; }
.project-case-related-body > span { color:#526273; font-size:12px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.project-case-related-body strong { margin:12px 0 18px; font-size:22px; line-height:1.2; }
.project-case-related-body b { margin-top:auto; color:#17344a; font-size:13px; }
.project-case-page a:focus-visible { outline:3px solid #315f78; outline-offset:4px; }
@media(max-width:700px) {
  .project-case-section { padding:26px 0 54px; }
  .project-case-article { width:min(100% - 28px,980px); }
  .project-case-actions { margin-bottom:24px; }
  .project-case-back { width:100%; }
  .project-case-filters { gap:7px; margin-bottom:28px; }
  .project-case-filter { min-height:38px; padding:0 12px; font-size:12px; }
  .project-case-head { margin-bottom:34px; }
  .project-case-meta { gap:9px 12px; margin-bottom:20px; font-size:12px; }
  .project-case-head h1 { font-size:clamp(34px,10.5vw,48px); line-height:1.07; }
  .project-case-lead { margin-top:20px; font-size:18px; line-height:1.55; }
  .project-case-facts { grid-template-columns:1fr; margin-bottom:38px; }
  .project-case-fact { padding:19px; }
  .project-case-prose h2 { margin-top:42px; font-size:27px; }
  .project-case-prose p,.project-case-prose li { font-size:17px; line-height:1.68; }
  .project-case-related-grid { grid-template-columns:1fr; }
  .project-case-related-media { height:96px; }
  .project-case-related-body { min-height:160px; }
}
