/* NexusForge T4 0.2.5 — opt-in homepage modules. All selectors are nf-home scoped. */
.nf-home-hero-card {
  isolation: isolate; position: relative; overflow: hidden;
  background: linear-gradient(108deg, rgba(7,13,23,.97), rgba(9,33,54,.81));
  color: #ecf6ff; border: 1px solid rgba(103,177,230,.30);
  border-radius: 16px; padding: clamp(2rem, 6vw, 5.5rem);
  box-shadow: 0 20px 55px rgba(0,0,0,.15);
}
.nf-home-hero-card::after {
  content: ''; position: absolute; z-index: -1; inset: 0;
  background: radial-gradient(circle at 90% 18%, rgba(49,155,230,.18), transparent 38%);
  pointer-events: none;
}
.nf-home-hero-card .nf-home-eyebrow {color:#8ed3ff; font-size:.8rem; font-weight:700; letter-spacing:.13em; text-transform:uppercase;}
.nf-home-hero-card h1 {color:#fff; margin:.6em 0 .4em; font-size:clamp(2rem,4vw,3.6rem); line-height:1.12;}
.nf-home-hero-card p {color:#d4e5f3; max-width:70ch; font-size:clamp(1rem,1.5vw,1.2rem); line-height:1.75;}
.nf-home-hero-actions {display:flex; flex-wrap:wrap; gap:.75rem; margin-top:1.7rem;}
.nf-home-hero-actions a {display:inline-flex; align-items:center; justify-content:center; text-decoration:none; background:#2184c4; color:#fff; border:1px solid #5ab9f4; padding:.75rem 1.2rem; border-radius:.55rem; font-weight:650;}
.nf-home-hero-actions a:hover {background:#0c658f; color:#fff;}
.nf-home-hero-actions a.nf-home-secondary {background:transparent; border-color:#70879e; color:#e4f3ff;}
.nf-home-hero-actions a:focus-visible, .nf-home-card a:focus-visible {outline:3px solid #7dcfff; outline-offset:3px;}
.nf-home-v2-hero, .nf-home-v2-intro, .nf-home-v2-cards, .nf-home-v2-latest {padding-block:clamp(1rem,3vw,2.5rem);}
.nf-home-v2-intro .t4-module, .nf-home-v2-cards .t4-module, .nf-home-v2-latest .t4-module {max-width:100%;}
.nf-home-cards {max-width:1200px; margin-inline:auto; padding-inline:clamp(1rem,3vw,2rem);}
.nf-home-cards h2 {text-align:center; margin-bottom:1.4rem;}
.nf-home-grid {display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.3rem;}
.nf-home-card {min-width:0; height:100%; padding:1.6rem; border:1px solid var(--nf-border,#34465a); border-radius:14px; background:var(--nf-surface,#102131); color:var(--nf-text,#ecf2f9);}
.nf-home-card h3 {color:var(--nf-accent,#45bbf5); font-size:1.25rem; margin-bottom:.75rem;}
.nf-home-card p {color:var(--nf-muted,#b5c8d8); line-height:1.65;}
.nf-home-card a {color:var(--nf-accent,#45bbf5); text-underline-offset:.2em;}
@media(max-width:767.98px){
 .nf-home-v2-hero, .nf-home-v2-intro, .nf-home-v2-cards, .nf-home-v2-latest {padding-block:1rem;}
 .nf-home-grid {grid-template-columns:1fr;}
 .nf-home-hero-card {padding:2rem 1.25rem;}
}
@media(prefers-reduced-motion:reduce){.nf-home-hero-actions a{transition:none;}}
