/* ═══════════════════════════════════════════════════════════════
   ARTFORM — 공유 반응형 크롬 (chrome-responsive.css)
   재설계된 페이지(campus·manpower) 전용. 레거시 mobile.css 대체.
   · 공유 크롬(유틸바·헤더·햄버거·상담밴드·푸터·pg-head)만 반응형 처리
   · 페이지 본문 레이아웃은 각 페이지가 모바일 우선으로 직접 처리
   ═══════════════════════════════════════════════════════════════ */

/* 데스크톱에선 모바일 전용 요소 숨김 */
.m-burger, .m-nav { display: none; }

/* ── 태블릿/폰 (≤ 1000px) ───────────────────────────────── */
@media (max-width: 1000px) {

  html, body { overflow-x: hidden; max-width: 100%; }
  body { min-width: 0 !important; }
  .wrap, .wrap-wide { max-width: 100% !important; padding-left: 20px !important; padding-right: 20px !important; box-sizing: border-box; }
  header.site .wrap-wide, .utility .wrap-wide { max-width: 100% !important; padding-left: 20px !important; padding-right: 20px !important; }

  /* 유틸바 — 전화 pill만 남김 */
  .utility .left, .utility .ticker { display: none !important; }
  .utility .wrap-wide { justify-content: flex-end !important; }
  .utility .right a:not(.pill) { display: none !important; }

  /* 헤더 — 데스크톱 네비/CTA 숨기고 햄버거 */
  header.site .row { height: 64px !important; grid-template-columns: 1fr auto !important; gap: 0 !important; }
  nav.primary { display: none !important; }
  header.site .end { display: none !important; }
  header.site .logo img { height: 34px !important; }

  .m-burger {
    display: inline-flex; flex-direction: column; justify-content: center; gap: 5px;
    width: 44px; height: 44px; padding: 0 10px; box-sizing: border-box;
    background: none; border: none; cursor: pointer; justify-self: end;
  }
  .m-burger span { display: block; height: 2px; width: 24px; background: var(--ink); border-radius: 2px; transition: transform .25s, opacity .2s; }
  .m-burger.is-open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .m-burger.is-open span:nth-child(2) { opacity: 0; }
  .m-burger.is-open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

  .m-nav {
    display: block; position: fixed; inset: 0; height: 100dvh;
    background: var(--bg); transform: translateX(100%);
    transition: transform .3s cubic-bezier(.4,0,.2,1);
    z-index: 200; padding: 88px 28px 40px; box-sizing: border-box; overflow-y: auto;
  }
  body.m-nav-open .m-nav { transform: translateX(0); }
  body.m-nav-open { overflow: hidden; }
  .m-nav .m-links { display: flex; flex-direction: column; }
  .m-nav .m-links a { display: flex; align-items: baseline; gap: 12px; padding: 20px 4px; border-bottom: 1px solid var(--line-2); text-decoration: none; }
  .m-nav .m-links a .nm { font-family: var(--display); font-weight: 700; font-size: 24px; letter-spacing: -0.03em; color: var(--ink); }
  .m-nav .m-links a .en { font-family: var(--mono); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); }
  .m-nav .m-cta-wrap { margin-top: 28px; display: flex; flex-direction: column; gap: 14px; }
  .m-nav .m-cta { height: 58px; border-radius: 999px; background: var(--ink); color: #fff; display: flex; align-items: center; justify-content: center; gap: 10px; font-weight: 700; font-size: 16px; text-decoration: none; }
  .m-nav .m-cta .arr { color: var(--accent); }
  .m-nav .m-phone { text-align: center; font-family: var(--display); font-weight: 700; font-size: 22px; letter-spacing: -0.02em; color: var(--ink); text-decoration: none; padding: 8px; }

  /* pg-head — 세로 스택 */
  .pg-head { padding: 40px 0 32px !important; }
  .pg-head .row { grid-template-columns: 1fr !important; gap: 24px !important; padding-bottom: 28px !important; }
  .pg-head .row .rt { justify-self: start !important; max-width: 100% !important; }
  .pg-head h1 { font-size: clamp(34px, 9vw, 56px) !important; }
  .pg-head .stats { gap: 24px !important; }

  /* 상담 밴드 — 세로 스택 */
  .consult-band .wrap { padding: 56px 20px 48px !important; }
  .cb-top { grid-template-columns: 1fr !important; gap: 32px !important; padding-bottom: 32px !important; }
  .cb-top h2 { font-size: clamp(30px, 8vw, 44px) !important; }
  .cb-actions { justify-self: stretch !important; max-width: 100% !important; }
  .cb-related .grid { grid-template-columns: 1fr !important; }

  /* 푸터 — 2열 → 1.4열 정리 */
  footer.site { padding: 56px 0 28px !important; }
  footer.site .cols { grid-template-columns: 1fr 1fr !important; gap: 28px 20px !important; }
  footer.site .col.brand { grid-column: 1 / -1; }
  footer.site .meta { grid-template-columns: 1fr !important; gap: 16px !important; }
}

/* ── 폰 (≤ 560px) ───────────────────────────────────────── */
@media (max-width: 560px) {
  .wrap, .wrap-wide { padding-left: 16px !important; padding-right: 16px !important; }
  footer.site .cols { grid-template-columns: 1fr !important; }
}
