.active-nav { color: var(--color-accent); }
.cyber-hero { padding-block: 5rem 4rem; background: linear-gradient(135deg, #071a25 0%, #0b2c3a 58%, #10253c 100%); color: white; overflow: hidden; position: relative; }
.cyber-hero::before { content: "01001110 01000101 01010100 01010111 01001111 01010010 01001011"; position: absolute; inset: 1.5rem 0 auto 0; color: rgba(83, 216, 235, 0.08); font-family: var(--font-mono); font-size: clamp(1rem, 3vw, 2.5rem); letter-spacing: .5em; white-space: nowrap; }
.cyber-hero-grid { display: grid; grid-template-columns: 1.25fr .75fr; gap: 4rem; align-items: center; position: relative; }
.cyber-back { color: #9fb0bd; }
.cyber-hero h1 { margin-top: 1rem; font-size: clamp(4rem, 10vw, 8rem); letter-spacing: -.075em; }
.cyber-hero .project-lede { color: #c6d4dd; }
.cyber-tags span { border-color: rgba(255,255,255,.2); background: rgba(255,255,255,.06); color: #d7e4eb; }
.hero-badge-wrap { padding: 1.5rem; border: 1px solid rgba(117,224,237,.22); border-radius: 2rem; background: rgba(3,16,24,.35); box-shadow: 0 30px 70px rgba(0,0,0,.28); }
.hero-badge-wrap img { width: 100%; border-radius: 1rem; }
.cyber-metrics { display: grid; grid-template-columns: repeat(3,1fr); border: 1px solid var(--color-border); border-top: 0; }
.cyber-metrics div { padding: 1.4rem; border-right: 1px solid var(--color-border); }
.cyber-metrics div:last-child { border-right: 0; }
.cyber-metrics span { display:block; color: var(--color-muted); font: .7rem var(--font-mono); text-transform: uppercase; letter-spacing: .08em; }
.cyber-metrics strong { display:block; margin-top:.45rem; font-size:.9rem; }
.cyber-dark-section, .cyber-crypto-preview { width: min(calc(100% - 2rem), var(--max-width)); margin: 2rem auto; padding: clamp(2rem, 5vw, 4rem); border-radius: var(--radius-large); background: #081c27; color: white; }
.light-label { color: #64d7e9; }
.cyber-summary { color: #aebfc9; }
.nsa-grid, .network-overview { display: grid; grid-template-columns: .8fr 1.2fr; gap: 2rem; align-items: start; }
.org-logo { max-width: 290px; margin-bottom: 2rem; border-radius: .5rem; }
.nsa-logo { border: 1px solid rgba(255,255,255,.14); }
.nsa-copy h3, .network-copy h3 { font-size: 1.7rem; margin-bottom: .9rem; }
.nsa-copy p { color: #bdcbd3; }
.clean-list { display:grid; gap:.65rem; margin:1.5rem 0 0; padding:0; list-style:none; color:#dce6eb; }
.clean-list li::before { content:"+"; margin-right:.65rem; color:#5fd6e7; font-family:var(--font-mono); }
.dark-media-card, .assignment-card, .feature-analysis, .completion-proof { border: 1px solid rgba(255,255,255,.14); border-radius: var(--radius-medium); overflow:hidden; background:#0e2632; }
.dark-media-card img, .assignment-card img, .feature-analysis img, .completion-proof img { width:100%; }
.dark-media-card figcaption, .assignment-card figcaption, .feature-analysis figcaption, .completion-proof figcaption { padding: .9rem 1rem; color:#9fb1bc; font-size:.84rem; }
.network-overview { grid-template-columns: .75fr 1.25fr; }
.wireshark-logo { width:130px; margin-bottom:1.5rem; }
.network-copy p { margin-bottom:1.5rem; color:var(--color-muted); }
.assignment-card { background:var(--color-surface); border-color:var(--color-border); }
.assignment-card img { max-height:510px; object-fit:cover; object-position:top; }
.assignment-card figcaption, .feature-analysis figcaption, .completion-proof figcaption { color:var(--color-muted); background:var(--color-surface); }
.feature-analysis { margin-top:2rem; border-color:var(--color-border); background:var(--color-surface); }
.cylab-header-card { display:flex; align-items:center; gap:1.5rem; padding:1.5rem; border:1px solid var(--color-border); border-radius:var(--radius-medium); background:var(--color-surface); }
.cylab-header-card img { width:220px; border-radius:.35rem; }
.cylab-header-card h3 { margin-bottom:.45rem; }
.cylab-header-card p { color:var(--color-muted); }
.challenge-table { margin-top:1.5rem; border:1px solid var(--color-border); border-radius:var(--radius-medium); overflow:hidden; }
.challenge-row { display:grid; grid-template-columns:1.2fr .7fr 1.2fr; gap:1rem; padding:.9rem 1rem; border-bottom:1px solid var(--color-border); }
.challenge-row:last-child { border-bottom:0; }
.challenge-row:nth-child(even) { background:rgba(255,255,255,.35); }
.challenge-row span { color:var(--color-muted); }
.challenge-head { background:#101820 !important; color:white; font: .72rem var(--font-mono); text-transform:uppercase; letter-spacing:.08em; }
.challenge-head span { color:#d8e3e8; }
.completion-proof { margin-top:1.5rem; border-color:var(--color-border); background:var(--color-surface); }
.forensics-case-list { display:grid; gap:2rem; }
.forensics-case { padding:clamp(1.5rem,4vw,3rem); border:1px solid var(--color-border); border-radius:var(--radius-large); background:var(--color-surface); }
.case-copy { max-width:760px; }
.case-index { color:var(--color-accent); font: .72rem var(--font-mono); text-transform:uppercase; letter-spacing:.08em; }
.case-copy h3 { margin:.6rem 0 .8rem; font-size:clamp(1.6rem,3vw,2.3rem); }
.case-copy p { color:var(--color-muted); }
.case-note { margin-top:.8rem; font-size:.9rem; }
.before-after-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin-top:1.8rem; }
.before-after-grid figure { border:1px solid var(--color-border); border-radius:var(--radius-medium); overflow:hidden; background:#07121a; }
.before-after-grid img { width:100%; aspect-ratio:16/9; object-fit:cover; }
.before-after-grid figcaption, .doll-sequence figcaption { padding:.65rem .8rem; color:var(--color-muted); font: .72rem var(--font-mono); text-transform:uppercase; }
.doll-sequence { display:grid; grid-template-columns:1fr auto .75fr auto .5fr; align-items:center; gap:1rem; margin-top:2rem; }
.doll-sequence figure { border:1px solid var(--color-border); border-radius:var(--radius-medium); overflow:hidden; background:white; }
.doll-sequence img { width:100%; height:360px; object-fit:contain; }
.doll-sequence span { color:var(--color-accent); font-size:1.5rem; }
.crypto-preview-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.crypto-preview-grid .dark-media-card img { aspect-ratio:16/8; object-fit:cover; object-position:top; }
.skill-domain-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.skill-domain-grid article { padding:1.6rem; border:1px solid var(--color-border); border-radius:var(--radius-medium); background:var(--color-surface); }
.skill-domain-grid article > span { color:var(--color-accent); font: .72rem var(--font-mono); }
.skill-domain-grid h3 { margin:.7rem 0; font-size:1.25rem; }
.skill-domain-grid p { color:var(--color-muted); font-size:.94rem; }
.cyber-footer-cta p:not(.section-number) { max-width:760px; color:#bdc8d1; margin-bottom:1.5rem; }

@media (max-width: 900px) {
  .cyber-hero-grid, .nsa-grid, .network-overview { grid-template-columns:1fr; }
  .hero-badge-wrap { max-width:560px; }
  .cyber-metrics { grid-template-columns:1fr; }
  .cyber-metrics div { border-right:0; border-bottom:1px solid var(--color-border); }
  .cyber-metrics div:last-child { border-bottom:0; }
  .skill-domain-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width: 650px) {
  .cyber-hero { padding-top:3rem; }
  .cyber-hero-grid { gap:2rem; }
  .static-links .icon-link span { display:none; }
  .cylab-header-card { align-items:flex-start; flex-direction:column; }
  .challenge-row { grid-template-columns:1fr; gap:.25rem; }
  .challenge-head { display:none; }
  .before-after-grid, .crypto-preview-grid, .skill-domain-grid { grid-template-columns:1fr; }
  .doll-sequence { grid-template-columns:1fr; }
  .doll-sequence span { transform:rotate(90deg); justify-self:center; }
  .doll-sequence img { height:300px; }
}
