.wk-projects-grid.wk-projects-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px;
  margin: 42px 0 16px;
}

.wk-project-card {
  overflow: hidden;
  background: #fff;
  border: 1px solid #e4e9ee;
  box-shadow: 0 10px 24px rgba(27, 50, 75, .09);
  transition: transform .2s ease, box-shadow .2s ease;
}

.wk-project-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 30px rgba(27, 50, 75, .16);
}

.wk-project-image { display: block; height: 205px; overflow: hidden; background: #dce5ec; }
.wk-project-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.wk-project-card:hover .wk-project-image img { transform: scale(1.045); }
.wk-project-card-body { padding: 22px 22px 20px; }
.wk-project-card h3 { margin: 0 0 8px; font-size: 21px; line-height: 1.26; }
.wk-project-card h3 a { color: #315f99; }
.wk-project-card h3 a:hover { color: #163d68; }
.wk-project-card p { margin: 0 0 15px; color: #657383; line-height: 1.55; }
.wk-project-card dl { margin: 0; }
.wk-project-card dl > div { display: grid; grid-template-columns: minmax(88px, .9fr) minmax(0, 1.35fr); gap: 9px; padding: 7px 0; border-top: 1px solid #edf0f3; }
.wk-project-card dt { font-weight: 700; color: #35516d; }
.wk-project-card dd { margin: 0; color: #6b7783; }

/* Single project */
.wk-project-single { background: #fff; color: #26384a; }
.wk-project-shell { width: min(1120px, calc(100% - 48px)); margin: 0 auto; }
.wk-project-hero { position: relative; min-height: 510px; display: flex; align-items: flex-end; overflow: hidden; background: #e8f0f5; }
.wk-project-hero-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.wk-project-hero-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(16, 40, 66, .86) 0%, rgba(16, 40, 66, .53) 45%, rgba(16, 40, 66, .15) 100%); }
.wk-project-hero-content { position: relative; z-index: 1; padding-bottom: 70px; color: #fff; }
.wk-project-back { display: inline-flex; margin-bottom: 80px; padding-bottom: 7px; border-bottom: 1px solid rgba(255,255,255,.5); color: #fff; font-size: 13px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.wk-project-eyebrow, .wk-section-kicker { margin: 0 0 13px; color: #5b85b7; font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.wk-project-hero .wk-project-eyebrow { color: #cfdeed; }
.wk-project-hero h1 { max-width: 760px; margin: 0; color: #fff; font-size: clamp(38px, 5vw, 58px); line-height: 1.08; }
.wk-project-location { margin: 18px 0 0; font-size: 17px; color: #eef5fb; }
.wk-project-overview { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(300px, .8fr); gap: 88px; padding-top: 82px; padding-bottom: 82px; }
.wk-project-story h2, .wk-project-facts h2 { margin: 0 0 24px; color: #173b63; font-size: 31px; line-height: 1.18; }
.wk-project-copy { color: #526476; font-size: 17px; line-height: 1.78; }
.wk-project-copy > :first-child { margin-top: 0; }
.wk-project-copy > :last-child { margin-bottom: 0; }
.wk-project-facts { align-self: start; padding: 29px 32px 25px; background: #f3f7fa; border-top: 4px solid #315f99; }
.wk-project-facts dl { margin: 0; }
.wk-project-facts dl > div { display: grid; grid-template-columns: minmax(115px, .85fr) minmax(0, 1.15fr); gap: 14px; padding: 14px 0; border-top: 1px solid #dbe5ed; }
.wk-project-facts dt { color: #274969; font-size: 13px; font-weight: 700; }
.wk-project-facts dd { margin: 0; color: #5d6f80; font-size: 14px; line-height: 1.45; }
.wk-project-gallery { padding-bottom: 80px; }
.wk-project-gallery-heading h2 { margin: 0 0 26px; color: #173b63; font-size: 31px; line-height: 1.18; }
.wk-project-gallery-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.wk-project-gallery figure { margin: 0; aspect-ratio: 1 / .78; overflow: hidden; background: #e8f0f5; }
.wk-project-gallery img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.wk-project-gallery figure:hover img { transform: scale(1.03); }
.wk-project-navigation { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: center; gap: 34px; padding-top: 33px; padding-bottom: 36px; border-top: 1px solid #dce6ed; }
.wk-project-nav-link { display: grid; gap: 7px; color: #315f99; }
.wk-project-nav-link span { font-size: 12px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.wk-project-nav-link strong { color: #173b63; font-size: 16px; line-height: 1.35; }
.wk-project-nav-next { text-align: right; justify-items: end; }
.wk-project-nav-all { padding: 11px 17px; border: 1px solid #315f99; color: #315f99; font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; }
.wk-project-nav-all:hover { background: #315f99; color: #fff; }

@media (max-width: 980px) { .wk-projects-grid.wk-projects-grid, .wk-project-overview { grid-template-columns: 1fr; } .wk-project-overview { gap: 42px; } }
@media (max-width: 640px) { .wk-projects-grid { grid-template-columns: 1fr; gap: 20px; } .wk-project-image { height: 220px; } }
@media (max-width: 640px) { .wk-projects-grid.wk-projects-grid { grid-template-columns: 1fr; gap: 20px; } .wk-project-image { height: 220px; } .wk-project-shell { width: min(100% - 36px, 1120px); } .wk-project-hero { min-height: 430px; } .wk-project-hero-content { padding-bottom: 44px; } .wk-project-back { margin-bottom: 58px; } .wk-project-overview { padding-top: 54px; padding-bottom: 54px; } .wk-project-facts { padding: 25px 21px; } .wk-project-facts dl > div { grid-template-columns: 1fr; gap: 5px; } .wk-project-gallery { padding-bottom: 52px; } .wk-project-gallery-grid { grid-template-columns: 1fr; gap: 12px; } .wk-project-gallery figure { aspect-ratio: 1 / .7; } .wk-project-navigation { grid-template-columns: 1fr; gap: 24px; text-align: left; } .wk-project-nav-next { text-align: left; justify-items: start; } .wk-project-nav-all { justify-self: start; grid-row: 1; } }
