
@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap');
#nr-home { --nr-paper:#fff; --nr-ink:#080808; --nr-muted:#626262; --nr-line:#d9d9d9; --nr-space:clamp(48px,6vw,112px); --nr-gutter:clamp(20px,5.5vw,96px); --nr-content:1440px; background:var(--nr-paper); color:var(--nr-ink); font-family:'Space Grotesk',Arial,sans-serif; font-size:16px; line-height:1.5; text-align:left; color-scheme:light; }
#nr-home * { box-sizing:border-box; }
#nr-home h1,#nr-home h2,#nr-home h3,#nr-home p { margin:0; }
#nr-home button,#nr-home input,#nr-home textarea { font:inherit; }
#nr-home a { color:inherit; text-decoration:none; }
#nr-home button { cursor:pointer; }
#nr-home .nr-wrap { padding-inline:max(var(--nr-gutter),calc((100% - var(--nr-content))/2)); }
#nr-home .nr-header { min-height:84px; display:flex; align-items:center; justify-content:space-between; gap:24px; border-bottom:1px solid var(--nr-line); }
#nr-home .nr-logo { position:relative; display:block; flex-shrink:0; width:90px; height:48.5px; overflow:hidden; }
#nr-home .nr-logo img { position:absolute; width:134.55px; height:134.55px; max-width:none; left:-22.32px; top:-43.47px; }
#nr-home .nr-arrow { display:inline-flex; width:16px; height:16px; flex:0 0 16px; align-items:center; justify-content:center; line-height:0; }
#nr-home .nr-arrow svg { display:block; width:16px; height:16px; stroke-width:1.75; }
#nr-home .nr-button-label { display:block; line-height:inherit; }
#nr-home .nr-nav { display:flex; gap:32px; align-items:center; font-size:13px; font-weight:500; }
#nr-home .nr-link { border-bottom:1px solid currentColor; padding:10px 0; display:inline-flex; gap:24px; justify-content:space-between; align-items:center; }
#nr-home .nr-mono { font-family:'IBM Plex Mono',monospace; font-size:11px; font-weight:400; letter-spacing:.07em; text-transform:uppercase; }
#nr-home .nr-hero { padding-top:clamp(28px,3.2vw,60px); padding-bottom:clamp(48px,4.2vw,80px); }
#nr-home .nr-eyebrow { display:flex; justify-content:space-between; gap:24px; }
#nr-home .nr-dot { display:inline-block; width:6px; height:6px; background:currentColor; border-radius:50%; vertical-align:middle; margin-right:9px; }
#nr-home h1 { font-size:clamp(58px,10.8vw,112px); line-height:.98; letter-spacing:-.075em; font-weight:500; margin-top:clamp(44px,5vw,96px); margin-bottom:clamp(36px,3.6vw,64px); max-width:900px; }
#nr-home h1 span { display:block; }
#nr-home .nr-hero-bottom { display:grid; grid-template-columns:1fr 1.1fr; gap:42px; align-items:end; }
#nr-home .nr-intro { max-width:420px; font-size:17px; line-height:1.6; letter-spacing:-.025em; }
#nr-home .nr-solid { display:inline-flex; justify-content:center; align-items:center; gap:10px; background:var(--nr-ink); color:var(--nr-paper); padding:12px 18px; font-size:13px; font-weight:500; line-height:20px; min-width:0; min-height:44px; white-space:nowrap; vertical-align:middle; }
#nr-home .nr-solid:hover { background:#333; }
#nr-home .nr-nav-contact { position:relative; min-width:0; gap:8px; padding:8px 12px; font-size:12px; line-height:18px; }
#nr-home .nr-nav-contact .nr-arrow { flex-basis:14px; }
#nr-home .nr-nav-contact .nr-arrow,#nr-home .nr-nav-contact .nr-arrow svg { width:14px; height:14px; }
#nr-home .nr-nav-contact::after { content:""; position:absolute; inset:-5px 0; }
#nr-home .nr-strip { display:flex; justify-content:space-between; gap:16px; padding-top:22px; padding-bottom:22px; border-top:1px solid var(--nr-line); border-bottom:1px solid var(--nr-line); }
#nr-home .nr-strip span { display:inline-flex; align-items:center; gap:14px; }
#nr-home .nr-strip b { white-space:nowrap; flex-shrink:0; color:var(--nr-muted); font-weight:400; }
#nr-home .nr-dark { background:var(--nr-ink); color:var(--nr-paper); padding-top:var(--nr-space); padding-bottom:var(--nr-space); }
#nr-home .nr-section-top { display:grid; grid-template-columns:1fr 2.05fr; gap:40px; }
#nr-home h2 { font-size:clamp(36px,5vw,56px); line-height:1.07; letter-spacing:-.055em; font-weight:500; }
#nr-home .nr-dark .nr-section-copy { margin-top:28px; max-width:540px; color:#bdbdbd; font-size:16px; line-height:1.7; }
#nr-home .nr-journey { display:grid; grid-template-columns:1fr 1fr 1fr; margin-top:clamp(38px,5vw,80px); border-top:1px solid #444; }
#nr-home .nr-step { text-align:left; color:#aaa; background:transparent; border:0; border-bottom:2px solid transparent; padding:24px 0 20px; display:flex; flex-direction:column; gap:12px; }
#nr-home .nr-step + .nr-step { padding-left:24px; }
#nr-home .nr-step strong { font-weight:400; font-size:24px; letter-spacing:-.04em; }
#nr-home .nr-step[aria-selected='true'] { color:#fff; border-bottom-color:#fff; }
#nr-home .nr-step:hover { color:#fff; }
#nr-home .nr-step-description { display:grid; grid-template-columns:1fr 2.05fr; gap:40px; padding-top:28px; min-height:125px; }
#nr-home .nr-step-description p { max-width:520px; font-size:16px; line-height:1.7; color:#bdbdbd; }
#nr-home .nr-capabilities { padding-top:var(--nr-space); padding-bottom:var(--nr-space); }
#nr-home .nr-cap-list { margin-top:clamp(32px,3.8vw,64px); }
#nr-home .nr-cap { border-top:1px solid var(--nr-line); }
#nr-home .nr-cap:last-child { border-bottom:1px solid var(--nr-line); }
#nr-home .nr-cap summary { list-style:none; cursor:pointer; display:grid; grid-template-columns:48px 1fr 22px; align-items:center; gap:16px; padding:24px 0; }
#nr-home .nr-cap summary::-webkit-details-marker { display:none; }
#nr-home .nr-cap h3 { font-size:25px; letter-spacing:-.035em; font-weight:400; }
#nr-home .nr-plus { font-size:24px; font-weight:400; line-height:1; }
#nr-home .nr-cap[open] .nr-plus { transform:rotate(45deg); }
#nr-home .nr-cap-copy { padding:0 38px 28px 64px; max-width:650px; }
#nr-home .nr-cap-copy strong { display:block; font-weight:500; margin-bottom:8px; }
#nr-home .nr-cap-copy p { color:var(--nr-muted); font-size:15px; line-height:1.7; }
#nr-home .nr-contact { background:#f0f0ed; padding-top:var(--nr-space); padding-bottom:var(--nr-space); }
#nr-home .nr-contact h2 { max-width:670px; font-size:clamp(40px,6.5vw,72px); }
#nr-home .nr-contact-bottom { margin-top:clamp(32px,3vw,56px); display:flex; gap:24px; justify-content:space-between; align-items:end; }
#nr-home .nr-contact-bottom p { font-size:16px; max-width:320px; margin-bottom:24px; color:#505050; }
#nr-home .nr-open-contact { border:0; }
#nr-home address { font-style:normal; font-size:13px; line-height:1.8; }
#nr-home address strong { font-weight:500; }
#nr-home .nr-form { margin-top:38px; padding-top:32px; border-top:1px solid #c5c5c2; }
#nr-home .nr-form[hidden] { display:none; }
#nr-home .nr-fields { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
#nr-home .nr-form label { display:flex; flex-direction:column; gap:8px; font-size:13px; }
#nr-home .nr-form input,#nr-home .nr-form textarea { width:100%; background:#fff; border:1px solid #aaa; border-radius:0; padding:12px; color:#080808; font-size:16px; }
#nr-home .nr-full { grid-column:1/-1; }
#nr-home .nr-form-note { color:#555; font-size:12px; margin:16px 0; }
#nr-home .nr-submit { border:0; }
#nr-home .nr-status { margin-top:16px; font-size:14px; }
#nr-home .nr-footer { padding-top:34px; padding-bottom:34px; display:flex; justify-content:space-between; align-items:center; gap:24px; }
#nr-home .nr-footer-name { font-size:12px; font-weight:500; }
#nr-home .nr-footer-right { text-align:right; }
#nr-home .nr-footer-right p { font-size:12px; color:var(--nr-muted); margin-top:12px; }
#nr-home .nr-footer-links { display:flex; gap:24px; justify-content:flex-end; font-size:12px; }
#nr-home .nr-footer-links button { border:0; background:none; padding:0; color:inherit; font-size:12px; text-decoration:underline; text-underline-offset:3px; }
#nr-home .nr-legal { padding-top:24px; padding-bottom:24px; border-top:1px solid var(--nr-line); font-size:14px; }
#nr-home .nr-legal[hidden] { display:none; }
#nr-home .nr-legal h3 { font-size:20px; margin-bottom:12px; }
@media(max-width:600px) {
#nr-home .nr-nav { gap:20px; } #nr-home .nr-nav .nr-desktop { display:none; }
#nr-home .nr-header { min-height:76px; } #nr-home .nr-eyebrow { font-size:10px; }
#nr-home .nr-logo { width:82px; height:44.2px; }
#nr-home .nr-logo img { width:122.59px; height:122.59px; left:-20.336px; top:-39.606px; }
#nr-home .nr-hero { padding-top:28px; } #nr-home h1 { margin-top:44px; font-size:clamp(49px,12vw,72px); letter-spacing:-.07em; }
#nr-home .nr-hero-bottom { grid-template-columns:1fr; gap:28px; } #nr-home .nr-hero-bottom>div:first-child { order:2; }
#nr-home .nr-intro { font-size:16px; } #nr-home .nr-strip { font-size:10px; gap:8px; } #nr-home .nr-strip span { gap:6px; }
#nr-home .nr-section-top,#nr-home .nr-step-description { grid-template-columns:1fr; gap:24px; }
#nr-home .nr-dark,#nr-home .nr-capabilities,#nr-home .nr-contact { padding-top:48px; padding-bottom:48px; }
#nr-home .nr-journey { margin-top:38px; } #nr-home .nr-step strong { font-size:18px; } #nr-home .nr-step+.nr-step { padding-left:12px; }
#nr-home .nr-step-description { min-height:190px; gap:12px; }
#nr-home .nr-cap summary { grid-template-columns:26px 1fr 20px; gap:12px; } #nr-home .nr-cap h3 { font-size:22px; } #nr-home .nr-cap-copy { padding-left:38px; }
#nr-home .nr-contact-bottom { align-items:start; flex-direction:column; gap:32px; } #nr-home .nr-fields { grid-template-columns:1fr; }
#nr-home .nr-footer { align-items:start; } #nr-home .nr-footer-right p { max-width:150px; } #nr-home .nr-footer-links { gap:14px; }
}
@media(prefers-reduced-motion:no-preference) { #nr-home .nr-plus { transition:transform .2s; } }
#nr-home { --nr-header-button-height:34px; }
#nr-home .nr-nav-contact { height:var(--nr-header-button-height); min-height:var(--nr-header-button-height); }
#nr-home .nr-logo { width:55.5px; height:30px; }
#nr-home .nr-logo img { width:82.9725px; height:82.9725px; left:-13.764px; top:-26.8065px; }
#nr-home main[hidden] { display:none; }
#nr-home .nr-policy { padding-top:42px; padding-bottom:72px; }
#nr-home .nr-policy-inner { max-width:680px; margin:0 auto; }
#nr-home .nr-policy-back { display:inline-block; font-size:13px; margin-bottom:38px; text-decoration:underline; text-underline-offset:4px; }
#nr-home .nr-policy h1 { font-size:clamp(38px,6vw,64px); line-height:1.08; letter-spacing:-.05em; margin:20px 0 24px; }
#nr-home .nr-policy .nr-policy-intro { color:#555; font-size:17px; line-height:1.7; margin-bottom:40px; font-weight:400; }
#nr-home .nr-policy section { margin-top:30px; }
#nr-home .nr-policy h2 { font-size:21px; line-height:1.3; font-weight:500; letter-spacing:-.025em; margin-bottom:13px; }
#nr-home .nr-policy section p { font-size:15px; line-height:1.8; color:#444; margin-bottom:14px; font-weight:400; }
#nr-home .nr-policy section a,#nr-home .nr-form-note a { text-decoration:underline; text-underline-offset:3px; }
#nr-home .nr-policy address { font-size:15px; line-height:1.8; }
#nr-home .nr-footer-links a[aria-current='page'] { text-decoration:underline; text-underline-offset:4px; }

body{margin:0} .icon{width:16px;height:16px;display:inline-block;fill:currentColor;vertical-align:middle} a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #4974df;outline-offset:5px} #nr-home address a{text-decoration:underline;overflow-wrap:anywhere} #nr-home .nr-email-note{font-size:12px;margin-top:12px} #nr-home .nr-nav-contact .nr-arrow,#nr-home .nr-nav-contact .nr-arrow svg{width:16px;height:16px}

/* Shared content grid: keep related information together at every width. */
#nr-home { --nr-content:1200px; --nr-gutter:clamp(24px,5vw,64px); --nr-space:clamp(48px,5vw,80px); --nr-grid-gap:clamp(32px,4vw,64px); }
#nr-home .nr-hero { padding-block:40px 64px; }
#nr-home .nr-hero-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); gap:var(--nr-grid-gap); align-items:center; margin-top:48px; }
#nr-home .nr-hero-grid h1 { margin:0; font-size:clamp(56px,6.2vw,88px); max-width:none; }
#nr-home .nr-hero-summary { display:flex; flex-direction:column; align-items:flex-start; gap:24px; }
#nr-home .nr-intro { max-width:46ch; }
#nr-home .nr-section-top { display:block; }
#nr-home .nr-section-top>.nr-mono { margin-bottom:24px; }
#nr-home .nr-section-top>div { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); gap:var(--nr-grid-gap); align-items:start; }
#nr-home .nr-dark .nr-section-copy { margin-top:0; max-width:52ch; }
#nr-home .nr-journey { margin-top:40px; }
#nr-home .nr-step-description { grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); gap:var(--nr-grid-gap); min-height:112px; padding-top:24px; }
#nr-home .nr-cap-list { margin-top:32px; }
#nr-home .nr-contact-bottom { margin-top:32px; align-items:start; }
#nr-home .nr-contact-bottom p { max-width:46ch; }
@media(max-width:900px) {
 #nr-home .nr-hero-grid,#nr-home .nr-section-top>div { grid-template-columns:1fr; gap:28px; }
 #nr-home .nr-hero-grid { margin-top:32px; }
 #nr-home .nr-hero-grid h1 { font-size:clamp(44px,9vw,80px); }
 #nr-home .nr-hero { padding-block:28px 48px; }
 #nr-home .nr-intro { max-width:54ch; }
 #nr-home .nr-step-description { grid-template-columns:1fr; gap:12px; min-height:148px; }
}
@media(max-width:600px) {
 #nr-home .nr-hero-grid h1 { font-size:clamp(40px,11.4vw,64px); }
 #nr-home .nr-step strong { font-size:17px; }
}

/* Optional video hero preview. */
#nr-home.nr-video-preview .nr-hero { position:relative; isolation:isolate; overflow:hidden; padding-bottom:72px; }
#nr-home .nr-hero-media { position:absolute; inset:0; z-index:-1; background:#fff; }
#nr-home .nr-hero-media video { width:100%; height:100%; object-fit:cover; object-position:65% center; }
#nr-home .nr-hero-media::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,#fff 0%,rgba(255,255,255,0) 24%),linear-gradient(90deg,#fff 0%,rgba(255,255,255,.98) 25%,rgba(255,255,255,.92) 43%,rgba(255,255,255,.15) 70%,transparent 100%); }
#nr-home.nr-video-preview .nr-hero-grid { display:flex; flex-direction:column; align-items:flex-start; gap:28px; margin-top:40px; }
#nr-home.nr-video-preview .nr-hero-summary { max-width:490px; }
#nr-home.nr-video-preview .nr-hero-grid h1 { font-size:clamp(44px,6vw,80px); }
#nr-home .nr-video-control { position:absolute; right:max(var(--nr-gutter),calc((100% - var(--nr-content))/2)); bottom:24px; padding:8px 12px; border:1px solid #d9d9d9; background:rgba(255,255,255,.94); color:#080808; font-size:12px; }
#nr-home .nr-video-control[hidden] { display:none; }
@media(max-width:900px) {
 #nr-home.nr-video-preview .nr-hero { padding-bottom:200px; }
 #nr-home.nr-video-preview .nr-hero-grid { gap:24px; margin-top:32px; }
 #nr-home.nr-video-preview .nr-hero-grid h1 { font-size:clamp(40px,11.4vw,72px); }
 #nr-home .nr-hero-media { top:auto; height:250px; }
 #nr-home .nr-hero-media::after { background:linear-gradient(#fff 0%,transparent 45%,#fff 100%); }
 #nr-home .nr-hero-media video { object-position:80% center; }
}

/* Preserve navigation on mobile, including restored scroll and fragment links. */
@media(max-width:900px) {
 #nr-home .nr-header { position:sticky; top:0; z-index:20; background:#fff; }
 #nr-home section[id] { scroll-margin-top:100px; }
}
@media(max-width:600px) {
 #nr-home section[id] { scroll-margin-top:92px; }
}
