@charset "UTF-8";

/*
 * WordPress compatibility safeguards.
 *
 * The legacy site uses several overlapping animation layers. On WordPress,
 * their timing can leave the hero and portfolio cards transparent after a
 * page reload or during a full-page capture. Keep the original composition
 * visible first; motion can be reintroduced only when it cannot hide content.
 */

body#home .mv_slider {
  background: #101116 !important;
}

body#home .mv_img_wrap {
  display: block !important;
  opacity: 0 !important;
  visibility: hidden !important;
  animation: none !important;
  transition: none !important;
  transform: none !important;
  z-index: 0 !important;
}

body#home .mv_img_wrap:first-child {
  opacity: 1 !important;
  visibility: visible !important;
  z-index: 1 !important;
}

body#home .mv_img_wrap:first-child img {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  animation: none !important;
  transition: none !important;
  transform: none !important;
}

/* Never let scroll-reveal effects hide real page content. */
body#home .ab-reveal,
body#home .ab-reveal.is-visible,
body#home .js-reveal,
body#home .js-reveal.is-visible,
body#home .works_showcase_lead,
body#home .works_filter,
body#home .works_category_head,
body#home .works_portfolio_card,
body#home .budget_guide_intro,
body#home .budget_card,
body#home .budget_note,
body#home .top_service_box_ttl,
body#home .top_service_box01 li,
body#home .top_access_box,
body#home .top_gmap,
body#home .top_news_box {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

body#home .works_showcase,
body#home .works_category_block,
body#home .works_showcase_grid {
  visibility: visible !important;
}

/* Filtering remains functional; only an explicit filtered state is hidden. */
body#home .works_category_block.is-hidden {
  display: none !important;
}

@media (prefers-reduced-motion: reduce) {
  body#home .mv_img_wrap,
  body#home .ab-reveal,
  body#home .js-reveal {
    animation: none !important;
    transition: none !important;
  }
}
