.acw-speaker-grid{display:grid;grid-template-columns:repeat(var(--acw-grid-columns,3),minmax(0,1fr));gap:clamp(22px,3vw,40px);margin:2rem 0}.acw-speaker-card{display:flex;flex-direction:column;min-width:0}.acw-speaker-card__image-link{display:block;overflow:hidden;background:#f1f1f1;aspect-ratio:4/5}.acw-speaker-card__image{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.acw-speaker-card__image-link:hover .acw-speaker-card__image{transform:scale(1.025)}.acw-speaker-card__placeholder{display:block;width:100%;height:100%;background:linear-gradient(135deg,#eee,#ddd)}.acw-speaker-card__content{padding-top:14px}.acw-speaker-card__name{font-size:clamp(1.25rem,2vw,1.6rem);line-height:1.12;margin:0 0 6px}.acw-speaker-card__name a{text-decoration:none;color:inherit}.acw-speaker-card__role{font-weight:650;line-height:1.35}.acw-speaker-card__org{margin-top:2px;line-height:1.35}.acw-speaker-card__panel{margin-top:8px;font-size:.78rem;line-height:1.35;opacity:.64}.acw-speaker-card__link{display:inline-block;margin-top:12px;font-weight:650}.acw-speaker-grid__empty{grid-column:1/-1}.acw-speaker-profile{display:grid;grid-template-columns:var(--acw-profile-photo,34%) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start;margin:2rem 0}.acw-speaker-profile--right{grid-template-columns:minmax(0,1fr) var(--acw-profile-photo,34%)}.acw-speaker-profile--right .acw-speaker-profile__photo{order:2}.acw-speaker-profile--top{display:block}.acw-speaker-profile--top .acw-speaker-profile__photo{max-width:520px;margin-bottom:28px}.acw-speaker-profile__image{display:block;width:100%;height:auto}.acw-speaker-profile__role{font-size:clamp(1.75rem,2.8vw,2.35rem);font-weight:700;line-height:1.05;margin:0 0 .4rem}.acw-speaker-profile__org{font-size:1.05em;margin-top:3px}.acw-speaker-profile__panel{font-size:.95em;margin-top:9px;opacity:.75}.acw-speaker-profile__bio{margin-top:1.5rem}.acw-speaker-profile__bio>p:first-child{margin-top:0}.acw-event-cta{display:flex;gap:28px;align-items:center;justify-content:space-between;padding:clamp(24px,4vw,42px);margin:clamp(36px,6vw,72px) 0 0;border:1px solid currentColor}.acw-event-cta h2{margin:0 0 8px}.acw-event-cta p{margin:0;max-width:62ch}.acw-event-cta__button{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border:1px solid currentColor;text-decoration:none;font-weight:700;white-space:nowrap}@media(max-width:900px){.acw-speaker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.acw-speaker-grid{grid-template-columns:1fr}.acw-speaker-profile,.acw-speaker-profile--right{display:block}.acw-speaker-profile__photo{max-width:420px;margin:0 0 24px}.acw-speaker-profile--right .acw-speaker-profile__photo{order:initial}.acw-event-cta{display:block}.acw-event-cta__button{margin-top:20px}}

/* The speaker portrait is rendered by ACW beside the bio; hide template-level featured-image blocks as a CSS fallback. */
body.single-acw_speaker .wp-block-post-featured-image{display:none!important}


/* Speaker profiles are evergreen bios; hide template-level publish dates. */
body.single-acw_speaker .wp-block-post-date,
body.single-acw_speaker .entry-date,
body.single-acw_speaker .posted-on,
body.single-acw_speaker time.entry-date,
body.single-acw_speaker .post-date,
body.single-acw_speaker .post-published,
body.single-acw_speaker .published-date{display:none!important}

/* Optional per-speaker session information. */
.acw-speaker-session{font-family:inherit;margin:clamp(28px,4vw,44px) 0 0;padding:1.05rem 1.15rem;border:1px solid currentColor}
.acw-speaker-session__eyebrow{font-family:inherit!important;font-size:.72rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;opacity:.68}
.acw-speaker-session__title{font-family:inherit!important;font-size:clamp(1.05rem,1.6vw,1.3rem)!important;font-weight:700!important;line-height:1.25!important;letter-spacing:0!important;text-transform:none!important;margin:.3rem 0 .5rem!important}
.acw-speaker-session__meta{font-family:inherit!important;display:flex;flex-wrap:wrap;gap:.4rem .9rem;font-size:.92rem;font-weight:650}
.acw-speaker-session__meta span+span:before{content:"•";margin-right:.9rem;opacity:.5}
.acw-speaker-session__topic{font-family:inherit!important;font-size:.95rem;margin:.7rem 0 0;max-width:70ch;line-height:1.45}

/* v1.0.5 — job title is the profile's strong Chunky Cuts heading; session title stays body type. */
.acw-speaker-profile__role{font-size:clamp(1.75rem,2.8vw,2.35rem)!important;line-height:1.05!important;margin:0 0 .45rem!important}
.acw-speaker-profile__org{font-size:1.05em;margin-top:0}
.acw-speaker-profile__bio{margin-top:1.5rem}

@media(max-width:640px){
  .acw-speaker-session{margin-top:28px}
}
