/* Public acquisition: expressive composition within the locked product identity. */
:root { --ink:var(--nh-ink); --muted:var(--nh-muted); --action:var(--nh-action); --line:var(--nh-line); }
body { background:var(--nh-paper); }
.wrap,.home-page .wrap { max-width:1440px; padding-inline:64px; }
.topbar { background:#fffffff2; backdrop-filter:blur(12px); }
.nav { min-height:80px; }
.brand,.guide-nav .brand { letter-spacing:-.035em; }
.button,.home-page .button { border-radius:var(--nh-radius); font-size:14px; min-height:48px; gap:12px; transition:background var(--nh-hover),transform var(--nh-tap),box-shadow var(--nh-hover); }
.button.primary { background:var(--nh-action); color:white; box-shadow:0 4px 12px #1677ff1a; }
.button.primary:hover { background:var(--nh-action-hover); box-shadow:0 8px 20px #1677ff24; }
.button:active { transform:translateY(1px); }
:is(a,button,input,select,summary,[tabindex]):focus-visible { outline:3px solid #1677ff; outline-offset:4px; }
.eyebrow,.home-page .eyebrow { letter-spacing:.09em; font-size:11px; color:#64717b; font-weight:650; }
h1,h2,h3 { text-wrap:balance; }
h2,.home-page h2 { font-size:clamp(32px,3.5vw,48px); font-weight:650; line-height:1.2; letter-spacing:-.04em; }
.section,.home-page .section { padding-block:104px; }
.section-heading,.home-page .section-heading { gap:64px; align-items:end; margin-bottom:48px; }
.section-heading > p,.home-page .section-heading > p { font-size:15px; line-height:1.85; max-width:400px; }
.home-page .hero { position:relative; isolation:isolate; display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.35fr); gap:40px; align-items:center; padding:80px max(64px,calc((100vw - 1312px)/2)) 48px; min-height:650px; background:#eef1f4; border-bottom:1px solid #dce2e6; overflow:hidden; }
.home-page .hero:before { content:""; position:absolute; z-index:-1; width:680px; height:680px; border:1px solid #d6dfe5; border-radius:50%; right:-100px; top:-270px; box-shadow:0 0 0 64px #e7ecf000,0 0 0 65px #d6dfe570,0 0 0 128px #e7ecf000,0 0 0 129px #d6dfe550; }
.home-page .hero-copy { display:block; text-align:left; margin:0; padding:0; max-width:500px; width:100%; }
.home-page .hero-category { font-size:11px; margin-bottom:28px; justify-content:start; }
.home-page .hero h1 { font-size:clamp(48px,4.8vw,72px); font-weight:720; line-height:1.1; letter-spacing:-.055em; margin:0 0 24px; animation:nh-enter 850ms var(--nh-ease) both; }
.home-page .hero h1 em { color:var(--nh-ink); font-style:normal; font-weight:720; }
.home-page .hero-intro { margin-top:28px; }
.home-page .hero-lead { font-size:17px; line-height:1.8; margin:0; max-width:450px; color:#52616b; font-weight:450; animation:nh-enter 850ms 100ms var(--nh-ease) both; }
.home-page .hero-copy .actions { flex-direction:row; justify-content:start; align-items:center; gap:20px; margin-top:32px; animation:nh-enter 850ms 180ms var(--nh-ease) both; }
.home-page .hero-copy .button.primary { min-height:52px; padding-inline:22px; font-size:14px; }
.hero-trial-note { font-size:12px; line-height:1.75; color:#64717b; margin:16px 0 0; max-width:380px; }
.home-page .hero-product { position:relative; padding:0; margin:0; max-width:none; min-width:0; transform:translateY(var(--scene-y,0px)); animation:nh-scene-enter 1100ms 140ms var(--nh-ease) both; }
.device-scene { padding:10px; background:#20292e; border:1px solid #414a51; border-radius:18px; box-shadow:0 32px 64px #20292e30,0 3px 6px #20292e22; transform:perspective(1400px) rotateY(-6deg) rotateX(2deg); transition:transform 700ms var(--nh-ease); }
.home-page .product-caption { padding:14px 16px; background:#fff; border-radius:9px 9px 0 0; border:0; font-size:11px; min-height:48px; }
.home-page .product-caption > span:last-child { font-size:10px; }
.home-page .product-open { border:0; border-radius:0 0 8px 8px; padding:0; background:#fff; box-shadow:none; transform:none; display:block; width:100%; }
.home-page .product-open:hover { box-shadow:none; transform:none; }
.home-page .product-open img { width:100%; height:auto; max-height:none; object-fit:contain; display:block; }
.home-page .product-zoom { bottom:12px; right:12px; border-radius:6px; font-size:10px; padding:8px 10px; border-color:#cad4dd; box-shadow:0 4px 12px #20292e12; }
.home-page .hero-bottom { padding:20px 12px 0; font-size:11px; justify-content:center; }
.home-page .hero-bottom > a { display:none; }
.scene-callout { position:absolute; right:-12px; bottom:68px; display:flex; gap:12px; align-items:center; padding:16px 20px; background:#fff; border:1px solid var(--line); border-radius:10px; box-shadow:0 12px 32px #20292e18; animation:nh-enter 800ms 650ms var(--nh-ease) both; pointer-events:none; }
.scene-callout svg { width:24px; height:24px; color:#1677ff; }
.scene-callout strong { display:block; font-size:13px; font-weight:650; }
.scene-callout span { display:block; font-size:11px; color:#697781; margin-top:4px; }
.product-path { background:#fff; border-bottom:1px solid var(--line); }
.product-path .wrap { display:grid; grid-template-columns:repeat(4,1fr); }
.product-path a { display:flex; align-items:center; justify-content:center; gap:12px; padding:28px 20px; font-size:13px; color:#4b5963; text-decoration:none; border-right:1px solid var(--line); transition:color 180ms,background 180ms; }
.product-path a:first-child { border-left:1px solid var(--line); }
.product-path a:hover { color:var(--nh-action); background:#f7faff; }
.product-path svg { width:20px; height:20px; stroke-width:1.6; }
.home-page .product-story { background:#fff; }
.story-layout { gap:64px; grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr); }
.story-panel { border:8px solid #20292e; border-radius:14px; box-shadow:0 24px 48px #20292e14; }
.story-panel-heading { padding:16px 20px; }
.story-controls button[aria-selected=true] { color:var(--nh-ink); border-top-color:var(--nh-action); }
.story-controls button[aria-selected=true] .story-number,.story-controls button[aria-selected=true] svg { color:var(--nh-action); }
.story-spot { border-color:var(--nh-action); }
.story-controls strong { font-size:22px; }
.story-detail { min-height:84px; }
.home-page .module-overview { padding-top:104px!important; }
.module-grid,.home-page .module-grid { border:0; gap:16px; grid-template-columns:repeat(3,minmax(0,1fr)); }
.module-card,.home-page .module-card { border:1px solid var(--line)!important; border-radius:10px; padding:28px; overflow:hidden; transition:background 180ms,border-color 180ms,transform 180ms; }
.module-card:hover,.home-page .module-card:hover { background:#f8fafc; border-color:#bdcbd8!important; transform:translateY(-3px); }
.module-card-top,.home-page .module-card-top { margin-bottom:36px; }
.module-card-top > svg,.home-page .module-card-top > svg { width:28px; height:28px; color:#415563; }
.module-card h3,.home-page .module-card h3 { font-size:22px; }
.module-card > p,.home-page .module-card > p { font-size:14px; line-height:1.8; max-width:none; }
.home-page .connected-band { background:var(--nh-graphite); color:white; border:0; overflow:hidden; }
.home-page .connected-layout { padding-block:80px; gap:80px; }
.home-page .connected-layout h2 { color:white; }
.home-page .connected-layout .eyebrow { color:#aebdc7; }
.home-page .connected-layout > div > p:not(.eyebrow) { color:#becbd3; font-size:16px; line-height:1.9; }
.home-page .connected-layout .text-link { color:#fff; }
.home-page .process-band { background:#f3f5f7; border-bottom:1px solid var(--line); }
.home-page .process-band h2 { font-size:42px; }
.home-page .steps { gap:48px; }
.steps > li { border-top:1px solid #c9d2da; padding-top:24px; }
.steps > li > span { color:var(--nh-action); }
.steps p,.home-page .steps p { font-size:14px; line-height:1.85; }
.offers .offer,.home-page .offers .offer { border-radius:10px; padding:28px; background:#fff; box-shadow:none; }
.offers[data-standard=true] .offer:nth-child(2) { border-color:#b1c9e9; background:#f7faff; }
.offer h3 { font-size:20px; }
.offer .price { font-size:34px; }
.offer .button { border-radius:7px; }
.home-page .extras-band { border-block:1px solid var(--line); background:#f3f5f7; }
.home-page .extras-band h2 { font-size:38px; }
.home-page .trust-band { background:#fff!important; border-top:1px solid var(--line); }
.home-page .trust-year { color:var(--nh-ink); font-size:88px; font-weight:600; }
.home-page .trust-layout { gap:80px; }
.trust-register article { border-color:var(--line); }
.home-page .guide-band { background:#f3f5f7; }
.guide-entry { border-radius:10px; padding:32px; border:1px solid var(--line); }
.footer { border-top:1px solid var(--line); font-size:13px; }
.module-page .module-hero { gap:64px; padding-block:64px 88px; grid-template-columns:1fr 1.08fr; }
.module-page .module-hero h1 { font-size:clamp(36px,3.5vw,52px); line-height:1.18; }
.module-breadcrumb { margin-bottom:32px; }
.module-lead { font-size:16px; color:#52616b; }
.module-status { font-size:12px; line-height:1.8; color:#6a7882; }
.module-visual { border:8px solid #20292e; border-radius:16px; overflow:hidden; box-shadow:0 24px 48px #20292e16; background:#f3f5f7; }
.visual-bar { border-radius:0; padding:16px 20px; font-size:12px; }
.visual-bar img { width:22px; height:22px; }
.visual-bar small { font-size:10px; }
.sample-content { padding:28px; }
.sample-heading h3 { font-size:23px; font-weight:650; }
.sample-heading p { font-size:12px; color:#64737d; }
.visual-footer { font-size:11px; padding:14px 20px; background:#fff; color:#697781; }
.sample-table strong { font-size:13px; }
.sample-table span { font-size:11px; color:#64737d; }
.sample-table b { font-size:14px; }
.sample-summary { font-size:11px; color:#64737d; }
.sample-seats { gap:12px; }
.sample-seat { min-height:104px; border-radius:6px; }
.sample-seat span { font-size:10px; }
.sample-seat.occupied { background:#edf5ff; border-color:#adcbf0; }
.sample-seat.occupied svg { color:#1677ff; }
.sample-pos { grid-template-columns:1.08fr 1fr; gap:16px; }
.sample-items > div { padding:0; overflow:hidden; gap:0; background:white; border-radius:6px; }
.sample-items img { display:block; width:100%; aspect-ratio:1.25; object-fit:cover; }
.sample-items > div > span { padding:12px 6px; font-size:11px; font-weight:600; }
.sample-cart { padding:20px 16px; border-radius:6px; font-size:12px; }
.sample-cart p { font-size:12px; }
.sample-cart > b { background:#1677ff; color:white; min-height:40px; display:grid; place-items:center; border-radius:5px; }
.sample-orders article { border-radius:6px; border-top-color:#1677ff; }
.sample-orders small { font-size:10px; }
.sample-orders p { font-size:13px; }
.sample-orders span { font-size:11px; }
.sample-tabs { font-size:12px; }
.sample-tabs .active { color:#1677ff; border-bottom-color:#1677ff; }
.sample-metrics { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:20px 0; }
.sample-metrics > div { padding:16px; background:#fff; border:1px solid var(--line); border-radius:6px; }
.sample-metrics span { display:block; color:#64737d; font-size:11px; margin-bottom:8px; }
.sample-metrics strong { font-size:22px; letter-spacing:-.04em; font-weight:650; }
.sample-chart { height:128px; width:100%; display:block; background:#fff; border:1px solid var(--line); border-radius:6px; padding:12px; }
.sample-chart .chart-stroke { stroke:#1677ff; stroke-width:2; stroke-dasharray:650; stroke-dashoffset:650; }
.is-revealed .sample-chart .chart-stroke { animation:nh-chart 1400ms 200ms var(--nh-ease) forwards; }
.audience-band { background:#f3f5f7; }
.audience-band p { font-size:14px; line-height:1.8; }
.module-feature h3 { font-size:22px; }
.module-feature p { font-size:15px; }
.module-feature > span { color:var(--nh-action); }
.module-steps-band { background:#f3f5f7; }
.module-steps p { font-size:15px; }
.module-end { padding-block:88px; }
.module-end h2 { font-size:36px; }
.directory-hero { padding-block:72px 32px; }
.directory-hero h1 { font-size:clamp(36px,4.2vw,58px); }
.directory-grid { margin-block:24px 96px; width:calc(100% - 128px); max-width:1312px; padding:0; }
.guide-heading { padding-top:72px; }
.guide-heading h1 { font-size:48px; }
.guide-layout nav { background:#fff; border:1px solid var(--line); border-radius:8px; overflow:hidden; }
.guide-layout nav button { background:transparent; font-size:14px; }
.guide-layout nav button[aria-current=true] { background:var(--nh-graphite); color:#fff; box-shadow:none; }
.guide-prep { border-radius:8px; background:#f3f5f7; border-left:3px solid #1677ff; }
.guide-outcome { border-radius:8px; }
@keyframes nh-enter { from {opacity:0;transform:translateY(20px)} to {opacity:1;transform:none} }
@keyframes nh-scene-enter { from {opacity:0;translate:48px 24px} to {opacity:1;translate:0 0} }
@keyframes nh-chart { to {stroke-dashoffset:0} }
@media(min-width:1101px) { .home-page .hero-product:hover .device-scene { transform:perspective(1400px) rotateY(-2deg) rotateX(0deg); } }
@media(max-width:1100px) {
  .wrap,.home-page .wrap { padding-inline:32px; }
  .home-page .hero { padding:64px 32px 40px; gap:24px; min-height:580px; grid-template-columns:1fr 1.2fr; }
  .home-page .hero h1 { font-size:50px; }
  .home-page .hero-lead { font-size:15px; }
  .home-page .hero-copy .actions { flex-direction:column; align-items:start; gap:16px; }
  .scene-callout { right:0; bottom:50px; padding:12px 16px; }
  .home-page .product-caption > span:last-child { display:none; }
  .module-page .module-hero { gap:32px; }
  .module-page .module-hero h1 { font-size:38px; }
  .directory-grid { width:calc(100% - 64px); }
}
@media(max-width:780px) {
  .wrap,.home-page .wrap { padding-inline:24px; }
  .nav { min-height:72px; }
  .home-page .hero { display:block; padding:48px 24px 32px; min-height:0; }
  .home-page .hero-copy { max-width:580px; margin:0 auto 40px; }
  .home-page .hero h1 { font-size:clamp(42px,7.5vw,64px); }
  .home-page .hero-lead { font-size:16px; max-width:520px; }
  .home-page .hero-copy .actions { flex-direction:row; align-items:center; gap:24px; }
  .home-page .hero-product { max-width:680px; margin:auto; transform:none; }
  .device-scene { transform:none; padding:7px; border-radius:12px; }
  .scene-callout { bottom:62px; right:-4px; padding:12px; }
  .scene-callout svg { width:20px; }
  .scene-callout strong { font-size:12px; }
  .scene-callout span { font-size:10px; }
  .product-path .wrap { grid-template-columns:1fr 1fr; padding:0; }
  .product-path a { padding:20px 12px; border-bottom:1px solid var(--line); border-left:0!important; justify-content:start; padding-left:24px; font-size:12px; }
  .product-path a:nth-child(2n) { border-right:0; }
  .product-path a:nth-child(n+3) { border-bottom:0; }
  .section,.home-page .section { padding-block:64px; }
  .section-heading,.home-page .section-heading { margin-bottom:32px; }
  .section-heading > p,.home-page .section-heading > p { font-size:14px; max-width:560px; }
  .story-layout { grid-template-columns:1fr; gap:28px; }
  .story-controls strong { font-size:17px; }
  .story-panel { border-width:6px; }
  .module-grid,.home-page .module-grid { grid-template-columns:1fr 1fr; }
  .module-card,.home-page .module-card { padding:24px; }
  .module-card h3,.home-page .module-card h3 { font-size:20px; }
  .home-page .module-overview { padding-top:64px!important; }
  .home-page .connected-layout { padding-block:56px; gap:24px; }
  .home-page .connected-layout > div > p:not(.eyebrow) { font-size:15px; }
  .home-page .process-band h2 { font-size:34px; }
  .home-page .steps { gap:28px; }
  .home-page .trust-layout { gap:32px; }
  .module-page .module-hero { grid-template-columns:1fr; padding-block:32px 56px; gap:40px; }
  .module-page .module-hero h1 { font-size:40px; }
  .module-visual { width:100%; max-width:640px; margin:auto; }
  .module-detail { gap:32px; }
  .directory-grid { width:calc(100% - 48px); }
  .guide-heading h1 { font-size:38px; }
}
@media(max-width:480px) {
  .home-page .hero h1 { font-size:46px; line-height:1.12; }
  .home-page .hero-category { margin-bottom:20px; font-size:10px; }
  .home-page .hero-lead { font-size:15px; }
  .home-page .hero-intro { margin-top:24px; }
  .home-page .hero-copy .actions { flex-direction:column; align-items:start; gap:18px; margin-top:28px; }
  .hero-trial-note { font-size:11px; }
  .home-page .hero-copy { margin-bottom:32px; }
  .home-page .product-caption { padding:12px; font-size:10px; min-height:40px; }
  .home-page .product-caption > span:first-child { gap:6px; }
  .scene-callout { display:none; }
  .home-page .hero-bottom { padding:16px 0 0; font-size:10px; }
  .home-page .hero-bottom p span { padding-inline:4px; }
  .home-page .product-zoom { bottom:8px; right:8px; padding:6px; }
  .module-grid,.home-page .module-grid { grid-template-columns:1fr; gap:12px; }
  .module-card-top,.home-page .module-card-top { margin-bottom:24px; }
  .home-page .extras-band h2 { font-size:32px; }
  .module-page .module-hero h1 { font-size:34px; }
  .module-lead { font-size:15px; }
  .sample-content { padding:24px 16px; }
  .sample-heading h3 { font-size:21px; }
  .sample-pos { gap:10px; }
  .sample-cart { padding:16px 12px; }
  .sample-cart p { font-size:11px; }
  .sample-cart > div strong { font-size:12px; }
  .sample-metrics strong { font-size:20px; }
  .visual-footer { padding:14px 12px; font-size:10px; }
  .module-visual { border-width:6px; border-radius:12px; }
  .module-feature h3 { font-size:20px; }
  .module-feature p { font-size:14px; }
  .guide-entry { padding:24px; }
  .guide-heading h1 { font-size:34px; }
}
@media(max-width:350px) {
  .wrap,.home-page .wrap { padding-inline:20px; }
  .home-page .hero { padding-inline:20px; }
  .home-page .hero h1 { font-size:39px; }
  .home-page .hero-lead { font-size:14px; }
  .product-path a { padding-left:20px; gap:8px; font-size:11px; }
  .module-page .module-hero h1 { font-size:30px; }
  .directory-grid { width:calc(100% - 40px); }
  .sample-content { padding:20px 12px; }
  .sample-metrics > div { padding:12px; }
}
@media(prefers-reduced-motion:reduce) {
  .home-page .hero-product,.device-scene { transform:none!important; }
  *,*::before,*::after { animation:none!important;transition:none!important;scroll-behavior:auto!important; }
  .sample-chart .chart-stroke { stroke-dashoffset:0; }
  .reveal-element { opacity:1!important;transform:none!important; }
}
/* Hero columns already inherit the section gutters; avoid doubling them on phones. */
.home-page .hero-copy,.home-page .hero-product{padding-inline:0}
.module-real-preview{overflow:hidden;background:#fff}
.module-screen-link{display:block;overflow:hidden;background:#f1f3f5}
.module-screen-link>img{display:block;width:100%;height:auto;object-fit:contain}
.module-demo-link{display:flex;justify-content:space-between;color:var(--nh-action);text-decoration:none;font-weight:650}
.module-demo-link:hover{background:#f5f9ff}
.module-screen-link:focus-visible{outline:3px solid var(--nh-action);outline-offset:-3px}

.module-phone-preview .module-screen-link{padding:24px;background:var(--nh-ground)}.module-phone-preview .module-screen-link>img{max-width:320px;margin:auto;border:7px solid var(--nh-graphite);border-radius:20px;box-shadow:var(--nh-shadow)}@media(max-width:500px){.module-phone-preview .module-screen-link{padding:16px}.module-phone-preview .module-screen-link>img{max-width:240px}}
