.nc-page {
  --nc-green-deep:#5f8c1f;
  --nc-green:#7aa626;
  --nc-green-mid:#8fb733;
  --nc-lime:#c4d92e;
  --nc-lime-bright:#d4e157;
  --nc-ink:#2b3318;
  --nc-ink-soft:#4a5335;
  --nc-cream:#f7f9f0;
  --nc-cream-2:#eef3e0;
  --nc-white:#ffffff;
  --nc-grad:linear-gradient(120deg,var(--nc-green-deep) 0%,var(--nc-green) 40%,var(--nc-lime) 100%);
  --nc-grad-soft:linear-gradient(135deg,#eef4dc 0%,#f7faee 60%,#fdfef8 100%);
  --nc-shadow:0 18px 50px -20px rgba(95,140,31,.35);
  --nc-shadow-sm:0 8px 24px -12px rgba(43,51,24,.25);
  --nc-radius:26px;
  --nc-radius-lg:38px;
}
.nc-page,.nc-page *{box-sizing:border-box;margin:0;padding:0}
.nc-page{
  font-family:'Inter',system-ui,sans-serif;
  color:var(--nc-ink);
  background:var(--nc-white);
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
.nc-page[data-lang="cn"],
.nc-page[data-lang="cn"] .nc-display,
.nc-page[data-lang="cn"] .nc-eyebrow{
  font-family:'Noto Sans SC','Inter',sans-serif;
}
.nc-display{font-family:'Poppins','Inter',sans-serif;}
.nc-page img{max-width:100%;display:block}
.nc-page a{color:inherit;text-decoration:none}

/* language visibility */
.nc-page [data-en],.nc-page [data-cn]{display:none}
.nc-page[data-lang="en"] [data-en]{display:revert}
.nc-page[data-lang="cn"] [data-cn]{display:revert}

/* ---------- Top bar ---------- */
header.nc-bar{
  position:sticky;top:0;z-index:60;
  display:flex;align-items:center;justify-content:space-between;
  padding:18px clamp(20px,5vw,72px);
  background:rgba(255,255,255,.82);
  backdrop-filter:saturate(140%) blur(14px);
  border-bottom:1px solid rgba(122,166,38,.14);
}
.nc-bar .nc-logo{height:44px;width:auto}
.nc-lang-toggle{
  display:inline-flex;border:1.5px solid rgba(122,166,38,.4);
  border-radius:999px;overflow:hidden;font-weight:600;font-size:13px;
  font-family:'Inter',sans-serif;
}
.nc-lang-toggle button{
  border:0;background:transparent;color:var(--nc-green-deep);
  padding:8px 16px;cursor:pointer;transition:.25s;letter-spacing:.02em;
}
.nc-lang-toggle button.on{background:var(--nc-grad);color:#fff}

/* ---------- Hero ---------- */
.nc-hero{
  position:relative;
  padding:clamp(48px,8vw,110px) clamp(20px,5vw,72px) clamp(40px,6vw,80px);
  background:var(--nc-grad-soft);
  overflow:hidden;
}
.nc-hero::before{
  content:"";position:absolute;inset:0;
  background:
    radial-gradient(680px 420px at 88% -8%,rgba(196,217,46,.28),transparent 60%),
    radial-gradient(520px 420px at -6% 108%,rgba(95,140,31,.16),transparent 60%);
  pointer-events:none;
}
.nc-hero-inner{position:relative;max-width:1180px;margin:0 auto}
.nc-hero-logo{height:clamp(64px,10vw,104px);width:auto;margin-bottom:clamp(26px,4vw,44px)}
.nc-eyebrow{
  display:inline-flex;align-items:center;gap:9px;
  font-family:'Inter',sans-serif;font-weight:600;font-size:13px;
  letter-spacing:.14em;text-transform:uppercase;color:var(--nc-green-deep);
  background:rgba(255,255,255,.7);border:1px solid rgba(122,166,38,.3);
  padding:8px 16px;border-radius:999px;margin-bottom:24px;
}
.nc-eyebrow .nc-dot{width:9px;height:9px;border-radius:50%;background:var(--nc-lime);box-shadow:0 0 0 4px rgba(196,217,46,.28)}
h1.nc-hero-title{
  font-family:'Poppins',sans-serif;font-weight:700;
  font-size:clamp(38px,6.6vw,74px);line-height:1.03;
  letter-spacing:-.02em;max-width:16ch;
}
.nc-page[data-lang="cn"] h1.nc-hero-title{font-family:'Noto Sans SC',sans-serif;letter-spacing:0;font-weight:700}
h1.nc-hero-title .nc-accent{
  background:var(--nc-grad);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.nc-hero-lead{
  margin-top:22px;font-size:clamp(17px,2.1vw,21px);color:var(--nc-ink-soft);
  max-width:52ch;font-weight:400;
}
.nc-hero-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.nc-btn{
  display:inline-flex;align-items:center;gap:10px;cursor:pointer;
  font-family:'Inter',sans-serif;font-weight:600;font-size:15px;
  padding:15px 28px;border-radius:999px;border:0;transition:.28s ease;
}
.nc-page[data-lang="cn"] .nc-btn{font-family:'Noto Sans SC',sans-serif}
.nc-btn-primary{background:var(--nc-grad);color:#fff !important;box-shadow:var(--nc-shadow)}
.nc-btn-primary:hover{transform:translateY(-2px);box-shadow:0 24px 60px -20px rgba(95,140,31,.55)}
.nc-btn-ghost{background:#fff;color:var(--nc-green-deep) !important;border:1.5px solid rgba(122,166,38,.45)}
.nc-btn-ghost:hover{background:var(--nc-cream-2);transform:translateY(-2px)}
.nc-btn .nc-arrow{transition:transform .28s}
.nc-btn:hover .nc-arrow{transform:translateX(4px)}

/* ---------- Section shell ---------- */
section.nc-blk{padding:clamp(56px,8vw,110px) clamp(20px,5vw,72px)}
.nc-wrap{max-width:1180px;margin:0 auto}
.nc-sec-eyebrow{
  font-family:'Inter',sans-serif;font-weight:600;font-size:13px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--nc-green);margin-bottom:16px;display:flex;align-items:center;gap:10px;
}
.nc-page[data-lang="cn"] .nc-sec-eyebrow{font-family:'Noto Sans SC',sans-serif;letter-spacing:.05em}
.nc-sec-eyebrow::before{content:"";width:26px;height:2px;background:var(--nc-grad);border-radius:2px}
h2.nc-sec-title{
  font-family:'Poppins',sans-serif;font-weight:700;
  font-size:clamp(28px,4.4vw,46px);line-height:1.08;letter-spacing:-.02em;max-width:20ch;
}
.nc-page[data-lang="cn"] h2.nc-sec-title{font-family:'Noto Sans SC',sans-serif;letter-spacing:0}
h2.nc-sec-title .nc-accent{background:var(--nc-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.nc-sec-lead{margin-top:20px;font-size:clamp(16px,1.9vw,19px);color:var(--nc-ink-soft);max-width:60ch}

/* What is Nuvi — feature band */
.nc-what{background:var(--nc-cream)}
.nc-what-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(30px,5vw,64px);align-items:center}
.nc-what-card{
  background:#fff;border-radius:var(--nc-radius-lg);padding:clamp(28px,4vw,46px);
  box-shadow:var(--nc-shadow-sm);border:1px solid rgba(122,166,38,.12);position:relative;overflow:hidden;
}
.nc-what-card::after{
  content:"";position:absolute;right:-60px;top:-60px;width:180px;height:180px;border-radius:50%;
  background:radial-gradient(circle,rgba(196,217,46,.35),transparent 70%);
}
.nc-stat-70{
  font-family:'Poppins',sans-serif;font-weight:700;font-size:clamp(64px,12vw,120px);line-height:.9;
  background:var(--nc-grad);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.nc-stat-label{font-size:clamp(15px,1.8vw,18px);color:var(--nc-ink-soft);max-width:26ch;margin-top:10px;position:relative}
.nc-what-body p{font-size:clamp(16px,1.9vw,19px);color:var(--nc-ink-soft)}
.nc-what-body p+p{margin-top:18px}
.nc-lede{font-weight:500;color:var(--nc-ink);font-size:clamp(18px,2.2vw,22px)!important}

/* Steps */
.nc-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,30px);margin-top:clamp(40px,6vw,64px)}
.nc-step{
  background:#fff;border-radius:var(--nc-radius);padding:clamp(26px,3vw,36px);
  border:1px solid rgba(122,166,38,.16);box-shadow:var(--nc-shadow-sm);position:relative;
  transition:.3s;
}
.nc-step:hover{transform:translateY(-5px);box-shadow:0 26px 60px -26px rgba(95,140,31,.4)}
.nc-step .nc-num{
  font-family:'Poppins',sans-serif;font-weight:700;font-size:15px;color:#fff;
  width:44px;height:44px;border-radius:14px;display:grid;place-items:center;
  background:var(--nc-grad);margin-bottom:20px;box-shadow:0 8px 18px -8px rgba(95,140,31,.6);
}
.nc-step h3{font-family:'Poppins',sans-serif;font-weight:600;font-size:clamp(18px,2.2vw,22px);margin-bottom:12px;letter-spacing:-.01em}
.nc-page[data-lang="cn"] .nc-step h3{font-family:'Noto Sans SC',sans-serif}
.nc-step p{color:var(--nc-ink-soft);font-size:15.5px}
.nc-step ul{list-style:none;margin-top:14px;display:grid;gap:9px}
.nc-step ul li{position:relative;padding-left:24px;color:var(--nc-ink-soft);font-size:15px}
.nc-step ul li::before{
  content:"";position:absolute;left:0;top:8px;width:11px;height:11px;border-radius:50%;
  background:var(--nc-grad);
}

/* Menu showcase */
.nc-menu{background:var(--nc-grad-soft)}
.nc-menu-frame{
  margin-top:clamp(34px,5vw,52px);background:#fff;border-radius:var(--nc-radius-lg);
  padding:clamp(14px,2.4vw,26px);box-shadow:var(--nc-shadow);border:1px solid rgba(122,166,38,.16);
}
.nc-menu-frame img{border-radius:20px;width:100%}
.nc-menu-cap{
  text-align:center;margin-top:20px;font-family:'Poppins',sans-serif;font-weight:600;
  font-size:clamp(16px,2vw,21px);color:var(--nc-ink);letter-spacing:-.01em;
}
.nc-page[data-lang="cn"] .nc-menu-cap{font-family:'Noto Sans SC',sans-serif}
.nc-menu-sub{text-align:center;margin-top:8px;color:var(--nc-ink-soft);font-size:15px}
.nc-menu-placeholder{
  aspect-ratio:2400/1678;border-radius:20px;display:grid;place-items:center;text-align:center;
  background:repeating-linear-gradient(135deg,#eef3e0,#eef3e0 16px,#f6f9ee 16px,#f6f9ee 32px);
  color:var(--nc-green-deep);font-family:'Inter',sans-serif;font-weight:600;padding:24px;border:2px dashed rgba(122,166,38,.4);
}

/* Highlight strip */
.nc-strip{background:var(--nc-grad);color:#fff;text-align:center}
.nc-strip .nc-wrap{max-width:900px}
.nc-strip h2{font-family:'Poppins',sans-serif;font-weight:700;font-size:clamp(26px,4vw,42px);line-height:1.1;letter-spacing:-.02em}
.nc-page[data-lang="cn"] .nc-strip h2{font-family:'Noto Sans SC',sans-serif}
.nc-strip p{margin-top:18px;font-size:clamp(17px,2.1vw,20px);opacity:.95;max-width:56ch;margin-left:auto;margin-right:auto}
.nc-strip .nc-btn-primary{background:#fff;color:var(--nc-green-deep);margin-top:32px;box-shadow:0 18px 40px -18px rgba(0,0,0,.35)}
.nc-strip .nc-btn-primary:hover{background:var(--nc-cream)}

/* Footer */
.nc-page footer{background:var(--nc-ink);color:#e7edd8;padding:clamp(44px,6vw,72px) clamp(20px,5vw,72px)}
.nc-foot-grid{max-width:1180px;margin:0 auto;display:flex;flex-wrap:wrap;gap:30px;justify-content:space-between;align-items:flex-start}
.nc-foot-brand img{height:40px;filter:brightness(0) invert(1);opacity:.9;margin-bottom:16px}
.nc-foot-brand p{font-size:14px;opacity:.7;max-width:34ch}
.nc-foot-col h4{font-family:'Poppins',sans-serif;font-size:13px;letter-spacing:.12em;text-transform:uppercase;opacity:.6;margin-bottom:14px}
.nc-page[data-lang="cn"] .nc-foot-col h4{font-family:'Noto Sans SC',sans-serif}
.nc-foot-col a,.nc-foot-col span{display:block;font-size:14.5px;opacity:.85;margin-bottom:9px;transition:.2s}
.nc-foot-col a:hover{opacity:1;color:var(--nc-lime-bright)}
.nc-foot-legal{max-width:1180px;margin:34px auto 0;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);font-size:12.5px;opacity:.55;display:flex;flex-wrap:wrap;gap:8px 22px}

/* reveal */
.nc-reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}
.nc-reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.nc-reveal{opacity:1;transform:none;transition:none}.nc-btn,.nc-step{transition:none}}

/* responsive */
@media(max-width:900px){
  .nc-what-grid{grid-template-columns:1fr}
  .nc-steps{grid-template-columns:1fr}
  .nc-bar .nc-logo{height:38px}
}
