/* Mobile home, one idea per screen.
   Loaded last on the home page only, ≤767px. Every rule is scoped with
   body.nk-refined[data-page=home] so it outranks refined.css / mobile.css /
   home-compact.css without touching desktop composition.
   Goal: same content, fewer screens (9.4 → ~6.5 at 390×844), one CTA per screen,
   list rows instead of stacked cards, 15px minimum text, 4.5:1 contrast. */
@media (max-width: 767px) {
  :root { --nk-m-gutter: 20px; --nk-m-ink-2: #55566d; --nk-m-rule: #e8e6f0; }

  /* ── Rhythm: sections breathe 36px, not 44–58px ── */
  body.nk-refined[data-page=home] :is(.fbx,.kkx,.svx,.prx,.crx,.fqx,.cvx,.nlx) { padding:36px var(--nk-m-gutter)!important; }
  body.nk-refined[data-page=home] #main-content>.ctx { padding:36px var(--nk-m-gutter) 44px!important; }
  body.nk-refined[data-page=home] .nk-guide-deck { margin:8px auto 36px; }
  body.nk-refined[data-page=home] #main-content h2:not(.v2 *) { font-size:23px!important; line-height:1.35!important; letter-spacing:-.04em!important; }
  body.nk-refined[data-page=home] #main-content :is(.kkx-lead,.prx-lede,.crx-lede,.fqx-lede,.nlx-desc,.chx-desc,.ctx-body) { font-size:16px!important; line-height:1.7!important; color:var(--nk-m-ink-2)!important; }
  /* Secondary text: #78798d on white is 4.0:1, lift it to 5.9:1 */
  body.nk-refined[data-page=home] #main-content :is(time,small,.fbx-cell-label,.fbx-press-date,.fbx-pf-sector,.svx-foot,.kkx-note,.nlx-policy,.nlx-note,.hx-label,.hx-meta-right,.chx-en,.kkx-num,.cvx-num,.svx-num,.prx-num,.ctx-step-num):not(.v2 *) { color:var(--nk-m-ink-2)!important; } /* v2 벤토의 단위(원·주·배·팀)까지 회색으로 덮던 규칙 — 제외 (2026-09-22) */

  /* ── Hero fold, in reading order: living 3D mark → kicker → headline → one CTA.
     hero-copy becomes display:contents so its children and the playground share one column. ── */
  body.nk-refined[data-page=home] .nk-hero.hx-fold { padding-top:8px!important; row-gap:0; }
  body.nk-refined[data-page=home] .hero-copy { display:contents!important; }
  body.nk-refined[data-page=home] .playground { order:1; height:270px!important; min-height:270px!important; margin:0!important; animation:nk-rise .45s cubic-bezier(.22,.7,.3,1) both; }
  body.nk-refined[data-page=home] :is(#sculpture,.sculpture-poster) { transform:scale(.96); transform-origin:50% 50%; }
  body.nk-refined[data-page=home] .fallback-art { width:160px; height:176px; left:calc(50% - 80px); top:30px; }
  body.nk-refined[data-page=home] .label-one { top:14px; left:0; }
  body.nk-refined[data-page=home] .label-two { right:0; bottom:48px; }
  body.nk-refined[data-page=home] .play-note { bottom:4px; }
  body.nk-refined[data-page=home] .play-note>span { font-size:14px!important; padding:4px 8px; }
  body.nk-refined[data-page=home] .hx-kicker { order:2; display:block!important; margin:10px 0 8px!important; font-size:15px!important; font-weight:600!important; color:#4031ff!important; letter-spacing:0!important; animation:nk-rise .7s cubic-bezier(.22,.7,.3,1) .15s both; }
  body.nk-refined[data-page=home] #main-content .hx-h1 { order:3; font-size:28px!important; line-height:1.36!important; margin:0!important; animation:nk-rise .7s cubic-bezier(.22,.7,.3,1) .25s both; }
  body.nk-refined[data-page=home] .hx-meta { display:none!important; }
  body.nk-refined[data-page=home] .nk-hero-cta { order:4; justify-self:start; margin-top:18px!important; min-height:52px; padding:14px 22px!important; border-radius:14px!important; animation:nk-rise .7s cubic-bezier(.22,.7,.3,1) .35s both; }
  @keyframes nk-rise { from { opacity:0; transform:translateY(14px); } to { opacity:1; transform:none; } }

  /* ── Below the fold: photo as a 2:1 band, statement, one-line about, no duplicate CTA ── */
  body.nk-refined[data-page=home] .hx-wrap { padding:18px var(--nk-m-gutter) 28px!important; }
  body.nk-refined[data-page=home] .hx-photo { aspect-ratio:2/1!important; margin-bottom:20px!important; border-radius:16px!important; }
  body.nk-refined[data-page=home] #main-content .hx-statement { font-size:19px!important; line-height:1.6!important; margin-bottom:16px!important; }
  body.nk-refined[data-page=home] .hx-about { margin-top:0!important; padding-top:14px!important; }
  body.nk-refined[data-page=home] .hx-label { display:none!important; }
  body.nk-refined[data-page=home] #main-content .hx-about-desc { font-size:16px!important; line-height:1.7!important; margin:0!important; }
  body.nk-refined[data-page=home] .hx-cta { display:none!important; }
  body.nk-refined[data-page=home] .hx-marquee { padding:12px 0!important; }
  body.nk-refined[data-page=home] .hx-marquee-track :is(span,em) { font-size:16px!important; }

  /* ── Program board: title + link on one row, poster as a horizontal card, next card peeks ── */
  body.nk-refined[data-page=home] .fbx-head { flex-direction:row!important; align-items:baseline!important; justify-content:space-between; gap:12px; margin-bottom:14px!important; }
  body.nk-refined[data-page=home] .fbx-head-copy { font-size:20px!important; }
  body.nk-refined[data-page=home] .fbx-more { flex-shrink:0; font-size:15px!important; font-weight:600; color:#4031ff!important; }
  body.nk-refined[data-page=home] .nk-program-rail { gap:10px!important; padding:2px var(--nk-m-gutter) 6px!important; scroll-padding-inline:var(--nk-m-gutter); }
  body.nk-refined[data-page=home] .nk-program-card { flex:0 0 78vw!important; max-width:320px; display:grid!important; grid-template-columns:96px minmax(0,1fr); align-items:stretch; border:1px solid var(--nk-m-rule)!important; border-radius:16px; box-shadow:none!important; }
  body.nk-refined[data-page=home] .nk-program-card img { height:124px!important; width:100%; object-fit:cover!important; object-position:top; padding:0!important; background:#f0f0f6; }
  body.nk-refined[data-page=home] .nk-program-card .fbx-card-meta { display:flex!important; flex-direction:column; justify-content:center; align-items:flex-start; gap:6px; min-height:0!important; padding:12px 14px!important; font-size:15px!important; line-height:1.45!important; white-space:normal; }
  body.nk-refined[data-page=home] .fbx-closed-label { margin:0!important; font-size:13px!important; padding:3px 7px; }
  body.nk-refined[data-page=home] .nk-shelf-controls { margin:4px 0 0!important; gap:10px; }
  body.nk-refined[data-page=home] .nk-shelf-controls button { min-height:38px; padding:6px 12px; font-size:14px; }
  body.nk-refined[data-page=home] .nk-shelf-controls span { font-size:14px; }

  /* ── Board: segmented control, then one compact list ── */
  body.nk-refined[data-page=home] .fbx-tri { margin-top:12px!important; }
  body.nk-refined[data-page=home] .nk-board-nav { margin:14px 0 10px; padding:4px; gap:4px; background:#f3f2f8; border:1px solid var(--nk-m-rule); border-radius:14px; }
  body.nk-refined[data-page=home] .nk-board-nav button { min-height:40px; border:0; border-radius:10px; background:transparent; font-weight:600; }
  body.nk-refined[data-page=home] .nk-board-nav button[aria-pressed=true] { background:#fff; color:#11113a; box-shadow:0 4px 14px #11113a0f; }
  body.nk-refined[data-page=home] .fbx-cell { padding:18px 18px 16px!important; border-radius:16px!important; }
  body.nk-refined[data-page=home] .fbx-cell-title { font-size:19px!important; margin-top:0!important; }
  body.nk-refined[data-page=home] .fbx-letter-list { margin-top:6px!important; }
  body.nk-refined[data-page=home] .fbx-letter-list li { padding-block:0!important; }
  body.nk-refined[data-page=home] .fbx-letter-list a { flex-direction:column; align-items:flex-start; gap:2px; min-height:0; padding:11px 0; font-size:15px!important; line-height:1.45!important; }
  body.nk-refined[data-page=home] .fbx-letter-list a span { -webkit-line-clamp:2; }
  body.nk-refined[data-page=home] .fbx-letter-list time { margin-left:0; font-size:13px!important; }
  body.nk-refined[data-page=home] .fbx-cell-more { margin-top:10px!important; font-size:15px!important; color:#4031ff!important; }
  body.nk-refined[data-page=home] .fbx-press-stack { min-height:0!important; }
  body.nk-refined[data-page=home] .fbx-press-photo { margin-top:10px!important; aspect-ratio:2/1!important; }
  body.nk-refined[data-page=home] .fbx-press-title { font-size:16px!important; line-height:1.5!important; }
  body.nk-refined[data-page=home] .fbx-pf-window { height:200px!important; min-height:0!important; flex:0 0 auto!important; } /* flex:1 이면 높이 미정 컬럼 안에서 0으로 접힘 */
  body.nk-refined[data-page=home] .fbx-pf-track li { padding:9px 0!important; }

  /* ── Chapter divider: one compact heading block ── */
  body.nk-refined[data-page=home] .chx { padding:28px var(--nk-m-gutter) 0!important; border-top:2px solid #11113a!important; }
  body.nk-refined[data-page=home] .chx-wrap { padding-bottom:0!important; }
  body.nk-refined[data-page=home] .chx-row { gap:4px!important; align-items:flex-start!important; }
  body.nk-refined[data-page=home] .chx-en { order:0; font-size:13px!important; letter-spacing:.12em!important; text-transform:uppercase; }
  body.nk-refined[data-page=home] .chx-side { padding-bottom:0!important; max-width:none!important; }
  body.nk-refined[data-page=home] .chx-ko { font-size:23px!important; margin:0 0 4px!important; }
  body.nk-refined[data-page=home] .chx-link { margin-top:10px!important; min-height:40px; padding:8px 14px!important; font-size:15px!important; }

  /* ── Kokiri plate: tighter, rows at 56px, full-width CTA ── */
  body.nk-refined[data-page=home] .kkx-plate { padding:22px 18px 20px!important; border-radius:20px!important; }
  body.nk-refined[data-page=home] .kkx-head { margin-bottom:10px!important; gap:6px!important; }
  body.nk-refined[data-page=home] .kkx-en { font-size:15px!important; margin-bottom:2px!important; }
  body.nk-refined[data-page=home] .kkx-cols { margin:4px 0 16px!important; }
  body.nk-refined[data-page=home] .nk-mobile-detail>summary { min-height:56px; padding:14px 28px 14px 0; }
  body.nk-refined[data-page=home] :is(.kkx-ko,.cvx-ko) { font-size:18px!important; }
  body.nk-refined[data-page=home] :is(.kkx-body,.cvx-body) { padding:0 0 16px 38px; font-size:16px!important; line-height:1.7!important; }
  body.nk-refined[data-page=home] .kkx-foot { gap:10px!important; }
  body.nk-refined[data-page=home] .kkx-cta { width:100%; justify-content:center; min-height:52px; padding:14px 20px!important; font-size:16px!important; border-radius:14px!important; }
  body.nk-refined[data-page=home] .kkx-note { font-size:15px!important; margin:0!important; }

  /* ── Guide deck: tabs, then list rows (title left, figure right) instead of tall cards ── */
  body.nk-refined[data-page=home] .nk-guide-deck:not([data-enhanced]) [data-deck-panel]:not([data-deck-panel=services]) { display:none; }
  body.nk-refined[data-page=home] .nk-guide-tabs { gap:4px; padding:4px; border-radius:14px; }
  body.nk-refined[data-page=home] .nk-guide-tabs button { min-height:44px; padding:10px 6px; font-size:15px!important; border-radius:10px; }
  body.nk-refined[data-page=home] .nk-guide-deck :is(.svx-wrap,.prx-wrap,.crx-wrap,.fqx-wrap) { padding-top:22px!important; }
  body.nk-refined[data-page=home] .nk-guide-deck :is(.svx-head,.prx-head,.crx-head,.fqx-head) { margin-bottom:12px!important; }
  body.nk-refined[data-page=home] .nk-guide-deck :is(.prx-head,.crx-head,.fqx-head) { gap:4px!important; }
  body.nk-refined[data-page=home] .svx-cols { gap:0!important; border-top:1px solid var(--nk-m-rule); }
  body.nk-refined[data-page=home] .svx-col { grid-template-columns:minmax(0,1fr) auto!important; grid-template-areas:'label stat' 'body body' 'foot foot'!important; gap:4px 14px!important; align-items:baseline; padding:16px 0!important; border:0!important; border-bottom:1px solid var(--nk-m-rule)!important; border-radius:0!important; background:transparent!important; box-shadow:none!important; }
  body.nk-refined[data-page=home] .svx-num { display:none!important; }
  body.nk-refined[data-page=home] .svx-label { font-size:17px!important; font-weight:700; }
  body.nk-refined[data-page=home] .svx-stat { flex-direction:row!important; align-items:baseline; gap:6px; font-size:22px!important; line-height:1.2!important; white-space:nowrap; }
  body.nk-refined[data-page=home] .svx-stat em { font-size:14px!important; margin:0!important; }
  body.nk-refined[data-page=home] .svx-body { font-size:16px!important; line-height:1.65!important; color:var(--nk-m-ink-2)!important; }
  body.nk-refined[data-page=home] .svx-foot { font-size:14px!important; }
  body.nk-refined[data-page=home] .prx-step { padding:14px 0!important; }
  body.nk-refined[data-page=home] .prx-num { font-size:22px!important; margin:0 14px 0 0!important; }
  body.nk-refined[data-page=home] .prx-time { font-size:14px!important; margin-bottom:2px!important; }
  body.nk-refined[data-page=home] .prx-label { font-size:18px!important; margin-bottom:2px!important; }
  body.nk-refined[data-page=home] .prx-desc { font-size:16px!important; margin-left:36px!important; }
  body.nk-refined[data-page=home] .crx-row { padding:14px 0!important; }
  body.nk-refined[data-page=home] .crx-statement { font-size:18px!important; }
  body.nk-refined[data-page=home] .crx-note { font-size:16px!important; line-height:1.65!important; }
  body.nk-refined[data-page=home] .fqx-item { margin-bottom:8px; border-radius:14px; }
  body.nk-refined[data-page=home] .fqx-q { padding:14px 16px!important; font-size:16px!important; }
  body.nk-refined[data-page=home] .fqx-a { padding:0 16px 14px 46px!important; font-size:16px!important; line-height:1.7!important; }

  /* ── Values and the chapter-02 heading are desktop-only; phones go straight to the closing plate ── */
  body.nk-refined[data-page=home] :is(.cvx,.chx[data-chapter="02"]) { display:none!important; }
  /* ── Values: rows, no card chrome ── */
  body.nk-refined[data-page=home] .cvx { padding-top:24px!important; }
  body.nk-refined[data-page=home] .cvx-head { margin-bottom:6px!important; }
  body.nk-refined[data-page=home] .cvx-cols { margin-top:0!important; }

  /* ── Newsletter: input and button on one row, policy as a compact note ── */
  body.nk-refined[data-page=home] .nlx-wrap { gap:14px!important; }
  body.nk-refined[data-page=home] .nlx-form { min-width:0!important; width:100%; }
  body.nk-refined[data-page=home] .nlx-title { margin-bottom:6px!important; }
  body.nk-refined[data-page=home] .nlx-input-row { flex-direction:row!important; flex-wrap:nowrap!important; align-items:stretch!important; gap:8px!important; }
  body.nk-refined[data-page=home] .nlx-input { flex:1 1 0!important; width:auto!important; }
  body.nk-refined[data-page=home] .nlx-input { min-height:52px!important; padding-inline:14px!important; font-size:16px!important; }
  body.nk-refined[data-page=home] .nlx-submit { flex:0 0 auto!important; width:auto!important; min-width:0; min-height:52px!important; padding:0 18px!important; font-size:16px!important; }
  body.nk-refined[data-page=home] .nlx-submit::after { display:none; }
  body.nk-refined[data-page=home] .nlx-policy { margin-top:12px; font-size:15px!important; line-height:1.55!important; }
  body.nk-refined[data-page=home] .nlx-note { margin-top:8px; font-size:15px!important; }

  /* ── Closing plate: three figures side by side, CTA full width ── */
  body.nk-refined[data-page=home] .ctx .ctx-wrap { padding:24px 20px 20px!important; border-radius:20px!important; }
  body.nk-refined[data-page=home] .ctx .ctx-title { font-size:23px!important; line-height:1.35!important; margin-bottom:12px!important; }
  body.nk-refined[data-page=home] .ctx .ctx-row { gap:16px!important; margin-bottom:18px!important; }
  body.nk-refined[data-page=home] .ctx .ctx-body { margin:0 0 14px!important; }
  body.nk-refined[data-page=home] .ctx .ctx-cta { width:100%; justify-content:center; min-height:52px; padding:14px 20px!important; font-size:16px!important; }
  body.nk-refined[data-page=home] .ctx .ctx-steps { grid-template-columns:repeat(3,minmax(0,1fr))!important; gap:8px!important; margin-top:0!important; }
  body.nk-refined[data-page=home] .ctx .ctx-step { display:flex!important; flex-direction:column; flex-wrap:nowrap!important; align-items:center; gap:2px!important; padding:12px 6px!important; text-align:center; border-radius:14px; }
  body.nk-refined[data-page=home] .ctx .ctx-step-num { font-size:13px!important; }
  body.nk-refined[data-page=home] .ctx .ctx-step-stat { font-size:22px!important; margin:0!important; }
  body.nk-refined[data-page=home] .ctx .ctx-step-desc { flex-basis:auto!important; margin:0!important; font-size:15px!important; }
}

@media (prefers-reduced-motion: reduce) {
  body.nk-refined[data-page=home] :is(.playground,.hx-kicker,.hx-h1,.nk-hero-cta) { animation:none!important; }
}
@media (max-width: 359px) {
  body.nk-refined[data-page=home] #main-content .hx-h1 { font-size:25px!important; }
  body.nk-refined[data-page=home] .playground { height:240px!important; min-height:240px!important; }
  body.nk-refined[data-page=home] .nk-program-card { grid-template-columns:84px minmax(0,1fr); }
  body.nk-refined[data-page=home] .svx-col { grid-template-columns:1fr!important; grid-template-areas:'label' 'stat' 'body' 'foot'!important; }
}

/* ── Visual boundaries on phones. Sections alternate paper/gray bands, every group of
   items sits in a bounded card, and tappable rows carry a chevron so context and
   affordance are legible at a glance (Toss-style list system). ── */
@media (max-width: 767px) {
  :root { --nk-m-band: #f4f4f9; --nk-m-card-rule: #d9d7e6; }
  /* Bands */
  body.nk-refined[data-page=home] .fbx { background:var(--nk-m-band)!important; border-top:1px solid var(--nk-m-card-rule); border-bottom:1px solid var(--nk-m-card-rule); }
  body.nk-refined[data-page=home] .kkx { padding-bottom:28px!important; }
  body.nk-refined[data-page=home] .nk-guide-deck { margin:0!important; padding:24px 20px 32px; background:var(--nk-m-band); border-top:1px solid var(--nk-m-card-rule); border-bottom:1px solid var(--nk-m-card-rule); }
  body.nk-refined[data-page=home] .cvx { padding-bottom:32px!important; }
  body.nk-refined[data-page=home] .nlx { border-top:1px solid var(--nk-m-card-rule); border-bottom:1px solid var(--nk-m-card-rule); }
  body.nk-refined[data-page=home] .chx { border-top:0!important; padding-top:32px!important; }

  /* Program shelf: each poster is its own framed card on the gray band */
  body.nk-refined[data-page=home] .nk-program-card { position:relative!important; gap:0; border:1px solid var(--nk-m-card-rule)!important; background:#fff; box-shadow:0 2px 10px #11113a0a!important; }
  body.nk-refined[data-page=home] .nk-program-card img { height:128px!important; border-right:1px solid var(--nk-m-card-rule); background:#e9e8f1; }
  body.nk-refined[data-page=home] .nk-program-card .fbx-card-meta { padding:12px 34px 12px 14px!important; }
  /* refined.css pins .fbx-card-meta to position:static, so the chevron anchors to the card instead */
  body.nk-refined[data-page=home] .nk-program-card::after { content:'›'; position:absolute; right:14px; top:50%; transform:translateY(-50%); font-size:22px; line-height:1; color:#8a88a3; }
  body.nk-refined[data-page=home] .nk-shelf-controls button { background:#fff; border-color:var(--nk-m-card-rule); }
  body.nk-refined[data-page=home] .nk-board-nav { background:#e9e8f1; border-color:var(--nk-m-card-rule); }
  body.nk-refined[data-page=home] .fbx-cell { border:1px solid var(--nk-m-card-rule)!important; background:#fff!important; box-shadow:0 2px 10px #11113a08; }
  body.nk-refined[data-page=home] .fbx-letter-list a { position:relative; padding-right:22px; }
  body.nk-refined[data-page=home] .fbx-letter-list a::after { content:'›'; position:absolute; right:2px; top:50%; transform:translateY(-50%); font-size:20px; color:#8a88a3; }

  /* Kokiri plate: firmer frame, rows read as tappable */
  body.nk-refined[data-page=home] .kkx-plate { border:1px solid var(--nk-m-card-rule)!important; box-shadow:0 2px 12px #11113a0a!important; }
  body.nk-refined[data-page=home] .nk-mobile-detail>summary::after { width:28px; height:28px; display:grid; place-items:center; right:0; border:1px solid var(--nk-m-card-rule); border-radius:999px; background:#fff; font-size:18px; }

  /* Guide deck: tabs + panel inside one white card; each item is a bounded row card */
  body.nk-refined[data-page=home] .nk-guide-tabs { background:#e9e8f1; border-color:var(--nk-m-card-rule); }
  body.nk-refined[data-page=home] .nk-guide-deck [data-deck-panel] { margin-top:12px; padding:4px 16px 16px; background:#fff; border:1px solid var(--nk-m-card-rule); border-radius:18px; box-shadow:0 2px 12px #11113a08; }
  body.nk-refined[data-page=home] .nk-guide-deck :is(.svx-wrap,.prx-wrap,.crx-wrap,.fqx-wrap) { padding-top:16px!important; }
  body.nk-refined[data-page=home] .nk-guide-deck :is(.svx-title,.prx-title,.crx-title,.fqx-title) { font-size:20px!important; }
  body.nk-refined[data-page=home] .svx-cols { border-top:0; display:grid!important; gap:8px!important; }
  body.nk-refined[data-page=home] .svx-col { position:relative; padding:14px 34px 14px 14px!important; border:1px solid var(--nk-m-card-rule)!important; border-radius:14px!important; background:#fafafd!important; }
  body.nk-refined[data-page=home] .svx-col::after { content:'›'; position:absolute; right:14px; top:16px; font-size:22px; line-height:1; color:#8a88a3; }
  body.nk-refined[data-page=home] .svx-go { display:none; }
  body.nk-refined[data-page=home] .prx-steps { gap:8px!important; }
  body.nk-refined[data-page=home] .prx-step { padding:14px!important; border:1px solid var(--nk-m-card-rule)!important; border-radius:14px!important; background:#fafafd; }
  body.nk-refined[data-page=home] .crx-rows { border:0!important; display:grid; gap:8px; }
  body.nk-refined[data-page=home] .crx-row { padding:14px!important; border:1px solid var(--nk-m-card-rule)!important; border-radius:14px; background:#fafafd; }
  body.nk-refined[data-page=home] .fqx-item { border:1px solid var(--nk-m-card-rule)!important; background:#fafafd; }

  /* Values: rows inside a card */
  body.nk-refined[data-page=home] .cvx-cols { padding:0 16px; border:1px solid var(--nk-m-card-rule)!important; border-radius:18px; background:#fff; box-shadow:0 2px 12px #11113a08; }
  body.nk-refined[data-page=home] .cvx-col:last-child { border-bottom:0!important; }

  /* Closing plate and newsletter keep their own frames */
  body.nk-refined[data-page=home] .ctx .ctx-wrap { border:1px solid var(--nk-m-card-rule)!important; }
  body.nk-refined[data-page=home] .ctx .ctx-step { border:1px solid var(--nk-m-card-rule)!important; background:#fff!important; }
  body.nk-refined[data-page=home] .nlx-input { border:1px solid var(--nk-m-card-rule)!important; background:#fff!important; }
}
