.lime { color: #D6FE99; }
.blink { animation: blink 1.2s steps(1) infinite; }

/* ============ hero ============ */
.svc-hero {
  max-width: 1440px; margin: 0 auto; padding: 120px 80px 40px; box-sizing: border-box;
  display: flex; flex-direction: column; gap: 32px;
}
.svc-tag {
  font-family: 'VCR OSD Mono', monospace; font-size: 13px; letter-spacing: 0.12em;
  color: #747474; text-transform: uppercase;
}
.svc-h1 {
  margin: 0; font-weight: 400; font-size: clamp(52px, 7vw, 110px); line-height: 1.0;
  letter-spacing: -0.035em; color: #FFFFFF;
}
.svc-sub { margin: 0; max-width: 520px; font-size: 19px; line-height: 1.4; color: #9C9C9C; }

/* ============ pillar sections ============ */
.svc-pillar { max-width: 1440px; margin: 0 auto; padding: 120px 80px 0; box-sizing: border-box; }
.svc-pillar + .svc-pillar { padding-top: 140px; }
#intelligence.svc-pillar { padding-bottom: 40px; }

.svc-grid { position: relative; display: grid; grid-template-columns: minmax(300px, 1fr) 1.5fr; gap: 96px; align-items: start; }

.svc-side { display: flex; flex-direction: column; gap: 28px; position: sticky; top: 92px; }
.svc-idx { display: flex; align-items: baseline; gap: 14px; }
.svc-idx-num { font-family: 'VCR OSD Mono', monospace; font-size: 14px; }
.svc-idx-label { font-size: 16px; color: #FFFFFF; }

.svc-icon-box { width: 168px; height: 168px; box-sizing: border-box; display: flex; align-items: center; justify-content: center; }
.svc-icon { display: block; width: 130px; height: 130px; image-rendering: pixelated; }

.svc-head { margin: 0; font-weight: 400; font-size: clamp(34px, 3.4vw, 52px); line-height: 1.08; letter-spacing: -0.03em; color: #FFFFFF; }
.svc-lead { margin: 0; font-size: 17px; line-height: 1.45; color: #8B8B8B; }

.svc-list { display: flex; flex-direction: column; }
.svc-row {
  display: grid; grid-template-columns: minmax(240px, 0.9fr) 1.4fr; gap: 32px;
  align-items: baseline; padding: 26px 0; border-top: 1px solid #2E2E2E;
}
.svc-name {
  font-family: 'VCR OSD Mono', monospace; font-size: 17px; text-transform: uppercase;
  color: #FFFFFF; cursor: default; transition: color 0.2s ease;
}
.svc-name:hover { color: var(--accent); }
.svc-row-desc { margin: 0; font-size: 16px; line-height: 1.45; color: #8B8B8B; }

/* ============ CTA ============ */
.svc-cta { max-width: 1440px; margin: 0 auto; padding: 160px 80px 140px; box-sizing: border-box; }
.svc-cta-copy { margin: 0; max-width: 560px; font-size: 24px; line-height: 1.25; color: #8B8B8B; }
.svc-cta-email {
  display: inline-block; margin-top: 40px; font-family: 'VCR OSD Mono', monospace;
  font-size: clamp(24px, 3.6vw, 48px); color: #FFFFFF; text-decoration: none; text-transform: uppercase;
}
.svc-cta-email:hover { color: #BCFF56; }

/* ============ tablet: collapse to one column before the icon/desc
   columns get too tight to fit side by side (was overflowing ~761-940px) ============ */
@media (max-width: 1000px) {
  .svc-grid { grid-template-columns: 1fr !important; gap: 40px !important; }
  .svc-side { position: static !important; }
}

/* ============ mobile ============ */
@media (max-width: 760px) {
  .svc-hero, .svc-pillar, .svc-cta {
    padding-left: 22px !important;
    padding-right: 22px !important;
  }
  .svc-pillar, .svc-pillar + .svc-pillar { padding-top: 88px !important; }
  .svc-row { grid-template-columns: 1fr !important; gap: 8px !important; }
}
