/* 오오극장 하위 페이지 본문 — 소개(ti-theater-item) 타이포·구분선·목록 통일 */

.right.viewing-guide,
.right.sub-page {
  --ti-theater-text-strong: #111111;
  --ti-theater-text-secondary: #404040;
  --ti-theater-text-muted: #808080;
  --ti-theater-divider: #595959;
  --ti-theater-section-gap: 32px;
  --ti-theater-block-gap: 24px;
  --ti-theater-head-size: 16px;
  --ti-theater-body-size: 14px;
  --ti-theater-body-lh: 1.7;
}

.right.viewing-guide article,
.right.sub-page article,
.right.sub-page .mbr-stack {
  display: flex;
  flex-direction: column;
  gap: var(--ti-theater-section-gap);
  color: var(--ti-theater-text-secondary);
}

/* ── 섹션 제목 (소개 .theater-item__head) ── */
.right.viewing-guide .viewing-section__title,
.right.sub-page .mbr-static__head,
.right.sub-page .seat-intro__title,
.right.sub-page .seat-card__heading,
.right.sub-page #seat-link-heading,
.right.sub-page .dg-steps strong,
.right.sub-page .dg-subheading,
.right.sub-page .dir-transport-heading,
.right.sub-page .dir-transport-block h3 {
  margin: 0;
  padding: 0;
  border: none;
  font-size: var(--ti-theater-head-size);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0;
  color: var(--ti-theater-text-strong);
  word-break: keep-all;
}

.right.sub-page .seat-intro__title::after,
.right.sub-page .seat-card__heading::after,
.right.sub-page .dir-transport-block h3::after,
.right.sub-page .mbr-acc__subhead--report::after {
  display: none;
}

/* ── 섹션 블록 + 구분선 (#595959) ── */
.right.viewing-guide .viewing-section,
.right.sub-page .mbr-static,
.right.sub-page .seat-intro,
.right.sub-page .seat-card,
.right.sub-page .seat-link-wrap,
.right.sub-page .dg-form-wrap,
.right.sub-page .dg-steps,
.right.sub-page .dir-transport,
.right.sub-page .dir-map-block,
.right.sub-page .dir-meta,
.right.sub-page .dg-fee-group,
.right.sub-page .dg-facility-group {
  display: flex;
  flex-direction: column;
  gap: var(--ti-theater-block-gap);
  margin: 0;
  padding: 0 0 var(--ti-theater-section-gap);
  border: none;
  border-bottom: 1px solid var(--ti-theater-divider);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: inherit;
}

.right.viewing-guide .viewing-section:last-child,
.right.sub-page .mbr-static:last-child,
.right.sub-page .seat-intro:last-child,
.right.sub-page .seat-card:last-child,
.right.sub-page .seat-link-wrap:last-child,
.right.sub-page .dg-form-wrap:last-child,
.right.sub-page .dg-steps:last-child,
.right.sub-page .dir-transport:last-child,
.right.sub-page .dir-map-block:last-child,
.right.sub-page .dir-meta:last-child,
.right.sub-page .dg-fee-group:last-child,
.right.sub-page .dg-facility-group:last-child,
.right.sub-page article > .dg-contact:last-child {
  padding-bottom: 0;
  border-bottom: none;
}

.right.sub-page .mbr-static {
  overflow: visible;
}

.right.sub-page .mbr-static__head {
  padding: 0;
  background: transparent;
  border-bottom: none;
}

.right.sub-page .mbr-acc__panel {
  padding: 0;
  border: none;
  background: transparent;
}

.right.sub-page .mbr-acc__panel-inner {
  display: flex;
  flex-direction: column;
  gap: var(--ti-theater-block-gap);
  padding-top: 0;
  font-size: var(--ti-theater-body-size);
  line-height: var(--ti-theater-body-lh);
  color: var(--ti-theater-text-secondary);
}

.right.sub-page .mbr-acc__subhead {
  margin: 0;
  font-size: var(--ti-theater-head-size);
  font-weight: 700;
  line-height: 1.25;
  color: var(--ti-theater-text-strong);
}

.right.sub-page .mbr-acc__subhead:first-child {
  margin-top: 0;
}

/* ── 본문 텍스트 (소개 .theater-item__body) ── */
.right.viewing-guide article p,
.right.sub-page article p,
.right.sub-page .mbr-acc__panel-inner p,
.right.sub-page .mbr-acc__paragraph,
.right.sub-page .seat-intro__lead,
.right.sub-page .seat-intro__text,
.right.sub-page .seat-intro__cta,
.right.sub-page .dg-form-note,
.right.sub-page .dg-steps-intro,
.right.sub-page .dir-address,
.right.sub-page .dir-phone,
.right.sub-page .dir-transport-block p,
.right.sub-page .dir-parking-note,
.right.sub-page .seat-callout__body,
.right.sub-page .dg-contact {
  margin: 0;
  font-size: var(--ti-theater-body-size);
  font-weight: 400;
  line-height: var(--ti-theater-body-lh);
  color: var(--ti-theater-text-secondary);
  text-align: left;
}

.right.sub-page .seat-intro__lead,
.right.sub-page .seat-intro__cta,
.right.sub-page .dir-transport-block strong,
.right.sub-page .dg-contact a {
  color: var(--ti-theater-text-strong);
  font-weight: 700;
}

.right.sub-page .dg-contact a {
  font-weight: 400;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.right.sub-page .dg-contact a:hover,
.right.sub-page .dir-phone a:hover {
  color: var(--ti-theater-text-strong);
}

.right.sub-page .dir-phone a {
  color: var(--ti-theater-text-secondary);
  font-weight: 400;
}

/* ── 목록: 소개와 같이 본문 톤, 장식 불릿 제거 ── */
.right.viewing-guide .viewing-list,
.right.viewing-guide .viewing-notes,
.right.sub-page .mbr-acc__list,
.right.sub-page .mbr-acc__dash-list,
.right.sub-page .mbr-acc__callout-list,
.right.sub-page .seat-list {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.right.viewing-guide .viewing-list li,
.right.viewing-guide .viewing-notes li,
.right.sub-page .mbr-acc__list > li,
.right.sub-page .mbr-acc__dash-list li,
.right.sub-page .mbr-acc__callout-list li,
.right.sub-page .seat-list li {
  position: static;
  margin: 0;
  padding: 0;
  font-size: var(--ti-theater-body-size);
  font-weight: 400;
  line-height: var(--ti-theater-body-lh);
  color: var(--ti-theater-text-secondary);
}

.right.viewing-guide .viewing-list li::before,
.right.viewing-guide .viewing-notes li::before,
.right.sub-page .mbr-acc__list > li::before,
.right.sub-page .mbr-acc__dash-list li::before {
  display: none;
  content: none;
}

.right.sub-page .mbr-acc__callout-list {
  padding: 0;
  list-style: none;
}

.right.sub-page .mbr-acc__callout {
  margin: 0;
  padding: 16px;
  border: none;
  background: #f7f7f7;
}

.right.sub-page .mbr-acc__callout-note,
.right.sub-page .seat-callout__head {
  margin: 0 0 8px;
  font-size: var(--ti-theater-body-size);
  font-weight: 700;
  color: var(--ti-theater-text-strong);
}

.right.sub-page .seat-callout {
  margin: 0;
  border: none;
  background: #f7f7f7;
}

.right.sub-page .seat-callout__rule {
  display: none;
}

.right.sub-page .dir-transport {
  border-left: none;
  padding-left: 0;
}

.right.sub-page .dir-transport-block {
  margin: 0;
  padding: 0;
  border: none;
  background: transparent;
}

.right.sub-page .dir-kakao-map {
  margin: 0;
  border: none;
}

.right.sub-page .dir-transport-block + .dir-transport-block,
.right.sub-page .dir-transport-block + .dir-parking-note {
  margin-top: 0;
}

.right.sub-page .dir-meta {
  gap: 8px;
}

.right.sub-page article > .dg-photo,
.right.sub-page article > .seat-photo {
  margin: 0;
  border: none;
  box-shadow: none;
}

/* 대관: 요금·시설 그룹 */
.right.sub-page .dg-fee-group,
.right.sub-page .dg-facility-group {
  display: flex;
  flex-direction: column;
  gap: var(--ti-theater-block-gap);
}

@media (min-width: 821px) {
  .right.viewing-guide article p,
  .right.sub-page article p,
  .right.sub-page .mbr-acc__panel-inner,
  .right.viewing-guide .viewing-list li,
  .right.viewing-guide .viewing-notes li,
  .right.sub-page .mbr-acc__list > li,
  .right.sub-page .mbr-acc__dash-list li,
  .right.sub-page .seat-list li {
    line-height: 1.5;
  }
}
