.mining-diagnostic {
  position: relative;
  min-height: 850px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  color: #f3f8f4;
  background: #03100c;
}
.diagnostic-background,.diagnostic-overlay { position: absolute; inset: 0; width: 100%; height: 100%; }
.diagnostic-background { object-fit: cover; object-position: center; }
.diagnostic-overlay { background: linear-gradient(90deg,rgba(2,15,11,.98) 0%,rgba(2,15,11,.93) 38%,rgba(2,15,11,.62) 67%,rgba(2,15,11,.34) 100%),linear-gradient(0deg,rgba(2,15,11,.74),transparent 45%); }
.diagnostic-inner { position: relative; z-index: 2; width: 100%; max-width: 1696px; margin: auto; padding: clamp(82px,8vw,140px) var(--gutter) 170px; display: grid; grid-template-columns: minmax(0,1.08fr) minmax(390px,.55fr); gap: clamp(48px,8vw,140px); align-items: center; }
.diagnostic-copy { max-width: 930px; }
.diagnostic-kicker { margin: 0 0 25px; color: var(--lime); font-size: .78rem; font-weight: 800; line-height: 1.5; letter-spacing: .14em; text-transform: uppercase; }
.diagnostic-copy h2 { margin: 0; font-size: clamp(3.2rem,5.5vw,6.7rem); font-weight: 600; line-height: .96; letter-spacing: -.07em; }
.diagnostic-copy h2 em { color: var(--lime); font-style: normal; }
.diagnostic-copy > p { max-width: 820px; margin: 28px 0 0; color: #c2cfc7; font-size: clamp(1rem,1.25vw,1.3rem); line-height: 1.65; }
.diagnostic-copy > p + p { margin-top: 12px; }
.diagnostic-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 34px; }
.diagnostic-actions a { display: inline-flex; align-items: center; justify-content: space-between; gap: 30px; min-height: 60px; padding: 0 26px; font-size: .88rem; font-weight: 800; text-decoration: none; transition: transform .2s ease,background .2s ease,border-color .2s ease; }
.diagnostic-actions a:hover { transform: translateY(-2px); }
.diagnostic-primary { color: #06140e; background: var(--lime); border: 1px solid var(--lime); }
.diagnostic-primary:hover { background: #c7ff4d; }
.diagnostic-secondary { color: #f2f7f3; background: rgba(4,24,17,.72); border: 1px solid rgba(255,255,255,.3); }
.diagnostic-secondary:hover { border-color: var(--lime); }
.diagnostic-copy > small { display: block; max-width: 720px; margin-top: 20px; color: #82958a; font-size: .78rem; line-height: 1.55; }
.diagnostic-steps { min-width: 0; padding: clamp(28px,2.8vw,46px); color: #edf5ef; background: rgba(5,28,19,.9); border: 1px solid rgba(184,255,24,.26); box-shadow: 0 32px 78px rgba(0,0,0,.42); backdrop-filter: blur(8px); }
.diagnostic-steps > header { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px 18px; padding-bottom: 23px; border-bottom: 1px solid rgba(255,255,255,.14); }
.diagnostic-steps > header span { color: var(--lime); font-size: .75rem; font-weight: 800; letter-spacing: .08em; }
.diagnostic-steps > header small { color: #84978b; font-size: .72rem; }
.diagnostic-steps ol { margin: 0; padding: 0; list-style: none; }
.diagnostic-steps li { display: grid; grid-template-columns: 38px minmax(0,1fr); gap: 16px; padding: 20px 0; border-bottom: 1px solid rgba(255,255,255,.12); }
.diagnostic-steps li > b { display: grid; place-items: center; width: 36px; height: 36px; color: #06140e; background: var(--lime); border-radius: 50%; font-size: .72rem; }
.diagnostic-steps li strong { color: #f3f7f4; font-size: .92rem; line-height: 1.4; }
.diagnostic-steps li p { margin: 5px 0 0; color: #95a69c; font-size: .8rem; line-height: 1.48; }
.diagnostic-steps > footer { margin-top: 24px; padding: 20px; background: rgba(184,255,24,.07); border-left: 2px solid var(--lime); }
.diagnostic-steps > footer span,.diagnostic-steps > footer strong { display: block; }
.diagnostic-steps > footer span { color: var(--lime); font-size: .7rem; font-weight: 800; letter-spacing: .07em; }
.diagnostic-steps > footer strong { margin-top: 7px; color: #e8f1eb; font-size: .86rem; line-height: 1.5; }
.diagnostic-strip { position: absolute; z-index: 3; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); color: #06140e; background: var(--lime); }
.diagnostic-strip div { min-width: 0; padding: 22px var(--gutter); border-right: 1px solid rgba(6,20,14,.18); }
.diagnostic-strip div:last-child { border-right: 0; }
.diagnostic-strip span,.diagnostic-strip b { display: block; }
.diagnostic-strip span { font-size: .68rem; font-weight: 800; }
.diagnostic-strip b { margin-top: 7px; font-size: .78rem; line-height: 1.4; }
@media (max-width:1100px) {
  .diagnostic-inner { grid-template-columns: 1fr; }
  .diagnostic-copy { max-width: 980px; }
  .diagnostic-steps { max-width: 720px; }
  .diagnostic-overlay { background: linear-gradient(90deg,rgba(2,15,11,.97),rgba(2,15,11,.72)),linear-gradient(0deg,rgba(2,15,11,.76),transparent); }
}
@media (max-width:760px) {
  .mining-diagnostic { min-height: 0; }
  .diagnostic-inner { padding: 78px 20px 190px; }
  .diagnostic-copy h2 { font-size: clamp(2.7rem,13vw,4.2rem); }
  .diagnostic-actions { flex-direction: column; }
  .diagnostic-actions a { width: 100%; }
  .diagnostic-strip { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .diagnostic-strip div { padding: 16px 20px; }
  .diagnostic-strip div:nth-child(2) { border-right: 0; }
  .diagnostic-strip div:nth-child(-n+2) { border-bottom: 1px solid rgba(6,20,14,.18); }
}
@media (max-width:480px) {
  .diagnostic-inner { padding-bottom: 220px; }
  .diagnostic-steps { padding: 24px; }
}
@media (prefers-reduced-motion:reduce) {
  .diagnostic-actions a { transition: none; }
}
