/* Webinars page. Loaded only where a webinar-* block is used. */
.wb-featured{padding-top:2rem}
.wb-stage{max-width:62rem;margin:0 auto}
.wb-frame{position:relative;aspect-ratio:16/9;border-radius:var(--radius-l);overflow:hidden;background:var(--plum-deep);box-shadow:0 50px 90px -50px color-mix(in srgb,var(--violet-deep) 70%,transparent),0 0 0 1px var(--v-border)}
.wb-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.wb-play{position:absolute;left:50%;top:50%;width:5.4rem;height:5.4rem;transform:translate(-50%,-50%);display:grid;place-items:center;border-radius:50%;background:#fff;color:var(--violet-deep);box-shadow:0 20px 50px -12px rgba(0,0,0,.55);transition:transform .3s var(--ease-out)}
.wb-play::after{content:"";position:absolute;inset:-.7rem;border-radius:50%;border:2px solid rgba(255,255,255,.4);animation:wbring 2.4s ease-out infinite}
.wb-play svg{width:2rem;height:2rem;fill:currentColor;margin-left:.2rem}
.wb-play.sm{width:3.4rem;height:3.4rem}
.wb-play.sm::after{inset:-.45rem}
.wb-play.sm svg{width:1.3rem;height:1.3rem}
@keyframes wbring{0%{transform:scale(.9);opacity:.9}100%{transform:scale(1.35);opacity:0}}
.wb-poster:hover .wb-play,.wb-poster:focus-visible .wb-play,.wb-card:hover .wb-play{transform:translate(-50%,-50%) scale(1.08)}
.wb-poster:hover .wb-glow,.wb-card:hover .wb-poster:focus-visible,.wb-yt:focus-visible,.wb-card h3 a:focus-visible{outline:3px solid var(--violet-bright);outline-offset:3px}
.wb-cap{position:absolute;left:2rem;bottom:1.6rem;display:flex;align-items:center;gap:.7rem;font-size:var(--fs-label);letter-spacing:var(--track-label);text-transform:uppercase;font-weight:600;color:rgba(255,255,255,.88)}
.wb-cap i{width:4px;height:4px;border-radius:50%;background:currentColor;opacity:.7}
.wb-info{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:2.4rem;max-width:62rem;margin:2.4rem auto 0;align-items:start}
.wb-meta{display:flex;gap:.6rem;align-items:center;margin:0 0 .6rem;font-size:var(--fs-label);letter-spacing:var(--track-label);text-transform:uppercase;font-weight:600;color:var(--graphite)}
.wb-main h2{font-size:var(--fs-h3);line-height:var(--lh-h3);margin:0}
.wb-sum{color:var(--graphite);font-size:var(--fs-lead);margin:1rem 0 0}
.wb-aud{margin:1rem 0 0;color:var(--graphite);font-size:.95rem}
.wb-aud strong{color:var(--plum)}
.wb-credit{margin:1rem 0 0;padding:.7rem .9rem;border-left:3px solid var(--violet-bright);background:var(--mist);border-radius:0 var(--radius-s) var(--radius-s) 0;font-size:.9rem;color:var(--plum)}
.wb-yt{display:inline-block;margin-top:1.2rem;font-weight:600;color:var(--violet-deep);text-decoration:underline;text-underline-offset:4px}
.wb-take{background:var(--paper);border:1px solid var(--hairline);border-radius:var(--radius-l);padding:1.6rem;box-shadow:0 24px 48px -40px var(--shadow-ink)}
.wb-take h3{font-size:var(--fs-h4);line-height:var(--lh-h4);margin:0 0 1rem;color:var(--plum)}
.wb-take ul{list-style:none;margin:0;padding:0;display:grid;gap:.85rem}
.wb-take li{display:grid;grid-template-columns:1.6rem 1fr;gap:.7rem;align-items:start;color:var(--graphite);line-height:1.45}
.wb-tick{display:inline-grid;place-items:center;width:1.6rem;height:1.6rem;border-radius:50%;background:var(--grad-v);color:#fff}
.wb-tick svg{width:.95rem;height:.95rem;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.wb-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem;margin-top:2.2rem}
.wb-card{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--hairline);border-radius:var(--radius-l);overflow:hidden;transition:transform .25s var(--ease-out),box-shadow .25s}
.wb-card:hover{transform:translateY(-3px);box-shadow:0 30px 56px -36px color-mix(in srgb,var(--violet) 45%,transparent)}
.wb-cposter{position:relative;inset:auto;aspect-ratio:16/9}
.wb-dur{position:absolute;right:.9rem;bottom:.8rem;padding:.2rem .5rem;border-radius:6px;background:rgba(18,14,53,.65);font-size:.72rem;font-weight:600;letter-spacing:.04em;color:#fff}
.wb-cbody{display:flex;flex-direction:column;padding:1.4rem;flex:1}
.wb-cbody h3{font-size:var(--fs-h4);line-height:var(--lh-h4);margin:0 0 .6rem}
.wb-cbody h3 a{color:var(--plum);text-decoration:none}
.wb-cbody h3 a::after{content:"";position:absolute;inset:0}
.wb-card{position:relative}
.wb-cbody p{color:var(--graphite);margin:0;font-size:.95rem}
.wb-cbody .wb-meta{margin-bottom:.5rem}
.wb-cbody .wb-aud{margin-top:.8rem}
.wb-cbody .wb-yt{margin-top:auto;padding-top:1rem;align-self:flex-start}
@media (max-width:860px){
  .wb-info{grid-template-columns:minmax(0,1fr)}
  .wb-cards{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:560px){
  .wb-play{width:4.2rem;height:4.2rem}
    .wb-cap{left:1.2rem;bottom:1rem}
}
@media (prefers-reduced-motion:reduce){.wb-play::after{animation:none}.wb-glow,.wb-play,.wb-card{transition:none}}
.wb-play{left:auto;right:2.4rem;top:auto;bottom:2rem;transform:none;width:4.6rem;height:4.6rem}
.wb-poster:hover .wb-play,.wb-poster:focus-visible .wb-play{transform:scale(1.08)}
.wb-cposter .wb-play.sm{left:50%;top:50%;right:auto;bottom:auto;transform:translate(-50%,-50%)}
.wb-card:hover .wb-cposter .wb-play.sm{transform:translate(-50%,-50%) scale(1.08)}

/* Posters are real frames from the recordings */
.wb-poster,.wb-cposter{position:absolute;inset:0;display:block;overflow:hidden;background:#0e0b22;color:#fff;text-decoration:none}
.wb-poster picture,.wb-cposter picture{position:absolute;inset:0;display:block}
.wb-poster img,.wb-cposter img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s var(--ease-out)}
.wb-poster:hover img,.wb-poster:focus-visible img,.wb-card:hover .wb-cposter img{transform:scale(1.03)}
.wb-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,6,20,0) 55%,rgba(8,6,20,.62));pointer-events:none}
.wb-cposter .wb-shade{background:linear-gradient(180deg,rgba(8,6,20,0) 60%,rgba(8,6,20,.45))}
.wb-play{box-shadow:0 18px 44px -10px rgba(8,6,20,.7)}
.wb-play::after{border-color:rgba(255,255,255,.55)}
.wb-cap{text-shadow:0 2px 10px rgba(8,6,20,.7)}
.wb-card[hidden]{display:none}
.wb-yt[aria-hidden="true"]{text-decoration:none}
.wb-card .wb-cposter{position:relative;inset:auto;aspect-ratio:16/9;width:100%}
.wb-stage{scroll-margin-top:6.5rem}

/* Upcoming webinars strip (webinar-upcoming block), above the library. Hidden when nothing is scheduled. */
.wb-up{padding-block:2.5rem 1rem}
.wb-up-head{max-width:46rem;margin:0 auto 1.4rem;text-align:center}
.wb-up-head h2{margin:.2rem 0 .4rem}
.wb-up-lead{margin:0;color:var(--graphite-soft,#5b5872)}
.wb-up-list{list-style:none;margin:0 auto;padding:0;max-width:62rem;display:grid;gap:1rem}
.wb-up-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1.2rem 1.4rem;padding:1.2rem 1.4rem;border-radius:var(--radius-l,20px);background:#fff;border:1px solid var(--hairline,#e5e1f3);box-shadow:0 30px 60px -45px color-mix(in srgb,var(--violet-deep,#3d22a3) 60%,transparent)}
.wb-up-item.has-img{grid-template-columns:9rem auto 1fr auto}
.wb-up-img{width:9rem;aspect-ratio:16/9;object-fit:cover;border-radius:12px}
.wb-up-cal{display:grid;place-items:center;width:4.4rem;padding:.55rem 0;border-radius:14px;background:var(--mist,#f3f0ff);color:var(--violet-deep,#3d22a3);line-height:1}
.wb-up-d{font:600 1.7rem/1 var(--display,inherit)}
.wb-up-m{margin-top:.25rem;font:500 .75rem/1 var(--mono,monospace);text-transform:uppercase;letter-spacing:.08em}
.wb-up-body h3{margin:0 0 .3rem;font-size:1.15rem}
.wb-up-body p{margin:.15rem 0}
.wb-up-when{font:500 .85rem/1.4 var(--mono,monospace);color:var(--violet-deep,#3d22a3)}
.wb-up-who{font-weight:600}
.wb-up-sum{color:var(--graphite-soft,#5b5872)}
.wb-up-go{white-space:nowrap}
@media (max-width:760px){
  .wb-up-item,.wb-up-item.has-img{grid-template-columns:auto 1fr;align-items:start;gap:1rem;padding:1.1rem}
  .wb-up-cal{width:3.6rem}
  .wb-up-d{font-size:1.4rem}
  .wb-up-img{grid-column:1/-1;width:100%}
  .wb-up-go{grid-column:1/-1;justify-content:center}
}
