.workshop-hero { padding-top: clamp(2.5rem, 5vw, 4rem); padding-bottom: clamp(2.5rem, 5vw, 4rem); }
.workshop-hero .hero-inner { grid-template-areas: "title logo" "subtitle logo" "practical logo"; }
.workshop-title { grid-area: title; }
.workshop-title h1 { font-size: clamp(3rem, 5.5vw, 4.8rem); }
.workshop-title .eyebrow { margin-bottom: .85rem; }
.workshop-hero .subtitle { margin-bottom: 1.75rem; }
.workshop-practical { grid-area: practical; scroll-margin-top: 100px; color: var(--text); }
.workshop-practical h2 { color: var(--ink); font-size: 1.15rem; margin-bottom: 1rem; }
.workshop-dates { margin: 0 0 1.25rem; }
.workshop-dates > div { display: grid; grid-template-columns: minmax(0, 1fr) max-content; align-items: start; gap: .2rem 1rem; padding: .45rem 0; border-bottom: 1px solid var(--line); }
.workshop-dates dt { font-size: .9rem; }
.workshop-dates dd { margin: 0; font-weight: 700; color: var(--ink); white-space: nowrap; text-align: right; }
.workshop-practical p { margin-bottom: .9rem; font-size: .94rem; }
.workshop-practical a, .workshop-page .prose a { color: var(--blue); text-underline-offset: 3px; }
.submission-link { font-size: .94rem; font-weight: 700; }
.workshop-practical .submission-note { margin: .25rem 0 0; font-size: .82rem; }
.workshop-page .workshop-lead { color: var(--ink); font-weight: 700; }
.workshop-topics { margin: 0; padding-left: 1.25rem; color: var(--text); }
.workshop-topics li { margin-bottom: 1.25rem; padding-left: .3rem; }
.workshop-topics li:last-child { margin-bottom: 0; }
.workshop-names { list-style: none; padding: 0; margin: 0 0 2rem; color: var(--text); }
.workshop-names li { margin-bottom: .55rem; }
.organizer-contact { display: block; font-size: .9rem; overflow-wrap: anywhere; }
.workshop-page h3 { margin-top: 2rem; }
@media (max-width: 800px) {
  .workshop-hero .hero-inner { grid-template-areas: "title" "subtitle" "practical" "logo"; }
  .workshop-hero .hero-logo { width: min(220px, 60vw); margin: 2rem auto 0; justify-self: center; }
  .workshop-title h1 { font-size: clamp(2.8rem, 10vw, 4.2rem); }
}
