/* Noriwo product preview. Read-only illustration; no customer records. */
:root{--nw-ink:#172a32;--nw-muted:#60717b;--nw-teal:#168678;--nw-line:#e0e7eb}
.hero-shell{background:radial-gradient(ellipse at 85% 20%,#edf4f4 0,transparent 48%),#f7f9fa}
.hero-copy .lead{max-width:540px;line-height:1.75}.hero-bottom{border-top:1px solid #dfe6e8}.hero-art{min-width:0}
.service-card,.project-picture,.contact-form{box-shadow:0 12px 36px #172a3207}
.project-picture{transition:transform .25s,box-shadow .25s}.project-picture:hover{transform:translateY(-4px);box-shadow:0 20px 40px #172a3214}
.btn{transition:transform .2s,box-shadow .2s}.btn:hover{transform:translateY(-2px)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #168678;outline-offset:5px}
.nw-product .section-head{align-items:end}.nw-product .section-head h2{max-width:660px}.nw-product .section-head p{max-width:410px}
.nw-workspace{font-family:inherit;color:var(--nw-ink);background:#fff;border:1px solid #dae3e7;border-radius:18px;overflow:hidden;box-shadow:0 24px 65px #173e4810,0 2px 8px #173e4806;text-align:left;width:100%}
.nw-appbar{min-height:73px;padding:18px 27px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--nw-line);gap:16px;background:#fff}
.nw-wordmark{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:800;letter-spacing:-.5px}.nw-wordmark>span{width:27px;height:29px;display:grid;place-items:center;background:#17383d;color:#90e1cc;border-radius:7px;font-size:19px}
.nw-demo-badge{font-size:10px;font-weight:600;background:#f2f6f7;color:#647781;border:1px solid #e6ecee;padding:7px 10px;border-radius:20px;line-height:1.5}
.nw-appbody{display:grid;grid-template-columns:180px 1fr}.nw-sidebar{display:flex;flex-direction:column;gap:7px;padding:29px 16px;background:#f7f9fa;border-right:1px solid var(--nw-line);font-size:12px;color:#61717a}.nw-sidebar>span{padding:11px 13px}.nw-sidebar .nw-side-title{font-size:9px;letter-spacing:1.8px;font-weight:700;color:#8a999e;padding-bottom:12px}.nw-sidebar .nw-side-active{background:#e7f3ee;color:#157669;font-weight:700;border-radius:7px}.nw-sidebar .nw-side-note{margin-top:auto;font-size:10px;line-height:1.6;color:#8a999e}
.nw-record{padding:30px 38px}.nw-record-top{display:flex;justify-content:space-between;gap:12px;font-size:11px;font-weight:600;color:var(--nw-muted);align-items:center}.nw-status{background:#e5f3ec;color:#157567;padding:6px 11px;border-radius:20px;font-size:10px}
.nw-person{display:flex;align-items:center;gap:16px;margin:28px 0}.nw-avatar{width:48px;height:48px;flex-shrink:0;display:grid;place-items:center;font-size:15px;font-weight:700;border-radius:13px;background:#edf1f7;color:#506780}.nw-person h3{font-size:23px;letter-spacing:-.7px;margin:0 0 5px!important;line-height:1.3}.nw-person p{font-size:12px;color:var(--nw-muted);margin:0!important;line-height:1.5}
.nw-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px 20px;margin:0;padding:26px 0;border-top:1px solid var(--nw-line)}.nw-fields dt{font-size:9px;text-transform:uppercase;letter-spacing:1px;font-weight:700;color:#82919a;margin-bottom:7px}.nw-fields dd{margin:0;font-size:13px;font-weight:600;line-height:1.6}.nw-next{background:#fff8e9;border:1px solid #f4e9cc;border-radius:9px;padding:16px 19px}.nw-next>span{font-size:9px;letter-spacing:.8px;text-transform:uppercase;font-weight:800;color:#967424}.nw-next p{font-size:12px;line-height:1.7;margin:7px 0 0!important;color:#655b41}
.nw-mail{display:flex;gap:12px;margin-top:19px;padding:17px 0 0;border-top:1px solid var(--nw-line)}.nw-mail-icon{background:#e8f2f0;color:#167b6b;width:31px;height:31px;border-radius:8px;flex-shrink:0;display:grid;place-items:center}.nw-mail strong{font-size:11px}.nw-mail p{font-size:11px;line-height:1.7;margin:5px 0!important;color:#74818a}.nw-mail div>span{font-size:9px;text-transform:uppercase;letter-spacing:.6px;color:#9ca7ac}
.nw-product-footer{display:flex;align-items:start;justify-content:space-between;gap:36px;margin-top:22px}.nw-product-footer p,.nw-disclosure{font-size:11px;line-height:1.7;color:#788891;max-width:680px;margin:0}.nw-text-link{font-size:12px;color:#246963;white-space:nowrap;font-weight:700;text-decoration:none;padding:6px 0}.nw-text-link span{margin-left:8px}
.nw-compact .nw-sidebar{display:none}.nw-compact .nw-appbody{grid-template-columns:1fr}.nw-compact .nw-record{padding:23px 25px}.nw-compact .nw-appbar{padding:16px 23px}.nw-compact .nw-person{margin:20px 0}.nw-compact .nw-fields{gap:19px;padding:20px 0}.nw-compact .nw-person h3{font-size:21px}.auto-hero .hero-art{transform:none!important}.auto-hero .nw-workspace{max-width:580px;margin-left:auto}.auto-hero .hero{align-items:center}
.nw-proof h2{max-width:750px}.nw-proof-grid{display:grid;grid-template-columns:repeat(3,1fr);margin:35px 0 24px;border:1px solid var(--nw-line);border-radius:12px;overflow:hidden;background:#fff}.nw-proof-grid article{padding:30px;border-right:1px solid var(--nw-line)}.nw-proof-grid article:last-child{border-right:0}.nw-proof-grid article>span{font-size:11px;letter-spacing:1px;color:#168678;font-weight:700}.nw-proof-grid h3{font-size:18px;margin:17px 0 12px}.nw-proof-grid p{font-size:13px;line-height:1.8;color:#687b85;margin:0}
@media(max-width:900px){.nw-sidebar{display:none}.nw-appbody{grid-template-columns:1fr}.nw-product-footer{flex-direction:column;gap:10px}.nw-proof-grid{grid-template-columns:1fr}.nw-proof-grid article{border-right:0;border-bottom:1px solid var(--nw-line);padding:23px}.nw-proof-grid article:last-child{border-bottom:0}.auto-hero .nw-workspace{max-width:none}.nw-product .section-head{align-items:start}}
@media(max-width:560px){.nw-appbar{padding:16px;gap:8px;min-height:62px}.nw-wordmark{font-size:17px}.nw-demo-badge{font-size:8px;max-width:165px}.nw-record,.nw-compact .nw-record{padding:21px 18px}.nw-fields{gap:20px 13px}.nw-fields dd{font-size:11px}.nw-person h3{font-size:21px}.nw-person p{font-size:10px}.nw-next{padding:13px}.nw-next p{font-size:11px}.nw-workspace{border-radius:12px}.nw-mail p{font-size:10px}.nw-text-link{white-space:normal}.nw-product .section-head h2{font-size:30px}.nw-compact .nw-appbar{padding:16px}.nw-proof-grid h3{font-size:17px}}
@media(prefers-reduced-motion:reduce){.project-picture,.btn{transition:none}.project-picture:hover,.btn:hover{transform:none}}
/* Contrast correction: hero uses the original dark palette. */
.hero-shell{background:radial-gradient(ellipse at 85% 20%,#1c3140 0,transparent 52%),#111820;color:#fff}.hero-shell h1,.hero-shell .hero-copy h1 span:first-child{color:#fff}.hero-shell .hero-copy .lead{color:#c7d1db}.hero-shell .hero .eyebrow{color:#c0cbd6}.hero-shell .hero-bottom{color:#c1cbd5;border-top-color:#34424e}.hero-shell .hero-bottom .small-mark{color:#aebcca}.hero-shell .btn-outline{color:#fff;border-color:#8e9ca8}.hero-shell .btn-outline:hover{background:#ffffff12}.hero-shell .hero-art:before{background:#22323e;border-color:#3b4c5a}
.nw-fields dt{font-size:11px;color:#5b6b75;letter-spacing:.5px}.nw-fields dd{font-size:15px}.nw-record-top{font-size:13px}.nw-person p{font-size:14px}.nw-next>span{font-size:11px;color:#805b12}.nw-next p{font-size:14px;color:#51462e}.nw-mail strong{font-size:14px}.nw-mail p{font-size:13px;color:#526570}.nw-mail div>span{font-size:11px;color:#667984}.nw-demo-badge{font-size:11px;color:#526773}.nw-product-footer p,.nw-disclosure{font-size:13px;color:#586c77}.nw-sidebar{font-size:14px}.nw-status{font-size:12px}.nw-side-note{color:#61737d!important}
.nw-logo{display:inline-flex;width:124px;height:40px;align-items:center;gap:3px;vertical-align:middle;flex-shrink:0}.nw-logo-icon,.nw-logo-word{display:block;height:40px;background-image:url('/assets/noriwo-logo.png');background-repeat:no-repeat;background-size:147px 40px}.nw-logo-icon{width:39px}.nw-logo-word{width:82px;background-position:-63px 0}.brand .nw-logo,.footer-brand .nw-logo{filter:brightness(0) invert(1)}.nw-wordmark .nw-logo{width:112px;height:36px;transform:scale(.9);transform-origin:left center}.nw-wordmark .nw-logo>span{border-radius:0;background-color:transparent;padding:0;font-size:0;display:block}
@media(max-width:560px){.nw-fields dd{font-size:13px}.nw-fields dt{font-size:10px}.nw-person p{font-size:12px}.nw-next p{font-size:13px}.nw-mail p{font-size:12px}.nw-demo-badge{font-size:10px}.nw-record-top{font-size:12px}.nw-logo{width:113px;transform:scale(.9);transform-origin:left center}}
.nw-wordmark .nw-logo{display:inline-flex;background:transparent;border-radius:0;color:inherit;font-size:inherit;gap:3px}.nw-wordmark .nw-logo-icon{width:39px;height:40px}.nw-wordmark .nw-logo-word{width:82px;height:40px}
