/* Birtue CMS integration v30: scoped additions only */
.event-card .event-subtitle{
  margin:7px 0 0;
  color:#806d71;
  font-size:11px;
  line-height:1.65;
  letter-spacing:.02em;
}
.event-detail-subtitle{
  margin:10px 0 26px;
  color:#806d71;
  font-size:14px;
  line-height:1.8;
  letter-spacing:.03em;
}
.event-detail-extra-block .event-detail-extra-value{
  margin:0;
  color:#4c3739;
  font-size:15px;
  line-height:1.9;
}
.reserve-float-pc.is-disabled,
.reserve-bar-btn.is-disabled{
  cursor:default;
  pointer-events:none;
  opacity:.55;
}
.cms-empty,.cms-error{
  width:100%;
  padding:34px 20px;
  text-align:center;
  font-size:13px;
  line-height:1.9;
}
.journal-detail-section{padding-top:120px;padding-bottom:120px}
.journal-detail-container{max-width:980px}
.journal-detail-article{max-width:820px;margin:0 auto}
.journal-detail-meta{display:flex;align-items:center;gap:18px;margin-bottom:18px;color:#8a7478;font-size:12px;letter-spacing:.08em}
.journal-detail-meta span{font-size:10px;text-transform:uppercase}
.journal-detail-article h1{margin:0 0 44px;color:#4c3739;font-family:'Noto Serif JP',serif;font-size:clamp(28px,4vw,46px);font-weight:400;line-height:1.6;letter-spacing:.04em}
.journal-detail-image{margin:0 0 52px}
.journal-detail-image img{display:block;width:100%;height:auto;max-height:560px;object-fit:cover}
.journal-detail-body{color:#59484b;font-size:15px;line-height:2.1;letter-spacing:.025em}
.journal-detail-body h2,.journal-detail-body h3,.journal-detail-body h4{margin:2.4em 0 .9em;color:#4c3739;font-family:'Noto Serif JP',serif;font-weight:500;line-height:1.6}
.journal-detail-body h2{font-size:26px}.journal-detail-body h3{font-size:21px}.journal-detail-body h4{font-size:18px}
.journal-detail-body p{margin:0 0 1.6em}.journal-detail-body ul,.journal-detail-body ol{margin:0 0 1.8em;padding-left:1.5em}.journal-detail-body li{margin:.45em 0}
.journal-detail-body img{max-width:100%;height:auto;margin:24px auto;display:block}.journal-detail-body a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:780px){
  .event-card .event-subtitle{font-size:10.5px}
  .event-detail-subtitle{font-size:12px;margin-bottom:20px}
  .journal-detail-section{padding-top:92px;padding-bottom:80px}
  .journal-detail-article h1{margin-bottom:30px}
  .journal-detail-image{margin-bottom:34px}
  .journal-detail-body{font-size:14px;line-height:2}
}

/* v31: Only the newly requested event fee/instructor and journal empty states */
.event-detail-extra-block .event-fee-richtext p{margin:0 0 .55em}
.event-detail-extra-block .event-fee-richtext p:last-child{margin-bottom:0}
.event-detail-extra-block .event-fee-richtext ul,
.event-detail-extra-block .event-fee-richtext ol{margin:.25em 0 .65em;padding-left:1.55em;list-style-position:outside}
.event-detail-extra-block .event-fee-richtext ul{list-style-type:disc}
.event-detail-extra-block .event-fee-richtext ol{list-style-type:decimal}
.event-detail-extra-block .event-fee-richtext li{margin:.12em 0;display:list-item}
.event-detail-extra-block .event-fee-richtext br{display:inline}
.event-detail-page .event-instructor-more{display:inline-block;color:var(--wine,#6d3040);font-size:13px;line-height:1.8;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:3px}
.event-detail-page .event-instructor-more:hover{opacity:.7}
.event-detail-page .event-instructor-more[hidden]{display:none}
.journal-page .cms-journal-empty,
.boutique-home .cms-journal-empty{grid-column:1/-1}

/* v32 — Event detail reservation CTA: inline on desktop, unchanged mobile position. */
.event-detail-page .event-detail-reserve-inline{
  margin:30px 0 4px;
  text-align:center;
}
.event-detail-page .reserve-inline-pc{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:220px;
  min-height:60px;
  padding:12px 38px;
  border-radius:12px;
  background:#b99757;
  color:#fff;
  font-family:'Noto Serif JP',serif;
  font-size:18px;
  font-weight:400;
  letter-spacing:.04em;
  text-decoration:none;
  box-shadow:0 10px 24px rgba(100,78,40,.16);
}
.event-detail-page .reserve-inline-pc.is-disabled,
.event-detail-page .reserve-bar-btn.is-disabled{
  background:#999!important;
  color:#fff!important;
  box-shadow:none!important;
  opacity:1!important;
  cursor:default;
  pointer-events:none;
}
@media(max-width:780px){
  .event-detail-page .event-detail-reserve-inline{display:none}
}

/* v32 — Event card venue names use normal font weight only. */
body .event-card.event-card-design2 .event-fact-place > span{
  font-weight:400!important;
}
