/* Conference components. Loaded after main.css to isolate the completed layouts. */
.editor-styles-wrapper .wp-block-ee-session-detail { width: 100%; max-width: 1024px; }
.ee-session-editor .ee-conference-detail { padding: 24px 0; }
.ee-session-editor textarea { width: 100%; resize: none; border: 0; padding: 0; background: transparent; box-shadow: none; }
.ee-session-editor__selection { padding-left: 20px; }
.ee-session-editor__selected { margin-bottom: 16px; }
.ee-session-editor__selected > span { display: block; margin-bottom: 6px; }
@media (min-width: 768px) {
    .ee-conference-profile .ee-speaker-detail__container[style],
    .ee-speaker-profile-editor .ee-conference-profile[style] .ee-speaker-detail__container {
        grid-template-columns: minmax(0, var(--ee-profile-photo-width, 304px)) minmax(0, 1fr);
    }
}
.editor-styles-wrapper .wp-block-ee-speaker-profile { max-width: 1024px; width: 100%; }
.ee-speaker-profile-editor .ee-conference-profile { padding: 24px 0; }
.ee-speaker-profile-editor .ee-speaker-detail__container { grid-template-columns: minmax(160px, 1fr) minmax(0, 2fr); padding-inline: 24px; gap: 24px; }
.ee-speaker-profile-editor .ee-speaker-profile-editor__photo { display: block; padding: 0; width: 100%; height: auto; min-height: 160px; background: #e9edf3; white-space: normal; }
.ee-speaker-profile-editor .ee-speaker-profile-editor__photo span { display: block; padding: 24px; }
.ee-speaker-profile-editor textarea { width: 100%; resize: none; background: transparent; border: 0; box-shadow: none; padding: 0; }
.ee-speaker-profile-editor .components-notice .components-button { margin-left: 12px; }
.ee-speaker-profile-editor .ee-speaker-detail__bio .block-editor-block-list__layout { padding: 0; }
.ee-conference-hero {
    margin-block: 0;
    padding: 64px 32px;
    background: var(--ee-header-gradient);
    color: var(--ee-white);
    text-align: center;
}
.ee-conference-hero > * { max-width: 712px; margin-inline: auto; }
.ee-conference-hero .ee-conference-hero__eyebrow { margin-block: 0 4px; font: 600 22px/28px var(--ee-font); letter-spacing: .25px; }
.ee-conference-hero h1 { margin-block: 0; color: inherit; font: 700 48px/52px var(--ee-font); }
.ee-conference-hero .ee-conference-hero__subtitle { margin-block: 16px 0; font: 500 22px/28px var(--ee-font); letter-spacing: .25px; }
.ee-conference.ee-conference-agenda { width: 100%; max-width: 1024px; margin: 0 auto; padding: 48px 32px 64px; background: white; }
.ee-conference .ee-conference-agenda__controls { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 32px; }
.ee-conference .ee-conference-agenda__search { display: flex; flex: 0 1 231px; align-items: center; width: 231px; max-width: 100%; height: 40px; padding: 0 4px 0 12px; border: 1.5px solid var(--ee-black); border-radius: 4px; }
.ee-conference .ee-conference-agenda__search input { flex: 1; min-width: 0; width: 100%; height: 100%; margin: 0; padding: 0; border: 0; background: transparent; color: var(--ee-black); font: 400 14px/18.7px var(--ee-font); }
.ee-conference .ee-conference-agenda__search input::placeholder { color: var(--ee-grey-text); opacity: 1; }
.ee-conference .ee-conference-agenda__search:focus-within { border-color: var(--ee-blue-eeb); }
.ee-conference .ee-conference-agenda__search input:focus { outline: none; box-shadow: none; }
.ee-conference .ee-conference-agenda__search button { flex: 0 0 32px; width: 32px; height: 32px; min-height: 0; padding: 0; border: 0; background: transparent; cursor: pointer; }
.ee-conference .ee-conference-agenda__search img { width: 32px; height: 32px; }
.ee-conference .ee-conference-agenda__years { display: flex; flex-wrap: wrap; gap: 8px; }
.ee-conference .ee-conference-agenda__year,
.ee-conference .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 40px; min-height: 40px; padding: 8px 12px; border: 1.5px solid var(--ee-black); border-radius: 4px; background: white; color: var(--ee-black); font: 600 14px/24px var(--ee-font); text-decoration: none; }
.ee-conference .ee-conference-agenda__year.is-active,
.ee-conference .page-numbers.current { border-color: var(--ee-blue-eeb); background: var(--ee-blue-eeb); color: white; }
.ee-conference .ee-conference-agenda__year:hover,
.ee-conference a.page-numbers:hover { border-color: var(--ee-blue-eeb); }
.ee-conference .ee-conference-agenda__list { display: flex; flex-direction: column; gap: 32px; }
.ee-conference .ee-session-card { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: 'heading more' 'speakers speakers'; gap: 32px; padding: 32px; border: 1.5px solid var(--ee-black); border-radius: 12px; background: white; box-shadow: none; }
.ee-conference .ee-session-card__header { grid-area: heading; display: block; padding: 0; margin: 0; border: 0; min-width: 0; }
.ee-conference .ee-session-card__title { margin: 0 0 4px; font: 600 28px/34px var(--ee-font); color: var(--ee-black); overflow-wrap: anywhere; }
.ee-conference .ee-session-card__title a { color: inherit; text-decoration: none; }
.ee-conference .ee-session-card__datetime { margin: 0; color: var(--ee-grey-text); font: 400 20px/28px var(--ee-font); }
.ee-conference .ee-session-card__btn,
.ee-conference-detail .ee-session-detail__back,
.ee-conference-profile .ee-speaker-detail__back { display: inline-flex; align-items: center; justify-content: center; min-height: 40px; padding: 8px 12px; border: 0; border-radius: 4px; background: var(--ee-blue-eeb); color: white; font: 600 14px/24px var(--ee-font); text-decoration: none; text-align: center; }
.ee-conference .ee-session-card__btn { grid-area: more; align-self: start; white-space: nowrap; }
.ee-conference .ee-session-card__btn:hover,
.ee-conference-detail .ee-session-detail__back:hover,
.ee-conference-profile .ee-speaker-detail__back:hover { background: var(--ee-blue-dark-start); color: white; }
.ee-conference .ee-session-card__speakers { grid-area: speakers; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; margin: 0; padding: 0; list-style: none; }
.ee-conference-speaker { display: block; width: 100%; min-width: 0; color: var(--ee-black); text-align: center; text-decoration: none; }
.ee-conference-speaker__image { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; object-position: center; border-radius: 8px; }
.ee-conference-speaker__details { display: flex; flex-direction: column; gap: 4px; margin-top: 16px; overflow-wrap: anywhere; }
.ee-conference-speaker__name { color: var(--ee-black); font: 600 18px/24px var(--ee-font); }
.ee-conference-speaker__position { color: var(--ee-black); font: 400 14px/18.7px var(--ee-font); }
.ee-conference-speaker__company { color: var(--ee-grey-text); font: 400 14px/18.7px var(--ee-font); }
.ee-conference-speaker:hover .ee-conference-speaker__name { color: var(--ee-blue-eeb); text-decoration: underline; }
.ee-conference .ee-conference-agenda__pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 32px; }
.ee-conference .page-numbers.dots { border-color: transparent; }
.ee-conference .ee-conference-agenda__empty { padding: 48px 0; color: var(--ee-grey-text); text-align: center; }
.ee-conference-agenda__empty a { display: block; margin-top: 16px; color: var(--ee-blue-eeb); text-decoration: underline; }
.ee-conference-detail { padding: 48px 0 64px; background: var(--ee-light-grey); }
.ee-conference-detail .ee-session-detail__container { max-width: 1024px; width: 100%; margin: 0 auto; padding-inline: 32px; }
.ee-conference-detail .ee-session-detail__card { padding: 32px; border: 0; border-radius: 12px; box-shadow: var(--ee-shadow-card); background: white; }
.ee-conference-detail .ee-session-detail__title { margin: 0 0 4px; color: var(--ee-black); font: 600 28px/34px var(--ee-font); overflow-wrap: anywhere; }
.ee-conference-detail .ee-session-detail__meta { margin: 0 0 24px; color: var(--ee-grey-text); font: 400 20px/28px var(--ee-font); }
.ee-conference-detail .ee-session-detail__content { margin: 0 0 32px; color: var(--ee-black); font: 400 16px/24px var(--ee-font); overflow-wrap: anywhere; }
.ee-conference-detail .ee-session-detail__content p,
.ee-conference-profile .ee-speaker-detail__bio p { margin: 0 0 24px; }
.ee-conference-detail .ee-session-detail__content p:last-child,
.ee-conference-profile .ee-speaker-detail__bio p:last-child { margin-bottom: 0; }
.ee-conference-detail .ee-session-detail__content ul,
.ee-conference-profile .ee-speaker-detail__bio ul { list-style: disc; padding-left: 24px; }
.ee-conference-detail .ee-session-detail__content ol,
.ee-conference-profile .ee-speaker-detail__bio ol { list-style: decimal; padding-left: 24px; }
.ee-conference-detail .ee-session-detail__content a,
.ee-conference-profile .ee-speaker-detail__bio a { color: var(--ee-blue-eeb); text-decoration: underline; }
.ee-conference-detail .ee-session-detail__speakers-title { margin: 0 0 24px; color: var(--ee-black); font: 600 22px/28px var(--ee-font); scroll-margin-top: 100px; }
.ee-conference-detail .ee-session-detail__speakers { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 32px 16px; margin: 0; padding: 0; list-style: none; }
.ee-conference-detail .ee-session-detail__back { display: flex; width: fit-content; margin: 32px auto 0; }
.ee-conference-profile { padding: 64px 0; min-height: 0; background: var(--ee-light-grey); }
.ee-conference-profile .ee-speaker-detail__container { display: grid; grid-template-columns: 304px minmax(0, 1fr); grid-template-areas: 'photo info' 'back info'; grid-template-rows: auto 1fr; gap: 32px; width: 100%; max-width: 1024px; margin: 0 auto; padding-inline: 32px; align-items: start; }
.ee-conference-profile .ee-speaker-detail__photo { grid-area: photo; position: static; display: block; }
.ee-conference-profile .ee-speaker-detail__photo img { width: 100%; max-width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; border-radius: 8px; box-shadow: var(--ee-shadow-card); }
.ee-conference-profile .ee-speaker-detail__info { grid-area: info; min-width: 0; min-height: 0; padding: 32px; border: 0; border-radius: 12px; background: white; box-shadow: var(--ee-shadow-card); }
.ee-conference-profile .ee-speaker-detail__header { display: block; position: relative; padding-right: 64px; }
.ee-conference-profile .ee-speaker-detail__name { margin: 0; color: var(--ee-black); font: 600 28px/34px var(--ee-font); overflow-wrap: anywhere; }
.ee-conference-profile .ee-speaker-detail__linkedin { position: absolute; right: 0; top: 0; display: block; width: 36px; height: 36px; overflow: hidden; }
.ee-conference-profile .ee-speaker-detail__linkedin img { width: 100px; max-width: none; height: 36px; transform: translateX(-64px); }
.ee-conference-profile .ee-speaker-detail__role,
.ee-conference-profile .ee-speaker-detail__company { margin: 4px 0 0; color: var(--ee-black); font: 400 20px/28px var(--ee-font); overflow-wrap: anywhere; }
.ee-conference-profile .ee-speaker-detail__company { color: var(--ee-grey-text); }
.ee-conference-profile .ee-speaker-detail__bio { margin-top: 24px; color: var(--ee-black); font: 400 16px/24px var(--ee-font); overflow-wrap: anywhere; }
.ee-conference-profile .ee-speaker-detail__back { grid-area: back; width: 100%; margin: 0; }
.ee-conference :is(a, button, input):focus-visible, .ee-conference-speaker:focus-visible, .ee-conference-profile a:focus-visible, .ee-conference-detail a:focus-visible { outline: 2px solid var(--ee-blue-eeb); outline-offset: 4px; }
.ee-conference--rew .ee-session-card__btn { background: var(--ee-rew-teal-dark); }
@media (max-width: 1023px) {
    .ee-conference-hero { padding: 48px 32px; }
    .ee-conference-hero h1 { font-size: 40px; line-height: 46px; }
    .ee-conference-hero .ee-conference-hero__eyebrow { font-size: 20px; line-height: 26px; }
    .ee-conference-hero .ee-conference-hero__subtitle { font-size: 20px; line-height: 24px; }
    .ee-conference.ee-conference-agenda { padding: 40px 24px 48px; }
    .ee-conference .ee-conference-agenda__controls { margin-bottom: 24px; }
    .ee-conference .ee-session-card { padding: 24px; gap: 24px; }
    .ee-conference .ee-session-card__title,
    .ee-conference-detail .ee-session-detail__title,
    .ee-conference-profile .ee-speaker-detail__name { font-size: 24px; line-height: 30px; }
    .ee-conference .ee-session-card__speakers { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .ee-conference .ee-session-card__speaker:nth-child(n+4) { display: none; }
    .ee-conference-detail { padding: 40px 0 48px; }
    .ee-conference-detail .ee-session-detail__container,
    .ee-conference-profile .ee-speaker-detail__container { padding-inline: 24px; }
    .ee-conference-detail .ee-session-detail__card,
    .ee-conference-profile .ee-speaker-detail__info { padding: 24px; }
    .ee-conference-detail .ee-session-detail__speakers { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .ee-conference-profile { padding: 48px 0; }
    .ee-conference-profile .ee-speaker-detail__container { gap: 24px; }
}
@media (max-width: 767px) {
    .ee-conference .ee-session-card__speakers,
    .ee-conference-detail .ee-session-detail__speakers { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ee-conference .ee-session-card__speaker:nth-child(n+3) { display: none; }
    .ee-conference-profile .ee-speaker-detail__container { grid-template-columns: minmax(0, 1fr); grid-template-areas: 'photo' 'info' 'back'; grid-template-rows: auto; }
}
@media (max-width: 523px) {
    .ee-conference-hero { padding: 32px 16px; }
    .ee-conference-hero h1 { font-size: 32px; line-height: 38px; }
    .ee-conference-hero .ee-conference-hero__eyebrow { font-size: 18px; line-height: 24px; }
    .ee-conference-hero .ee-conference-hero__subtitle { font-size: 16px; line-height: 22px; }
    .ee-conference.ee-conference-agenda { padding: 32px 16px; }
    .ee-conference .ee-conference-agenda__controls { flex-direction: column; align-items: flex-start; }
    .ee-conference .ee-conference-agenda__search { flex-basis: auto; }
    .ee-conference .ee-session-card { grid-template-columns: minmax(0, 1fr); grid-template-areas: 'heading' 'speakers' 'more'; gap: 24px; }
    .ee-conference .ee-session-card__title,
    .ee-conference-detail .ee-session-detail__title,
    .ee-conference-profile .ee-speaker-detail__name { font-size: 22px; line-height: 28px; }
    .ee-conference .ee-session-card__datetime,
    .ee-conference-detail .ee-session-detail__meta { font-size: 16px; line-height: 24px; }
    .ee-conference .ee-session-card__speakers,
    .ee-conference-detail .ee-session-detail__speakers { grid-template-columns: minmax(0, 1fr); }
    .ee-conference .ee-session-card__speaker:nth-child(n+2) { display: none; }
    .ee-conference-detail .ee-session-detail__container,
    .ee-conference-profile .ee-speaker-detail__container { padding-inline: 16px; }
    .ee-conference-detail,
    .ee-conference-profile { padding: 32px 0; }
    .ee-conference-profile .ee-speaker-detail__container { gap: 16px; }
    .ee-conference-profile .ee-speaker-detail__role,
    .ee-conference-profile .ee-speaker-detail__company { font-size: 18px; line-height: 24px; }
    .ee-conference-speaker { max-width: 310px; margin-inline: auto; }
}
