/* 프론트 공통 스타일 */
*, *::before, *::after { box-sizing: border-box; }
/* 본문 섹션 기기별 숨김 (빌더 → 섹션별 PC/모바일 숨기기) */
@media (min-width: 768px) { [data-hide-pc="1"] { display: none !important; } }
@media (max-width: 767px) { [data-hide-mo="1"] { display: none !important; } }
/* overflow-x:hidden 은 overflow-y를 auto로 만들어 position:sticky(헤더 고정)를 깨뜨림.
   clip 은 가로 넘침(AOS 등)은 그대로 잘라내면서 스크롤 컨테이너를 안 만들어 sticky 유지 */
html, body { margin: 0; padding: 0; overflow-x: clip; }
html:not(.is-preview) { scroll-behavior: smooth; }
img { max-width: 100%; height: auto; }
a { text-decoration: none; }
/* 전역 줄바꿈: 한글은 어절(단어) 단위로, 긴 영문/URL만 강제 분리 */
body {
  word-break: keep-all;
  overflow-wrap: break-word;  
}
/* 본문 섹션 바로가기 앵커 (#section-{id}) — sticky 헤더 높이만큼 여백 확보 */
.section-anchor {
  display: block;
  height: 0;
  margin: 0;
  padding: 0;
  visibility: hidden;
  scroll-margin-top: var(--header-offset, 90px);
}
/* ── 테마 inner 너비 공통 적용 */
[class*="__inner"] {
  max-width: var(--inner-width, 1200px);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--inner-pad, 0px);
  padding-right: var(--inner-pad, 0px);

  box-sizing: border-box;
}

@media (max-width: 768px) {
  [class*="__inner"] {
    width: var(--inner-width-mo, 90%);
    padding-left: var(--inner-pad-mo, 0px);
    padding-right: var(--inner-pad-mo, 0px);
  }
}

/* ────────────────────────────────────────────────
   더보기 버튼 (전역) — 갤러리·게시판 공용
   디자인은 [테마 설정 → 더보기 버튼]에서 일괄 관리.
   ──────────────────────────────────────────────── */
.section-gallery__more-wrap,
.section-board__more-wrap {
  margin-top: var(--more-mt, 32px);
  text-align: center;
}
.section-gallery__more,
.section-board__more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: var(--more-pad-v, 12px) var(--more-pad-h, 28px);
  color: var(--more-color, #333);
  background: transparent;
  border: var(--more-border-width, 1px) solid var(--more-border-color, #333);
  border-radius: var(--more-radius, 4px);
  font-size: var(--more-font-size, 14px);
  font-weight: var(--more-font-weight, 500);
  line-height: 1.2;
  cursor: pointer;
  transition: background-color 0.15s, color 0.15s, border-color 0.15s;
  white-space: nowrap;
}
.section-gallery__more:hover,
.section-board__more:hover {
  background-color: rgba(0, 0, 0, 0.04);
}
.section-gallery__more:disabled,
.section-board__more:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
