/* Scoped enhancement of the existing #workshop-scenes section. */
.dn55-workshops .dn55-workshops-head { margin-bottom: 24px; max-width: 760px; }
.dn55-workshops .dn55-workshops-head h2 { margin: 0 0 12px; font-size: clamp(26px, 3vw, 36px); line-height: 1.15; letter-spacing: -.035em; }
.dn55-workshops .dn55-workshops-head > p:last-child { margin: 0; font-size: 16px; line-height: 1.55; }
.dn55-workshops .dn55-workshops-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; align-items: start; }
.dn55-workshops .dn55-workshop-card { min-width: 0; border: 1px solid #dce3e3; border-radius: 8px; background: #fff; }
.dn55-workshops .dn55-workshop-photo { margin: 0; }
.dn55-workshops .dn55-workshop-photo > a { display: block; border-radius: 7px 7px 0 0; }
.dn55-workshops .dn55-workshop-photo img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; object-position: 50% 60%; border-radius: 7px 7px 0 0; }
.dn55-workshops .dn55-workshop-photo-leg img { object-position: 65% 60%; }
.dn55-workshops .dn55-workshop-photo figcaption { margin: 0; padding: 10px 18px 0; font-size: 12px; line-height: 1.5; color: #596c76; text-align: left; }
.dn55-workshops .dn55-workshop-copy { padding: 18px; }
.dn55-workshops .dn55-workshop-copy h3 { margin: 0 0 8px; font-size: 21px; line-height: 1.25; letter-spacing: -.02em; }
.dn55-workshops .dn55-workshop-copy > p { margin: 0 0 18px; font-size: 15px; line-height: 1.55; }
.dn55-workshops .dn55-workshop-detail { border-top: 1px solid #e2e7e7; }
.dn55-workshops .dn55-workshop-detail summary { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 14px 0 0; min-height: 44px; box-sizing: border-box; list-style: none; cursor: pointer; color: #18313e; font-size: 15px; line-height: 1.45; font-weight: 600; }
.dn55-workshops .dn55-workshop-detail summary::-webkit-details-marker { display: none; }
.dn55-workshops .dn55-workshop-detail summary > span { flex: 0 0 auto; font-size: 22px; line-height: 1; font-weight: 400; }
.dn55-workshops .dn55-workshop-detail[open] summary > span { transform: rotate(45deg); }
.dn55-workshops .dn55-workshop-detail-body { padding-top: 14px; }
.dn55-workshops .dn55-workshop-detail-body p { margin: 0 0 13px; font-size: 14px; line-height: 1.6; }
.dn55-workshops .dn55-workshop-detail-body p strong { display: block; margin-bottom: 3px; color: #18313e; }
.dn55-workshops a.dn55-workshop-link { display: inline-block; padding: 5px 0; color: #18313e; font-size: 14px; line-height: 1.5; text-decoration: underline; text-underline-offset: 4px; text-decoration-color: #ef9b20; }
.dn55-workshops .dn55-workshop-next { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-top: 16px; }
.dn55-workshops .dn55-workshop-next > a { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px; border: 1px solid #dce3e3; border-radius: 8px; color: #18313e; text-decoration: none; background: #f5f7f6; }
.dn55-workshops .dn55-workshop-next-copy { display: grid; gap: 5px; min-width: 0; }
.dn55-workshops .dn55-workshop-next-copy strong { font-size: 16px; line-height: 1.4; }
.dn55-workshops .dn55-workshop-next-copy > span { color: #596c76; font-size: 14px; line-height: 1.5; }
.dn55-workshops .dn55-workshop-next > a > span:last-child { flex: 0 0 auto; color: #9b6208; }
.dn55-workshops .dn55-workshop-next > a:hover { border-color: #adbac0; }
.dn55-workshops a:focus-visible,
.dn55-workshops summary:focus-visible { outline: 2px solid #18313e; outline-offset: 4px; border-radius: 3px; }
.dn55-workshops .dn55-workshop-scope { margin: 14px 0 0; max-width: 80ch; font-size: 12px; line-height: 1.5; color: #596c76; }
@media (max-width: 680px) {
  .dn55-workshops .dn55-workshops-grid,
  .dn55-workshops .dn55-workshop-next { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .dn55-workshops .dn55-workshops-head { margin-bottom: 20px; }
  .dn55-workshops .dn55-workshop-copy h3 { font-size: 20px; }
}
@media print {
  .dn55-workshops .dn55-workshop-card,
  .dn55-workshops .dn55-workshop-next > a { break-inside: avoid; }
}
