/* Reference composition: centered introduction and actions above one wide visual.
   Original Nexus infographic, copy, Manrope type and blue/white palette retained. */
body main.nexus-page>.nexus-hero{
 background:#fff;padding:4rem 0 2rem;overflow:hidden;
}
body main.nexus-page .nexus-hero::before{display:none}
body main.nexus-page .nx-intro{padding:0 1.25rem;max-width:56rem;margin:0 auto}
body main.nexus-page .nx-intro .marketing-heading{
 font-size:clamp(3.25rem,5.6vw,5rem);line-height:1.08;letter-spacing:-.035em;
}
body main.nexus-page .nx-intro .marketing-subheading{
 max-width:34rem;margin-top:1.5rem!important;font-size:1.125rem;line-height:1.65;
}
body main.nexus-page .nexus-hero .nx-actions{margin:1.75rem 1.25rem 0;gap:.75rem}
body main.nexus-page .nexus-hero .nx-button{
 border-radius:.75rem;padding:.875rem 1.375rem;gap:.875rem;min-height:3rem;
}
body main.nexus-page .nexus-hero .nx-button:not(.secondary){background:#14638f}
body main.nexus-page .nexus-hero .nx-button:not(.secondary):hover{background:#0f5479}
body main.nexus-page .nexus-hero .nx-button.secondary{background:#edf3f7;box-shadow:none}
body main.nexus-page .nexus-hero .nx-button.secondary:hover{background:#e0edf5}
body main.nexus-page .nx-hero-visual{
 width:min(1200px,calc(100% - 5rem));margin:3rem auto 0;
 background:linear-gradient(145deg,#f1f7fc 0%,#e7f2fa 55%,#d9eaf6 100%);
 border-radius:1.75rem;overflow:hidden;position:relative;isolation:isolate;
}
body main.nexus-page .nx-hero-visual .nx-scene{
 width:100%;max-width:none;height:480px;margin:1rem auto 0;
}
body main.nexus-page .nx-hero-visual .nx-bottom{
 margin:0;padding:0 1.5rem 1rem;max-width:none;min-height:3.5rem;
}
body main.nexus-page .nx-hero-visual .nx-motion{background:#ffffffb3;border-color:#c9dce9}
body main.nexus-page .nx-hero-visual .nx-motion:hover{background:#fff}
body main.nexus-page .nx-hero-visual .nx-node-icon{background:#fff}
@media(min-width:641px) and (max-width:1000px){
 body main.nexus-page .nx-hero-visual{width:calc(100% - 3rem)}
 body main.nexus-page .nx-hero-visual .nx-node{width:180px}
 body main.nexus-page .nx-hero-visual .nx-node strong{font-size:.875rem}
 body main.nexus-page .nx-hero-visual .nx-node small{font-size:.7rem}
}
@media(max-width:640px){
 body main.nexus-page>.nexus-hero{padding:2.75rem 0 1.5rem}
 body main.nexus-page .nx-intro .marketing-heading{font-size:clamp(2.75rem,11vw,3.5rem)}
 body main.nexus-page .nx-intro .marketing-subheading{font-size:1rem;margin-top:1.25rem!important;max-width:28ch}
 body main.nexus-page .nexus-hero .nx-actions{gap:.625rem;margin-top:1.5rem}
 body main.nexus-page .nexus-hero .nx-button{padding:.875rem 1rem;gap:.625rem;font-size:.75rem}
 body main.nexus-page .nx-hero-visual{width:calc(100% - 2rem);margin-top:2rem;border-radius:1.25rem}
 body main.nexus-page .nx-hero-visual .nx-scene{height:550px;margin-top:.5rem}
 body main.nexus-page .nx-hero-visual .nx-node strong{font-size:.75rem}
 body main.nexus-page .nx-hero-visual .nx-node small{font-size:.625rem}
 body main.nexus-page .nx-hero-visual .nx-bottom{padding:0 1rem 1rem;gap:.5rem;flex-wrap:wrap;justify-content:center}
 body main.nexus-page .nx-hero-visual .nx-disclaimer{font-size:.625rem}
 body main.nexus-page .nx-hero-visual .nx-motion{min-height:2.75rem}
}
@media(prefers-reduced-transparency:reduce){body main.nexus-page .nx-hero-visual .nx-motion{background:#fff}}
