/* Hanae Badikeu UI kit — replaces former template component classes */

.is-current {
  /* current nav/footer item — styled via aria-current in theme */
}

.layout-embed {
  position: relative;
}

.layout-embed::before,
.layout-embed::after {
  content: " ";
  display: table;
  grid-column-start: 1;
  grid-row-start: 1;
  grid-column-end: 2;
  grid-row-end: 2;
}

.layout-embed::after {
  clear: both;
}

.site-prose::before,
.site-prose::after {
  content: " ";
  display: table;
}

.site-prose::after {
  clear: both;
}

.site-prose ol,
.site-prose ul {
  overflow: hidden;
}

.bg-video {
  position: relative;
  overflow: hidden;
  height: 500px;
  color: #fff;
}

.bg-video > video {
  background-size: cover;
  background-position: 50% 50%;
  position: absolute;
  margin: auto;
  width: 100%;
  height: 100%;
  inset: -100%;
  object-fit: cover;
  z-index: -100;
}

.bg-video > video::-webkit-media-controls-start-playback-button {
  display: none !important;
  -webkit-appearance: none;
}

.dyn-list__placeholder {
  display: none !important;
}

.dyn-list__empty {
  padding: 10px;
  background-color: #ddd;
}

/* 프로젝트 카드 그리드 */
.dyn-list__list,
.service-grid__list {
  grid-column-gap: 1rem;
  grid-row-gap: 2rem;
  grid-template-columns: 1fr 1fr;
  display: grid;
}

.dyn-list__item,
.service-grid__item {
  width: 100%;
}

/* Mobile nav overlay */
.nav__content {
  opacity: 1;
  transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1);
}

.nav.is-open {
  display: flex !important;
}

.nav.is-closing .nav__content {
  opacity: 0;
  transition-duration: 0.1s;
}

body.nav-open {
  overflow: hidden;
}

/* 모바일 오버레이 메뉴 */
.nav__group {
  margin-bottom: 1.75rem;
  padding-bottom: 0.25rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.nav__group > .nav__link {
  margin-bottom: 0.5rem;
  padding-bottom: 0.25rem;
}

.nav__group > .nav__link .text-large {
  font-weight: 600;
}

.nav__group-label {
  margin-bottom: 0.65rem;
  letter-spacing: 0.04em;
}

.nav__sublink {
  display: block;
  padding: 0.4rem 0;
  color: rgba(255, 255, 255, 0.85);
  font-size: 1.05rem;
  line-height: 1.4;
  text-decoration: none;
  transition: color 0.2s ease;
}

.nav__sublink:hover,
.nav__sublink.is-current {
  color: #fff;
}

.nav__sublink.is-current {
  font-weight: 600;
}

/* Project / article thumbnail hover (was IX2) */
.service-grid__link .thumbnail-project,
.articles__link .thumbnail-articles,
.news__link .thumbnail-articles {
  transition: transform 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
  transform: scale(1);
}

.service-grid__link:hover .thumbnail-project,
.articles__link:hover .thumbnail-articles,
.news__link:hover .thumbnail-articles {
  transform: scale(1.05);
}

.service-grid__link:not(:hover) .thumbnail-project,
.articles__link:not(:hover) .thumbnail-articles,
.news__link:not(:hover) .thumbnail-articles {
  transition-duration: 0.2s;
}
