/* 히어로 텍스트 가상 박스 레이아웃/센터링 및 스케일 조정
   파일화 권장: css/hero_virtual_group.css
   사용 위치: index.html (inline)
*/

.hero-text-overlay.text-wrap{ position: relative; }

/* Virtual box acts as a flex container to always center content */
#heroVirtualGroup{
  position: absolute;
  pointer-events: none;
  z-index: 9;
  box-sizing: border-box;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  /* padding is set dynamically by JS to reserve top/bottom & side padding */
}

#heroTextGroup{
  /* fills the box and keeps centering stable */
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: auto; /* allow selection/clicks on text */
}

#heroTextInner{
  transform-origin: top center;
  will-change: transform;
  /* width is natural; we scale this node only */
}

/* Mobile keeps the same behavior */
@media (max-width: 767px){
  /* nothing special: same rules work on mobile too */
}
