/* Office Yamane artist pages: reusable, content-first editorial layout. */
/* SWELL puts page classes on #body_wrap, not always on <body>. */
.page-id-5187 .c-pageTitle,
#body_wrap.wp-child-theme-swell_child-wpvibe-draft.page-id-8584 .c-pageTitle,
.page-template-artist-profile .c-pageTitle {
  display:none!important;
}
/* Keep breadcrumbs above the upward-shifted article panel, so the final
   artist name stays visible instead of being covered by the white panel. */
#body_wrap.page-id-5187 #breadcrumb,
#body_wrap.wp-child-theme-swell_child-wpvibe-draft.page-id-8584 #breadcrumb,
#body_wrap.page-template-artist-profile #breadcrumb{
  position:relative;
  z-index:5;
}
/* SWELL adds generous padding inside the article, even when the duplicate
   page title is hidden. Tighten the space below breadcrumbs at its source. */
#body_wrap.page-id-5187 #main_content,
#body_wrap.wp-child-theme-swell_child-wpvibe-draft.page-id-8584 #main_content,
#body_wrap.page-template-artist-profile #main_content{
  /* Pull the full article (not only its inner content) closer to the breadcrumbs. */
  margin-top:-54px!important;
  padding-top:12px!important;
}
@media(max-width:767px){
  #body_wrap.page-id-5187 #main_content,
  #body_wrap.wp-child-theme-swell_child-wpvibe-draft.page-id-8584 #main_content,
  #body_wrap.page-template-artist-profile #main_content{
    margin-top:-18px!important;
  }
}
.oyap{
  --oyap-blue:#20546b;
  --oyap-ink:#282828;
  --oyap-muted:#707070;
  --oyap-line:#e4e4e4;
  max-width:1020px;
  margin:-20px auto 0;
  padding:4px 0 22px;
  color:var(--oyap-ink);
}
.oyap *, .oyap *::before, .oyap *::after{box-sizing:border-box;}
.oyap a{transition:color .18s ease,background-color .18s ease,border-color .18s ease;}
.oyap-back{
  display:inline-block;
  margin:0 0 27px;
  color:var(--oyap-muted);
  font-size:.81rem;
  letter-spacing:.01em;
  text-decoration:none!important;
}
.oyap-back:hover{color:var(--oyap-blue);}
.oyap-hero{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:28px;
  margin:0 0 60px;
}
.oyap-hero__photo{margin:0!important;width:100%;}
.oyap-hero__photo img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:3 / 2;
  object-fit:cover;
  object-position:center;
}
.oyap-hero__photo figcaption{
  margin:8px 0 0;
  text-align:right;
  color:#787878;
  font-size:.69rem;
  letter-spacing:.02em;
}
.oyap-hero__body{min-width:0;}
.post_content .oyap .oyap-hero h2{
  margin:0!important;padding:0!important;border:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  color:var(--oyap-ink)!important;
  font-size:clamp(2.05rem,4vw,3.25rem)!important;
  font-weight:600;
  letter-spacing:.055em;
  line-height:1.35;
}
.oyap-hero h2::before,.oyap-hero h2::after,
.oyap-section__head h2::before,.oyap-section__head h2::after,
.oyap-contact h2::before,.oyap-contact h2::after{display:none!important;}
.post_content .oyap .oyap-hero__instrument{
  display:inline-block;
  margin-left:15px;
  color:#6d6d6d!important;
  font-size:clamp(.84rem, .34em, 1.02rem);
  font-weight:500;
  letter-spacing:.04em;
  white-space:nowrap;
  vertical-align:baseline;
}
.oyap-hero__english{
  margin:6px 0 28px!important;
  font-size:1.05rem!important;
  color:var(--oyap-muted);
  font-weight:400;
  letter-spacing:.02em;
}
.oyap-hero__award{
  margin:0 0 16px!important;
  padding-left:15px;
  border-left:3px solid var(--oyap-blue);
  font-size:1rem!important;
  font-weight:650;
  line-height:1.8;
}
.oyap-hero__lead{
  margin:19px 0 0!important;
  padding-top:18px;
  border-top:1px solid var(--oyap-line);
  max-width:760px;
  font-size:.96rem!important;
  line-height:1.95;
  color:#444;
}
.oyap-hero__actions{display:flex;gap:20px;flex-wrap:wrap;margin:25px 0 0;}
.oyap-hero__actions a{
  border-bottom:1px solid #b5c4cb;
  padding:0 0 5px;
  font-size:.83rem;
  font-weight:600;
  color:var(--oyap-blue);
  text-decoration:none!important;
}
.oyap-hero__actions a:hover{border-bottom-color:var(--oyap-blue);}
.oyap-hero__actions span{margin-left:8px;}
.oyap-section{margin:0 0 78px;scroll-margin-top:90px;}
.oyap-section__head{
  display:flex;justify-content:space-between;align-items:baseline;gap:12px;
  margin-bottom:19px;
  border-bottom:1px solid var(--oyap-line);
  padding-bottom:12px;
}
.oyap-section__head > span{
  order:2;
  font-size:.69rem;
  font-weight:650;
  letter-spacing:.17em;
  color:#888;
}
.oyap-section__head h2{
  margin:0!important;padding:0!important;border:0!important;
  background:none!important;
  color:var(--oyap-ink);
  font-size:1.36rem!important;
  font-weight:650;
  line-height:1.5;
  letter-spacing:.045em;
}
.oyap-prose{max-width:780px;font-size:.93rem;line-height:2;}
.oyap-prose p{margin:0 0 1.1em!important;line-height:2!important;}
.oyap-prose a{color:var(--oyap-blue);text-decoration:underline;text-underline-offset:3px;}
/* Use one consistent rhythm for upcoming concerts, news and archives. */
#concerts .oyap-section__head,
#past-concerts .oyap-section__head,
.oyap-news .oyap-section__head {margin-bottom:11px;}
#concerts .oyap-year{margin:14px 0 6px!important;}
.oyap-year{
  margin:22px 0 8px!important;
  font-size:.86rem!important;
  color:#444;
  font-weight:700;
  background:none!important;
  border:0!important;
  padding:0!important;
}
.oyap-year::before,.oyap-year::after{display:none!important;}
.oyap-events{border-top:1px solid var(--oyap-line);}
.oyap-event{
  display:grid;
  grid-template-columns:135px minmax(0,1fr);
  gap:20px;
  padding:7px 4px;
  border-bottom:1px solid var(--oyap-line);
  line-height:1.55;
  font-size:.86rem;
}
.oyap-event__date{font-variant-numeric:tabular-nums;color:var(--oyap-muted);font-size:.81rem;padding-top:0;}
.oyap-event__info{position:relative;padding-right:23px;overflow-wrap:anywhere;color:#343434;}
.oyap-event__info a{color:#303030;text-decoration:none!important;font-weight:600;}
/* A quiet right-edge arrow only when the concert has a destination link. */
.oyap-event__info a[href]:first-of-type::after{
  content:"→";
  position:absolute;
  top:50%;
  right:0;
  transform:translateY(-50%);
  color:#858585;
  font-size:1rem;
  font-weight:400;
  line-height:1;
}
.oyap-event__info a:hover{color:var(--oyap-blue);text-decoration:underline!important;text-underline-offset:3px;}
.oyap-event__info a:hover::after{color:var(--oyap-blue);}
.oyap .oyap-event__status{display:inline-block;color:#6e6e6e;margin-left:7px;font-size:1em!important;font-weight:600;}
.oyap .oyap-soldout{color:red!important;font-weight:700;white-space:nowrap;}
.oyap-event__city{color:#6e6e6e;}
.oyap-archive-year{margin:0;border-bottom:1px solid var(--oyap-line);}
.oyap-archive-year > summary{
  list-style:none;cursor:pointer;
  display:flex;align-items:center;gap:15px;
  padding:14px 4px;
  font-size:.95rem;font-weight:650;
  color:var(--oyap-ink);
}
.oyap-archive-year > summary::-webkit-details-marker{display:none;}
.oyap-archive-year summary small{font-size:.77rem;color:#888;font-weight:400;}
/* Match the company overview: plus when closed, minus when open. */
.oyap-archive-year > summary > .oyap-accordion-sign{margin-left:auto;color:#888;font-weight:400;line-height:1;}
.oyap-archive-year > summary > .oyap-accordion-sign::before{content:"+";font-size:1.15rem;}
.oyap-archive-year[open] > summary > .oyap-accordion-sign::before{content:"−";}
.oyap-archive-year .oyap-events{border-top:0;margin-bottom:6px;}
.oyap-archive-year .oyap-event:last-child{border-bottom:0;}
.oyap-news{margin-top:-4px;}
.oyap-news__list{border-top:0;}
.oyap-news__list a{
  display:grid;grid-template-columns:112px minmax(0,1fr) 20px;gap:20px;
  align-items:baseline;
  border-bottom:1px solid var(--oyap-line);
  padding:7px 4px;
  line-height:1.55;
  text-decoration:none!important;
  color:var(--oyap-ink);
  font-size:.85rem;
}
.oyap-news__list a:first-child{padding-top:7px;}
.oyap-news__list time{font-size:.76rem;color:var(--oyap-muted);font-variant-numeric:tabular-nums;}
.oyap-news__list b{text-align:right;font-size:.83rem;font-weight:400;color:#858585;}
.oyap-news__list a:hover span{color:var(--oyap-blue);}
/* Publicity downloads: images and text use their canonical WordPress sources. */
.oyap-press__intro{
  max-width:760px;margin:0 0 26px!important;color:#666;
  font-size:.84rem!important;line-height:1.85;
}
.oyap-press__heading{
  margin:22px 0 13px;
  font-size:.91rem;
  font-weight:650;
  letter-spacing:.02em;
  color:#333;
}
.oyap-press__photos{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:19px;
  margin:0 0 15px;
}
.oyap-press__photo{min-width:0;}
.oyap-press__photo a{display:block;text-decoration:none!important;color:#303030;cursor:pointer;}
.oyap-press__photo a:hover img{opacity:.86;}
.oyap-press__photo a:focus-visible img{outline:2px solid var(--oyap-blue);outline-offset:3px;}
.oyap-press__photo img{
  display:block;
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  background:#f5f5f5;
}
.oyap-press__photo small{
  display:block;
  margin:5px 0 0;
  color:#767676;
  font-size:.7rem;
}
.oyap-press__downloads{
  display:flex;
  align-items:stretch;
  flex-wrap:wrap;
  gap:12px;
  margin:22px 0 24px;
}
.oyap-press__downloads a{
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex:0 1 294px;
  min-height:47px;
  padding:11px 15px;
  border:1px solid #b5b5b5;
  border-radius:0;
  background:transparent;
  color:#303030!important;
  text-decoration:none!important;
  font-size:.83rem;
  font-weight:600;
  line-height:1.5;
}
.oyap-press__downloads a:hover{
  border-color:#444;
  color:#111!important;
}
.oyap-press__downloads a > span{flex:none;color:#777;font-size:1rem;}
.oyap-press__profile-actions{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:22px;}
.oyap-press__profile-actions a,.oyap-press__profile-actions button{
  display:inline-flex;gap:10px;align-items:center;
  padding:9px 13px;
  border:1px solid #d4d4d4;border-radius:0;
  background:transparent;color:#303030!important;
  font-family:inherit;
  font-size:.8rem;
  font-weight:600;
  line-height:1.5;
  text-decoration:none!important;
  cursor:pointer;
}
.oyap-press__profile-actions a:hover,.oyap-press__profile-actions button:hover{border-color:#666;color:#111!important;}
.oyap-press__copy-source{
  position:absolute!important;
  width:1px;height:1px;
  padding:0;border:0;opacity:0;
  overflow:hidden;
}
.oyap-press__feedback{min-height:1.3em;margin:0!important;font-size:.78rem;color:#666;}
@media(max-width:767px){
  .oyap-press__photos{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;}
  .oyap-press__downloads{flex-direction:column;gap:10px;}
  .oyap-press__downloads a{flex:0 0 auto;width:100%;min-height:46px;}
  .oyap-press__profile-actions{gap:7px;}
}
.oyap-video{max-width:780px;}
.oyap-video .wp-block-embed{max-width:780px;margin:0!important;}
.oyap-video iframe{width:100%;max-width:100%;}
.oyap-empty{font-size:.84rem;color:var(--oyap-muted);}
.oyap-contact{
  display:flex;align-items:center;justify-content:space-between;
  gap:20px;padding:26px 0;
  border-top:2px solid #b7d2dc;border-bottom:1px solid var(--oyap-line);
  margin:20px 0 28px;
  scroll-margin-top:90px;
}
.oyap-contact span{font-size:.69rem;letter-spacing:.15em;color:#888;font-weight:650;}
.oyap-contact h2{font-size:1.2rem!important;margin:4px 0 6px!important;padding:0!important;border:0!important;background:none!important;}
.oyap-contact p{margin:0!important;font-size:.83rem;color:var(--oyap-muted);}
.oyap-contact > a{
  flex:none;display:inline-flex;gap:14px;align-items:center;
  padding:12px 16px;border:1px solid var(--oyap-blue);border-radius:2px;
  text-decoration:none!important;font-size:.79rem;font-weight:600;color:var(--oyap-blue);
}
.oyap-contact > a:hover{background:var(--oyap-blue);color:#fff;}
.oyap-back--bottom{margin:0;}
@media(max-width:767px){
  .oyap{padding-top:0;margin-top:-8px;}
  .oyap-back{margin-bottom:18px;}
  .oyap-hero{gap:20px;margin-bottom:50px;}
  .oyap-hero__photo img{aspect-ratio:3 / 2;object-fit:cover;}
  .oyap-hero__body{padding:0 1px;}
  .oyap-hero h2{font-size:clamp(2rem,8vw,2.65rem)!important;}
  .oyap-hero__english{margin-bottom:18px!important;font-size:.93rem!important;}
  .oyap-hero__award{font-size:.91rem!important;}
  .oyap-hero__lead{font-size:.89rem!important;line-height:1.85;padding-top:15px;margin-top:16px!important;}
  .oyap-hero__actions{margin-top:16px;}
  .oyap-section{margin-bottom:53px;}
  .oyap-section__head h2{font-size:1.22rem!important;}
  .oyap-event{grid-template-columns:91px minmax(0,1fr);gap:10px;padding:7px 4px;font-size:.8rem;}
  .oyap-event__date{font-size:.74rem;}
  .oyap-news__list a{grid-template-columns:1fr 18px;gap:4px 6px;}
  .oyap-news__list time{grid-column:1 / -1;}
  .oyap-news__list a span{grid-column:1;}
  .oyap-news__list b{grid-column:2;}
  .oyap-prose{font-size:.89rem;}
  .oyap-contact{align-items:flex-start;flex-direction:column;gap:14px;}
}
