/* ═══════════════════════════════════════════════
   Steel structures (KM / KMD) — project pages
   Used by projects/steel-hall.html and projects/ziepniekkalna.html
═══════════════════════════════════════════════ */

/* Key-number band */
.stl-stats { background:var(--dark2); border-bottom:1px solid var(--border); padding-top:48px; padding-bottom:48px; }
.stl-stats-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:2px; }
.stl-stat { background:var(--panel); border:1px solid var(--border); padding:26px 24px; }
.stl-stat b {
  display:block; font-family:'Bebas Neue'; font-weight:400; font-size:clamp(38px,4vw,54px);
  letter-spacing:2px; color:var(--gold); line-height:1; margin-bottom:8px;
}
.stl-stat span {
  font-family:'Share Tech Mono'; font-size:9px; letter-spacing:2px;
  color:var(--text-dim); text-transform:uppercase; line-height:1.6;
}

/* Building grid (training campus) */
.stl-blds { background:var(--dark); }
.stl-lead { max-width:760px; font-size:16px; line-height:1.8; color:var(--text-dim); margin:-36px 0 40px; }
.stl-bld-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:2px; }
.stl-bld { background:var(--panel); border:1px solid var(--border); display:flex; flex-direction:column; transition:border-color .2s; }
.stl-bld:hover { border-color:var(--border-hi); }
.stl-bld figure { margin:0; aspect-ratio:16/10; overflow:hidden; background:#eceef1; }
.stl-bld img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .6s var(--ease); }
.stl-bld:hover img { transform:scale(1.04); }
.stl-bld-body { padding:20px 20px 22px; display:flex; flex-direction:column; gap:12px; flex:1; }
.stl-bld-name { font-family:'Rajdhani'; font-weight:700; font-size:18px; letter-spacing:1px; color:var(--white); line-height:1.25; }
.stl-chip {
  align-self:flex-start; padding:4px 10px; border:1px solid var(--border-hi);
  font-family:'Share Tech Mono'; font-size:9px; letter-spacing:2px; color:var(--gold-text); text-transform:uppercase;
}
.stl-bld dl { display:grid; grid-template-columns:1fr auto; gap:6px 12px; margin:auto 0 0; padding-top:10px; border-top:1px solid var(--border); }
.stl-bld dt { font-family:'Share Tech Mono'; font-size:9px; letter-spacing:1.5px; color:var(--text-dim); text-transform:uppercase; align-self:center; }
.stl-bld dd { margin:0; font-family:'Rajdhani'; font-weight:700; font-size:15px; color:var(--white); text-align:right; }

/* KM → KMD scope */
.stl-kk { background:var(--dark2); border-top:1px solid var(--border); }
.stl-kk-grid { display:grid; grid-template-columns:1fr 1fr; gap:2px; }
.stl-kk-col { background:var(--panel); border:1px solid var(--border); padding:32px 32px 30px; }
.stl-kk-col h3 { font-family:'Bebas Neue'; font-weight:400; font-size:30px; letter-spacing:2px; color:var(--white); margin:0 0 6px; }
.stl-kk-col h3 em { font-style:normal; color:var(--gold); }
.stl-kk-sub { font-family:'Share Tech Mono'; font-size:9px; letter-spacing:2px; color:var(--text-dim); text-transform:uppercase; margin-bottom:20px; }
.stl-kk-col ol { list-style:none; margin:0; padding:0; counter-reset:k; }
.stl-kk-col li {
  counter-increment:k; position:relative; padding:11px 0 11px 44px;
  border-top:1px solid var(--border); font-size:15px; line-height:1.55; color:var(--text);
}
.stl-kk-col li::before {
  content:counter(k,decimal-leading-zero); position:absolute; left:0; top:12px;
  font-family:'Share Tech Mono'; font-size:11px; letter-spacing:1px; color:var(--gold);
}
.stl-kk-note { margin-top:26px; font-family:'Share Tech Mono'; font-size:10px; letter-spacing:1.5px; color:var(--text-dim); line-height:1.8; }

/* Phases (Ziepniekkalna) */
.stl-phases { display:grid; grid-template-columns:repeat(4,1fr); gap:2px; margin-top:2px; }
.stl-phase { background:var(--panel); border:1px solid var(--border); padding:20px 22px; }
.stl-phase b { display:block; font-family:'Bebas Neue'; font-weight:400; font-size:26px; letter-spacing:2px; color:var(--gold); line-height:1; margin-bottom:6px; }
.stl-phase span { display:block; font-family:'Share Tech Mono'; font-size:9px; letter-spacing:1.5px; color:var(--text-dim); text-transform:uppercase; }
.stl-phase p { margin:8px 0 0; font-size:14px; line-height:1.55; color:var(--text); }

/* Figure captions in the gallery */
.stl-cap {
  position:absolute; left:0; right:0; bottom:0; padding:10px 14px;
  background:linear-gradient(transparent, rgba(13,21,32,.72));
  font-family:'Share Tech Mono'; font-size:9px; letter-spacing:2px; color:#e8edf4; text-transform:uppercase;
}
.gallery-item { position:relative; }

/* Service link under the accordion text */
.svc-link { display:inline-block; margin-top:12px; color:#d9ac5d; font-weight:700; text-decoration:underline; }

@media (max-width: 1100px) {
  .stl-bld-grid { grid-template-columns:1fr 1fr; }
  .stl-phases { grid-template-columns:1fr 1fr; }
}
@media (max-width: 767px) {
  .stl-stats-grid { grid-template-columns:1fr 1fr; }
  .stl-bld-grid, .stl-kk-grid, .stl-phases { grid-template-columns:1fr; }
  .stl-lead { margin-top:-24px; }
  .stl-kk-col { padding:24px 20px; }
  .stl-stat { padding:20px 16px; }
  .proj-hero h1 { font-size:clamp(28px,8vw,64px); letter-spacing:2px; overflow-wrap:anywhere; }
}
