/* ================= Workshops & Speaking ================= */
:is(#ws-hero, #custom-workshops) :is(h1, h2, h3, p, a, span, figure) { font-family: var(--aw-font); }
.aw-ws__accent { color: var(--aw-orange); }

/* ---------- hero on the blue ground ---------- */
#ws-hero.aw-ws { position: relative; margin: 0; padding: 0; overflow: clip; background: var(--aw-ground); color: #fff; }
#ws-hero .aw-ws__grid {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: repeating-linear-gradient(to right, transparent 0 calc(20% - 1px), rgba(255, 255, 255, 0.15) calc(20% - 1px) 20%);
}
#ws-hero .aw-ws__hero {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 92vh;
  padding: 150px 24px 40px;
  text-align: center;
}
#ws-hero .aw-ws__pill {
  display: inline-flex;
  align-items: center;
  height: 32px;
  margin: 0 0 30px;
  padding: 0 16px;
  border-radius: 999px;
  background: rgba(18, 17, 51, 0.32);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.1em;
  line-height: 1;
  text-transform: uppercase;
}
#ws-hero .aw-ws__title {
  max-width: 14ch;
  margin: 0;
  font-size: min(112px, 8vw);
  font-weight: 900;
  line-height: 0.92;
  letter-spacing: -0.04em;
  text-transform: uppercase;
  color: var(--aw-orange);
}
#ws-hero .aw-ws__title-white { color: #fff; }
#ws-hero .aw-ws__intro { max-width: 46ch; margin: 34px 0 0; font-size: 18px; font-weight: 500; line-height: 1.55; color: rgba(255, 255, 255, 0.9); }
#ws-hero .aw-ws__jumps { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 34px; }
#ws-hero .aw-ws__jumps a {
  display: inline-flex;
  align-items: center;
  height: 40px;
  padding: 0 20px;
  border: 1px solid rgba(255, 255, 255, 0.35);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.1);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
  transition: background 0.25s ease;
}
#ws-hero .aw-ws__jumps a:hover { background: rgba(255, 255, 255, 0.24); }
#ws-hero .aw-ws__marquee { position: relative; z-index: 1; margin: 10px 0 -30vh; overflow: hidden; pointer-events: none; }
#ws-hero .aw-ws__run { display: flex; width: max-content; transform: translate3d(var(--run-x, 0px), 0, 0); }
#ws-hero .aw-ws__run span {
  font-size: min(320px, 23vw);
  font-weight: 900;
  line-height: 0.9;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  white-space: nowrap;
  color: rgba(255, 255, 255, 0.14);
}
/* blue gives way to white in five columns */
#ws-hero .aw-ws__wipe { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(5, 1fr); height: 40vh; }
#ws-hero .aw-ws__wipe span { display: block; margin: 0 -0.5px; background: #fff; transform: scaleY(var(--h, 1)); transform-origin: 50% 100%; }

/* ---------- the two offers, staggered like an insights grid ---------- */
#custom-workshops.aw-wk { position: relative; z-index: 2; margin: -22vh 0 0; padding: 0 0 90px; background: linear-gradient(to bottom, transparent 0, transparent 22vh, #fff 22vh); color: var(--aw-ink); }
#custom-workshops .aw-wk__frame {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: 24px;
  align-items: start;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
}
#custom-workshops .aw-wk__card { opacity: var(--c-o, 1); transform: translate3d(0, var(--c-y, 0px), 0); scroll-margin-top: 100px; }
#custom-workshops .aw-wk__card--left { grid-column: 1 / span 5; }
#custom-workshops .aw-wk__card--right { grid-column: 7 / span 6; margin-top: 0; }
#custom-workshops .aw-wk__text { max-width: 520px; }
#custom-workshops .aw-wk__card--left .aw-wk__text { margin-bottom: 40px; }
#custom-workshops .aw-wk__card--right .aw-wk__text { margin-top: 40px; }
#custom-workshops .aw-wk__kicker { margin: 0 0 16px; font-size: 12px; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; color: rgba(18, 17, 51, 0.42); }
#custom-workshops .aw-wk__title { margin: 0 0 18px; font-size: 30px; font-weight: 800; line-height: 1.12; letter-spacing: -0.02em; color: var(--aw-ink); }
#custom-workshops .aw-wk__lead { margin: 0 0 14px; font-size: 18px; font-weight: 700; line-height: 1.45; color: var(--aw-ink); }
#custom-workshops .aw-wk__p { margin: 0 0 14px; font-size: 16px; font-weight: 500; line-height: 1.62; color: rgba(18, 17, 51, 0.68); }
#custom-workshops .aw-wk__link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
  color: var(--aw-orange);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-decoration: none;
  text-transform: uppercase;
}
#custom-workshops .aw-wk__link::after { content: ""; width: 26px; height: 2px; background: currentColor; transition: width 0.3s ease; }
#custom-workshops .aw-wk__link:hover::after { width: 42px; }

#custom-workshops .aw-wk__picture { position: relative; margin: 0; overflow: hidden; background: #dfe7ec; }
#custom-workshops .aw-wk__picture--tall { aspect-ratio: 4 / 5; }
#custom-workshops .aw-wk__picture--wide { aspect-ratio: 3 / 2; }
#custom-workshops .aw-wk__picture img { display: block; width: 100%; height: 112%; object-fit: cover; transform: translate3d(0, var(--pic-y, -6%), 0) scale(var(--pic-s, 1)); transition: scale 0.6s ease; }
#custom-workshops .aw-wk__card:hover .aw-wk__picture img { scale: 1.03; }
/* the orange edge that draws down the picture as it arrives */
#custom-workshops .aw-wk__edge { position: absolute; top: 0; right: 0; bottom: 0; width: 4px; background: var(--aw-orange); transform: scaleY(var(--edge, 1)); transform-origin: 50% 0; }

/* the closing ask */
#custom-workshops .aw-wk__close { display: flex; flex-direction: column; align-items: center; max-width: 900px; margin: 150px auto 0; padding: 0 24px; text-align: center; }
#custom-workshops .aw-wk__ask { margin: 0; font-size: min(64px, 5.4vw); font-weight: 900; line-height: 0.98; letter-spacing: -0.035em; text-transform: uppercase; color: var(--aw-ink); }
#custom-workshops .aw-wk__ask-text { max-width: 54ch; margin: 22px 0 0; font-size: 17px; font-weight: 500; line-height: 1.55; color: rgba(18, 17, 51, 0.68); }
#custom-workshops .aw-wk__cta {
  display: inline-flex;
  align-items: center;
  height: 50px;
  margin-top: 34px;
  padding: 0 28px;
  border-radius: 999px;
  background: var(--aw-orange);
  color: #fff;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-decoration: none;
  text-transform: uppercase;
  transition: background 0.25s ease, transform 0.25s ease;
}
#custom-workshops .aw-wk__cta:hover { background: var(--aw-orange-deep); transform: translateY(-1px); }

@media (max-width: 900px) {
  #ws-hero .aw-ws__title { font-size: 12.5vw; }
  #ws-hero .aw-ws__hero { min-height: 86vh; padding-top: 130px; }
  #ws-hero .aw-ws__marquee { margin-bottom: -16vh; }
  #ws-hero .aw-ws__wipe { height: 36vh; }
  #custom-workshops.aw-wk { margin-top: -10vh; padding-bottom: 110px; background: linear-gradient(to bottom, transparent 0, transparent 10vh, #fff 10vh); }
  #custom-workshops .aw-wk__frame { grid-template-columns: 1fr; row-gap: 90px; }
  #custom-workshops :is(.aw-wk__card--left, .aw-wk__card--right) { grid-column: 1; }
  #custom-workshops .aw-wk__card--left { display: flex; flex-direction: column-reverse; }
  #custom-workshops .aw-wk__card--left .aw-wk__text { margin: 34px 0 0; }
  #custom-workshops .aw-wk__picture--tall { aspect-ratio: 4 / 3; }
  #custom-workshops .aw-wk__title { font-size: 26px; }
  #custom-workshops .aw-wk__close { margin-top: 110px; }
  #custom-workshops .aw-wk__ask { font-size: 10vw; }
}

html.wz-editing #ws-hero .aw-ws__wipe span,
html.wz-editing #custom-workshops .aw-wk__edge { transform: none !important; }
html.wz-editing #custom-workshops .aw-wk__card { opacity: 1 !important; transform: none !important; }

/* ---------- one testimonial, a quiet split card ---------- */
#custom-workshops .aw-wq {
  display: grid;
  grid-template-columns: 4fr 8fr;
  max-width: 1152px;
  margin: 160px auto 0;
  padding: 0;
  border-top: 1px solid rgba(18, 17, 51, 0.12);
  border-bottom: 1px solid rgba(18, 17, 51, 0.12);
  opacity: var(--q-o, 1);
  transform: translate3d(0, var(--q-y, 0px), 0);
}
#custom-workshops .aw-wq__side {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 60px;
  padding: 48px 40px 48px 0;
  border-right: 1px solid rgba(18, 17, 51, 0.12);
}
#custom-workshops .aw-wq__tags { display: flex; flex-wrap: wrap; gap: 8px; }
#custom-workshops .aw-wq__tag {
  display: inline-flex;
  align-items: center;
  height: 30px;
  padding: 0 14px;
  border-radius: 999px;
  background: rgba(61, 96, 121, 0.09);
  color: var(--aw-ink);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
#custom-workshops .aw-wq__mark { width: 84px; height: auto; fill: var(--aw-orange); }
#custom-workshops .aw-wq__body { display: flex; flex-direction: column; justify-content: space-between; gap: 44px; padding: 48px 0 48px 56px; }
#custom-workshops .aw-wq__quote { margin: 0; font-size: min(34px, 2.6vw); font-weight: 600; line-height: 1.28; letter-spacing: -0.015em; color: var(--aw-ink); }
#custom-workshops .aw-wq__mark-text {
  padding: 0 0.08em;
  background: linear-gradient(transparent 58%, rgba(242, 104, 40, 0.32) 58%) no-repeat 0 0 / calc(var(--hl, 1) * 100%) 100%;
  color: inherit;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}
#custom-workshops .aw-wq__by { display: flex; align-items: center; gap: 14px; }
#custom-workshops .aw-wq__rule { width: 40px; height: 2px; background: var(--aw-orange); }
#custom-workshops .aw-wq__by span:last-child { font-size: 13px; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; color: rgba(18, 17, 51, 0.62); }

@media (max-width: 900px) {
  #custom-workshops .aw-wq { grid-template-columns: 1fr; margin: 110px 24px 0; }
  #custom-workshops .aw-wq__side { flex-direction: row; align-items: center; gap: 20px; padding: 28px 0; border-right: 0; border-bottom: 1px solid rgba(18, 17, 51, 0.12); }
  #custom-workshops .aw-wq__mark { width: 52px; flex: none; }
  #custom-workshops .aw-wq__body { padding: 30px 0 36px; gap: 30px; }
  #custom-workshops .aw-wq__quote { font-size: 23px; }
}
html.wz-editing #custom-workshops .aw-wq { opacity: 1 !important; transform: none !important; }
