/* Scoped to the Facility case study. Shared site styles remain unchanged. */
.facility-case { background: #f5f0e7; color: #071827; }
.facility-case .site-header { color: #f3ede2; background: #08151f; border-bottom-color: #d4ad6c38; }
.facility-case .site-header .brand,
.facility-case .site-header .brand span,
.facility-case .site-header .nav-links > a { color: #f3ede2; }
.facility-case .site-header .brand-symbol { filter: brightness(1.5); }
.facility-case .site-header .nav-cta { background: #efc477; color: #071827; border-color: #efc477; }
.facility-case .site-header .menu-toggle { border-color: #d4ad6c80; }
.facility-case .site-header .menu-toggle span { background: #f3ede2; }
.facility-case .fc-hero,
.facility-case .fc-engineering,
.facility-case .fc-closing { background: #08151f; color: #f3ede2; }
.facility-case .fc-hero { padding: 38px 0 0; }
.facility-case .fc-back { display: inline-flex; align-items: center; min-height: 44px; color: #b8c3c8; font-size: 13px; text-decoration: none; }
.facility-case .fc-back:hover { color: #efc477; }
.facility-case .fc-introduction { display: grid; grid-template-columns: 1.2fr 1fr; gap: clamp(36px, 6vw, 88px); align-items: end; padding: 32px 0 54px; }
.facility-case .fc-kicker { margin: 0 0 22px; color: #efc477; font: 11px/1.6 var(--mono, monospace); letter-spacing: .08em; text-transform: uppercase; }
.facility-case h1 { max-width: 13ch; margin: 0; color: #f3ede2; font: 500 clamp(52px, 5.6vw, 86px)/.98 var(--serif, Georgia, serif); letter-spacing: -.045em; }
.facility-case .fc-intro-copy > p:first-child { margin: 0 0 28px; color: #c7d0d3; font-size: clamp(17px, 1.4vw, 20px); line-height: 1.65; }
.facility-case .fc-button { display: inline-flex; justify-content: center; align-items: center; gap: 24px; min-height: 52px; padding: 14px 22px; background: #efc477; color: #071827; border: 1px solid #efc477; font-size: 14px; font-weight: 650; line-height: 1.45; text-decoration: none; transition: background-color 160ms ease; }
.facility-case .fc-button:hover { background: #f8dba9; }
.facility-case .fc-note { margin: 16px 0 0; color: #acb8be; font-size: 12px; }
.facility-case figure { margin-block: 0; }
.facility-case .fc-hero-image { margin-inline: 0; }
.facility-case .fc-hero-image img,
.facility-case .fc-interior img { width: 100%; height: auto; display: block; border: 1px solid #c49b5c55; }
.facility-case figcaption { display: flex; justify-content: space-between; gap: 12px 30px; padding: 16px 0 0; font: 11px/1.6 var(--mono, monospace); }
.facility-case .fc-hero-image figcaption { color: #b9c1c4; }
.facility-case .fc-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px; margin: 32px 0 0; padding: 30px 0 36px; border-top: 1px solid #c49b5c55; }
.facility-case .fc-facts dt { margin: 0 0 10px; color: #efc477; font: 10px/1.5 var(--mono, monospace); text-transform: uppercase; letter-spacing: .1em; }
.facility-case .fc-facts dd { margin: 0; color: #e0e4e2; font-size: 14px; line-height: 1.6; }
.facility-case .fc-story { display: grid; grid-template-columns: 1fr 2fr; gap: 60px; padding-block: clamp(56px, 6vw, 92px); }
.facility-case .fc-section-label { padding-top: 8px; color: #79551e; font: 11px/1.7 var(--mono, monospace); text-transform: uppercase; letter-spacing: .06em; }
.facility-case h2 { margin: 0 0 26px; font: 500 clamp(34px, 3.3vw, 50px)/1.06 var(--serif, Georgia, serif); letter-spacing: -.035em; color: inherit; }
.facility-case .fc-story-copy > p { margin: 0 0 20px; max-width: 66ch; color: #3e4e58; font-size: 17px; line-height: 1.8; }
.facility-case .fc-story-copy > p:last-child { margin-bottom: 0; }
.facility-case .fc-interior figcaption { color: #5b6569; }
.facility-case .fc-engineering { padding: clamp(56px, 6vw, 92px) 0; border-block: 1px solid #c49b5c55; }
.facility-case .fc-engineering > .shell { display: grid; grid-template-columns: 1fr 1.15fr; gap: clamp(42px, 6vw, 90px); align-items: start; }
.facility-case .fc-engineering-heading > p:last-child { max-width: 37ch; margin: 0; color: #bdc8ce; font-size: 17px; line-height: 1.8; }
.facility-case .fc-engineering-list { margin: 0; border-top: 1px solid #c49b5c66; }
.facility-case .fc-engineering-list > div { padding: 24px 0; border-bottom: 1px solid #c49b5c45; }
.facility-case .fc-engineering-list dt { margin: 0 0 12px; color: #efc477; font-size: 16px; font-weight: 600; }
.facility-case .fc-engineering-list dd { margin: 0; color: #bdc8ce; font-size: 16px; line-height: 1.75; }
.facility-case .fc-use-cases { margin: 30px 0; padding: 0; list-style: none; border-top: 1px solid #07182740; }
.facility-case .fc-use-cases li { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr); gap: 24px; padding: 22px 0; border-bottom: 1px solid #07182730; }
.facility-case .fc-use-cases strong { font-size: 17px; font-weight: 600; line-height: 1.5; }
.facility-case .fc-use-cases span { color: #3e4e58; font-size: 16px; line-height: 1.7; }
.facility-case .fc-closing { padding: clamp(60px, 7vw, 100px) 0; border-top: 1px solid #c49b5c66; background: radial-gradient(ellipse at 90% 100%, #c49b5c12, transparent 65%), #08151f; }
.facility-case .fc-closing h2 { max-width: 19ch; font-size: clamp(40px, 4.8vw, 68px); }
.facility-case .fc-closing p:not(.fc-kicker) { max-width: 51ch; color: #bdc8ce; font-size: 18px; line-height: 1.7; }
.facility-case .fc-closing-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 20px 36px; margin-top: 32px; }
.facility-case .fc-text-link { display: inline-flex; align-items: center; gap: 16px; min-height: 44px; color: #efc477; text-underline-offset: 6px; font-size: 14px; }
.facility-case main a:focus-visible { outline: 2px solid #efc477; outline-offset: 5px; }
@media (max-width: 1040px) {
  .facility-case .site-header .nav-links > a,
  .facility-case .site-header .service-navigation summary { color: #071827; }
}
@media (max-width: 760px) {
  .facility-case .fc-hero { padding-top: 20px; }
  .facility-case .fc-introduction,
  .facility-case .fc-story,
  .facility-case .fc-engineering > .shell { grid-template-columns: 1fr; gap: 28px; }
  .facility-case .fc-introduction { padding: 22px 0 36px; }
  .facility-case .fc-kicker { font-size: 10px; margin-bottom: 20px; }
  .facility-case h1 { font-size: clamp(46px, 10.8vw, 72px); }
  .facility-case .fc-intro-copy > p:first-child { font-size: 17px; }
  .facility-case figcaption { flex-direction: column; gap: 4px; font-size: 10px; }
  .facility-case .fc-facts { grid-template-columns: 1fr; gap: 20px; margin-top: 24px; padding-block: 24px 30px; }
  .facility-case .fc-facts > div { display: grid; grid-template-columns: 88px 1fr; gap: 12px; }
  .facility-case .fc-facts dt { margin: 0; padding-top: 3px; }
  .facility-case .fc-facts dd { font-size: 13px; }
  .facility-case .fc-story-copy > p { font-size: 16px; line-height: 1.8; }
  .facility-case .fc-engineering > .shell { gap: 36px; }
  .facility-case .fc-use-cases li { grid-template-columns: 1fr; gap: 10px; }
}
@media (prefers-reduced-motion: reduce) { .facility-case .fc-button { transition: none; } }
