:root {
    --nm-primary: #4f46e5;
    --nm-primary-dark: #3730a3;
    --nm-violet: #7c3aed;
    --nm-ink: #0f172a;
    --nm-muted: #64748b;
    --nm-line: #e2e8f0;
    --nm-soft: #f8fafc;
    --nm-white: #fff;
    --nm-success: #16a34a;
    --nm-danger: #dc2626;
    --nm-container: 1240px;
    --nm-shadow: 0 24px 70px rgba(15, 23, 42, .09);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--nm-ink); background: var(--nm-white); font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; -webkit-font-smoothing: antialiased; }
h1, h2, h3, .nm-nav > a, .nm-category-tab { font-family: "Plus Jakarta Sans", "Segoe UI Variable Display", "Segoe UI", Arial, sans-serif; }
body.nm-menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button, input, select { font: inherit; }
.nm-container { width: min(calc(100% - 48px), var(--nm-container)); margin-inline: auto; }
.nm-section { padding: 92px 0; }
.nm-section-soft { background: var(--nm-soft); }
.nm-section-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 34px; }
.nm-section-head h2 { margin: 0 0 10px; font-size: clamp(30px, 4vw, 44px); line-height: 1.12; letter-spacing: -.04em; }
.nm-section-head p { margin: 0; color: var(--nm-muted); font-size: 17px; }
.nm-eyebrow { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 16px; color: var(--nm-primary); font-size: 13px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.nm-eyebrow:before { content: ""; width: 20px; height: 2px; border-radius: 99px; background: currentColor; }
.nm-btn { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; gap: 10px; padding: 0 20px; border: 1px solid transparent; border-radius: 10px; font-weight: 750; cursor: pointer; transition: .22s ease; }
.nm-btn:hover { transform: translateY(-2px); }
.nm-btn-primary { color: #fff; background: linear-gradient(135deg, var(--nm-primary), var(--nm-violet)); box-shadow: 0 12px 28px rgba(79, 70, 229, .25); }
.nm-btn-secondary { color: var(--nm-ink); border-color: var(--nm-line); background: #fff; }
.nm-btn-secondary:hover { border-color: #c7d2fe; box-shadow: 0 12px 30px rgba(15, 23, 42, .07); }
.nm-btn-admin { border-color: #c7d2fe; color: #4338ca; background: #eef2ff; }
.nm-btn-admin:hover { color: #3730a3; background: #e0e7ff; }
.nm-admin-tools { border-bottom: 1px solid #c7d2fe; color: #3730a3; background: #eef2ff; }
.nm-admin-tools .nm-container { min-height: 48px; display: flex; align-items: center; gap: 18px; font-size: 13px; }
.nm-admin-tools strong { white-space: nowrap; }
.nm-admin-tools .nm-container > div { margin-left: auto; display: flex; gap: 8px; }
.nm-admin-tools a { padding: 7px 10px; border-radius: 8px; color: #4338ca; background: #fff; font-weight: 700; }

/* Header */
.nm-topbar { padding: 9px 0; color: #cbd5e1; background: #0f172a; font-size: 13px; }
.nm-topbar .nm-container { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.nm-topbar strong { color: #fff; }
.nm-header { position: sticky; top: 0; z-index: 1000; border-bottom: 1px solid rgba(226, 232, 240, .85); background: rgba(255, 255, 255, .88); backdrop-filter: blur(18px); }
.nm-header-inner { display: grid; grid-template-columns: auto 1fr auto; min-height: 72px; align-items: center; gap: 28px; }
.nm-logo img { width: 172px; height: auto; }
.nm-nav { display: flex; align-items: center; justify-content: center; gap: 5px; }
.nm-nav > a { position: relative; padding: 10px 11px; color: #dc2626; border-radius: 9px; font-size: 14px; font-weight: 800; transition: color .25s ease, transform .25s ease; }
.nm-nav > a:after { position: absolute; right: 12px; bottom: 3px; left: 12px; height: 2px; content: ""; border-radius: 999px; background: linear-gradient(90deg,#22d3ee,#6366f1,#ec4899,#f59e0b); background-size: 300% 100%; opacity: 0; transform: scaleX(.2); transition: opacity .25s ease, transform .25s ease; animation: nm-led 4s linear infinite; }
.nm-nav > a:hover { color: #991b1b; transform: translateY(-2px); }
.nm-nav > a:hover:after { opacity: 1; transform: scaleX(1); }
.nm-header-actions { display: flex; align-items: center; gap: 9px; }
.nm-language-switcher { position: relative; }
.nm-language-current { display: inline-flex; min-height: 42px; align-items: center; gap: 7px; padding: 0 10px; color: #334155; border: 1px solid transparent; border-radius: 10px; background: transparent; font-size: 12px; font-weight: 800; cursor: pointer; transition: .2s ease; }
.nm-language-current:hover, .nm-language-switcher.is-open .nm-language-current { color: #4f46e5; border-color: #c7d2fe; background: #eef2ff; }
.nm-language-current .fa-chevron-down { margin-left: 1px; font-size: 9px; transition: transform .2s ease; }
.nm-language-switcher.is-open .fa-chevron-down { transform: rotate(180deg); }
.nm-language-menu { position: absolute; top: calc(100% + 8px); right: 0; z-index: 30; width: 160px; padding: 7px; border: 1px solid #e2e8f0; border-radius: 13px; background: rgba(255,255,255,.97); box-shadow: 0 18px 45px rgba(15,23,42,.14); opacity: 0; pointer-events: none; transform: translateY(-5px); transition: opacity .2s ease, transform .2s ease; }
.nm-language-switcher.is-open .nm-language-menu { opacity: 1; pointer-events: auto; transform: translateY(0); }
.nm-language-menu a { display: grid; grid-template-columns: 32px 1fr 16px; align-items: center; gap: 6px; padding: 9px; border-radius: 9px; color: #334155; }
.nm-language-menu a:hover, .nm-language-menu a.is-active { color: #4338ca; background: #eef2ff; }
.nm-language-menu a > span { font: 800 11px/1 "Cascadia Code",Consolas,monospace; }
.nm-language-menu small { font-size: 12px; }
.nm-language-menu a > i { color: #4f46e5; font-size: 11px; }
.nm-drawer-languages { display: flex; align-items: center; gap: 8px; margin-top: 12px; padding-top: 14px; border-top: 1px solid #e2e8f0; color: #64748b; font-size: 12px; }
.nm-drawer-languages > span { margin-right: auto; }
.nm-drawer-languages a { display: inline-flex !important; width: auto !important; padding: 7px 10px !important; color: #475569 !important; border: 1px solid #e2e8f0; border-radius: 8px; background: #fff !important; font: 800 11px/1 "Cascadia Code",Consolas,monospace; }
.nm-drawer-languages a.is-active { color: #4338ca !important; border-color: #a5b4fc; background: #eef2ff !important; }
.nm-search-button, .nm-icon-button { display: inline-grid; width: 42px; height: 42px; place-items: center; border: 1px solid var(--nm-line); border-radius: 10px; background: #fff; cursor: pointer; }
.nm-account { display: inline-flex; align-items: center; gap: 9px; padding: 7px 10px 7px 7px; border: 1px solid var(--nm-line); border-radius: 11px; background: #fff; }
.nm-account-avatar { display: grid; width: 38px; height: 38px; place-items: center; color: #fff; border-radius: 50%; background: linear-gradient(135deg, var(--nm-primary), var(--nm-violet)); font-size: 12px; font-weight: 800; object-fit: cover; }
img.nm-account-avatar { background: transparent; }
.nm-account small { display: block; color: var(--nm-muted); font-size: 10px; }
.nm-account strong { display: block; max-width: 105px; overflow: hidden; font-size: 12px; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }
.nm-account em { display: block; color: #dc2626; font-size: 9px; font-style: normal; font-weight: 700; line-height: 1.15; white-space: nowrap; }
.nm-mobile-toggle { display: none; }
.nm-search-panel { border-top: 1px solid var(--nm-line); background: #fff; }
.nm-search-form { display: flex; max-width: 720px; margin: 0 auto; padding: 14px 0; gap: 10px; }
.nm-search-form .nm-btn { flex: 0 0 auto; min-width: 136px; width: auto; white-space: nowrap !important; word-break: keep-all; overflow-wrap: normal; flex-wrap: nowrap; }
.nm-search-form .nm-btn i { flex: 0 0 auto; }
.nm-search-form input { width: 100%; height: 46px; padding: 0 16px; border: 1px solid var(--nm-line); border-radius: 10px; outline: 0; }
.nm-search-form input:focus { border-color: #a5b4fc; box-shadow: 0 0 0 4px #eef2ff; }
.nm-mobile-drawer, .nm-drawer-backdrop { display: none; }

/* Hero */
.nm-hero { position: relative; overflow: hidden; padding: 76px 0 68px; background: radial-gradient(circle at 85% 5%, rgba(124,58,237,.18), transparent 31%), radial-gradient(circle at 8% 12%, rgba(59,130,246,.13), transparent 30%), linear-gradient(125deg,#fff 5%,#f7f7ff 48%,#f1ecff 100%); background-size: 135% 135%; animation: nm-hero-bg 12s ease-in-out infinite alternate; }
.nm-hero:before { position: absolute; width: 420px; height: 420px; right: 15%; top: -280px; content: ""; border-radius: 50%; background: rgba(99,102,241,.16); filter: blur(70px); animation: nm-ambient 9s ease-in-out infinite alternate; }
.nm-hero:after { position: absolute; inset: 0; z-index: 0; content: ""; opacity: .28; background-image: linear-gradient(#e2e8f0 1px, transparent 1px), linear-gradient(90deg, #e2e8f0 1px, transparent 1px); background-size: 36px 36px; mask-image: linear-gradient(to bottom, black, transparent 80%); pointer-events: none; }
.nm-hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1fr) minmax(470px, .92fr); align-items: center; gap: 68px; }
.nm-hero-copy h1 { max-width: 720px; margin: 0 0 22px; color: transparent; background: linear-gradient(100deg,#283152 0%,#4f46e5 17%,#06b6d4 35%,#7c3aed 52%,#ec4899 69%,#f59e0b 84%,#283152 100%); background-size: 240% 100%; background-clip: text; -webkit-background-clip: text; font-size: clamp(40px, 5.2vw, 64px); font-weight: 680; line-height: 1.05; letter-spacing: -.06em; animation: nm-led 4.5s linear infinite; }
.nm-gradient-text { display: inline; color: inherit; background: none; }
.nm-hero-copy > p { max-width: 640px; margin: 0 0 30px; color: #475569; font-size: 19px; line-height: 1.7; }
.nm-hero-copy .nm-eyebrow { animation: nm-fade-up .65s .05s cubic-bezier(.2,.7,.2,1) both; }
.nm-hero-copy h1 { animation: nm-led 3.8s linear infinite, nm-fade-up .75s .13s cubic-bezier(.2,.7,.2,1) both; }
.nm-hero-copy > p { animation: nm-fade-up .75s .22s cubic-bezier(.2,.7,.2,1) both; }
.nm-hero-actions { animation: nm-fade-up .75s .31s cubic-bezier(.2,.7,.2,1) both; }
.nm-trust-inline { animation: nm-fade-up .75s .4s cubic-bezier(.2,.7,.2,1) both; }
.nm-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.nm-trust-inline { display: flex; flex-wrap: wrap; margin-top: 30px; gap: 20px; color: var(--nm-muted); font-size: 13px; font-weight: 650; }
.nm-trust-inline span { display: inline-flex; align-items: center; gap: 7px; }
.nm-trust-inline i { color: var(--nm-success); }
.nm-browser { position: relative; padding: 10px; border: 1px solid rgba(148,163,184,.35); border-radius: 22px; background: rgba(255,255,255,.75); box-shadow: 0 35px 90px rgba(30, 41, 59, .17); transform: perspective(1200px) rotateY(-4deg) rotateX(2deg); }
.nm-browser-bar { display: flex; height: 40px; align-items: center; padding: 0 12px; gap: 7px; border-radius: 13px 13px 0 0; background: #f8fafc; }
.nm-browser-bar span { width: 8px; height: 8px; border-radius: 50%; background: #cbd5e1; }
.nm-browser-address { width: 54%; height: 22px; margin-left: 12px; border: 1px solid var(--nm-line); border-radius: 7px; background: #fff; }
.nm-browser-screen { overflow: hidden; padding: 25px; border-radius: 0 0 14px 14px; background: #0f172a; }
.nm-screen-nav { display: flex; align-items: center; justify-content: space-between; color: #fff; font-size: 11px; }
.nm-screen-brand { font-size: 15px; font-weight: 800; }
.nm-screen-pill { padding: 6px 10px; border-radius: 7px; background: #4f46e5; }
.nm-screen-hero { display: grid; grid-template-columns: 1.15fr .85fr; align-items: center; gap: 22px; padding: 42px 0 30px; }
.nm-screen-copy span { display: block; width: 44%; height: 7px; margin-bottom: 13px; border-radius: 10px; background: #818cf8; }
.nm-screen-copy b { display: block; width: 95%; height: 17px; margin-bottom: 9px; border-radius: 10px; background: #fff; }
.nm-screen-copy em { display: block; width: 75%; height: 9px; margin-top: 18px; border-radius: 10px; background: #475569; }
.nm-screen-visual { display: grid; aspect-ratio: 1.1; place-items: center; border: 1px solid #334155; border-radius: 18px; background: linear-gradient(135deg, #312e81, #7c3aed); }
.nm-screen-visual i { color: rgba(255,255,255,.9); font-size: 44px; }
.nm-screen-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; }
.nm-screen-card { height: 72px; padding: 10px; border: 1px solid #334155; border-radius: 10px; background: #1e293b; }
.nm-screen-card:before, .nm-screen-card:after { display: block; content: ""; height: 7px; border-radius: 10px; background: #64748b; }
.nm-screen-card:after { width: 60%; margin-top: 10px; background: #334155; }
.nm-float-card { position: absolute; display: flex; align-items: center; gap: 10px; padding: 11px 14px; border: 1px solid var(--nm-line); border-radius: 13px; background: #fff; box-shadow: 0 20px 55px rgba(15,23,42,.14); }
.nm-float-card i { display: grid; width: 34px; height: 34px; place-items: center; color: #fff; border-radius: 9px; background: linear-gradient(135deg, var(--nm-primary), var(--nm-violet)); }
.nm-float-card strong { display: block; font-size: 12px; }
.nm-float-card small { color: var(--nm-muted); font-size: 10px; }
.nm-float-one { right: -25px; bottom: 70px; }
.nm-float-two { left: -32px; top: 78px; }
.nm-coder-visual { position: relative; min-height: 490px; display: grid; place-items: center; isolation: isolate; transform: scale(1.12); transform-origin: center right; }
.nm-coder-frame { position: relative; z-index: 2; overflow: visible; width: min(100%, 670px); aspect-ratio: 1.85 / 1; margin: 0; border: 0; border-radius: 24px; background: transparent; box-shadow: 0 36px 90px rgba(30,41,59,.12); animation: nm-coder-float 7s ease-in-out infinite; }
.nm-coder-frame img { width: 100%; height: 100%; object-fit: contain; object-position: center; transform: scale(1.01); animation: nm-coder-zoom 10s ease-in-out infinite alternate; filter: drop-shadow(0 24px 28px rgba(15,23,42,.16)); }
.nm-coder-shade { position: absolute; inset: 0; background: linear-gradient(180deg,transparent 55%,rgba(7,15,31,.88)); pointer-events: none; }
.nm-coder-frame figcaption { position: absolute; z-index: 2; left: 24px; right: 24px; bottom: 22px; display: flex; align-items: center; gap: 13px; color: #fff; }
.nm-coder-frame figcaption > i { display: grid; width: 42px; height: 42px; place-items: center; border: 1px solid rgba(255,255,255,.24); border-radius: 12px; background: rgba(99,102,241,.82); backdrop-filter: blur(10px); }
.nm-coder-frame figcaption strong,.nm-coder-frame figcaption small { display: block; }
.nm-coder-frame figcaption strong { font-size: 15px; }
.nm-coder-frame figcaption small { margin-top: 3px; color: #cbd5e1; font-size: 11px; }
.nm-coder-orbit { position: absolute; z-index: -1; border-radius: 50%; filter: blur(2px); }
.nm-coder-orbit-one { width: 430px; height: 430px; right: -35px; top: 20px; border: 1px solid rgba(124,58,237,.2); animation: nm-orbit 18s linear infinite; }
.nm-coder-orbit-two { width: 260px; height: 260px; left: 0; bottom: 18px; background: rgba(59,130,246,.12); filter: blur(30px); animation: nm-ambient 8s ease-in-out infinite alternate-reverse; }
.nm-code-window { position: absolute; z-index: 4; left: -26px; top: 78px; display: flex; align-items: center; gap: 6px; padding: 15px 17px; border: 1px solid rgba(255,255,255,.45); border-radius: 15px; color: #c4b5fd; background: rgba(15,23,42,.88); box-shadow: 0 20px 50px rgba(15,23,42,.24); backdrop-filter: blur(14px); animation: nm-card-drift 6s ease-in-out infinite; }
.nm-code-window span { width: 7px; height: 7px; border-radius: 50%; background: #64748b; }
.nm-code-window span:first-child { background: #fb7185; }
.nm-code-window span:nth-child(2) { background: #fbbf24; }
.nm-code-window span:nth-child(3) { background: #34d399; }
.nm-code-window code { margin-left: 10px; color: #e9d5ff; font-size: 11px; }
.nm-coder-visual .nm-float-one { z-index: 5; right: -12px; bottom: 72px; animation: nm-card-drift 6.8s 1s ease-in-out infinite; }
.nm-hotline-card { position: absolute; z-index: 6; left: 50%; bottom: -12px; display: inline-flex; align-items: center; gap: 13px; padding: 11px 21px 11px 12px; border: 1px solid rgba(250,204,21,.72); border-radius: 999px; background: rgba(255,255,255,.96); box-shadow: 0 18px 42px rgba(79,70,229,.18); transform: translateX(-50%); }
.nm-hotline-icon { display: grid; width: 42px; height: 42px; place-items: center; color: #fff; border-radius: 50%; background: linear-gradient(110deg,#06b6d4,#2563eb,#7c3aed,#ec4899,#f59e0b); background-size: 320% 100%; animation: nm-led 3.2s linear infinite; }
.nm-hotline-line { display: inline-block; color: transparent; font-size: clamp(20px,2.1vw,29px); font-weight: 900; line-height: 1; letter-spacing: .015em; white-space: nowrap; background: linear-gradient(90deg,#0ea5e9,#2563eb,#7c3aed,#ec4899,#f59e0b,#0ea5e9); background-size: 320% 100%; -webkit-background-clip: text; background-clip: text; animation: nm-led 4.5s linear infinite; }
.nm-hotline-line span { font-weight: 950; }
@keyframes nm-hero-bg { to { background-position: 70% 35%; } }
@keyframes nm-led { 0% { background-position: 0% 50%; } 100% { background-position: 300% 50%; } }
@keyframes nm-ambient { from { transform: translate3d(-15px,-8px,0) scale(.96); } to { transform: translate3d(26px,22px,0) scale(1.08); } }
@keyframes nm-fade-up { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
@keyframes nm-coder-float { 0%,100% { transform: translateY(0) rotate(-.7deg); } 50% { transform: translateY(-12px) rotate(.5deg); } }
@keyframes nm-coder-zoom { from { transform: scale(1.025); } to { transform: scale(1.075); } }
@keyframes nm-card-drift { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-9px); } }
@keyframes nm-orbit { to { transform: rotate(360deg); } }

/* Catalog */
.nm-catalog { padding: 40px 0 92px; }
.nm-category-wrap { position: sticky; top: 72px; z-index: 50; padding: 13px 0; border-bottom: 1px solid transparent; background: rgba(255,255,255,.92); backdrop-filter: blur(16px); }
.nm-category-wrap:after { position: absolute; right: 0; bottom: -1px; left: 0; height: 1px; content: ""; background: linear-gradient(90deg,transparent,#22d3ee,#6366f1,#ec4899,#f59e0b,transparent); background-size: 220% 100%; animation: nm-led 5s linear infinite; }
.nm-category-scroll { display: flex; overflow-x: auto; padding: 2px; gap: 8px; scrollbar-width: none; }
.nm-category-scroll::-webkit-scrollbar { display: none; }
.nm-category-tab { flex: 0 0 auto; min-height: 54px; padding: 10px 20px; color: #dc2626; border: 1px solid transparent; border-radius: 999px; background: transparent; font-size: 16px; font-weight: 800; cursor: pointer; }
.nm-category-tab:hover { color: #991b1b; background: #fef2f2; transform: translateY(-2px); }
.nm-category-tab.is-active { color: #fff; background: linear-gradient(110deg,#dc2626,#991b1b,#7f1d1d); background-size: 220% 100%; box-shadow: 0 8px 22px rgba(185,28,28,.24); animation: nm-led 5s linear infinite; }
.nm-catalog-toolbar { display: grid; grid-template-columns: 1fr auto; align-items: end; margin: 46px 0 26px; gap: 24px; }
.nm-catalog-toolbar h2 { margin: 0 0 8px; font-size: 34px; letter-spacing: -.035em; }
.nm-catalog-toolbar p { margin: 0; color: var(--nm-muted); }
.nm-filter-controls { display: flex; gap: 10px; }
.nm-filter-search { position: relative; }
.nm-filter-search i { position: absolute; top: 50%; left: 14px; color: #94a3b8; transform: translateY(-50%); }
.nm-filter-search input, .nm-filter-controls select { height: 46px; border: 1px solid var(--nm-line); border-radius: 10px; background: #fff; outline: 0; }
.nm-filter-search input { width: 260px; padding: 0 14px 0 40px; }
.nm-filter-controls select { padding: 0 36px 0 13px; color: #334155; }
.nm-products-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.nm-articles-section { position: relative; overflow: hidden; background: linear-gradient(120deg,#f8faff,#fff7fc 52%,#f0fdfa); }
.nm-articles-section:before { position: absolute; width: 360px; height: 360px; right: -90px; top: 80px; content: ""; border: 1px solid rgba(99,102,241,.14); border-radius: 50%; box-shadow: 0 0 0 24px rgba(236,72,153,.04), 0 0 0 48px rgba(34,211,238,.04); animation: nm-orbit 20s linear infinite; }
.nm-articles-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.nm-article-card { position: relative; overflow: hidden; border: 1px solid rgba(148,163,184,.25); border-radius: 18px; background: rgba(255,255,255,.78); box-shadow: 0 14px 40px rgba(15,23,42,.07); transition: transform .3s ease, box-shadow .3s ease; }
.nm-article-card:before { position: absolute; inset: 0 0 auto; height: 2px; content: ""; background: linear-gradient(90deg,#22d3ee,#6366f1,#ec4899,#f59e0b); background-size: 300% 100%; animation: nm-led 5s linear infinite; }
.nm-article-card:hover { transform: translateY(-6px); box-shadow: 0 22px 55px rgba(79,70,229,.15); }
.nm-article-media { position: relative; display: block; overflow: hidden; aspect-ratio: 16/9; margin: 10px 10px 0; border-radius: 12px; background: #e0e7ff; }
.nm-article-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.nm-article-card:hover .nm-article-media img { transform: scale(1.06); }
.nm-article-media span { position: absolute; right: 12px; bottom: 12px; display: grid; width: 34px; height: 34px; place-items: center; color: #fff; border: 1px solid rgba(255,255,255,.5); border-radius: 10px; background: rgba(15,23,42,.7); backdrop-filter: blur(8px); }
.nm-article-content { padding: 18px 18px 20px; }
.nm-article-meta { display: flex; justify-content: space-between; gap: 10px; color: var(--nm-primary); font: 700 11px/1.4 "Cascadia Code",Consolas,monospace; text-transform: uppercase; letter-spacing: .05em; }
.nm-article-meta time { color: #94a3b8; }
.nm-article-content h3 { margin: 12px 0 8px; font-size: 18px; line-height: 1.35; letter-spacing: -.04em; }
.nm-article-content h3 a:hover { color: var(--nm-primary); }
.nm-article-content p { min-height: 44px; margin: 0 0 16px; color: var(--nm-muted); font-size: 13px; line-height: 1.7; }
.nm-article-link { color: #4f46e5; font: 700 12px/1.4 "Cascadia Code",Consolas,monospace; }
.nm-article-link i { margin-left: 5px; transition: transform .2s ease; }
.nm-article-link:hover i { transform: translateX(4px); }
.nm-product-card { overflow: hidden; border: 1px solid var(--nm-line); border-radius: 17px; background: #fff; transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.nm-product-card:hover { border-color: #c7d2fe; box-shadow: var(--nm-shadow); transform: translateY(-4px); }
.nm-product-media { position: relative; display: block; overflow: hidden; aspect-ratio: 16/10; margin: 8px; border-radius: 12px; background: #eef2ff; }
.nm-product-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.nm-product-card:hover .nm-product-media img { transform: scale(1.018); }
.nm-product-badges { position: absolute; top: 12px; left: 12px; display: flex; gap: 7px; }
.nm-badge { padding: 6px 9px; border: 1px solid rgba(255,255,255,.2); border-radius: 7px; color: #fff; background: rgba(15,23,42,.84); backdrop-filter: blur(8px); font-size: 10px; font-weight: 800; text-transform: uppercase; }
.nm-badge-type { color: #b91c1c; border-color: #ffe66b; background: #ffd400; }
.nm-badge-sale { background: rgba(220,38,38,.9); }
.nm-badge-featured { background: rgba(79,70,229,.92); }
.nm-product-body { padding: 13px 18px 18px; }
.nm-product-category { margin-bottom: 8px; color: var(--nm-primary); font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.nm-product-body h3 { min-height: 51px; margin: 0 0 8px; font-size: 18px; line-height: 1.42; letter-spacing: -.018em; }
.nm-product-body h3 a { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.nm-product-body > p { display: -webkit-box; min-height: 44px; overflow: hidden; margin: 0; color: var(--nm-muted); font-size: 14px; line-height: 1.55; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.nm-product-meta { display: flex; flex-wrap: wrap; margin: 14px 0; gap: 8px 13px; color: #64748b; font-size: 11px; font-weight: 650; }
.nm-product-meta span { display: inline-flex; align-items: center; gap: 5px; }
.nm-product-footer { display: flex; min-height: 48px; align-items: flex-end; justify-content: space-between; gap: 16px; border-top: 1px solid #f1f5f9; padding-top: 15px; }
.nm-price del { display: block; color: #94a3b8; font-size: 11px; }
.nm-price strong { color: var(--nm-ink); font-size: 19px; letter-spacing: -.02em; }
.nm-card-action { display: inline-flex; align-items: center; gap: 7px; color: var(--nm-primary); font-size: 12px; font-weight: 800; }
.nm-card-action i { transition: transform .2s ease; }
.nm-card-action:hover i { transform: translateX(3px); }
.nm-skeleton { overflow: hidden; min-height: 390px; border-radius: 17px; background: linear-gradient(90deg,#f1f5f9 25%,#f8fafc 38%,#f1f5f9 63%); background-size: 400% 100%; animation: nm-shimmer 1.35s infinite; }
@keyframes nm-shimmer { 0% { background-position: 100% 0; } 100% { background-position: 0 0; } }
.nm-empty { grid-column: 1/-1; padding: 70px 24px; text-align: center; border: 1px dashed #cbd5e1; border-radius: 18px; background: var(--nm-soft); }
.nm-empty i { margin-bottom: 16px; color: #a5b4fc; font-size: 42px; }
.nm-empty h3 { margin: 0 0 8px; }
.nm-empty p { margin: 0 0 20px; color: var(--nm-muted); }

/* Features and FAQ */
.nm-feature-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.nm-feature { padding: 26px; border: 1px solid var(--nm-line); border-radius: 16px; background: #fff; }
.nm-feature-icon { display: grid; width: 44px; height: 44px; margin-bottom: 22px; place-items: center; color: var(--nm-primary); border-radius: 12px; background: #eef2ff; }
.nm-feature h3 { margin: 0 0 9px; font-size: 16px; }
.nm-feature p { margin: 0; color: var(--nm-muted); font-size: 14px; line-height: 1.65; }
.nm-process { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 36px; border: 1px solid var(--nm-line); border-radius: 18px; background: #fff; }
.nm-process-item { position: relative; padding: 28px; }
.nm-process-item + .nm-process-item { border-left: 1px solid var(--nm-line); }
.nm-process-num { margin-bottom: 28px; color: #c7d2fe; font-size: 34px; font-weight: 900; letter-spacing: -.05em; }
.nm-process-item h3 { margin: 0 0 8px; font-size: 16px; }
.nm-process-item p { margin: 0; color: var(--nm-muted); font-size: 13px; line-height: 1.6; }
.nm-faq-layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: 70px; }
.nm-faq-copy h2 { margin: 0 0 16px; font-size: 42px; letter-spacing: -.045em; }
.nm-faq-copy p { color: var(--nm-muted); line-height: 1.7; }
.nm-faq-item { border-bottom: 1px solid var(--nm-line); }
.nm-faq-trigger { display: flex; width: 100%; align-items: center; justify-content: space-between; padding: 22px 0; color: var(--nm-ink); border: 0; background: transparent; text-align: left; font-size: 16px; font-weight: 750; cursor: pointer; }
.nm-faq-trigger i { transition: transform .2s ease; }
.nm-faq-answer { display: none; padding: 0 36px 22px 0; color: var(--nm-muted); line-height: 1.7; }
.nm-faq-item.is-open .nm-faq-answer { display: block; }
.nm-faq-item.is-open .nm-faq-trigger i { transform: rotate(45deg); }
.nm-final-cta { overflow: hidden; padding: 65px; color: #fff; border-radius: 24px; background: radial-gradient(circle at 85% 20%, rgba(255,255,255,.18), transparent 25%), linear-gradient(135deg, #312e81, #4f46e5 55%, #7c3aed); }
.nm-final-cta h2 { max-width: 680px; margin: 0 0 14px; font-size: clamp(32px, 4vw, 48px); letter-spacing: -.045em; }
.nm-final-cta p { max-width: 620px; margin: 0 0 26px; color: #e0e7ff; font-size: 17px; }
.nm-final-cta .nm-btn { color: var(--nm-primary-dark); background: #fff; }

/* Product detail */
.nm-breadcrumbs { display: flex; flex-wrap: wrap; padding: 24px 0; gap: 8px; color: var(--nm-muted); font-size: 13px; }
.nm-breadcrumbs a:hover { color: var(--nm-primary); }
.nm-product-hero { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(420px, .95fr); align-items: start; gap: 54px; padding: 18px 0 72px; }
.nm-gallery-main { overflow: hidden; border: 1px solid var(--nm-line); border-radius: 20px; background: var(--nm-soft); }
.nm-gallery-main img { width: 100%; aspect-ratio: 16/10; object-fit: cover; }
.nm-gallery-thumbs { display: flex; margin-top: 12px; gap: 10px; }
.nm-gallery-thumb { width: 82px; padding: 3px; border: 1px solid var(--nm-line); border-radius: 10px; background: #fff; cursor: pointer; }
.nm-product-summary { position: sticky; top: 102px; }
.nm-detail-category { display: inline-flex; padding: 7px 10px; color: var(--nm-primary); border-radius: 7px; background: #eef2ff; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.nm-product-summary h1 { margin: 18px 0 14px; font-size: clamp(34px, 4vw, 50px); line-height: 1.08; letter-spacing: -.045em; }
.nm-detail-lead { margin: 0 0 22px; color: var(--nm-muted); font-size: 17px; line-height: 1.7; }
.nm-detail-price { display: flex; align-items: center; margin: 0 0 22px; gap: 12px; }
.nm-detail-price strong { font-size: 32px; letter-spacing: -.035em; }
.nm-detail-price del { color: #94a3b8; }
.nm-detail-price span { padding: 5px 8px; color: var(--nm-danger); border-radius: 6px; background: #fef2f2; font-size: 12px; font-weight: 800; }
.nm-detail-actions { display: grid; grid-template-columns: 1fr 1fr; margin-bottom: 24px; gap: 10px; }
.nm-detail-actions .nm-btn { width: 100%; }
.nm-detail-points { display: grid; grid-template-columns: repeat(2, 1fr); padding: 18px; border: 1px solid var(--nm-line); border-radius: 15px; gap: 16px; background: var(--nm-soft); }
.nm-detail-point small { display: block; margin-bottom: 4px; color: var(--nm-muted); font-size: 11px; }
.nm-detail-point strong { font-size: 13px; }
.nm-detail-description { max-width: 900px; color: #334155; font-size: 16px; line-height: 1.8; }
.nm-detail-description h2, .nm-detail-description h3 { color: var(--nm-ink); letter-spacing: -.03em; }
.nm-detail-description img { height: auto !important; border-radius: 14px; }
.nm-mobile-buybar { display: none; }

/* Footer */
.nm-footer { margin-top: 80px; color: #cbd5e1; background: #0f172a; }
.nm-footer-grid { display: grid; grid-template-columns: 1.5fr repeat(3, 1fr); padding: 68px 0 46px; gap: 48px; }
.nm-footer-brand img { width: 172px; filter: brightness(0) invert(1); }
.nm-footer-brand p { max-width: 340px; color: #94a3b8; line-height: 1.7; }
.nm-footer h3 { margin: 0 0 18px; color: #fff; font-size: 14px; }
.nm-footer ul { margin: 0; padding: 0; list-style: none; }
.nm-footer li + li { margin-top: 11px; }
.nm-footer a { color: #94a3b8; font-size: 13px; }
.nm-footer a:hover { color: #fff; }
.nm-footer-bottom { display: flex; align-items: center; justify-content: space-between; padding: 22px 0; border-top: 1px solid #1e293b; color: #64748b; font-size: 12px; }

[data-reveal] { opacity: 0; transform: translateY(14px); transition: opacity .5s ease, transform .5s ease; }
[data-reveal].is-visible { opacity: 1; transform: none; }

@media (max-width: 1080px) {
    .nm-nav { display: none; }
    .nm-header-inner { grid-template-columns: auto 1fr auto; }
    .nm-mobile-toggle { display: inline-grid; }
    .nm-hero-grid { grid-template-columns: 1fr; }
    .nm-hero-copy { text-align: center; }
    .nm-hero-copy h1, .nm-hero-copy > p { margin-inline: auto; }
    .nm-hero-actions, .nm-trust-inline { justify-content: center; }
    .nm-browser, .nm-coder-visual { max-width: 650px; margin: 0 auto; transform: none; }
    .nm-products-grid, .nm-articles-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .nm-feature-grid { grid-template-columns: repeat(2, 1fr); }
    .nm-faq-layout { grid-template-columns: 1fr; gap: 30px; }
    .nm-product-hero { grid-template-columns: 1fr; }
    .nm-product-summary { position: static; }
    .nm-footer-grid { grid-template-columns: repeat(2, 1fr); }
    .nm-mobile-drawer { position: fixed; top: 0; right: 0; z-index: 1200; display: block; width: min(88vw, 380px); height: 100dvh; padding: 22px; background: #fff; transform: translateX(105%); transition: transform .25s ease; }
    .nm-mobile-drawer.is-open { transform: translateX(0); }
    .nm-drawer-backdrop { position: fixed; inset: 0; z-index: 1100; display: block; background: rgba(15,23,42,.48); opacity: 0; pointer-events: none; transition: opacity .2s ease; }
    .nm-drawer-backdrop.is-open { opacity: 1; pointer-events: auto; }
    .nm-drawer-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 24px; }
    .nm-drawer-head img { width: 150px; }
    .nm-drawer-nav { display: grid; gap: 5px; }
    .nm-drawer-nav a { padding: 13px 12px; border-radius: 10px; font-weight: 700; }
    .nm-drawer-nav a:hover { color: var(--nm-primary); background: #eef2ff; }
}

@media (max-width: 720px) {
    .nm-admin-tools .nm-container { padding-block: 10px; align-items: flex-start; flex-wrap: wrap; gap: 8px; }
    .nm-admin-tools .nm-container > span { width: 100%; }
    .nm-admin-tools .nm-container > div { width: 100%; margin-left: 0; overflow-x: auto; }
    .nm-admin-tools a { white-space: nowrap; }
    .nm-container { width: min(calc(100% - 32px), var(--nm-container)); }
    .nm-section { padding: 64px 0; }
    .nm-topbar { display: none; }
    .nm-header-inner { min-height: 64px; gap: 10px; }
    .nm-logo img { width: 145px; }
    .nm-account { display: none; }
    .nm-header-actions .nm-btn { display: none; }
    .nm-language-switcher { display: none; }
    .nm-hero { padding: 52px 0 42px; }
    .nm-hero-grid { gap: 46px; }
    .nm-hero-copy h1 { font-size: clamp(34px, 10vw, 43px); }
    .nm-hero-copy > p { font-size: 16px; }
    .nm-hero-actions .nm-btn { width: 100%; }
    .nm-float-card { display: none; }
    .nm-coder-visual { min-height: 320px; }
    .nm-hotline-card { bottom: -16px; max-width: calc(100% - 20px); padding-right: 14px; }
    .nm-hotline-line { font-size: clamp(17px, 5vw, 23px); }
    .nm-coder-frame { width: min(100%, 520px); border-radius: 20px; }
    .nm-code-window { left: -5px; top: 35px; padding: 11px 12px; }
    .nm-browser-screen { padding: 17px; }
    .nm-screen-hero { padding: 30px 0 22px; }
    .nm-category-wrap { top: 64px; }
    .nm-catalog-toolbar { grid-template-columns: 1fr; margin-top: 34px; }
    .nm-filter-controls { display: grid; grid-template-columns: 1fr; }
    .nm-filter-search input { width: 100%; }
    .nm-products-grid { grid-template-columns: 1fr; }
    .nm-articles-grid { grid-template-columns: 1fr; }
    .nm-section-head { display: block; }
    .nm-section-head .nm-btn { margin-top: 18px; }
    .nm-feature-grid, .nm-process { grid-template-columns: 1fr; }
    .nm-process-item + .nm-process-item { border-top: 1px solid var(--nm-line); border-left: 0; }
    .nm-final-cta { padding: 38px 24px; border-radius: 18px; text-align: center; }
    .nm-footer-grid { grid-template-columns: 1fr; padding: 52px 0 36px; gap: 34px; }
    .nm-footer-bottom { display: block; line-height: 1.8; text-align: center; }
    .nm-product-hero { padding-bottom: 40px; gap: 30px; }
    .nm-product-summary h1 { font-size: 34px; }
    .nm-detail-actions { grid-template-columns: 1fr; }
    .nm-detail-points { grid-template-columns: 1fr 1fr; }
    .nm-mobile-buybar { position: fixed; right: 0; bottom: 0; left: 0; z-index: 900; display: grid; grid-template-columns: 1fr 1.25fr; padding: 10px 16px calc(10px + env(safe-area-inset-bottom)); border-top: 1px solid var(--nm-line); gap: 8px; background: rgba(255,255,255,.94); backdrop-filter: blur(14px); }
    .nm-mobile-buybar .nm-btn { min-height: 44px; padding: 0 10px; font-size: 13px; }
}

@media (max-width: 480px) {
    .nm-search-form { gap: 7px; }
    .nm-search-form .nm-btn { min-width: 136px; padding-inline: 12px; }
}

@media (prefers-reduced-motion: reduce) {
    .nm-hero,.nm-hero:before,.nm-hero-copy .nm-eyebrow,.nm-hero-copy h1,.nm-hero-copy > p,.nm-hero-actions,.nm-trust-inline,.nm-gradient-text,.nm-nav > a:after,.nm-category-wrap:after,.nm-category-tab.is-active,.nm-coder-frame,.nm-coder-frame img,.nm-coder-orbit,.nm-code-window,.nm-coder-visual .nm-float-one,.nm-articles-section:before,.nm-article-card:before { animation: none !important; }
}

/* Product card emphasis */
.nm-badge-type { color: #991b1b !important; border-color: #ffe66b !important; background: #ffd21f !important; box-shadow: 0 6px 16px rgba(234,179,8,.28); }
.nm-product-card { border-color: #c7d2fe; box-shadow: 0 12px 30px rgba(37,99,235,.06); }
.nm-product-category { display: inline-flex; min-height: 28px; align-items: center; margin-bottom: 10px; padding: 4px 10px; border: 1px solid #c7d2fe; border-radius: 7px; color: transparent; background: linear-gradient(90deg,#2563eb,#7c3aed,#ec4899,#f59e0b,#2563eb); background-size: 320% 100%; -webkit-background-clip: text; background-clip: text; font-size: 13px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; animation: nm-led 4.5s linear infinite; }
.nm-product-body h3 { font-size: 20px; }
.nm-product-body h3 a { color: #166534; }
.nm-product-meta span:last-child { color: #16a34a; font-weight: 800; }
.nm-price del { color: #dc2626; font-size: 12px; font-weight: 700; }
.nm-price strong { color: #22a447; font-size: 15px; letter-spacing: .035em; }
.nm-card-action { color: #4338ca; font-size: 15px; font-weight: 900; }

/* Final product palette */
.nm-badge-type { color: #b91c1c !important; border-color: #fff19a !important; background: #ffd400 !important; box-shadow: 0 5px 14px rgba(234,179,8,.24); }
.nm-product-category { display: inline-flex !important; color: #3157b7 !important; background: #eef3ff !important; -webkit-background-clip: border-box !important; background-clip: border-box !important; border-color: #c7d2fe !important; font-size: 13px !important; font-weight: 900 !important; text-shadow: 0 0 8px rgba(37,99,235,.16); animation: nm-category-led 4s ease-in-out infinite !important; }
.nm-price strong { font-family: "Plus Jakarta Sans","Inter","Segoe UI",Arial,sans-serif !important; color: #166534 !important; font-variant-numeric: tabular-nums; letter-spacing: -.025em; }
.nm-price-usd { color: #f97316 !important; font-size: 15px; font-weight: 900; letter-spacing: .035em; white-space: nowrap; }
@keyframes nm-category-led { 0%,100% { color: #3157b7; text-shadow: 0 0 5px rgba(37,99,235,.12); } 50% { color: #7c3aed; text-shadow: 0 0 10px rgba(124,58,237,.28); } }

/* Product detail follows the same visual language as the catalogue cards. */
.nm-product-summary .nm-detail-category { color: #3157b7 !important; border: 1px solid #c7d2fe; background: #eef3ff; font-size: 13px; font-weight: 900; letter-spacing: .06em; animation: nm-category-led 4s ease-in-out infinite; }
.nm-product-summary h1 { color: #166534; font-family: "Plus Jakarta Sans","Inter","Segoe UI",Arial,sans-serif; font-weight: 750; }
.nm-detail-price del { color: #dc2626 !important; font-weight: 700; }
.nm-detail-price strong { color: #22a447; font-family: "Plus Jakarta Sans","Inter","Segoe UI",Arial,sans-serif; font-size: 24px; font-variant-numeric: tabular-nums; letter-spacing: .02em; }
.nm-detail-price-usd { color: #f97316 !important; padding: 0 !important; background: transparent !important; font-size: 20px !important; font-weight: 900 !important; letter-spacing: .02em; white-space: nowrap; }
.nm-detail-price > span:not(.nm-detail-price-usd) { color: #dc2626; }

/* Bank checkout */
.nm-payment-page { padding: 42px 0 88px; background: radial-gradient(circle at 85% 10%, rgba(129,140,248,.16), transparent 28%), #f8faff; }
.nm-payment-shell { max-width: 980px; margin: 0 auto; }
.nm-payment-card { border: 1px solid #dbe4ff; border-radius: 24px; background: #fff; box-shadow: 0 22px 70px rgba(37, 58, 130, .12); overflow: hidden; }
.nm-payment-head { padding: 30px 34px 24px; border-bottom: 1px solid #edf1ff; }
.nm-payment-eyebrow { display: inline-flex; padding: 7px 12px; border-radius: 8px; color: #3157b7; background: #eef3ff; font: 900 12px/1.2 "Cascadia Code",Consolas,monospace; letter-spacing: .08em; text-transform: uppercase; }
.nm-payment-head h1 { margin: 14px 0 7px; color: #166534; font-size: clamp(28px, 4vw, 42px); letter-spacing: -.035em; }
.nm-payment-head p { margin: 0; color: #64748b; font-size: 15px; }
.nm-payment-grid { display: block; padding: 28px 34px 34px; }
.nm-payment-amount { display: none; }
.nm-payment-amount { padding: 22px; border: 1px solid #dbe4ff; border-radius: 17px; background: linear-gradient(135deg,#f8fbff,#f0fdf4); }
.nm-payment-amount small { color: #64748b; font-size: 12px; }
.nm-payment-amount strong { display: block; margin: 8px 0 3px; color: #166534; font: 800 clamp(28px,4vw,38px)/1.1 "Plus Jakarta Sans","Inter","Segoe UI",Arial,sans-serif; letter-spacing: .025em; }
.nm-payment-amount .usd { color: #f97316; font-weight: 900; font-size: 18px; }
.nm-payment-code { margin-top: 18px; padding: 13px 15px; border: 1px dashed #f59e0b; border-radius: 12px; background: #fffbeb; }
.nm-payment-code small { display:block; color: #92400e; }
.nm-payment-code b { display:block; margin-top: 4px; color: #b91c1c; font: 900 23px/1.1 "Cascadia Code",Consolas,monospace; letter-spacing: .09em; }
.nm-payment-bank { padding: 22px; border: 1px solid #dbe4ff; border-radius: 17px; }
.nm-payment-bank h2 { margin: 0 0 16px; color: #1e3a5f; font-size: 18px; }
.nm-bank-option { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); align-items: center; gap: 34px; min-height: 330px; padding: 22px 12px; border-top: 1px solid #edf1ff; }
.nm-bank-option:first-of-type { border-top: 0; padding-top: 0; }
.nm-bank-option img { display: block; width: min(100%, 320px); height: auto; aspect-ratio: 1; margin: auto; object-fit: contain; border-radius: 14px; background: #fff; image-rendering: auto; }
.nm-bank-option strong { color: #1e3a5f; }
.nm-bank-row { display:flex; justify-content:space-between; gap:12px; padding: 7px 0; color:#64748b; font-size: 13px; }
.nm-bank-row b { color:#166534; text-align:right; word-break: break-word; }
.nm-bank-row em { color:#f97316; font-style:normal; font-size:12px; white-space:nowrap; }
.nm-payment-inline-details { margin-bottom: 8px; padding-bottom: 8px; border-bottom: 1px dashed #dbe4ff; }
.nm-payment-note { margin: 0 34px 30px; padding: 15px 18px; border-left: 4px solid #f59e0b; border-radius: 9px; color: #78350f; background: #fffbeb; font-size: 13px; line-height: 1.65; }
@media (max-width:720px) { .nm-payment-grid { padding: 22px 18px 24px; } .nm-payment-head { padding: 24px 18px 20px; } .nm-payment-note { margin-inline: 18px; } .nm-bank-option { grid-template-columns: 1fr; gap: 14px; min-height: 0; } .nm-bank-option img { width: 260px; margin:auto; } }
