:root { --nd-brand:#0da44f; --nd-ink:#0c1711; --nd-paper:#f8fbf8; --nd-mint:#edf6ef; --nd-green:#d6f2dd; --nd-line:#cedbd2; }
.numbers-design-page { color:var(--nd-ink); background:var(--nd-paper); }
.numbers-design-page .page { background:var(--nd-paper); }
.numbers-design-page .header { width:min(1440px,100%); }
.nd-container { width:min(1120px,calc(100% - 64px)); margin-inline:auto; }
.nd-kicker { margin:0 0 16px; color:var(--nd-brand); font-family:var(--font-en); font-size:12px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.nd-heading { margin:0; font-size:clamp(38px,4vw,56px); line-height:1.35; letter-spacing:-.04em; }
.nd-intro { max-width:650px; margin:22px 0 0; color:#66736c; font-size:15px; line-height:1.9; }
.nd-hero { position:relative; min-height:470px; overflow:hidden; color:#fff; background:#08110c; }
.nd-hero__image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.nd-hero::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(2,8,4,.72),rgba(2,8,4,.32)),linear-gradient(0deg,rgba(2,8,4,.4),transparent 55%); }
.nd-hero__inner { position:relative; z-index:1; display:flex; align-items:center; min-height:470px; padding:130px 0 70px; }
.nd-hero .nd-kicker { color:#929aa5; }
.nd-hero h1 { margin:0 0 18px; font-size:clamp(44px,5vw,68px); line-height:1.2; letter-spacing:-.04em; }
.nd-hero__copy { margin:0; color:rgba(255,255,255,.92); font-size:15px; font-weight:500; line-height:1.9; }
.nd-section { padding:105px 0 115px; }
.nd-section--tint { background:#eaf4ed; }
.nd-section__head { margin-bottom:60px; }
.nd-grid { display:grid; gap:24px; }
.nd-grid--safety { grid-template-columns:repeat(3,minmax(0,1fr)); }
.nd-grid--people { grid-template-columns:repeat(4,minmax(0,1fr)); }
.nd-grid--work { grid-template-columns:repeat(4,minmax(0,1fr)); }
.nd-grid--stability { grid-template-columns:1.1fr 1.1fr; }
.nd-card { position:relative; min-height:260px; overflow:hidden; padding:30px 30px 32px; border:1px solid var(--nd-line); background:#fff; }
.nd-card--dark { color:#fff; border-color:var(--nd-ink); background:var(--nd-ink); }
.nd-card--green { border-color:#b7e2c2; background:var(--nd-green); }
.nd-card--large { grid-row:span 2; min-height:540px; }
.nd-card__number { position:relative; z-index:1; font-family:var(--font-num); font-size:76px; font-weight:800; line-height:.9; letter-spacing:-.06em; }
.nd-card__number small { margin-left:8px; font-size:20px; letter-spacing:0; }
.nd-card h3 { position:relative; z-index:1; margin:18px 0 0; font-size:20px; line-height:1.5; }
.nd-card p { position:relative; z-index:1; margin:45px 0 0; color:#66736c; font-size:13px; line-height:1.9; }
.nd-card--dark p { color:#b8c3bc; }
.nd-card__art { position:absolute; right:-2px; bottom:-2px; width:42%; max-height:54%; object-fit:contain; }
.nd-card--pending { border-style:dashed; }
.nd-badge { display:inline-flex; margin-bottom:28px; padding:6px 12px; border:1px solid #dd9439; border-radius:99px; color:#b76b13; font-size:11px; font-weight:800; }
.nd-card--pending .nd-card__number { color:#647169; }
.nd-section--showcase { color:#fff; background:linear-gradient(135deg,#079748 0%,#0db45b 52%,#08a450 100%); }
.nd-section--showcase .nd-kicker { color:#d7ffe8; }
.nd-section--showcase .nd-intro { color:rgba(255,255,255,.8); }
.nd-showcase-card { position:relative; display:flex; flex-direction:column; min-width:0; min-height:340px; overflow:hidden; padding:28px 28px 26px; border:1px solid rgba(255,255,255,.7); border-radius:24px; color:var(--nd-ink); background:rgba(255,255,255,.97); box-shadow:0 22px 48px rgba(0,57,27,.14); }
.nd-showcase-card::after { content:""; position:absolute; inset:auto -55px -72px auto; width:180px; height:180px; border-radius:50%; background:#edfaf1; }
.nd-showcase-card > * { position:relative; z-index:1; }
.nd-card__tag { align-self:flex-start; display:inline-flex; align-items:center; min-height:34px; margin-bottom:28px; padding:7px 13px; border:1px solid var(--nd-brand); border-radius:999px; color:var(--nd-brand); background:#fff; font-size:11px; font-weight:800; }
.nd-showcase-card .nd-card__number { color:var(--nd-brand); font-size:72px; }
.nd-showcase-card .nd-card__number small { font-size:19px; }
.nd-showcase-card h3 { max-width:72%; margin:18px 0 16px; font-size:18px; line-height:1.55; }
.nd-showcase-card p { max-width:76%; margin:auto 0 0; color:#4f6057; font-size:12px; line-height:1.8; }
.nd-grid--safety .nd-showcase-card p { margin-top:0; }
.nd-showcase-card__icon { position:absolute; z-index:2; top:24px; right:15px; width:118px; height:118px; object-fit:contain; filter:drop-shadow(0 9px 15px rgba(16,65,36,.1)); }
.nd-showcase-card--pending { border-style:dashed; }
.nd-showcase-card--pending .nd-card__number { color:#6d7b73; }
.nd-section--people-photo { position:relative; isolation:isolate; color:#fff; background:#07150d; }
.nd-section--people-photo::before { content:""; position:absolute; inset:0; z-index:-2; background:url("../assets/about/about-site-meeting.jpeg") center 48% / cover no-repeat fixed; }
.nd-section--people-photo::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(100deg,rgba(3,22,12,.93),rgba(5,67,34,.82)); }
.nd-section--people-photo .nd-kicker { color:#66e89a; }
.nd-section--people-photo .nd-intro { color:rgba(255,255,255,.78); }
.nd-section--people-photo .nd-showcase-card { min-height:380px; border-color:rgba(255,255,255,.5); box-shadow:0 24px 60px rgba(0,0,0,.24); }
.nd-showcase-card__top { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; min-height:88px; margin-bottom:12px; }
.nd-section--people-photo .nd-showcase-card__top .nd-card__tag { margin-bottom:0; }
.nd-section--people-photo .nd-showcase-card__top .nd-showcase-card__icon { position:static; flex:0 0 auto; width:88px; height:88px; margin:-8px -8px 0 0; }
.nd-section--people-photo .nd-showcase-card .nd-card__number { width:100%; padding-right:0; font-size:64px; }
.nd-section--people-photo .nd-showcase-card h3,
.nd-section--people-photo .nd-showcase-card p { max-width:100%; }
.nd-section--worklife-photo { position:relative; isolation:isolate; color:#fff; background:#07150d; }
.nd-section--worklife-photo::before { content:""; position:absolute; inset:0; z-index:-2; background:url("../assets/recruit/recruit-daily-scene-new-04.jpeg") center 42% / cover no-repeat fixed; }
.nd-section--worklife-photo::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(105deg,rgba(2,22,11,.94),rgba(3,68,34,.8)); }
.nd-section--worklife-photo .nd-kicker { color:#6bea9d; }
.nd-section--worklife-photo .nd-intro { color:rgba(255,255,255,.78); }
.nd-worklife-card { position:relative; display:flex; min-width:0; min-height:380px; overflow:hidden; flex-direction:column; padding:24px 26px 28px; border:1px solid rgba(255,255,255,.72); border-radius:24px; color:var(--nd-ink); background:rgba(255,255,255,.97); box-shadow:0 24px 60px rgba(0,0,0,.24); }
.nd-worklife-card::after { content:""; position:absolute; right:-68px; bottom:-86px; width:190px; height:190px; border-radius:50%; background:#ebf8ef; }
.nd-worklife-card > * { position:relative; z-index:1; }
.nd-worklife-card__top { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; min-height:105px; margin-bottom:12px; }
.nd-worklife-card .nd-card__tag { margin:4px 0 0; }
.nd-worklife-card__icon { flex:0 0 auto; width:102px; height:102px; margin:-8px -8px 0 0; object-fit:contain; filter:drop-shadow(0 10px 15px rgba(11,72,36,.12)); }
.nd-worklife-card .nd-card__number { color:var(--nd-brand); font-size:62px; white-space:nowrap; }
.nd-worklife-card .nd-card__number--compact { font-size:43px; letter-spacing:-.075em; }
.nd-worklife-card .nd-card__number small { margin-left:5px; font-size:17px; }
.nd-worklife-card h3 { margin:18px 0 0; font-size:18px; line-height:1.5; }
.nd-worklife-card p { margin:auto 0 0; padding-top:24px; color:#536159; font-size:12px; line-height:1.8; }
.nd-stability-card { position:relative; min-height:258px; overflow:hidden; border-radius:24px; color:#fff; background:#07150d; box-shadow:0 22px 48px rgba(8,46,25,.12); }
.nd-stability-card--large { grid-row:span 2; min-height:540px; }
.nd-stability-card__photo { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.nd-stability-card::after { content:""; position:absolute; inset:0; background:linear-gradient(105deg,rgba(2,14,7,.87) 0%,rgba(2,20,9,.64) 62%,rgba(2,20,9,.3) 100%),linear-gradient(0deg,rgba(2,12,6,.62),transparent 55%); }
.nd-stability-card:hover .nd-stability-card__photo { transform:scale(1.035); }
.nd-stability-card__content { position:relative; z-index:1; display:flex; min-height:inherit; flex-direction:column; padding:34px 36px 32px; }
.nd-stability-card .nd-card__number { color:#fff; }
.nd-stability-card h3 { margin:20px 0 0; font-size:20px; line-height:1.5; }
.nd-stability-card p { max-width:470px; margin:auto 0 0; color:rgba(255,255,255,.78); font-size:13px; line-height:1.9; }
.nd-section--growth { background:#fff; }
.nd-growth-features { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; }
.nd-growth-card { min-width:0; overflow:hidden; border:1px solid #dce7df; border-radius:14px; background:#fff; box-shadow:0 18px 42px rgba(7,54,28,.07); transition:transform .25s ease,box-shadow .25s ease; }
.nd-growth-card:hover { transform:translateY(-5px); box-shadow:0 24px 52px rgba(7,54,28,.12); }
.nd-growth-card__photo { position:relative; overflow:hidden; aspect-ratio:4/3; background:#dce9df; }
.nd-growth-card__photo::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 68%,rgba(4,33,17,.18)); }
.nd-growth-card__photo img { width:100%; height:100%; object-fit:cover; transition:transform .45s ease; }
.nd-growth-card:hover .nd-growth-card__photo img { transform:scale(1.035); }
.nd-growth-card__body { padding:22px 22px 26px; }
.nd-growth-card .nd-card__number { color:var(--nd-brand); font-size:48px; line-height:1; }
.nd-growth-card .nd-card__number small { margin-left:5px; font-size:15px; }
.nd-growth-card .nd-card__number--path { display:flex; align-items:baseline; gap:5px; font-size:44px; letter-spacing:-.04em; white-space:nowrap; }
.nd-growth-card .nd-card__number--path small { margin-left:1px; }
.nd-growth-card .nd-card__number--path span { margin:0 2px; font-size:24px; }
.nd-growth-card h3 { margin:16px 0 0; font-size:16px; line-height:1.55; }
.nd-growth-card p { margin:18px 0 0; color:#627169; font-size:12px; line-height:1.8; }
.nd-growth-card .nd-badge { margin-bottom:15px; }
.nd-growth-card--pending { border-style:dashed; }
.nd-growth-card--pending .nd-card__number { color:#6d7b73; }
.nd-growth-flow { margin-top:72px; padding:42px 44px 38px; border:1px solid #cae2d1; border-radius:24px; background:#f0f8f2; }
.nd-growth-flow__head { text-align:center; }
.nd-growth-flow__head .nd-kicker { margin-bottom:10px; }
.nd-growth-flow__head h3 { margin:0; font-size:30px; letter-spacing:-.03em; }
.nd-growth-flow__head > p:last-child { margin:14px 0 0; color:#66736c; font-size:13px; }
.nd-flow-steps { display:flex; align-items:stretch; gap:14px; margin-top:34px; }
.nd-flow-step { display:flex; flex:1 1 0; min-width:0; flex-direction:column; overflow:hidden; border:2px solid var(--nd-brand); border-radius:9px; background:#fff; }
.nd-flow-step__year { display:grid; min-height:42px; place-items:center; padding:8px 10px; color:#fff; background:var(--nd-brand); font-size:15px; font-weight:800; }
.nd-flow-step__body { display:flex; flex:1; flex-direction:column; align-items:center; padding:22px 16px 24px; text-align:center; }
.nd-flow-step h4 { margin:0; color:var(--nd-brand); font-size:17px; }
.nd-flow-step p { margin:18px 0 0; color:#28372f; font-size:12px; line-height:1.65; }
.nd-flow-arrow { align-self:center; flex:0 0 24px; width:24px; height:12px; }
.nd-flow-arrow img { display:block; width:100%; height:100%; object-fit:fill; }
.nd-growth-flow__note { margin:26px 0 0; color:#607068; font-size:12px; font-weight:700; text-align:center; }
.nd-statement { overflow:hidden; padding:94px 0 76px; color:var(--nd-brand); background:#e9f6ed; }
.nd-statement__head { text-align:center; }
.nd-statement__display { margin:0; font-family:var(--font-en); font-size:clamp(54px,7.2vw,102px); font-weight:800; line-height:.92; letter-spacing:-.065em; }
.nd-statement h2 { max-width:900px; margin:20px auto 0; font-size:clamp(18px,1.8vw,25px); line-height:1.55; letter-spacing:-.03em; }
.nd-statement__head > p:last-child { max-width:760px; margin:18px auto 0; color:#218f52; font-size:14px; font-weight:700; line-height:1.8; }
.nd-statement__gallery { display:grid; width:min(1540px,calc(100% - 48px)); grid-template-columns:repeat(5,minmax(0,1fr)); align-items:end; gap:30px; margin:42px auto 18px; }
.nd-statement__gallery figure { height:280px; overflow:hidden; margin:0; border-radius:24px; background:#c9dfd0; box-shadow:0 18px 42px rgba(7,79,39,.1); }
.nd-statement__gallery figure:nth-child(1) { transform:translateY(36px); }
.nd-statement__gallery figure:nth-child(2) { transform:translateY(-28px); }
.nd-statement__gallery figure:nth-child(3) { transform:translateY(18px); }
.nd-statement__gallery figure:nth-child(4) { transform:translateY(-18px); }
.nd-statement__gallery figure:nth-child(5) { transform:translateY(54px); }
.nd-statement__gallery img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .45s ease; }
.nd-statement__gallery figure:hover img { transform:scale(1.035); }
.nd-data { padding:105px 0 120px; background:#f8fbf8; }
.nd-data__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; margin-top:55px; }
.nd-chart { padding-top:24px; border-top:1px solid var(--nd-line); }
.nd-chart h3 { margin:0 0 24px; font-size:19px; }
.nd-chart__canvas { display:flex; align-items:center; justify-content:center; height:230px; background:#dbe9df; }
.nd-bars { display:flex; align-items:flex-end; gap:22px; height:130px; }
.nd-bars span { width:42px; border-top:3px solid var(--nd-brand); background:#b8dabf; }
.nd-donut { display:grid; width:145px; height:145px; place-items:center; border-radius:50%; background:conic-gradient(var(--nd-brand) 0 58%,#c8d3cc 58%); }
.nd-donut::after { content:"DATA\A PENDING"; white-space:pre; display:grid; width:90px; height:90px; place-items:center; border-radius:50%; background:#dbe9df; color:#66736c; font-family:var(--font-en); font-size:12px; font-weight:800; text-align:center; }
.nd-quals { width:78%; }
.nd-quals span { display:block; margin:18px 0 5px; color:#66736c; font-size:12px; }
.nd-quals i { display:block; height:8px; background:var(--nd-brand); }
.nd-chart p { margin:22px 0 0; color:#68766e; font-size:13px; line-height:1.8; }
.nd-cta { padding:60px 0; color:#fff; border-bottom:1px solid var(--nd-brand); background:#111; }
.nd-cta__inner { display:flex; justify-content:space-between; align-items:center; gap:40px; }
.nd-cta h2 { max-width:620px; margin:0; font-size:27px; line-height:1.5; }
.nd-cta p { margin:0 0 8px; color:#9ca29f; font-size:12px; font-weight:700; letter-spacing:.08em; }
.nd-cta__buttons { display:flex; gap:14px; }
.nd-button { display:inline-flex; align-items:center; justify-content:space-between; gap:30px; min-width:190px; min-height:54px; padding:14px 23px; border:1px solid rgba(255,255,255,.55); border-radius:99px; color:#fff; font-size:13px; font-weight:800; transition:background .2s ease,color .2s ease,border-color .2s ease; }
.nd-button--dark,.nd-button:hover { color:#161e29; border-color:#fff; background:#fff; }
.numbers-design-page .footer { border-radius:0; }

@media (min-width:769px) and (max-width:1024px) {
  .nd-grid--people { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .nd-grid--work { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .nd-statement__gallery { gap:18px; }
  .nd-statement__gallery figure { height:220px; border-radius:18px; }
  .nd-growth-features { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .nd-growth-flow { padding-inline:26px; }
  .nd-flow-steps { gap:9px; }
  .nd-flow-arrow { flex-basis:18px; width:18px; }
  .nd-flow-step__body { padding-inline:10px; }
}

@media (max-width:768px) {
  .nd-container { width:calc(100% - 36px); }
  .nd-hero,.nd-hero__inner { min-height:410px; }
  .nd-hero__inner { align-items:center; padding:120px 0 58px; }
  .nd-hero h1 { font-size:42px; }
  .nd-hero__copy { font-size:13px; line-height:1.9; }
  .nd-section { padding:76px 0 84px; }
  .nd-section__head { margin-bottom:40px; }
  .nd-heading { font-size:31px; }
  .nd-intro { margin-top:16px; font-size:13px; }
  .nd-grid--safety,.nd-grid--people,.nd-grid--work,.nd-grid--stability { grid-template-columns:1fr; grid-template-rows:auto; }
  .nd-section--people-photo::before { background-attachment:scroll; }
  .nd-section--worklife-photo::before { background-attachment:scroll; }
  .nd-showcase-card,.nd-section--people-photo .nd-showcase-card { min-height:310px; padding:24px 22px; border-radius:18px; }
  .nd-showcase-card .nd-card__number { font-size:62px; }
  .nd-showcase-card__icon,.nd-section--people-photo .nd-showcase-card__icon { top:20px; right:8px; width:112px; height:112px; }
  .nd-showcase-card__top { min-height:92px; }
  .nd-section--people-photo .nd-showcase-card__top .nd-showcase-card__icon { position:static; width:96px; height:96px; margin:-8px -6px 0 0; }
  .nd-section--people-photo .nd-showcase-card .nd-card__number { font-size:62px; }
  .nd-showcase-card h3 { max-width:68%; font-size:18px; }
  .nd-showcase-card p,.nd-section--people-photo .nd-showcase-card p { max-width:76%; }
  .nd-card,.nd-card--large { grid-row:auto; min-height:250px; padding:26px 24px; }
  .nd-card__number { font-size:60px; }
  .nd-card h3 { font-size:18px; }
  .nd-card p { margin-top:38px; font-size:12px; }
  .nd-growth-features { grid-template-columns:1fr; gap:22px; }
  .nd-growth-card__photo { aspect-ratio:16/10; }
  .nd-growth-card__body { padding:22px 20px 25px; }
  .nd-growth-flow { margin-top:48px; padding:32px 20px; border-radius:18px; }
  .nd-growth-flow__head h3 { font-size:25px; }
  .nd-flow-steps { flex-direction:column; gap:13px; }
  .nd-flow-step { flex:none; width:100%; }
  .nd-flow-arrow { align-self:center; flex:none; width:24px; height:12px; margin:6px auto; transform:rotate(90deg); }
  .nd-flow-step__body { min-height:130px; justify-content:center; }
  .nd-worklife-card { min-height:340px; padding:22px 22px 26px; border-radius:18px; }
  .nd-worklife-card__top { min-height:98px; }
  .nd-worklife-card__icon { width:96px; height:96px; }
  .nd-worklife-card .nd-card__number { font-size:58px; }
  .nd-worklife-card .nd-card__number--compact { font-size:41px; }
  .nd-stability-card,.nd-stability-card--large { grid-row:auto; min-height:330px; border-radius:18px; }
  .nd-stability-card__content { padding:28px 24px 26px; }
  .nd-stability-card .nd-card__number { font-size:58px; }
  .nd-statement { padding:72px 0 64px; }
  .nd-statement__display { font-size:46px; line-height:.98; }
  .nd-statement h2 { margin-top:18px; font-size:17px; }
  .nd-statement__head > p:last-child { margin-top:14px; font-size:12px; }
  .nd-statement__gallery { width:calc(100% - 36px); grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:34px; }
  .nd-statement__gallery figure,.nd-statement__gallery figure:nth-child(n) { height:auto; aspect-ratio:1/1; border-radius:16px; transform:none; }
  .nd-statement__gallery figure:last-child { grid-column:1/-1; aspect-ratio:16/8; }
  .nd-data { padding:76px 0 85px; }
  .nd-data__grid { grid-template-columns:1fr; gap:46px; margin-top:42px; }
  .nd-chart__canvas { height:210px; }
  .nd-cta { padding:48px 0; }
  .nd-cta__inner { flex-direction:column; align-items:flex-start; }
  .nd-cta h2 { font-size:23px; line-height:1.5; }
  .nd-cta p { font-size:12px; }
  .nd-cta__buttons { display:flex; width:100%; flex-direction:column; margin-top:4px; }
  .nd-button { width:100%; }
}
