/* 워드프레스에서만 필요한 보정. 시안 디자인(site.css)은 고치지 않고 여기서 덧붙인다. */

/* 관리자 로그인 시 위쪽 검은 띠만큼 머리말을 내린다 */
.admin-bar .site-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .site-header { top: 46px; } }

[hidden] { display: none !important; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* 게시판이 들어가는 자리: 위 제목 묶음과 간격을 한 번만 둔다 */
.sas-board-intro { padding-bottom: 0 !important; }
.sas-board-intro + .sas-board { padding-top: 2rem !important; }
.board-empty { padding: 3rem 0; text-align: center; color: var(--ink-soft); list-style: none; }

/* 페이지 번호(링크형) */
.pager a, .pager span { display: inline-flex; align-items: center; justify-content: center; min-width: 2.5rem; height: 2.5rem; padding: 0 .6rem; border-radius: 999px; color: var(--ink); font-weight: 600; }
.pager a:hover { background: var(--tint); }
.pager a[aria-current="page"] { background: var(--brand-main); color: #fff; }
.pager .is-disabled { opacity: .3; }
.board-actions--end { justify-content: center; gap: 1rem; flex-wrap: wrap; }
.board-actions__group { display: inline-flex; gap: .5rem; flex-wrap: wrap; align-items: center; }
.board-actions__group form { margin: 0; }
.board-actions__group button.pill { cursor: pointer; display: inline-flex; gap: .35rem; align-items: center; }

/* 상담 글 보기 */
.board-view__body { padding: 2rem 0; line-height: 1.85; white-space: normal; }
.board-view__body p + p { margin-top: .8rem; }
.board-view__files { display: flex; flex-wrap: wrap; gap: .5rem; padding-bottom: 1.5rem; }
.board-view__files a { display: inline-flex; gap: .35rem; align-items: center; padding: .5rem .9rem; border: 1px solid var(--line); border-radius: 999px; font-size: .92rem; }
.board-reply { margin-top: 1rem; padding: 1.5rem 1.6rem; border-radius: 1rem; background: var(--tint); }
.board-reply__head { display: flex; gap: .6rem; align-items: center; font-weight: 700; color: var(--brand-main); }
.board-reply__head time { font-weight: 400; color: var(--ink-soft); font-size: .92rem; }
.board-reply__body { margin-top: .8rem; line-height: 1.85; }
.board-reply__body p + p { margin-top: .6rem; }
.consult-lock { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; padding: 2rem 0; }
.consult-lock .board-view__notice { flex-basis: 100%; }
.consult-lock input { height: 3rem; padding: 0 1rem; border: 1px solid var(--line); border-radius: .75rem; min-width: 14rem; font: inherit; }
.consult-form__notice.is-error { color: var(--brand-red); border-color: currentColor; }
.sas-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

/* 일반 글 본문(뉴스·스토리·식단 글, 편집기로 쓴 페이지) */
.sas-prose { line-height: 1.85; font-size: 1.04rem; color: var(--ink); }
.sas-prose > * + * { margin-top: 1.1rem; }
.sas-prose h2 { font-size: 1.6rem; font-weight: 800; color: var(--brand-main); margin-top: 2.4rem; }
.sas-prose h3 { font-size: 1.25rem; font-weight: 700; color: var(--brand-main); margin-top: 2rem; }
.sas-prose a { color: var(--brand-main); text-decoration: underline; text-underline-offset: 3px; }
.sas-prose img { max-width: 100%; height: auto; border-radius: 14px; }
.sas-prose ul { list-style: disc; padding-left: 1.4rem; }
.sas-prose ol { list-style: decimal; padding-left: 1.4rem; }
.sas-prose figure { margin-inline: 0; }
.sas-prose figcaption { margin-top: .5rem; font-size: .9rem; color: var(--ink-soft); text-align: center; }
.sas-prose .wp-block-table { overflow-x: auto; }
.sas-prose table { width: 100%; border-collapse: collapse; font-size: .95rem; }
.sas-prose th { background: var(--brand-main); color: #fff; }
.sas-prose th, .sas-prose td { border: 1px solid var(--line); padding: .6rem .75rem; text-align: center; }
.board-view--post .sas-prose { padding: 2rem 0; }

.sas-404 { min-height: 50vh; padding-top: 10rem !important; }
.page-hero--plain .page-hero__title .mark { margin-top: 0; }

/* 혹시 남아 있는 예전 Elementor/ElementsKit 머리말·꼬리말은 숨긴다 */
[data-elementor-type="header"], [data-elementor-type="footer"],
.elementor-location-header, .elementor-location-footer,
.ekit-template-content-header, .ekit-template-content-footer, .ekit-template-content-markup.ekit-template-content-header,
#masthead.hfe-header, footer.hfe-footer, .hfe-before-footer-wrap { display: none !important; }

/* 모바일: 치료 방법 카드 — 사진은 작게(잘리지 않게), 제목은 사진 옆, 설명·키워드는 아래로 넓게 */
@media (max-width: 47.99rem) {
  .svc-card--photo, .svc-card--photo:hover {
    grid-template-columns: 6.75rem minmax(0, 1fr); column-gap: .85rem; align-items: center;
    padding: .9rem .95rem 1rem;
  }
  .svc-card--photo .svc-card__photo {
    grid-column: 1; grid-row: 1; aspect-ratio: 3 / 2; min-height: 0; border-radius: .5rem;
  }
  .svc-card--photo .svc-card__body { display: contents; }
  .svc-card--photo .svc-card__body > h3,
  .svc-card--photo .svc-card__body > h4 { grid-column: 2; grid-row: 1; margin: 0; font-size: 1rem; line-height: 1.4; }
  .svc-card--photo .svc-card__body > :not(h3):not(h4) { grid-column: 1 / -1; }
  .svc-card--photo .svc-card__body > p { margin-top: .6rem; font-size: .9rem; line-height: 1.6; word-break: keep-all; }
  .svc-card--photo .svc-tags { margin-top: .5rem; }
}

/* 위로 가기(TOP) 버튼: 다른 플러그인 버튼에 가려지지 않게 맨 위에, 조금만 내려도 보이게 */
.back-to-top { z-index: 99970; }
body.sas-menu-open .back-to-top, body.sas-editing .back-to-top { display: none; }
.partners-names { margin-top: 1rem; color: var(--ink-soft, #5b6b88); font-size: .8125rem; line-height: 1.7; word-break: keep-all; }
