.recentcomments a {
  display: inline !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.custom-background {
  background-color: #ffffff;
}

body,
#content,
.entry-content,
.post-content,
.page-content,
.post-excerpt,
.entry-summary,
.entry-excerpt,
.widget-area,
.widget,
.sidebar,
#sidebar,
footer,
.footer,
#footer,
.site-footer {
  font-family: "Noto Sans KR" !important;
}

#site-title,
.site-title,
#site-title a,
.site-title a,
.entry-title,
.entry-title a,
h1,
h2,
h3,
h4,
h5,
h6,
.widget-title {
  font-family: "Noto Sans KR" !important;
}

button,
input,
select,
textarea {
  font-family: "Noto Sans KR" !important;
}

#site-title,
.site-title,
#site-title a,
.site-title a,
#logo,
#logo a,
.logo,
.logo a {
  font-family: "Noto Sans KR" !important;
}

#site-description,
.site-description {
  font-family: "Noto Sans KR" !important;
}

.menu,
.page_item a,
.menu-item a {
  font-family: "Noto Sans KR" !important;
}

.entry-content,
.entry-content p,
.post-content,
.page-content,
.post-excerpt,
.entry-summary,
.entry-excerpt,
.excerpt,
.excerpt p,
.type-post p,
.type-page p {
  font-family: "Noto Sans KR" !important;
}

.entry-content h1,
.post-content h1,
.page-content h1,
#content h1,
.single-post-wrap h1,
.page-content-wrap h1 {
  font-family: "Noto Sans KR" !important;
}

.entry-content h2,
.post-content h2,
.page-content h2,
#content h2,
.single-post-wrap h2,
.page-content-wrap h2 {
  font-family: "Noto Sans KR" !important;
}

.entry-content h3,
.post-content h3,
.page-content h3,
#content h3,
.single-post-wrap h3,
.page-content-wrap h3 {
  font-family: "Noto Sans KR" !important;
}

.entry-content h4,
.post-content h4,
.page-content h4,
#content h4,
.single-post-wrap h4,
.page-content-wrap h4 {
  font-family: "Noto Sans KR" !important;
}

.entry-content h5,
.post-content h5,
.page-content h5,
#content h5,
.single-post-wrap h5,
.page-content-wrap h5 {
  font-family: "Noto Sans KR" !important;
}

.entry-content h6,
.post-content h6,
.page-content h6,
#content h6,
.single-post-wrap h6,
.page-content-wrap h6 {
  font-family: "Noto Sans KR" !important;
}

.widget-title,
.widget-area h1,
.widget-area h2,
.widget-area h3,
.widget-area h4,
.widgets-area h5,
.widget-area h6,
#secondary h1,
#secondary h2,
#secondary h3,
#secondary h4,
.widgets-area h5,
#secondary h6 {
  font-family: "Noto Sans KR" !important;
}

.widget-area,
.widget,
.sidebar,
#sidebar,
#secondary {
  font-family: "Noto Sans KR" !important;
}

footer h1,
footer h2,
footer h3,
footer h4,
footer h5,
footer h6,
.footer h1,
.footer h2,
.footer h3,
.footer h4,
.footer h5,
.footer h6 #footer h1,
#footer h2,
#footer h3,
#footer h4,
#footer h5,
#footer h6 {
  font-family: "Noto Sans KR" !important;
}

footer,
#footer,
.footer,
.site-footer {
  font-family: "Noto Sans KR" !important;
}

/* 화면 전체를 덮는 어두운 배경 */
.rcps-popup-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.5);
  display: none; /* 관리자 요청: 팝업 비활성화 (원복시 flex) */
  justify-content: center;
  align-items: center;
  z-index: 99999;
}

/* 팝업 박스 */
.rcps-popup-box {
  background: #ffffff;
  max-width: 900px; /* 가로 길이 고정 느낌 */
  width: 90%;
  max-height: 90vh; /* 화면의 90%까지만 */
  overflow-y: auto; /* 안에서 스크롤 */
  border-radius: 8px;
  padding: 16px 16px 24px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25);
  position: relative;
}

/* 닫기 버튼 */
.rcps-popup-close {
  position: absolute;
  top: 8px;
  right: 8px;
  border: none;
  background: #333;
  color: #fff;
  padding: 4px 10px;
  border-radius: 4px;
  cursor: pointer;
  font-size: 12px;
}

/* 이미지 */
.rcps-popup-image {
  display: block;
  width: 100%; /* 팝업 박스 너비(최대 900px)에 맞춤 */
  height: auto;
  margin-top: 24px; /* 닫기 버튼과 약간 간격 */
}

/*
 * 메인 히어로(62f2dca5): 헤더와 겹치도록 margin-top 을 음수로 두면
 * 문서에서 차지하는 세로 높이가 줄어들어 푸터가 첫 화면에 같이 보인다.
 * 오버랩 높이만큼 min-height 를 더해 첫 뷰포트는 배너만 보이게 한다.
 */
body.home.elementor-page-9
  .elementor.elementor-9
  .elementor-element.elementor-element-62f2dca5.elementor-section.elementor-top-section {
  min-height: calc(100vh + var(--layout-header-inner-h, 76px));
  min-height: calc(100svh + var(--layout-header-inner-h, 76px));
}

/* 메인 히어로: 카피(50%) + 퀵링크(25%) 행을 컨테이너 안에서 가로 중앙 */
body.home.elementor-page-9
  .elementor.elementor-9
  .elementor-element.elementor-element-62f2dca5
  > .elementor-container
  > .elementor-row {
  display: flex;
  justify-content: center;
}

/*
 * 모바일: 히어로를 세로 flex로 채운 뒤
 * - 카피는 위쪽, Service/About/Contact 박스(5855d22f)는 가로·세로 "끝"에 고정
 */
@media (max-width: 767px) {
  body.home.elementor-page-9
    .elementor.elementor-9
    .elementor-element.elementor-element-62f2dca5.elementor-section.elementor-top-section {
    display: flex;
    flex-direction: column;
    min-height: 90vh;
    min-height: 90svh;
  }

  body.home.elementor-page-9
    .elementor.elementor-9
    .elementor-element.elementor-element-62f2dca5
    > .elementor-container {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    min-height: 0;
    width: 100%;
  }

  body.home.elementor-page-9
    .elementor.elementor-9
    .elementor-element.elementor-element-62f2dca5
    > .elementor-container
    > .elementor-row {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    justify-content: flex-end;
    align-items: stretch;
    width: 100%;
    min-height: 0;
  }

  body.home.elementor-page-9
    .elementor.elementor-9
    .elementor-element.elementor-element-62f2dca5
    .elementor-element.elementor-element-3fc2350d {
    width: 100%;
    max-width: none;
    align-self: stretch;
  }

  body.home.elementor-page-9
    .elementor.elementor-9
    .elementor-element.elementor-element-62f2dca5
    .elementor-element.elementor-element-3fc2350d
    > .elementor-column-wrap.elementor-element-populated {
    margin: 0 !important;
    padding: 0 20px !important;
  }

  body.home.elementor-page-9
    .elementor.elementor-9
    .elementor-element.elementor-element-62f2dca5
    .elementor-element.elementor-element-5855d22f {
    width: auto;
    max-width: min(32rem, calc(100% - 24px));
    align-self: center;
    flex: 0 0 auto;
  }

  body.home.elementor-page-9
    .elementor.elementor-9
    .elementor-element.elementor-element-62f2dca5
    .elementor-element.elementor-element-5855d22f
    > .elementor-column-wrap.elementor-element-populated {
    margin: 8px auto 40px auto !important;
    padding: 12px 12px 12px 16px !important;
  }

  body.home.elementor-page-9
    .elementor.elementor-9
    .elementor-element.elementor-element-62f2dca5
    .elementor-element.elementor-element-5855d22f
    > .elementor-column-wrap.elementor-element-populated
    > .elementor-widget-wrap {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-end !important;
    align-content: flex-end !important;
  }

  body.home.elementor-page-9
    .elementor.elementor-9
    .elementor-element.elementor-element-62f2dca5
    .elementor-element.elementor-element-5855d22f
    > .elementor-column-wrap.elementor-element-populated
    > .elementor-widget-wrap
    > .elementor-element {
    width: 100%;
    margin-bottom: 0 !important;
  }

  body.home.elementor-page-9
    .elementor.elementor-9
    .elementor-element.elementor-element-62f2dca5
    .elementor-element.elementor-element-5855d22f
    .elementor-text-editor
    p {
    margin: 0;
  }
}

/* 메인 히어로: Elementor Swiper 정적보내기 대신 CSS 슬라이드 (62f2dca5) */
@keyframes bi-hero-bg-slide {
  0%,
  43.75% {
    transform: translate3d(0, 0, 0);
  }
  50%,
  93.75% {
    transform: translate3d(-50%, 0, 0);
  }
  100% {
    transform: translate3d(0, 0, 0);
  }
}

.elementor-9 .elementor-element.elementor-element-62f2dca5 > .bi-hero-bg-slideshow {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  overflow: hidden;
}

.elementor-9 .elementor-element.elementor-element-62f2dca5 .bi-hero-bg-slideshow__viewport {
  width: 100%;
  height: 100%;
}

.elementor-9 .elementor-element.elementor-element-62f2dca5 .bi-hero-bg-slideshow__track {
  display: flex;
  flex-direction: row;
  width: 200%;
  height: 100%;
  animation: bi-hero-bg-slide 8s ease-in-out infinite;
}

.elementor-9 .elementor-element.elementor-element-62f2dca5 .bi-hero-bg-slideshow__slide {
  flex: 0 0 50%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

@media (prefers-reduced-motion: reduce) {
  .elementor-9 .elementor-element.elementor-element-62f2dca5 .bi-hero-bg-slideshow__track {
    animation: none;
    transform: translate3d(0, 0, 0);
  }
}
