/* Cybersecurity uses the approved shared service theme; these rules arrange its content. */
.security-page .hero-media { margin: 0; }
.security-page .hero-media-card { font-size: 12px; line-height: 1.6; color: rgba(255,255,255,.76); }
.security-page .hero-media-card strong { display: block; margin-bottom: 6px; color: #fff; font-size: 18px; }
.security-page #assessments, .security-page #reporting { background: var(--soft); }
.security-page .r-assessment-group {
  display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr);
  gap: 36px; padding: 34px; margin-top: 28px;
  border: 1px solid var(--line); border-radius: 28px; background: #fff;
  box-shadow: 0 22px 70px rgba(5,29,58,.06);
}
.security-page .r-assessment-group h3 { margin: 0 0 14px; font-size: clamp(25px,2.5vw,34px); line-height: 1.1; letter-spacing: -.035em; }
.security-page .r-assessment-group p, .security-page .r-reading p { font-size: 16px; line-height: 1.75; color: var(--muted); }
.security-page .r-assessment-list { display: grid; gap: 12px; margin: 0; }
.security-page .r-assessment-list > div { padding: 20px; border: 1px solid var(--line); border-radius: 18px; background: var(--soft); }
.security-page .r-assessment-list dt { color: var(--ink); font-size: 16px; font-weight: 800; margin-bottom: 8px; }
.security-page .r-assessment-list dd { margin: 0; font-size: 14px; line-height: 1.7; color: var(--muted); }
.security-page #approach { background: var(--navy); color: #fff; }
.security-page .r-process { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; list-style: none; padding: 0; margin: 40px 0 0; counter-reset: process; }
.security-page .r-process li { padding: 28px; border: 1px solid rgba(255,255,255,.14); border-radius: 26px; background: rgba(255,255,255,.05); counter-increment: process; }
.security-page .r-process li::before { content: "0" counter(process); display: block; color: var(--orange); font-size: 12px; font-weight: 900; margin-bottom: 22px; }
.security-page .r-process strong { display: block; color: #fff; font-size: 24px; margin-bottom: 12px; }
.security-page .r-process span { display: block; color: rgba(255,255,255,.72); font-size: 15px; line-height: 1.75; }
.security-page .r-reading { max-width: 900px; }
.security-page .r-report-detail { border: 1px solid var(--line); border-radius: 20px; padding: 12px 24px; margin-top: 24px; background: #fff; }
.security-page .r-report-detail summary { cursor: pointer; padding: 14px 0; font-size: 15px; font-weight: 800; color: var(--ink); }
.security-page .r-cta { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(0,.8fr); gap: 48px; align-items: center; }
.security-page .r-cta img { width: 100%; height: 360px; object-fit: cover; border-radius: 28px; box-shadow: var(--shadow); }
.security-page .cta .eyebrow { color: #fff; }
.security-page .cta .btn-primary { background: #fff; color: var(--ink); }
@media (max-width: 1080px) {
  .security-page .r-assessment-group, .security-page .r-cta { grid-template-columns: 1fr; gap: 24px; }
}
@media (max-width: 780px) {
  .security-page .r-process { grid-template-columns: 1fr; }
  .security-page .r-assessment-group { padding: 24px; }
  .security-page .r-cta img { height: 280px; }
}
