/* Full-page Nexus visual system. Product UI uses Inter; marketing uses Newsreader.
   Apple Design principles: consistent roles, optical sizing, immediate feedback,
   native scrolling and user-controlled motion. */
:root{
 --site-paper:#faf9f6;--site-ink:#202d32;--site-muted:#606b70;--site-blue:#326783;--site-heading-blue:#2180b8;
 --site-display:NexusEditorial,Georgia,serif;
 --site-body:NexusInter,Inter,system-ui,sans-serif;
 --site-heading:clamp(2.5rem,4.6vw,4rem);
 --site-feature:clamp(1.875rem,2.8vw,2.5rem);
 --site-subheading:1.125rem;
 --site-heading-leading:1.08;--site-copy-leading:1.65;
 --site-copy-gap:1.5rem;--site-section-space:6rem;
 --paper:var(--site-paper);--surface-page:var(--site-paper);--surface-stage:#eeefeb;
 --surface-edge:#dedfda;--ink:var(--site-ink);--muted:var(--site-muted);--accent:var(--site-blue);
 --line:#dedfda;--body:var(--site-body);--section-space:var(--site-section-space);
}
html{scrollbar-color:#a5b0af var(--site-paper)}
body,body main.nexus-page{background:var(--site-paper);color:var(--site-ink)}
body main.nexus-page{border:0}
body main.nexus-page>:is(section,.nxi-preview),body .nexus-hero,body .business-strip,body .demo-section,body .say,body .forwho,body .ctrl,body .wf,body .nxi-preview{background:var(--site-paper);border:0}
body main.nexus-page>.close{background:var(--navy);color:#fff}
body .nexus-hero::before{background:none}
body .top,body .top.stuck{background:rgba(250,249,246,.94);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
body .top::after{height:10px;background:linear-gradient(rgba(32,45,50,.025),transparent);opacity:1}
body ::selection{background:#d5e6ed;color:var(--site-ink)}
body main.nexus-page .marketing-heading{
 font-family:var(--site-display);font-size:var(--site-heading);font-weight:400;font-style:normal;
 font-optical-sizing:auto;line-height:var(--site-heading-leading);letter-spacing:-.025em;
 color:var(--site-ink);text-align:center;text-wrap:balance;margin:0 auto;max-width:20ch;
}
body main.nexus-page .marketing-heading em,body main.nexus-page .marketing-heading>span{font:inherit;letter-spacing:inherit}
body main.nexus-page .marketing-heading em{color:var(--site-heading-blue)}
body main.nexus-page .marketing-heading em{display:block}
body main.nexus-page .nx-intro .marketing-heading{font-size:clamp(3.5rem,6.2vw,5.5rem);max-width:none}
body main.nexus-page .nx-intro .marketing-heading span{color:var(--site-heading-blue)}
body main.nexus-page :is(.marketing-subheading, .nxi-preview .marketing-subheading){
 font:400 var(--site-subheading)/var(--site-copy-leading) var(--site-body);
 letter-spacing:0;color:var(--site-muted);max-width:54ch;text-align:center;
 text-wrap:pretty;margin:var(--site-copy-gap) auto 0!important;
}
body main.nexus-page .nx-intro p span{font:inherit;display:block;margin:0}
body main.nexus-page .section-label{display:none}
body main.nexus-page div.intro{max-width:none}
body main.nexus-page :is(.forwho,.ctrl,.close){padding-block:var(--site-section-space)}
body main.nexus-page .nxi-preview .section{padding-top:var(--site-section-space);margin-bottom:0}
body main.nexus-page .wf{padding-block:var(--site-section-space)}
body main.nexus-page .demo-section{padding-block:var(--site-section-space)!important}
body main.nexus-page .nx-demo-heading{margin-bottom:3rem}
body main.nexus-page :is(.nxi-preview .section-heading,.wf-intro){max-width:60rem;margin-inline:auto}
body main.nexus-page .nxi-preview .section-heading{margin-bottom:4.5rem}
body main.nexus-page .wf-intro .marketing-heading{max-width:24ch}
body main.nexus-page .nxi-preview .step h2,body main.nexus-page .wf-example h3,body main.nexus-page .pains b{
 font:400 var(--site-feature)/1.15 var(--site-display);font-optical-sizing:auto;
 letter-spacing:-.02em;text-wrap:balance;text-align:left;
}
body main.nexus-page .nxi-preview .step>p,body main.nexus-page .pains span{
 font:400 1rem/1.7 var(--site-body);letter-spacing:0;color:var(--site-muted);
}
body main.nexus-page .pains b{font-size:1.625rem;max-width:19ch}
body main.nexus-page .pains{gap:2rem;margin-top:3rem}
body main.nexus-page .pains li{border-color:var(--surface-edge);padding-top:1.5rem}
body main.nexus-page .pains li::before{display:none}
body main.nexus-page .say{padding:2rem 0 var(--site-section-space)}
body main.nexus-page .say-panel{border-radius:1rem;background:var(--navy);padding:5rem 3rem;min-height:32rem}
body main.nexus-page .say .marketing-heading{color:#fff;max-width:24ch}
body main.nexus-page .say .say-text span+span{margin-top:0}
body main.nexus-page .say-resolution{
 font:400 var(--site-feature)/1.2 var(--site-display);letter-spacing:-.02em;font-optical-sizing:auto;
 color:#b9d9e9;margin:2rem auto 0;max-width:32ch;
}
body main.nexus-page .close .marketing-heading{color:#fff}
body main.nexus-page .close .marketing-subheading{color:#c4d4de;margin-bottom:2rem!important}
body main.nexus-page .business-strip h2{font:400 1.625rem/1.2 var(--site-display);font-optical-sizing:auto;letter-spacing:-.01em;color:var(--site-muted)}
body main.nexus-page .business-strip{padding-block:2.5rem}
body main.nexus-page .ctrl-tile{background:var(--surface-stage);border:0;border-radius:1rem;margin-top:3rem}
body main.nexus-page .ws-frame{background:var(--surface-stage);border:0;border-radius:1rem}
body main.nexus-page .side,body main.nexus-page .ws[data-app=teams] .side{background:#eeefeb}
body main.nexus-page .thread,body main.nexus-page .main-bar,body main.nexus-page .needs,body main.nexus-page .approve{background:#fff}
body main.nexus-page .nxi-preview .work-document h2,body main.nexus-page .nxi-preview .brief h2{font-family:var(--site-body)}
body main.nexus-page .nxi-preview,body main.nexus-page .wf{font-family:var(--site-body)}
body main.nexus-page .product-chrome{color:#60737b}
body main.nexus-page .wf .wf-stage{background:var(--surface-stage)}
body .cta,body .nx-button,body .wf-tab,body .wf-playback button,body .stage-status button{touch-action:manipulation}
body .cta:active,body .nx-button:active,body .wf-tab:active{transform:scale(.98);transition:transform 80ms ease-out}
body main.nexus-page .stage-status button,body main.nexus-page .wf-playback button{min-height:2.75rem}
body :focus-visible{outline:2px solid #326783;outline-offset:4px}
@media(max-width:900px){
 :root{--site-heading:clamp(2.25rem,6vw,3rem);--site-feature:2rem;--site-subheading:1rem;--site-copy-gap:1.25rem;--site-section-space:4rem}
 body main.nexus-page .marketing-heading,body main.nexus-page :is(.marketing-subheading, .nxi-preview .marketing-subheading){text-align:left;margin-inline:0}
 body main.nexus-page :is(.marketing-subheading, .nxi-preview .marketing-subheading){margin-inline:0!important}
 body main.nexus-page .nx-intro .marketing-heading{font-size:clamp(3.25rem,11vw,4.5rem)}
 body main.nexus-page .nx-intro .marketing-heading,body main.nexus-page .nx-intro .marketing-subheading{text-align:center;margin-inline:auto!important}
 body main.nexus-page .nx-intro .marketing-subheading{max-width:34ch}
 body main.nexus-page .say .marketing-heading,body main.nexus-page .close .marketing-heading,body main.nexus-page .close .marketing-subheading{text-align:center;margin-inline:auto!important}
 body main.nexus-page .say-panel{padding:3.5rem 1.5rem;min-height:28rem}
 body main.nexus-page .say-resolution{font-size:1.875rem;max-width:24ch}
 body main.nexus-page .nxi-preview .section-heading{margin-bottom:3rem}
 body main.nexus-page .pains b{font-size:1.625rem;max-width:25ch}
 body main.nexus-page .business-strip h2{font-size:1.375rem}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 body .cta:active,body .nx-button:active,body .wf-tab:active{transform:none}
}
@media(prefers-reduced-transparency:reduce){body .top,body .top.stuck{background:var(--site-paper);backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(prefers-contrast:more){body .top,body .top.stuck{background:var(--site-paper);border-bottom:1px solid #647278}body main.nexus-page :is(.marketing-subheading, .nxi-preview .marketing-subheading){color:#3e4e55}}

body main.nexus-page{scroll-margin-top:76px}
body .nx-button{white-space:nowrap;min-height:44px}

/* User-requested restoration: font faces/weights and backgrounds only.
   Reference: advisy-nexus-page-preview.vercel.app, 12 October 2026. */
:root{
 --site-display:NexusManrope,Manrope,system-ui,sans-serif;
 --site-paper:#f8fafc;
 --surface-stage:#edf3f7;
}
body main.nexus-page .marketing-heading,
body main.nexus-page .nxi-preview .step h2,
body main.nexus-page .wf-example h3,
body main.nexus-page .pains b,
body main.nexus-page .say-resolution{font-weight:600}
body main.nexus-page .business-strip h2{font-weight:500}
body main.nexus-page>.nexus-hero{background:#f8fbfd}
body main.nexus-page>.nxi-preview,
body main.nexus-page>.forwho,
body main.nexus-page>.ctrl{background:#fff}
body main.nexus-page>.business-strip,
body main.nexus-page>.demo-section,
body main.nexus-page>.say,
body main.nexus-page>.wf{background:#f8fafc}
body .top,body .top.stuck{background:rgba(248,250,252,.96)}
body .nexus-hero::before{background:radial-gradient(ellipse,rgba(171,222,244,.24),transparent 66%)}
body main.nexus-page .say-panel{background:linear-gradient(165deg,#103e59 0%,#0c2d43 55%,#071d2b 100%)}
body main.nexus-page .side,body main.nexus-page .ws[data-app=teams] .side{background:#f3f7fa}
body main.nexus-page .nxi-preview .stage{background:#eef5f8}
body main.nexus-page .nxi-preview .stage::before{background:radial-gradient(ellipse at 95% 95%,#c8e1f0 0,transparent 68%)}
body main.nexus-page .wf .wf-tabs{background:#e7eff5}
body main.nexus-page .wf .wf-tab:hover:not([aria-selected=true]){background:#f2f7fb}
body main.nexus-page .wf .wf-playback button:hover{background:#e8f2f8}
@media(prefers-reduced-transparency:reduce){body .top,body .top.stuck{background:#f8fafc}}
@media(prefers-contrast:more){body .top,body .top.stuck{background:#f8fafc}}

/* Light closing section and footer. */
body main.nexus-page>.close{background:#edf3f7;color:var(--site-ink)}
body main.nexus-page .close .marketing-heading{color:var(--site-ink)}
body main.nexus-page .close .marketing-subheading,
body main.nexus-page .close .price{color:#526b7e}
body main.nexus-page .close .price a{color:#14638f}
body main.nexus-page .close .cta{background:#14638f;color:#fff}
body main.nexus-page .close .cta:hover{background:#0f5479}
body main.nexus-page .close .cta i{background:#fff;color:#14638f}
body footer{background:#fff;color:#526b7e;border-top:1px solid #d6e2ea}
body footer .cols p{color:var(--site-ink)}
body footer h3{color:#526b7e}
body footer a{color:var(--site-ink)}
body footer a:hover{color:#14638f}
body footer .legal{border-color:#d6e2ea}
body main.nexus-page .close{scroll-margin-top:76px}
