.session .heading {
   background-image: var(--bg-img);
   color: var(--dark-content);
   background-position: center;
   background-size: cover;
   background-color: var(--dark-01);
}
.session-main, .related-content {
   padding-top: 1rem;
   padding-bottom: 1rem;
}
.related-content {
   background-color: var(--base-02);
}
.related-content h2 {
   line-height: 1.5;
   font-size: var(--text-2xl);
   font-weight: 600;
   margin-bottom: 1rem;
}
.related-media-container .media-container .media-details-container a {
    text-decoration: none;
}
.related-media-container .media-container .media-details-container h3 {
    line-height: 1.3;
    font-weight: 600;
    font-size: var(--text-base);
    width: fit-content;
    transition: var(--three);
}
.related-media-container .media-container .media-details-container h3:hover {

}
.session .heading .wrapper {
   flex-direction: column;
   display: flex;
   gap: 1rem;
}
.session .heading .header-media-container {
   margin: -.75rem -.75rem 0 -.75rem;
}
.session .heading .heading-details-container {
   list-style-type: none;
   font-size: var(--text-sm);
   font-weight: 500;
}
.session .heading .heading-details-container li {
   display: inline;
}
.session .heading h1 {
   font-size: var(--text-2xl);
}
.session .heading .heading-details-container li:not(:last-of-type)::after {
   content: '•';
   margin:0 .5rem;
}

.session .heading .heading-actions-container {
   display: flex;
   flex-wrap: wrap;
   gap: .5rem
}
.session .heading-actions-container > .going-button,
.session .heading-actions-container > .interested-button {
   flex-grow: 1;
}
.addeventatc {
    color: inherit !important;
}
.addeventatc .addeventatc_icon {
   display: none;
}
.session .heading-actions-container > .going-button,
.session .heading-actions-container > .interested-button,
.session .heading-actions-container > .addeventatc,
.session .heading-actions-container > .calendar-button,
.session .heading-actions-container > .favorite-button,
.session .heading-actions-container > .list-button,
.session .heading-actions-container > .share-button,
.session .more-container .more-button {
   background-color: rgb(208, 229, 237, .25);
   height: 2.5rem;
   min-width: 2.5rem;
   color: var(--dark-content);
   filter: blur();
   border-radius: .25rem;
   border: none;
    width: calc((100% - .5rem) / 2);
    padding: 0;
    font-size: var(--text-base);
}
.session .more-container .more-button {
   display: flex;
   justify-content: center;
   align-items: center;
   border-radius: 100%;
}
.session .more-container .more-button i {
   padding-right: 0;
}
.session .more-container .dropdown-more-container.top.active {
   top: unset;
   bottom: 3rem;
}
.session .more-container .dropdown-more-container.top {
   top: unset;
   bottom: 0rem;
}

.session .heading-actions-container > .going-button.active,
.session .heading-actions-container > .interested-button.active,
.session .heading-actions-container > .favorite-button.active,
.session .heading-actions-container > .list-button.active,
.session .heading-actions-container > .share-button.active {
   background-color: var(--base-02);
   color: var(--dark-focus);
} 
.session .heading-actions-container > .going-button.active:hover,
.session .heading-actions-container > .interested-button.active:hover,
.session .heading-actions-container > .favorite-button.active:hover,
.session .heading-actions-container > .list-button.active:hover,
.session .heading-actions-container > .share-button.active:hover {
   background-color: var(--base-03);
}
.session .favorite-button .active,
.session .favorite-button.active .inactive {
   display: none;
}
.session .favorite-button .inactive,
.session .favorite-button.active .active {
   display: unset;
}
.session .heading-actions-container i {
   padding-right: .25rem
}
.session .heading-actions-container > .going-button:hover,
.session .heading-actions-container > .interested-button:hover,
.session .more-container .more-button:hover,
.session .heading-actions-container > .calendar-button:hover,
.session .heading-actions-container > .favorite-button:hover,
.session .heading-actions-container > .list-button:hover,
.session .heading-actions-container > .share-button:hover {
   background-color: rgb(208, 229, 237, .33);
}
.session .heading-actions-container > .interested-button.active i::before,
.session .heading-actions-container > .going-button.active i::before,
.session .heading-actions-container > .favorite-button.active i::before,
.session .dropdown-action-button.favorite-button.active i::before {
   font-weight: 900;
}
.session .dropdown-action-button.favorite-button .active,
.session .dropdown-action-button.favorite-button.active .inactive {
   display: none;
}
.session .dropdown-action-button.favorite-button .inactive,
.session .dropdown-action-button.favorite-button.active .active {
   display: unset;
}
.session .session-details-container {
   background-color: var(--base-02);
}
.session .dropdown-more-container.active {
   bottom: 0;
   visibility: visible;
   opacity: 100%;
}
.session .dropdown-more-container {
   visibility: hidden;
   opacity: 0%;
   display: flex;
   flex-direction: column;
   position: fixed;
   bottom: -100%;
   left: 0;
   right: 0;
   background-color: var(--base-01);
   min-width: 160px;
   z-index: 2;
   border-radius: 0.5rem;
   padding: 0 0 1rem 0;
   text-wrap: nowrap;
   border: .5px solid var(--primary);
   box-shadow: 0px 4px 16px -4px rgba(0, 0, 0, 0.2);
   transition: var(--three);
   overflow: hidden;
}
.session .dropdown-action-button {
   padding: .75rem 1rem;
   white-space: nowrap;
   text-decoration: none;
   display: flex;
   gap: .5rem;
   align-items: center;
   background-color: transparent;
   color: var(--base-content);
   font-weight: 500;
   font-size: var(--text-sm);
   border: none;
   width: 100%;
}
.session .dropdown-action-button:hover {
   background-color: var(--base-03);
}
.session-main:nth-of-type(odd) {
   background-color: var(--base-02);
}
.session-main:nth-of-type(even) {
   background-color: var(--base-05);
}
.session-main h2 {
   font-size: var(--text-2xl);
   font-weight: 600;
   margin-bottom: 1rem;
}
.session-main h2 {
   line-height: 1.5;
}
.session-main .presentations-container {
   display: flex;
   flex-wrap: wrap;
   gap: 2rem;
}
.session-main .presentation {
   width: 100%;
}
.session-main .presentation h3 {
   font-size: var(--text-lg);
   font-weight: 600;
   overflow: hidden;
   display: -webkit-box;
   -webkit-box-orient: vertical;
   -webkit-line-clamp: 3;
   margin-bottom: .5rem;
}
.abstract-container .presentation h3 {
   font-size: var(--text-lg);
   font-weight: 600;
   margin-bottom: .5rem;
}
.session-main .presentation .author,
.abstract-container .presentation .author {
   font-size: var(--text-sm);
   color: var(--base-mute);
   margin-bottom: .75rem;
}
.session .author-details-container a {
   text-decoration: none;
}
.session-main .presentation .abstract {
   overflow: hidden;
   display: -webkit-box;
   -webkit-box-orient: vertical;
   -webkit-line-clamp: 3;
}
.session-main .presentation .view-more-link {
   font-size: var(--text-sm);
   color: var(--primary);
   text-decoration: underline;
   font-weight: 500;
}
.session-main .presentation .view-more-link:hover {
   color: var(--primary-focus);
}
.session .related-media-container .media-container {
   flex-direction: row;
   margin-bottom: 1.75rem;
}
.session .session-img-link {
   width: 10rem;
   flex-shrink: 0;
   overflow: hidden;
   border-radius: .25rem;
}
[data-widgetname="RelatedSpeakers"] {
   display: flex;
   flex-wrap: wrap;
   gap: 1.75rem;
}

.authors-container .author {
   display: flex;
   gap: .75rem;
   align-items: center;
   width: 100%;
}
.authors-container .author-img-link {
   height: 5rem;
   width: 5rem;
   overflow: hidden;
   border-radius: 100%;
   display: block;
   flex-shrink: 0;
   align-self: center;
   text-decoration: none;
}
.authors-container .author-img-thumb {
   width: 100%;
    height: 100%;
    object-fit: cover;
    transition: var(--three);
}
.author:hover .author-img-thumb {
   transform: scale(1.1);
   transition: var(--three);
}
.authors-container .author-avatar {
   display: flex;
   width: 100%;
   height: 100%;
   justify-content: center;
   align-items: center;
   text-decoration: none;
   font-size: var(--text-3xl);
   transition: var(--three);
}
.author:hover .author-avatar {
   transform: scale(1.1);
}
.authors-container .author-avatar.dark-blue {
   background-color: var(--primary);
   color: var(--primary-content);
}
.authors-container .author-avatar.light-blue {
   background-color: #6284C3;
   color: var(--primary-content);
}
.authors-container .author-avatar.purple {
   background-color: #a97eb0;
   color: var(--primary-content);
}
.authors-container .author-avatar.red {
   background-color: #e84360;
   color: var(--primary-content);
}
.authors-container .author-avatar.peach {
   background-color: #f0a693;
   color: var(--base-content);
}
.authors-container .author-avatar.orange {
   background-color: #e87524;
   color: var(--primary-content);
}
.authors-container .author-avatar.yellow {
   background-color: #f3c317;
   color: var(--base-content);
}
.authors-container .author-avatar.green {
   background-color: #56c271;
   color: var(--base-content);
}
.authors-container .author-avatar.aqua {
   background-color: #00b0ad;
   color: var(--base-content);
}
.authors-container .author-avatar.mint {
   background-color: #84c7bc;
   color: var(--base-content);
}
.authors-container h3 {
   line-height: 1.25;
   font-weight: 600;
   font-size: var(--text-base);
   border-bottom: 1px solid transparent;
   width: fit-content;
   transition: var(--three);
}
.authors-container .author-details {
   margin-bottom: .25rem;
}
.authors-container .author-details,
.authors-container .actions-container,
.authors-container .media-info,
.related-media-container .session-details  {
   list-style-type: none;
}
.authors-container .author-details li,
.authors-container .actions-container li,
.related-media-container .session-details li {
   display: inline;
   font-size: var(--text-sm);
   color: var(--base-mute)
}
.authors-container .author-details li:not(:last-of-type)::after{
   content: ',';
}
.authors-container .more-container {
   align-self: flex-start;
}
.authors-container .more-container .more-button {
   background-color: transparent;
   color: var(--base-content);
   border: 1px solid transparent;
   visibility: hidden;
   opacity: 0;
}
.authors-container .author:hover .more-container .more-button {
   visibility: visible;
   opacity: 100%;
}
.authors-container .more-container .more-button:hover {
   background-color: var(--base-01);
   color: var(--base-content);
   border: 1px solid var(--border-color);
}
.authors-container button {
   font-size: var(--text-sm);
   border-radius: 2rem;
   border: 1px solid rgba(36, 43, 104, .25);
   padding: 0 1rem;
   color: rgba(36, 43, 104, 1);
   background-color: rgba(36, 43, 104, .15);
   text-wrap: nowrap;
   margin-top: 0.625rem;
}
.authors-container button i {
   padding-right: .325rem;
}
.authors-container button:hover {
   background-color: rgba(36, 43, 104, .25);
}
.authors-container button.active {
   background-color: rgba(36, 43, 104, 1);
   color: var(--base-01);
}
.authors-container button.active i {
   font-weight: 900;
}
.authors-container button.active:hover {
   background-color: var(--primary-focus);
}
.authors-container .author-img-link {
   margin: 0 2.5rem;
}
.related-content-link {
   flex-grow: 1;
   background-color: var(--base-02);
   filter: brightness(95%);
   border: 1px solid transparent;
   color: var(--pri);
   border-radius: .5rem;
   padding: 1rem;
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: flex-start;
   font-size: var(--text-base);
   box-shadow: 0px 4px 8px -4px rgba(0, 0, 0, 0);
}
.related-content-link-container {
   margin: auto;
}
.related-content-link-container div {
   display: inline;
   margin-left: .5rem;
}
.related-content-link:hover {
   box-shadow: 0px 4px 8px -4px rgba(0, 0, 0, 0.2);
   background-color: var(--base-04);
}
.related-content-link:hover i {
   animation: bounce 1s infinite;
}
@media only screen and (min-width: 360px) {
   
}
 
 @media only screen and (min-width: 500px) {
   .related-media-container {
      display: flex;
      flex-wrap: wrap;
      column-gap: .5rem;
      row-gap: 1.5rem;
   }
   .session .related-media-container .media-container,
   .authors-container .author {
      gap: 1.5rem;
   }

   .related-content .media-container .thumb-overlay {
      padding-bottom: .75rem;
      padding-right: .75rem;
   }
   .related-media-container .media-container .thumb-overlay button {
      width: 2rem;
      height: 2rem;
   }
   .related-media-container .media-container .media-details-container .media-info {
      display: block;
      font-size: var(--text-xs);
   }
   .related-media-container .media-container .media-details-container .media-info li {
      display: inline;
   }
   .related-media-container .media-container .media-actions-container {
      display: flex;
      gap: .5rem;
   }
   .related-media-container .media-container .media-actions-container > .interested-button,
   .related-media-container .media-container .media-actions-container > .going-button {
      font-size: var(--text-xs);
      text-wrap: nowrap;
   }
 }
 
 @media only screen and (min-width: 640px) {
   .session .heading {
      position: relative;
      margin-bottom: .625rem;
   }
   .session .heading .media-container {
      margin: 0;
      background: rgb(208, 229, 237, .1);
      border-radius: .75rem;
      box-shadow: 0 4px 30px rgba(0, 0, 0, 0.66);
      backdrop-filter: blur(5px);
      -webkit-backdrop-filter: blur(5px);
      border: 1px solid rgb(208, 229, 237, .1);
   }
   .session .heading .media-wrapper {
      padding: 0.75rem;
      border-radius: 1rem;
      overflow: hidden;
      box-shadow: 0 4px 30px rgba(0, 0, 0, 0.66);
   }
   .session .heading .header-media-container {
      margin: -.5rem -.75rem 0 -.75rem;
   }
   .session .more-container {
      position: relative;
   }
   .session .dropdown-more-container.active {
      visibility: visible;
      opacity: 1;
      transform: scale(1) translateY(0);
   }
   .session .dropdown-more-container {
      visibility: hidden;
      opacity: 0;
      transform: scale(.99) translateY(1rem);
      position:absolute;
      max-height: fit-content;
      display: flex;
      flex-direction: column;
      left: unset;
      right: 0;
      top: 2.75rem;
      background-color: var(--base-01);
      min-width: 14rem;
      z-index: 1;
      border-radius: 0.5rem;
      padding: 0;
      text-wrap: nowrap;
      border: 1px solid var(--primary);
      box-shadow: 0px 4px 16px -4px rgba(0, 0, 0, 0.2);
      transition: var(--three);
   }
   .session .dropdown-action-button.calendar-button {
      display: none;
   }
   .session .heading-actions-container > .going-button,
   .session .heading-actions-container > .interested-button,
   .session .heading-actions-container > .calendar-button {
      padding: 0 1rem;
   }
   .session .heading-actions-container > .calendar-button {
      display: unset;
   }
   .session .heading::after {
      position: absolute;
      content: "";
      left: 0;
      right: 0;
      width: 100%;
      height: .625rem;
      bottom: -.625rem;
      margin: 0;
      background: rgb(49, 53, 73, 0.5);
      background: linear-gradient(140deg, rgba(21, 72, 108, 0.6) 0%, rgba(26, 33, 119, 0.6) 100%);
      box-shadow: 0 4px 12px rgba(0, 0, 0, 0.33);
      backdrop-filter: blur(5px);
      -webkit-backdrop-filter: blur(5px);
   }
   .session .dropdown-more-container.active.above{
      top: unset;
      bottom: 3rem;
   }
   .session .dropdown-more-container.above{
      top: unset;
      bottom: 2rem;
   }
   .session-main .presentation {
      width: calc(50% - 1rem);
      background-color: white;
      padding: 1rem 1.25rem;
      border-radius: .5rem;
      box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.1);
   }
   .session-main .presentation h3 {
      font-size: var(--text-base);
   }
   .session-main .presentation .author {
      font-size: var(--text-xs);
   }
   .session-main .presentation .abstract {
      font-size: var(--text-sm);
   }
   [data-widgetname="RelatedPresentations"], [data-widgetname="RelatedSpeakers"] {
       display: flex;
       flex-wrap: wrap;
       gap: .75rem;
   }
   .session .related-media-container .media-container {
       margin-bottom: 0;
   }
    .session .related-media-container .media-container, .authors-container .author {
        width: calc((100% - 1.5rem) / 2);
    }
   .related-media-container .media-container .media-details-container h3,
   .authors-container h3 {
      font-size: var(--text-sm);
    -webkit-line-clamp: 3;
   }
    .session .related-media-container .media-container, .authors-container .author {
        gap: 1rem;
    }
}
 @media only screen and (min-width: 768px) {
   .session .heading .wrapper {
      gap: 1.5rem;
  }
   .session .heading .heading-actions-container {
      gap: 1rem;
   }
   .session .heading-actions-container > .favorite-button,
   .session .heading-actions-container > .calendar-button {
        width: fit-content;
        height: 3rem;
        padding: 0 1.5rem;
   }
   .related-media-container .media-container {
      width: calc((100% - 1rem) / 3)
   }
}

@media only screen and (min-width: 1024px) {
   .session-main, .related-content {
      padding-top: 1.5rem;
      padding-bottom: 1.5rem;
   }
   .session .heading-actions-container > .going-button,
   .session .heading-actions-container > .interested-button,
   .session .heading-actions-container > .calendar-button,
   .session .heading-actions-container > .dropdown-action-button.calendar-button {
      width: fit-content;
      flex-grow: 0;
      padding: 0 1.5rem;
   }
   .session .heading-actions-container > .favorite-button i,
   .session .heading-actions-container > .list-button i,
   .session .heading-actions-container > .share-button i {
      padding-right: 0;
   }
   .session-main h2,
   .related-content h2 { 
      margin-bottom: 1.25rem;
   }
   .related-content-link-container div {
      display: block;
      margin-left: 0;
   }
   .related-content-link {
      font-size: var(--text-2xl);
   }
}
 
 @media only screen and (min-width: 1280px) {
   .session .heading .heading-details-container {
      font-size: 1rem;
   }
   .session .heading h1 {
      font-size: var(--text-5xl);
      width: 64rem;
   }
   .session-main .presentation h3 {
      font-size: var(--text-lg);
   }
   .session-main .presentation .author {
      font-size: var(--text-sm);
   }
   .session-main .presentation .abstract {
      font-size: var(--text-base);
   }
   .session-wrapper {
      display: flex;
      flex-wrap: wrap;
   }
   .session .session-main-container {
      width: calc(100% - 30rem);
   }
   .session .related-content {
      width: 30rem;
      padding-left: 1rem;
   }
   .session-main:nth-of-type(even) {
      background-color: var(--base-02);
   }
   .session .related-media-container .media-container {
      width: 100%;
      flex-direction: row;
      gap: 1rem;
   }
   .media-container .img-container {
      width: 10rem;
      height: 5.625rem;
   }
   .session .media-container.author .img-container {
      border-radius: 100%;
      left: 0;
      transform: translateX(0%);
      width: 5.625rem;
      height: 5.625rem;
      margin-left: 2.1875rem;
      margin-right: 2.1875rem;
      flex-shrink: 0;
   }
   .session .media-container .details-more-container {
      flex-grow: 1;
      max-width: 16rem;
   }
   .session .related-media-container .media-container .media-details-container .media-info {
      display: none;
   }
   .session .media-details-container {
      display: flex;
      flex-direction: column;
      justify-content: space-between;
   }
   .related-content-link-container div {
      display: inline;
      margin-left: .5rem;
   }
   .related-content-link {
      font-size: var(--text-lg);
   }
   .session .related-media-container .media-container, .authors-container .author {
      width: 100%;
   }
   .authors-container button {
      width: fit-content;
      margin-top: .5rem;
      font-size: var(--text-xs);
   }
 }
 
 @media only screen and (min-width: 1536px) {
   .session .heading {
      padding: 2.5rem 0;
   }
   .session .heading .heading-details-container {
      margin-top: 1rem
   }
   .session .heading .heading-actions-container {
      margin: .5rem 0 0 0;
      gap: .5rem;
      align-items: center;
   }
   .session .heading-actions-container > .going-button,
   .session .heading-actions-container > .interested-button,
   .session .heading-actions-container > .calendar-button {
      height: 3rem;
      font-size: var(--text-lg);
      padding: 0 1.5rem;
      border-radius: .325rem;
   }
   .session .heading-actions-container > .calendar-button {
      margin-right: .75rem;
   }
   .session .heading-actions-container > .going-button i,
   .session .heading-actions-container > .favorite-button i,
   .session .heading-actions-container > .interested-button i,
   .session .heading-actions-container > .calendar-button i {
      padding-right: .75rem;
   }
   .session-wrapper {
      max-width: 90rem;
      margin: 0 auto;
   }
   .session-wrapper .session-main-container {
      padding-right: 2rem;
   }
}
@media only screen and (min-width: 1920px) {
   .session .heading {
      padding: 4rem 0 2rem 0;
   }
}