/* 전 페이지 공통 미세 모션: 버튼은 올라가고 눌리며, 키보드 초점은 또렷하게. 동작 줄이기면 전부 끔 */
:where(button, .b-btn-primary, .btn-secondary, .mg-btn, .am-button, .home-warmth__hero-cta, .lp-hook__cta, .lp-sticky__cta, .lp-sticky-cta__apply, .lp-sticky-cta__tel, .hw-pcard) {
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
@media (hover:hover) {
  :where(button[type="submit"], .b-btn-primary, .mg-btn--primary, .am-button, .home-warmth__hero-cta, .lp-hook__cta, .lp-sticky__cta, .lp-sticky-cta__apply):hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 22px rgba(45,107,255,.28);
    filter: brightness(1.05);
  }
  :where(.btn-secondary, .mg-btn--quiet, .lp-sticky-cta__tel):hover { transform: translateY(-2px); }
}
:where(button, .b-btn-primary, .btn-secondary, .mg-btn, .am-button, .home-warmth__hero-cta, .lp-hook__cta, .lp-sticky__cta, .lp-sticky-cta__apply, .lp-sticky-cta__tel):active {
  transform: scale(.97);
  box-shadow: none;
}
:where(a, button, input, select, summary):focus-visible { outline: 3px solid rgba(45,107,255,.45); outline-offset: 2px; }
/* 첫 화면 주 버튼: 페이지 진입 1.2초 뒤 빛이 한 번만 스쳐 지나감 */
.home-warmth__hero-cta { position: relative; overflow: hidden; }
.home-warmth__hero-cta::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(110deg, transparent 30%, rgba(255,255,255,.45) 50%, transparent 70%);
  transform: translateX(-120%); animation: mo-shine 1.1s ease 1.2s 1 both;
}
@keyframes mo-shine { to { transform: translateX(120%); } }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition: none !important; animation: none !important; }
  .home-warmth__hero-cta::after { display: none; }
}
.home-warmth .home-warmth__hero-cta { transition: background-color .16s ease, transform .18s ease, box-shadow .18s ease, filter .18s ease; }
