/* 스크롤 모션 (EN\Motion) — html.en-mo 일 때만 숨긴다 (자바스크립트가 붙인 대상만) */
html.en-mo { --mo-ease: cubic-bezier(.16, 1, .3, 1); --mo-d: 36px; --mo-s: 1; --mo-b: 8px; --mo-dur: 1150ms; }
html.en-mo--soft { --mo-ease: cubic-bezier(.22, .8, .3, 1); --mo-d: 18px; --mo-b: 0px; --mo-dur: 800ms; }
html.en-mo--dynamic { --mo-d: 64px; --mo-s: .94; --mo-b: 4px; --mo-dur: 1000ms; }

/* 처음 숨길 때는 전환 없이 */
html.en-mo-init [data-mo], html.en-mo-init [data-mo-c], html.en-mo-init [data-mo-h], html.en-mo-init [data-mo-img] { transition: none !important; }

/* 섹션 · 카드 */
html.en-mo [data-mo], html.en-mo [data-mo-c] {
  opacity: 0; transform: translate3d(0, var(--mo-d), 0) scale(var(--mo-s)); filter: blur(var(--mo-b));
  transition: opacity calc(var(--mo-dur) * .75) var(--mo-ease), transform var(--mo-dur) var(--mo-ease), filter calc(var(--mo-dur) * .8) var(--mo-ease);
  transition-delay: var(--mo-delay, 0ms); will-change: opacity, transform;
}
html.en-mo [data-mo="fade"] { transform: translate3d(0, calc(var(--mo-d) * .35), 0); filter: none; }
html.en-mo [data-mo].is-in, html.en-mo [data-mo-c].is-in { opacity: 1; transform: none; filter: none; }
html.en-mo [data-mo].is-done, html.en-mo [data-mo-c].is-done { will-change: auto; }
/* 카드 쪽은 살짝 기울었다가 바로 서는 느낌 (고급 · 역동) */
html.en-mo--elegant [data-mo-c] { transform: translate3d(0, calc(var(--mo-d) * 1.1), 0) scale(.97); }
html.en-mo--dynamic [data-mo-c] { transform: translate3d(0, var(--mo-d), 0) scale(.9) rotate(-1.2deg); }

/* 제목: 아래에서 올라오며 가려진 부분이 걷힌다 */
html.en-mo [data-mo-h] {
  clip-path: inset(0 0 100% 0); transform: translate3d(0, .55em, 0); opacity: .001;
  transition: clip-path 1.1s var(--mo-ease), transform 1.1s var(--mo-ease), opacity .6s var(--mo-ease); transition-delay: var(--mo-delay, 120ms);
}
html.en-mo [data-mo-h].is-in { clip-path: inset(-.2em -.2em -.3em -.2em); transform: none; opacity: 1; }
html.en-mo--soft [data-mo-h] { clip-path: none; }

/* 카드 속 그림: 조금 크게 시작해서 제자리로 */
html.en-mo [data-mo-img] { transform: scale(1.12); transition: transform 1.8s var(--mo-ease) !important; transition-delay: var(--mo-delay, 0ms) !important; }
html.en-mo [data-mo-img].is-in { transform: scale(1); }

/* 위쪽 진행 막대 */
.en-mo-bar { position: fixed; left: 0; top: 0; z-index: 2147483000; width: 100%; height: 3px; pointer-events: none; transform-origin: 0 50%; transform: scaleX(0);
  background: linear-gradient(90deg, var(--c-accent, #f97316), #f472b6 55%, #a78bfa); box-shadow: 0 0 10px rgba(249, 115, 22, .35); }
html.has-admin-bar .en-mo-bar { top: 0; }

@media (prefers-reduced-motion: reduce) {
  html.en-mo [data-mo], html.en-mo [data-mo-c], html.en-mo [data-mo-h], html.en-mo [data-mo-img] { opacity: 1 !important; transform: none !important; filter: none !important; clip-path: none !important; transition: none !important; }
  .en-mo-bar { display: none; }
}
