/* ㈜정신전자 하단 (2026-07-28 새로 제작)
   ※ id=footer 는 바깥 레이아웃이 이미 쓰고 있어 겹친다. 전용 클래스 .jn-ft 로 감싼다.
   데이터는 어드민 푸터설정(data/common/footer)의 $dataArray 를 그대로 쓴다. */

.jn-ft{
  --ft-bg:#11163C;
  --ft-deep:#0c1030;
  --ft-line:rgba(255,255,255,.12);
  --ft-txt:rgba(255,255,255,.62);
  --ft-dim:rgba(255,255,255,.42);
  --ft-key:#9dc0ea;
  background:var(--ft-bg);
  font-family:'Pretendard Variable','Pretendard','Apple SD Gothic Neo','Malgun Gothic',sans-serif;
  color:var(--ft-txt);-webkit-font-smoothing:antialiased;
}
.jn-ft *{box-sizing:border-box}
.jn-ft a{text-decoration:none;color:inherit}
.jn-ft .ft-wrap{max-width:1440px;margin:0 auto;padding:0 40px}

/* ── 문의 유도 띠 ─────────────────────────── */
.jn-ft .ft-cta{
  border-bottom:1px solid var(--ft-line);
  padding:52px 0;
}
.jn-ft .ft-cta-in{
  display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;
}
.jn-ft .ft-cta-txt{
  font-size:clamp(21px,2.4vw,30px);font-weight:800;letter-spacing:-.03em;color:#fff;margin:0;
  line-height:1.4;
}
.jn-ft .ft-cta-txt em{font-style:normal;color:var(--ft-key)}
.jn-ft .ft-cta-btn{
  display:inline-flex;align-items:center;gap:10px;flex:0 0 auto;
  height:56px;padding:0 32px;border-radius:999px;
  background:#fff;color:#11163C!important;
  font-size:15.5px;font-weight:800;letter-spacing:-.01em;
  transition:transform .3s cubic-bezier(.34,1.4,.64,1),box-shadow .3s ease;
  box-shadow:0 14px 28px -16px rgba(0,0,0,.6);
}
.jn-ft .ft-cta-btn:hover{transform:translateY(-3px);box-shadow:0 20px 36px -16px rgba(0,0,0,.6)}
.jn-ft .ft-cta-btn svg{width:16px;height:16px}

/* ── 본문 ────────────────────────────────── */
.jn-ft .ft-main{padding:64px 0 56px}
.jn-ft .ft-cols{
  display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:56px;align-items:start;
}
.jn-ft .ft-co{
  font-size:22px;font-weight:800;letter-spacing:-.02em;color:#fff;margin:0 0 14px;
}
.jn-ft .ft-slogan{font-size:15px;line-height:1.8;color:var(--ft-dim);margin:0 0 26px;max-width:30em}
/* 사업자 정보 — 회사명 바로 아래에 한 덩어리로 둔다(법정 표기) */
.jn-ft .ft-info{
  list-style:none;margin:0 0 26px;padding:0;
  display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 0;
}
.jn-ft .ft-info li{
  display:flex;align-items:baseline;gap:9px;font-size:14px;line-height:1.6;
  padding-right:18px;margin-right:18px;border-right:1px solid var(--ft-line);
}
.jn-ft .ft-info li:last-child,.jn-ft .ft-info li.is-row{border-right:0;padding-right:0;margin-right:0}
.jn-ft .ft-info li.is-row{flex:0 0 100%}
.jn-ft .ft-info span{
  flex:0 0 auto;font-size:11.5px;font-weight:600;letter-spacing:.02em;color:var(--ft-dim);
}
.jn-ft .ft-info b{font-weight:600;color:rgba(255,255,255,.85);letter-spacing:-.01em}

.jn-ft .ft-badge{
  display:inline-flex;align-items:center;gap:8px;
  padding:7px 14px;border:1px solid var(--ft-line);border-radius:999px;
  font-family:'IBM Plex Mono','Consolas',monospace;font-size:11.5px;font-weight:600;
  letter-spacing:.1em;color:var(--ft-key);
}

.jn-ft .ft-h{
  font-family:'IBM Plex Mono','Consolas',monospace;
  font-size:11px;font-weight:600;letter-spacing:.2em;color:var(--ft-dim);
  margin:0 0 20px;text-transform:uppercase;
}
.jn-ft .ft-list{list-style:none;margin:0;padding:0}
.jn-ft .ft-list li{display:flex;gap:12px;padding:8px 0;font-size:14.5px;line-height:1.6}
.jn-ft .ft-list li + li{border-top:1px dashed rgba(255,255,255,.08)}
.jn-ft .ft-list b{
  flex:0 0 58px;font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:600;
  color:var(--ft-dim);letter-spacing:.08em;padding-top:2px;
}
.jn-ft .ft-list span{color:rgba(255,255,255,.82)}
.jn-ft .ft-list a:hover{color:#fff;text-decoration:underline}

.jn-ft .ft-nav{list-style:none;margin:0;padding:0}
.jn-ft .ft-nav li{padding:7px 0}
.jn-ft .ft-nav a{font-size:14.5px;color:var(--ft-txt);transition:color .18s ease,padding-left .18s ease}
.jn-ft .ft-nav a:hover{color:#fff;padding-left:5px}

/* ── 하단 ────────────────────────────────── */
.jn-ft .ft-bottom{
  background:var(--ft-deep);border-top:1px solid var(--ft-line);
  padding:26px 0;
}
.jn-ft .ft-bottom-in{
  display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;
}
.jn-ft .ft-policy{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:0 18px}
.jn-ft .ft-policy li{font-size:13px;color:var(--ft-dim)}
.jn-ft .ft-policy li + li::before{content:"";display:inline-block;width:1px;height:11px;background:var(--ft-line);margin-right:18px;vertical-align:-1px}
.jn-ft .ft-policy a{transition:color .18s ease}
.jn-ft .ft-policy a:hover{color:#fff}
.jn-ft .ft-policy .is-key{color:rgba(255,255,255,.78);font-weight:600}
.jn-ft-copy{font-size:13px;color:var(--ft-dim);letter-spacing:-.01em}

/* ── 반응형 ──────────────────────────────── */
@media (max-width:1100px){
  .jn-ft .ft-wrap{padding:0 32px}
  .jn-ft .ft-cols{grid-template-columns:1fr 1fr;gap:44px}
  .jn-ft .ft-cols > div:first-child{grid-column:1 / -1}
}
@media (max-width:768px){
  .jn-ft .ft-wrap{padding:0 22px}
  .jn-ft .ft-cta{padding:38px 0}
  .jn-ft .ft-cta-in{flex-direction:column;align-items:flex-start;gap:22px}
  .jn-ft .ft-cta-btn{width:100%;justify-content:center;height:52px}
  .jn-ft .ft-main{padding:44px 0 38px}
  .jn-ft .ft-cols{grid-template-columns:1fr;gap:36px}
  .jn-ft .ft-bottom-in{flex-direction:column;align-items:flex-start;gap:14px}
  .jn-ft .ft-co{font-size:19px}
  .jn-ft .ft-info li{flex:0 0 100%;border-right:0;padding-right:0;margin-right:0}
}
