/* ==========================================================================
   Workshops & training (workshops.html). Owned by the support-workshops builder.
   Two clearly separate offers (community / professionals) side by side as
   coloured panels, then booking steps and the enquiry form.
   Everything is scoped under .pg-workshops; base components are composed, not restyled.
   ========================================================================== */

/* ---------- the two offers ---------- */
.pg-workshops .ws-offers { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(16px, 2.4vw, 28px); align-items: start;  /* 18 Oct 2026: the community card has two items, so it must not stretch to the professionals card */ }
@media (max-width: 900px) { .pg-workshops .ws-offers { grid-template-columns: 1fr; } }
.pg-workshops .ws-offer {
  position: relative; isolation: isolate; overflow: hidden; display: flex; flex-direction: column;
  border-radius: var(--r-sheet); padding: clamp(28px, 4vw, 60px);
}
.pg-workshops .ws-offer--community { background: var(--blush); }
.pg-workshops .ws-offer--pro { background: var(--lilac); }
.pg-workshops .ws-offer::after {
  content: ""; position: absolute; z-index: -1; right: clamp(-56px, -3vw, -24px); bottom: -72px; width: clamp(110px, 11vw, 160px); aspect-ratio: 24 / 32;
  opacity: .3; transform: rotate(-26deg);
  -webkit-mask: url(../assets/leaf.svg) center / contain no-repeat; mask: url(../assets/leaf.svg) center / contain no-repeat;
}
.pg-workshops .ws-offer--community::after { background: var(--rose); }
.pg-workshops .ws-offer--pro::after { background: var(--lilac-mid); }
.pg-workshops .ws-offer--pro .eyebrow { color: var(--lilac-deep); }
.pg-workshops .ws-offer h2 { margin-bottom: .3em; }
.pg-workshops .ws-offer__intro { color: var(--ink-soft); max-width: 30em; margin-bottom: clamp(20px, 2.4vw, 32px); }

.pg-workshops .ws-list { list-style: none; border-top: 1px solid var(--line); }
.pg-workshops .ws-item { padding: 1.15rem 0 1.2rem; border-bottom: 1px solid var(--line); }
.pg-workshops .ws-item h3 { margin: 0 0 .25rem; font-size: clamp(1.3rem, 1.15rem + .45vw, 1.55rem); }
.pg-workshops .ws-item p { margin: 0; color: var(--ink-soft); font-size: 1.05rem; }
.pg-workshops .ws-item .chips { margin-top: .7rem; }
.pg-workshops .ws-item .chip .ico { width: 16px; height: 16px; margin-left: -.1em; }

.pg-workshops .ws-price { margin: 1.5rem 0 0; color: var(--forest); }
.pg-workshops .ws-proof {
  margin: auto 0 0; padding-top: 1.5rem; font-size: 1rem; color: var(--ink-soft);
}
.pg-workshops .ws-price + .ws-proof { margin-top: 1rem; }
.pg-workshops .ws-offer__go { margin-top: auto; padding-top: 1.2rem; align-self: flex-start; }
.pg-workshops .ws-proof em { font-family: var(--serif); font-size: 1.1em; color: var(--forest); }
.pg-workshops .ws-proof a { font-weight: 700; white-space: nowrap; display: inline-block; padding-block: .6rem; margin-block: -.6rem; }

/* ---------- how booking works ---------- */
.pg-workshops .ws-steps h3 { font-size: clamp(1.35rem, 1.15rem + .6vw, 1.7rem); }
@media (min-width: 861px) {
  .pg-workshops .ws-steps > li:not(:last-child)::after {
    content: ""; position: absolute; top: 1.95rem; left: 3.4rem; right: -.4rem; height: 1px;
    background: linear-gradient(90deg, var(--rose), transparent); transform-origin: 0 50%;
  }
  html.js .pg-workshops .ws-steps > li:not(:last-child)::after { transform: scaleX(0); transition: transform 1.4s var(--ease-out) .35s; }
  html.js .pg-workshops .ws-steps > li.in:not(:last-child)::after { transform: none; }
}

/* ---------- enquiry form ---------- */
.pg-workshops .ws-enquire { --split: .85fr 1.15fr; align-items: start; }
.pg-workshops .ws-talk { margin-top: clamp(24px, 3vw, 40px); padding-top: 1.4rem; border-top: 1px solid var(--line); }
.pg-workshops .ws-talk__h { margin: 0 0 .6rem; font-weight: 700; color: var(--forest); }
.pg-workshops .ws-talk__list { list-style: none; display: grid; gap: .35rem; }
.pg-workshops .ws-talk__list a { display: inline-flex; align-items: center; gap: .7rem; min-height: 44px; font-weight: 700; overflow-wrap: anywhere; }
.pg-workshops .ws-talk__list .ico { flex: none; }
.pg-workshops .ws-form-card { padding: clamp(24px, 3.2vw, 44px); }
.pg-workshops .ws-form-card .check a { font-weight: 700; }

/* client update (Oct 2026): "More about" panels on workshop and course items */
.pg-workshops details.acc.ws-acc { border: 0; margin-top: .4rem; }
.pg-workshops .ws-acc > summary { justify-content: flex-start; gap: .8rem; min-height: 48px; padding: .4rem 0; font-size: 1.12rem; color: var(--garden); }
.pg-workshops .ws-acc > summary::after { width: 30px; height: 30px; font-size: 1.15rem; background: rgba(255, 255, 255, .7); }
.pg-workshops .ws-acc > summary:hover { color: var(--garden-hover); }
.pg-workshops .ws-acc > .acc-body { padding: .3rem 0 .6rem; max-width: none; }
.pg-workshops .ws-acc > .acc-body > p { margin: 0 0 .75rem; color: var(--ink); font-size: 1rem; }
.pg-workshops .ws-acc > .acc-body > p.ws-lead-by { color: var(--forest); font-weight: 700; }

/* client update (11 Oct 2026): Train the Trainer, "coming soon" */
.pg-workshops .ws-strands { gap: .45rem; margin: 0 0 .4rem; font-size: 1rem; color: var(--ink); }
.pg-workshops .ws-strands strong { color: var(--forest); }
/* phones: the Train the Trainer item's three chips stay on one row */
@media (max-width: 420px) { .pg-workshops .ws-item .chips { gap: .35rem; } .pg-workshops .ws-item .chip { padding-inline: .65em; font-size: .85rem; } }
/* 18 Oct 2026: the two CPD badges sit beside Cultural Competency, the only CPD-accredited course */
.pg-workshops .ws-cpd { display: flex; flex-wrap: wrap; align-items: center; gap: 1.1rem; margin-top: .9rem; }
.pg-workshops .ws-cpd img { height: 64px; width: auto; mix-blend-mode: multiply; }
