﻿/* ============================================================
   ASH ASH® ANNUAL PROGRAM
   SHARED SEARCH RESULTS STYLESHEET
   Bootstrap 5 | All Results Pages
   ============================================================ */

/* ============================================================
   MAIN RESULTS CONTAINER
   ============================================================ */

.ash-search-results {
    --ash-red: #B7000F;
    --ash-navy: #152746;
    --ash-pink: #FCEBED;
    --ash-border: #DEE2E6;
    --ash-muted: #5F6B7A;
    --ash-light: #F8F9FA;
    width: 100%;
    padding-bottom: 2rem;
}

    /* ============================================================
   BACK NAVIGATION
   ============================================================ */

    .ash-search-results .results-back {
        display: inline-flex;
        align-items: center;
        color: var(--ash-red);
        font-size: 0.875rem;
        font-weight: 600;
        text-decoration: none;
    }

        .ash-search-results .results-back:hover {
            color: var(--ash-navy);
            text-decoration: underline;
        }

    /* ============================================================
   PAGE HEADER
   ============================================================ */

    .ash-search-results .results-header {
        padding: 1.5rem;
        background: var(--ash-light);
        border: 1px solid var(--ash-border);
        border-radius: 0.75rem;
    }

    .ash-search-results .results-icon {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 64px;
        height: 64px;
        border-radius: 50%;
        background: var(--ash-pink);
        color: var(--ash-red);
        font-size: 1.75rem;
    }

    .ash-search-results .results-eyebrow {
        margin-bottom: 0.3rem;
        color: var(--ash-red);
        font-size: 0.7rem;
        font-weight: 700;
        letter-spacing: 0.12em;
    }

    .ash-search-results .results-page-title {
        margin: 0 0 0.4rem;
        color: var(--ash-navy);
        font-size: 1.75rem;
        font-weight: 700;
        line-height: 1.25;
    }

    .ash-search-results .results-description {
        margin: 0;
        color: var(--ash-muted);
        font-size: 0.925rem;
        line-height: 1.6;
    }

    /* ============================================================
   RESULTS TOOLBAR
   ============================================================ */

    .ash-search-results .results-toolbar {
        padding: 0.9rem 1.1rem;
        background: white;
        border: 1px solid var(--ash-border);
        border-radius: 0.5rem;
    }

    .ash-search-results .results-total {
        color: var(--ash-navy);
        font-size: 0.9rem;
    }

        .ash-search-results .results-total i {
            color: var(--ash-red);
        }

    .ash-search-results .results-actions {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        gap: 1rem;
    }

    .ash-search-results .results-action {
        padding: 0;
        border: 0;
        background: transparent;
        color: var(--ash-red);
        font-size: 0.825rem;
        font-weight: 600;
        cursor: pointer;
    }

        .ash-search-results .results-action:hover {
            color: var(--ash-navy);
        }

        .ash-search-results .results-action:focus-visible,
        .ash-search-results summary:focus-visible {
            outline: 2px solid var(--ash-red);
            outline-offset: 3px;
        }

    /* ============================================================
   GROUP ACCORDIONS
   Used for Dates, Programs, Authors, Diseases, etc.
   ============================================================ */

    .ash-search-results .results-group {
        margin-bottom: 0.85rem;
        border: 1px solid var(--ash-border);
        border-radius: 0.5rem;
        background: white;
        overflow: hidden;
    }

    .ash-search-results .results-group-heading {
        display: flex;
        align-items: center;
        padding: 1rem 1.15rem;
        background: var(--ash-light);
        color: var(--ash-navy);
        cursor: pointer;
        list-style: none;
    }

        .ash-search-results .results-group-heading::marker {
            content: "";
        }

    .ash-search-results .results-group[open] > .results-group-heading {
        background: var(--ash-red);
        color: white;
    }

    .ash-search-results .results-group:not([open]) > .results-group-heading:hover {
        background: #F0F1F3;
    }

    .ash-search-results .results-group-title {
        display: inline-flex;
        align-items: center;
        font-size: 0.95rem;
        font-weight: 700;
        line-height: 1.5;
    }

    .ash-search-results .results-chevron,
    .ash-search-results .results-item-chevron {
        font-size: 0.7rem;
        transition: transform 0.2s ease;
    }

    .ash-search-results .results-group[open] > .results-group-heading .results-chevron,
    .ash-search-results .results-item[open] > .results-item-heading .results-item-chevron {
        transform: rotate(90deg);
    }

    .ash-search-results .results-group-count {
        display: inline-block;
        padding: 0.3rem 0.65rem;
        border-radius: 999px;
        background: #E9ECEF;
        color: var(--ash-navy);
        font-size: 0.75rem;
        font-weight: 600;
        white-space: nowrap;
    }

    .ash-search-results .results-group[open] > .results-group-heading .results-group-count {
        background: rgba(255, 255, 255, 0.18);
        color: white;
    }

    .ash-search-results .results-group-content {
        padding: 0.5rem 0;
    }

    /* ============================================================
   INDIVIDUAL RESULT ACCORDIONS
   ============================================================ */

    .ash-search-results .results-item {
        border-bottom: 1px solid var(--ash-border);
    }

        .ash-search-results .results-item:last-child {
            border-bottom: 0;
        }

    .ash-search-results .results-item-heading {
        display: flex;
        align-items: center;
        padding: 1rem 1.15rem;
        background: white;
        cursor: pointer;
        list-style: none;
    }

        .ash-search-results .results-item-heading::marker {
            content: "";
        }

        .ash-search-results .results-item-heading:hover {
            background: var(--ash-light);
        }

    .ash-search-results .results-item[open] > .results-item-heading {
        background: #FFF9FA;
    }

    .ash-search-results .results-time {
        display: inline-block;
        color: var(--ash-muted);
        font-size: 0.825rem;
        font-weight: 600;
        white-space: nowrap;
        font-variant-numeric: tabular-nums;
    }

    .ash-search-results .results-title {
        display: inline-block;
        color: var(--ash-navy);
        font-size: 0.9rem;
        font-weight: 600;
        line-height: 1.5;
    }

    .ash-search-results .results-title-link {
        color: inherit !important;
        text-decoration: none !important;
        transition: color 0.2s ease !important;
    }

        .ash-search-results .results-title-link:hover,
        .ash-search-results .results-title-link:focus-visible {
            color: #B7000F !important;
            text-decoration: underline !important;
        }

    .ash-search-results .results-session-info {
        display: flex;
        flex-direction: column;
        flex: 1 1 0;
        min-width: 0;
        max-width: 100%;
        padding-right: 22px;
    }

    .ash-search-results .results-program {
        display: block;
        margin-top: 5px;
        font-size: 0.875rem;
        font-weight: 500;
        line-height: 1.5;
        color: #152746;
    }

        .ash-search-results .results-program strong {
            color: #6c757d;
            font-weight: 600;
        }

    .ash-search-results .results-item-chevron {
        color: var(--ash-red);
        flex: 0 0 auto;
        margin-left: auto;
    }

/* Search Criteria Container */
.results-search-criteria {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    padding: 10px 14px;
    margin: 16px 0;
    background-color: #FCEBED;
    border: 1px solid #DEE2E6;
    border-radius: 8px;
    font-size: 0.9375rem;
    line-height: 1.5;
}

/* Search Icon */
.results-criteria-icon {
    color: #B7000F;
    font-size: 1rem;
    padding-right: 30px;
    border-right: 1px solid #a7a7a7;
}

/* Search Criteria Label */
.results-criteria-label {
    color: #B7000F;
    font-weight: 600;
}

/* Search Criteria Value */
.results-criteria-value {
    color: #6c757d;
    font-weight: 600;
}

    .results-criteria-value strong {
        font-weight: 600;
    }

    /* ============================================================
   EXPANDED RESULT DETAILS
   ============================================================ */

    .ash-search-results .results-item-content {
        padding: 0.5rem 1.15rem 1.25rem;
        background: #FFFDFD;
    }

    .ash-search-results .results-detail {
        display: flex;
        align-items: flex-start;
        gap: 0.75rem;
    }

        .ash-search-results .results-detail > i {
            flex-shrink: 0;
            width: 18px;
            margin-top: 0.2rem;
            color: var(--ash-red);
            font-size: 0.875rem;
            text-align: center;
        }

        .ash-search-results .results-detail > div {
            min-width: 0;
            flex: 1;
        }

        .ash-search-results .results-detail strong {
            display: block;
            margin-bottom: 0.3rem;
            color: var(--ash-navy);
            font-size: 0.825rem;
            font-weight: 700;
        }

        .ash-search-results .results-detail p {
            margin: 0;
            color: var(--ash-muted);
            font-size: 0.875rem;
            line-height: 1.65;
            overflow-wrap: anywhere;
        }

/* ============================================================
   FIXED SESSION TIMES COLUMN
   Consistent Width Across All Results Pages
   ============================================================ */

@media (min-width: 768px) {

    .ash-search-results .results-time-column {
        flex: 0 0 175px;
        width: 175px;
        max-width: 175px;
    }
}

/* ============================================================
   RESPONSIVE STYLING
   ============================================================ */

@media (max-width: 575.98px) {

    .ash-search-results .results-item-heading {
        flex-wrap: wrap;
        align-items: flex-start;
    }

    .ash-search-results .results-time-column {
        flex: 0 0 100%;
        width: 100%;
        margin-bottom: 8px;
    }

    .ash-search-results .results-session-info {
        flex: 1 1 0;
        min-width: 0;
        padding-right: 22px;
    }

    .ash-search-results .results-item-chevron {
        flex: 0 0 auto;
        align-self: center;
        margin-left: auto;
    }

    .results-search-criteria {
        gap: 8px;
        padding: 10px 12px;
        font-size: 0.875rem;
    }

    .results-criteria-icon {
        font-size: 0.875rem;
        padding-right: 8px;
    }
}

@media (max-width: 767.98px) {

    .ash-search-results .results-header {
        padding: 1.1rem;
    }

    .ash-search-results .results-icon {
        width: 52px;
        height: 52px;
        font-size: 1.4rem;
    }

    .ash-search-results .results-page-title {
        font-size: 1.4rem;
    }

    .ash-search-results .results-description {
        font-size: 0.875rem;
    }

    .ash-search-results .results-toolbar {
        padding: 0.85rem;
    }

    .ash-search-results .results-actions {
        gap: 1.25rem;
    }

    .ash-search-results .results-group-heading,
    .ash-search-results .results-item-heading {
        padding: 0.9rem;
    }

    .ash-search-results .results-group-title {
        font-size: 0.875rem;
    }

    .ash-search-results .results-group-count {
        font-size: 0.7rem;
    }

    .ash-search-results .results-time {
        font-size: 0.8rem;
    }

    .ash-search-results .results-title {
        font-size: 0.875rem;
    }

    .ash-search-results .results-program {
        font-size: 0.8125rem;
    }

    .ash-search-results .results-item-content {
        padding: 0.5rem 0.9rem 1.1rem;
    }
}

/* Date / Group Accordion Heading */
.ash-search-results .results-group-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    width: 100%;
}

/* Date or Group Title */
.ash-search-results .results-group-title {
    flex: 1 1 auto;
    min-width: 0;
}

/* Item Count - Right Aligned */
.ash-search-results .results-group-count {
    flex: 0 0 auto;
    margin-left: auto;
    white-space: nowrap;
    text-align: right;
}

/* Mobile - Allow count to move below title */
@media (max-width: 575.98px) {
    .ash-search-results .results-group-heading {
        flex-wrap: wrap;
        gap: 8px 12px;
    }

    .ash-search-results .results-group-count {
        margin-left: auto;
    }
}


/* =========================================================
   BROWSE BY AUTHOR - RESULTS PAGE
   ========================================================= */

/* Alphabetical Navigation */

.author-alphabet {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin: 16px 0 22px;
}

.author-letter {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 1 0 30px;
    min-width: 30px;
    min-height: 38px;
    padding: 6px 8px;
    background-color: #F8F9FA;
    border: 1px solid #DEE2E6;
    border-radius: 6px;
    color: #152746;
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1.2;
    text-decoration: none;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

    .author-letter:hover,
    .author-letter:focus,
    .author-letter.active {
        background-color: #B7000F;
        border-color: #B7000F;
        color: #FFFFFF;
        text-decoration: none;
    }

    .author-letter.active {
        font-weight: 700;
    }


/* Author Accordion */

.author-results {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 14px;
}

.author-group {
    background-color: #FFFFFF;
    border: 1px solid #DEE2E6;
    border-radius: 8px;
    overflow: hidden;
}

.author-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 15px 20px;
    background-color: #F8F9FA;
    color: #152746;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    list-style: none;
}

    .author-heading::-webkit-details-marker {
        display: none;
    }

    .author-heading::marker {
        content: "";
    }

.author-group[open] > .author-heading {
    background-color: #B7000F;
    color: #FFFFFF;
}

.author-heading .results-group-title {
    display: flex;
    align-items: center;
    min-width: 0;
}

.author-heading .results-chevron {
    color: #B7000F;
    transition: transform 0.2s ease;
}

.author-group[open] > .author-heading .results-chevron {
    transform: rotate(90deg);
    color: #FFFFFF;
}

.author-group[open] > .author-heading .fa-user {
    color: #FFFFFF;
}

.author-group[open] > .author-heading .results-group-count {
    color: #FFFFFF;
}


/* Author Papers Container */

.author-papers {
    background-color: #FFFFFF;
    padding: 0;
}


/* Individual Paper Rows */

.author-paper-row {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    padding: 20px 22px;
    background-color: #FFFFFF;
    border-bottom: 1px solid #DEE2E6;
}

    .author-paper-row:nth-child(even) {
        background-color: #F8F9FA;
    }

    .author-paper-row:last-child {
        border-bottom: none;
    }


/* Paper ID Column */

.author-paper-id {
    flex: 0 0 115px;
    min-width: 0;
    padding-right: 20px;
    border-right: 1px solid #DEE2E6;
    text-align: center;
    align-self: flex-start;
}


/* Paper Title Column */

.author-paper-title {
    flex: 1 1 auto;
    min-width: 0;
    text-align: left;
    align-self: flex-start;
}


/* Paper ID and Paper Title Labels */

.author-field-label {
    display: inline-block;
    padding: 5px 12px;
    margin-bottom: 12px;
    background-color: #FCEBED;
    border-radius: 6px;
    color: #152746;
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.3;
    text-decoration: none;
}

.author-paper-id .author-field-label {
    display: block;
}

.author-paper-title .author-field-label {
    display: table;
    margin-left: 0;
    margin-right: auto;
}


/* Paper ID and Paper Title Values */

.author-field-value {
    color: #152746;
    font-size: 0.9375rem;
    font-weight: 600;
    line-height: 1.5;
    overflow-wrap: anywhere;
}

.author-paper-id .author-field-value {
    text-align: center;
}

.author-paper-title .author-field-value {
    text-align: left;
}


/* Paper Title Links */

.author-paper-title .results-title-link {
    color: #152746;
    font-weight: 600;
    text-decoration: none;
    transition: color 0.2s ease;
}

    .author-paper-title .results-title-link:hover,
    .author-paper-title .results-title-link:focus {
        color: #B7000F;
        text-decoration: underline;
    }


/* Paper Navigation Arrow */

.author-paper-arrow {
    flex: 0 0 auto;
    margin-left: auto;
    color: #B7000F;
    font-size: 0.875rem;
    align-self: center;
}


/* =========================================================
   RESPONSIVE - TABLET
   ========================================================= */

@media (max-width: 991.98px) {

    .author-alphabet {
        gap: 6px;
    }

    .author-letter {
        flex: 1 0 34px;
        min-width: 34px;
    }

    .author-paper-row {
        gap: 16px;
        padding: 18px;
    }

    .author-paper-id {
        flex-basis: 100px;
        padding-right: 15px;
    }
}


/* =========================================================
   RESPONSIVE - MOBILE
   ========================================================= */

@media (max-width: 767.98px) {

    .author-alphabet {
        gap: 6px;
        margin: 14px 0 18px;
    }

    .author-letter {
        flex: 0 0 38px;
        min-width: 38px;
        min-height: 38px;
    }

    .author-heading {
        gap: 10px;
        padding: 13px 14px;
        font-size: 0.9375rem;
    }

    .author-paper-row {
        align-items: flex-start;
        gap: 12px;
        padding: 15px 12px;
    }

    .author-paper-id {
        flex: 0 0 85px;
        padding-right: 10px;
    }

    .author-field-label {
        padding: 4px 8px;
        margin-bottom: 12px;
        font-size: 0.8rem;
    }

    .author-field-value {
        font-size: 0.875rem;
    }

    .author-paper-arrow {
        font-size: 0.75rem;
        align-self: center;
    }
}

/* =========================================================
   BROWSE BY AUTHOR - NESTED PAPER ACCORDIONS
   ========================================================= */

/* Individual Paper Accordion */

.author-paper-item {
    display: block;
    margin: 0;
    border: none;
    border-bottom: 1px solid #DEE2E6;
    border-radius: 0;
    overflow: hidden;
    background-color: #FFFFFF;
}

.author-paper-item:nth-child(even) {
    background-color: #F8F9FA;
}

.author-paper-item:last-child {
    border-bottom: none;
}

/* Paper Summary */

.author-paper-item > .author-paper-row {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    padding: 20px 22px;
    margin: 0;
    border: none;
    background-color: transparent;
    cursor: pointer;
    list-style: none;
}

.author-paper-item > .author-paper-row::-webkit-details-marker {
    display: none;
}

.author-paper-item > .author-paper-row::marker {
    content: "";
}

.author-paper-item:nth-child(even) > .author-paper-row {
    background-color: transparent;
}

/* Paper ID and Paper Title Alignment */

.author-paper-item .author-paper-id,
.author-paper-item .author-paper-title {
    align-self: flex-start;
}

/* Preserve 12px Label Spacing */

.author-paper-item .author-field-label {
    margin-bottom: 12px;
}

/* Paper Title Link */

.author-paper-item .results-title-link {
    color: #152746;
    font-weight: 600;
    text-decoration: none;
}

.author-paper-item .results-title-link:hover,
.author-paper-item .results-title-link:focus {
    color: #B7000F;
    text-decoration: underline;
}

/* Paper Accordion Caret */

.author-paper-item .author-paper-arrow {
    flex: 0 0 auto;
    align-self: center;
    margin-left: auto;
    color: #B7000F;
    transition: transform 0.2s ease;
}

.author-paper-item[open] > .author-paper-row .author-paper-arrow {
    transform: rotate(90deg);
}

/* Expanded Paper Details */

.author-paper-item > .author-paper-details {
    padding: 18px 22px;
    border-top: 1px solid #DEE2E6;
    background-color: #FFFFFF;
}

/* Preserve Existing Results Detail Styling */

.author-paper-details .results-detail {
    color: #152746;
}

.author-paper-details .results-detail > i {
    color: #B7000F;
}

/* =========================================================
   RESPONSIVE - TABLET
   ========================================================= */

@media (max-width: 991.98px) {

    .author-paper-item > .author-paper-row {
        gap: 16px;
        padding: 18px;
    }

    .author-paper-item > .author-paper-details {
        padding: 16px 18px;
    }
}

/* =========================================================
   RESPONSIVE - MOBILE
   ========================================================= */

@media (max-width: 767.98px) {

    .author-paper-item > .author-paper-row {
        align-items: flex-start;
        gap: 12px;
        padding: 15px 12px;
    }

    .author-paper-item > .author-paper-details {
        padding: 15px 12px;
    }

    .author-paper-item .author-field-label {
        margin-bottom: 12px;
    }
}


/* =========================================================
   BROWSE BY AUTHOR - NESTED PAPER ACCORDIONS
   ========================================================= */

/* Individual Paper Accordion */

.author-paper-item {
    display: block;
    margin: 0;
    border: none;
    border-bottom: 1px solid #DEE2E6;
    border-radius: 0;
    overflow: hidden;
    background-color: #FFFFFF;
}

    .author-paper-item:nth-child(even) {
        background-color: #F8F9FA;
    }

    .author-paper-item:last-child {
        border-bottom: none;
    }

    /* Paper Summary */

    .author-paper-item > .author-paper-row {
        display: flex;
        align-items: flex-start;
        gap: 20px;
        padding: 20px 22px;
        margin: 0;
        border: none;
        background-color: transparent;
        cursor: pointer;
        list-style: none;
    }

        .author-paper-item > .author-paper-row::-webkit-details-marker {
            display: none;
        }

        .author-paper-item > .author-paper-row::marker {
            content: "";
        }

    .author-paper-item:nth-child(even) > .author-paper-row {
        background-color: transparent;
    }

    /* Paper ID and Paper Title Alignment */

    .author-paper-item .author-paper-id,
    .author-paper-item .author-paper-title {
        align-self: flex-start;
    }

    /* Preserve 12px Label Spacing */

    .author-paper-item .author-field-label {
        margin-bottom: 12px;
    }

    /* Paper Title Link */

    .author-paper-item .results-title-link {
        color: #152746;
        font-weight: 600;
        text-decoration: none;
    }

        .author-paper-item .results-title-link:hover,
        .author-paper-item .results-title-link:focus {
            color: #B7000F;
            text-decoration: underline;
        }

    /* Paper Accordion Caret */

    .author-paper-item .author-paper-arrow {
        flex: 0 0 auto;
        align-self: center;
        margin-left: auto;
        color: #B7000F;
        transition: transform 0.2s ease;
    }

    .author-paper-item[open] > .author-paper-row .author-paper-arrow {
        transform: rotate(90deg);
    }

    /* Expanded Paper Details */

    .author-paper-item > .author-paper-details {
        padding: 18px 22px;
        border-top: 1px solid #DEE2E6;
        background-color: #FFFFFF;
    }

/* Preserve Existing Results Detail Styling */

.author-paper-details .results-detail {
    color: #152746;
}

    .author-paper-details .results-detail > i {
        color: #B7000F;
    }

/* =========================================================
   RESPONSIVE - TABLET
   ========================================================= */

@media (max-width: 991.98px) {

    .author-paper-item > .author-paper-row {
        gap: 16px;
        padding: 18px;
    }

    .author-paper-item > .author-paper-details {
        padding: 16px 18px;
    }
}

/* =========================================================
   RESPONSIVE - MOBILE
   ========================================================= */

@media (max-width: 767.98px) {

    .author-paper-item > .author-paper-row {
        align-items: flex-start;
        gap: 12px;
        padding: 15px 12px;
    }

    .author-paper-item > .author-paper-details {
        padding: 15px 12px;
    }

    .author-paper-item .author-field-label {
        margin-bottom: 12px;
    }
}

.author-paper-program {
    display: block;
    margin-top: 5px;
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.5;
    color: #152746;
}

    .author-paper-program strong {
        color: #6c757d;
        font-weight: 500;
    }


/* =========================================================
   PRESENTATION DETAILS PAGE
   ========================================================= */

/* Begin Presentation Details Container */
.session-details {
    width: 100%;
    min-width: 0;
}
    /* End Presentation Details Container */


    /* =========================================================
   PRESENTATION DETAILS PAGE HEADING
   ========================================================= */

    /* Begin Presentation Details Page Heading */
    .session-details .presentation-header {
        background-color: #F8F9FA;
        border: 1px solid #DEE2E6;
        border-radius: 10px;
        padding: 1.5rem;
    }

    .session-details .presentation-header-icon {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 80px;
        height: 80px;
        background-color: #FCEBED;
        border-radius: 50%;
        color: #B7000F;
        font-size: 2rem;
    }

    .session-details .presentation-header-title {
        color: #152746;
        font-size: 1.65rem;
        font-weight: 700;
        line-height: 1.3;
        margin: 0 0 0.35rem;
    }

    .session-details .presentation-header-description {
        color: #5F6B7A;
        font-size: 1rem;
        line-height: 1.5;
    }
    /* End Presentation Details Page Heading */


    /* =========================================================
   SESSION DETAILS SECTION
   ========================================================= */

    /* Begin Session Details Container */
    .session-details .session-details {
        background-color: #FFFFFF;
        border: 1px solid #DEE2E6;
        border-radius: 10px;
        overflow: hidden;
    }
    /* End Session Details Container */

    /* Begin Session Header */
    .session-details .session-details-header {
        background-color: #FCEBED;
        border-bottom: 1px solid #DEE2E6;
        padding: 1.5rem;
    }

    .session-details .session-label {
        display: inline-block;
        background-color: #B7000F;
        color: #FFFFFF;
        font-size: 0.7rem;
        font-weight: 700;
        letter-spacing: 0.08em;
        padding: 0.3rem 0.65rem;
        border-radius: 4px;
        margin-bottom: 0.75rem;
    }

    .session-details .session-title {
        color: var(--ash-red);
        font-size: 1.45rem;
        font-weight: 700;
        line-height: 1.4;
        margin: 0 0 0.65rem;
        overflow-wrap: anywhere;
    }

    .session-details .session-program {
        color: #5F6B7A;
        font-size: 0.95rem;
        line-height: 1.5;
    }

        .session-details .session-program strong {
            color: #152746;
        }
    /* End Session Header */

    /* Begin Session Details Body */
    .session-details .session-details-body {
        padding: 1.5rem;
    }

    .session-details .session-meta-item {
        display: flex;
        align-items: flex-start;
        gap: 0.6rem;
        color: #152746;
        font-size: 0.9rem;
        line-height: 1.5;
        overflow-wrap: anywhere;
    }

        .session-details .session-meta-item i {
            color: #B7000F;
            font-size: 1rem;
            margin-top: 0.2rem;
            flex-shrink: 0;
        }

    .session-details .session-property {
        display: block;
        color: #5F6B7A;
        font-size: 0.85rem;
        font-style: italic;
        margin-top: 0.2rem;
    }
    /* End Session Details Body */

    /* Begin Session Description and Keywords */
    .session-details .session-section-label {
        color: #152746;
        font-size: 0.85rem;
        font-weight: 700;
        letter-spacing: 0.04em;
        line-height: 1.4;
        margin: 0 0 0.65rem;
    }

    .session-details .session-description,
    .session-details .session-keywords {
        color: #333333;
        font-size: 0.95rem;
        line-height: 1.7;
        overflow-wrap: anywhere;
    }

        .session-details .session-description p:last-child {
            margin-bottom: 0;
        }
/* End Session Description and Keywords */


/* =========================================================
   RESPONSIVE STYLES
   ========================================================= */

/* Begin Tablet Responsive Styles */
@media (max-width: 991.98px) {
    .session-details .session-meta .col-lg-4 {
        min-width: 0;
    }
}
/* End Tablet Responsive Styles */

/* Begin Mobile Responsive Styles */
@media (max-width: 767.98px) {
    .session-details .presentation-header,
    .session-details .session-details-header,
    .session-details .session-details-body {
        padding: 1.25rem;
    }

    .session-details .presentation-header-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }

    .session-details .presentation-header-title {
        font-size: 1.35rem;
    }

    .session-details .presentation-header-description {
        font-size: 0.95rem;
    }

    .session-details .session-title {
        font-size: 1.3rem;
    }
}

@media (max-width: 575.98px) {
    .session-details .presentation-header,
    .session-details .session-details-header,
    .session-details .session-details-body {
        padding: 1rem;
    }

    .session-details .presentation-header-icon {
        width: 52px;
        height: 52px;
        font-size: 1.3rem;
    }

    .session-details .presentation-header-title {
        font-size: 1.2rem;
    }

    .session-details .session-title {
        font-size: 1.2rem;
    }
}
/* End Mobile Responsive Styles */


/* =========================================================
   SESSION PARTICIPANTS & DISCLOSURES
   ========================================================= */

/* Begin Participants Container */
.presentation-details .session-participants {
    background-color: #FFFFFF;
    border: 1px solid #DEE2E6;
    border-radius: 10px;
    overflow: hidden;
}
/* End Participants Container */

/* Begin Participants Header */
.presentation-details .session-participants-header {
    background-color: #F8F9FA;
    border-bottom: 1px solid #DEE2E6;
    padding: 1rem 1.5rem;
}

.presentation-details .session-participants-title {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    color: #152746;
    font-size: 1.15rem;
    font-weight: 700;
    line-height: 1.4;
    margin: 0;
}

    .presentation-details .session-participants-title i {
        color: #B7000F;
        font-size: 1.1rem;
        flex-shrink: 0;
    }
/* End Participants Header */

/* Begin Participants Table */
.presentation-details .session-participants-body {
    padding: 1rem 1.5rem;
}

.presentation-details .participants-table {
    width: 100%;
    margin-bottom: 0;
    color: #333333;
    font-size: 0.9rem;
    border-collapse: collapse;
}

    .presentation-details .participants-table thead th {
        background-color: #FCEBED;
        color: #152746;
        font-weight: 700;
        padding: 0.85rem 1rem;
        border-bottom: 1px solid #DEE2E6;
        vertical-align: middle;
    }

    .presentation-details .participants-table tbody td {
        padding: 1rem;
        border-bottom: 1px solid #DEE2E6;
        vertical-align: top;
        line-height: 1.6;
        overflow-wrap: anywhere;
    }

    .presentation-details .participants-table tbody td {
        padding: 1rem;
        border-bottom: 1px solid #DEE2E6;
        vertical-align: top;
        line-height: 1.6;
        overflow-wrap: anywhere;
    }

    .presentation-details .participants-table .participant-role {
        width: 18%;
        font-weight: 600;
        color: #152746;
    }

    .presentation-details .participants-table .participant-name {
        width: 27%;
        font-weight: 600;
        color: #152746;
    }

    .presentation-details .participants-table .participant-disclosure {
        width: 55%;
        color: #5F6B7A;
    }
/* End Participants Table */

/* Begin Responsive Styles */
@media (max-width: 767.98px) {
    .presentation-details .session-participants-header {
        padding: 1rem 1.25rem;
    }

    .presentation-details .session-participants-body {
        padding: 0.75rem;
    }

    .presentation-details .session-participants-title {
        font-size: 1.05rem;
    }

    .presentation-details .participants-table {
        min-width: 580px;
    }

        .presentation-details .participants-table thead th,
        .presentation-details .participants-table tbody td {
            padding: 0.75rem;
        }
}

@media (max-width: 575.98px) {
    .presentation-details .session-participants-header {
        padding: 1rem;
    }

    .presentation-details .session-participants-title {
        font-size: 1rem;
    }
}
/* End Responsive Styles */


/* =========================================================
   SESSION DETAILS - CONTAINER STYLE CORRECTIONS
   ========================================================= */

/* Begin Presentation Heading Container */
.presentation-details .presentation-header {
    background-color: #F8F9FA !important;
    border: 1px solid #DEE2E6 !important;
    border-radius: 10px !important;
    padding: 1.5rem !important;
}
/* End Presentation Heading Container */

/* Begin Presentation Heading Icon */
.presentation-details .presentation-header-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 80px !important;
    height: 80px !important;
    background-color: #FCEBED !important;
    border-radius: 50% !important;
    color: #B7000F !important;
    font-size: 2rem !important;
}
/* End Presentation Heading Icon */

/* Begin Session Details Card */
.presentation-details .session-details {
    background-color: #FFFFFF !important;
    border: 1px solid #DEE2E6 !important;
    border-radius: 10px !important;
    overflow: hidden !important;
}
/* End Session Details Card */

/* Begin Session Details Body */
.presentation-details .session-details-body {
    padding: 1.5rem !important;
}
/* End Session Details Body */


/* =========================================================
   ASSOCIATED PAPERS SECTION
   ========================================================= */

/* Begin Associated Papers Container */
.presentation-details .associated-papers {
    background-color: #FFFFFF;
    border: 1px solid #DEE2E6;
    border-radius: 10px;
    overflow: hidden;
}
/* End Associated Papers Container */

/* Begin Associated Papers Header */
.presentation-details .associated-papers-header {
    background-color: #B7000F;
    padding: 1rem 1.5rem;
}

.presentation-details .associated-papers-title {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    color: #FFFFFF;
    font-size: 1.15rem;
    font-weight: 700;
    line-height: 1.4;
    margin: 0;
}

    .presentation-details .associated-papers-title i {
        color: #FFFFFF;
        font-size: 1.1rem;
        flex-shrink: 0;
        display: inline-block;
        line-height: 1;
        font-style: normal;
    }

/* End Associated Papers Header */

/* Begin Associated Papers Body */
.presentation-details .associated-papers-body {
    padding: 1rem 1.5rem;
}

.presentation-details .associated-papers-table {
    width: 100%;
    min-width: 0;
}
/* End Associated Papers Body */

/* Begin Associated Papers Column Headers */
.presentation-details .associated-papers-column-header {
    background-color: #FCEBED;
    border-bottom: 1px solid #DEE2E6;
    border-radius: 4px 4px 0 0;
    color: #152746;
    font-size: 0.85rem;
    font-weight: 700;
    text-transform: uppercase;
}

    .presentation-details .associated-papers-column-header > div {
        padding: 0.85rem 1rem;
    }
/* End Associated Papers Column Headers */

/* Begin Associated Paper Items */
.presentation-details .associated-paper-item {
    border-bottom: 1px solid #DEE2E6;
    padding: 1rem 0;
}

.presentation-details .paper-number {
    color: #B7000F;
    font-size: 1rem;
    font-weight: 700;
    padding: 0 1rem;
    overflow-wrap: anywhere;
}

.presentation-details .paper-details {
    border-left: 1px solid #DEE2E6;
    padding: 0 1rem;
    min-width: 0;
    overflow-wrap: anywhere;
}

.presentation-details .paper-title {
    color: #152746;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.5;
    margin-bottom: 0.65rem;
}

.presentation-details .paper-authors,
.presentation-details .paper-affiliations {
    color: #333333;
    font-size: 0.9rem;
    line-height: 1.6;
    margin-bottom: 0.5rem;
}

    .presentation-details .paper-authors strong,
    .presentation-details .paper-affiliations strong {
        color: #152746;
        font-weight: 700;
    }

.presentation-details .paper-authors {
    font-style: italic;
}

    .presentation-details .paper-authors strong {
        font-style: normal;
    }

.presentation-details .paper-affiliations {
    margin-bottom: 0;
}

    .presentation-details .paper-affiliations sup,
    .presentation-details .paper-authors sup {
        font-size: 0.7em;
        vertical-align: super;
    }

.presentation-details .associated-paper-item:last-child {
    border-bottom: none;
}
/* End Associated Paper Items */

/* Begin Responsive Styles */
@media (max-width: 767.98px) {
    .presentation-details .associated-papers-header {
        padding: 1rem 1.25rem;
    }

    .presentation-details .associated-papers-body {
        padding: 0.75rem;
    }

    .presentation-details .associated-papers-title {
        font-size: 1.05rem;
    }

    .presentation-details .associated-papers-column-header > div {
        padding: 0.75rem;
    }

    .presentation-details .paper-number,
    .presentation-details .paper-details {
        padding-left: 0.75rem;
        padding-right: 0.75rem;
    }
}

@media (max-width: 575.98px) {
    .presentation-details .associated-papers-header {
        padding: 1rem;
    }

    .presentation-details .associated-papers-title {
        font-size: 1rem;
    }

    .presentation-details .associated-papers-column-header {
        font-size: 0.7rem;
    }

    .presentation-details .paper-number {
        font-size: 0.85rem;
    }

    .presentation-details .paper-title {
        font-size: 0.95rem;
    }

    .presentation-details .paper-authors,
    .presentation-details .paper-affiliations {
        font-size: 0.85rem;
    }
}
/* End Responsive Styles */


/* Begin Associated Paper Title Link */

/* Begin Paper Title Links */
.paper-title-link,
.paper-title-link:visited {
    color: #B7000F;
    text-decoration: none;
    transition: color 0.2s ease-in-out;
}

    .paper-title-link:hover,
    .paper-title-link:focus {
        color: #942222;
        text-decoration: underline;
    }
/* End Paper Title Links */

/* End Associated Paper Title Link */


/* Remove Decorative Lines from All H2 Headings */
h2::after {
    content: none !important;
    display: none !important;
}


/* =========================================================
   ASSOCIATED PAPERS PAGINATION
   ========================================================= */

.presentation-details .papers-pagination {
    display: flex;
    gap: 5px;
    margin: 0;
    padding: 0;
    list-style: none;
}

    .presentation-details .papers-pagination .page-item {
        margin: 0;
        padding: 0;
        list-style: none;
    }

        .presentation-details .papers-pagination .page-item::before,
        .presentation-details .papers-pagination .page-item::after {
            content: none !important;
            display: none !important;
        }

    .presentation-details .papers-pagination .page-link {
        display: flex;
        align-items: center;
        justify-content: center;
        min-width: 38px;
        height: 38px;
        padding: 0 10px;
        color: #152746;
        background-color: #FFFFFF;
        border: 1px solid #CBD5E1;
        border-radius: 5px !important;
        font-size: 0.875rem;
        font-weight: 600;
        text-decoration: none !important;
        box-shadow: none;
    }

    .presentation-details .papers-pagination .page-item.active .page-link {
        color: #FFFFFF;
        background-color: #B7000F;
        border-color: #B7000F;
    }

    .presentation-details .papers-pagination .page-item:not(.active):not(.disabled) .page-link:hover {
        color: #B7000F;
        background-color: #FCEBED;
        border-color: #B7000F;
    }

    .presentation-details .papers-pagination .page-item.disabled .page-link {
        color: #94A3B8;
        background-color: #F8F9FA;
        pointer-events: none;
    }

.chevron-color {
    color: var(--ash-red) !important;
}

/* Begin Paper Abstract Styling */
.session-description#pnlPaperAbstract,
.session-description#pnlPaperAbstract p,
.session-description#pnlPaperAbstract div,
.session-description#pnlPaperAbstract span,
.session-description#pnlPaperAbstract li,
.session-description#pnlPaperAbstract font {
    font-size: 0.92rem !important;
    line-height: 1.3 !important;
}
/* End Paper Abstract Styling */

.paper-disclosures {
    background-color: #D4D4D4;
    padding: 20px;
    border-radius: 0.75rem;
}


/* Begin Quick Navigation Styling */

.quick-nav-card {
    background-color: #F8F9FA;
    border: 1px solid #DEE2E6;
    border-radius: 8px;
    padding: 16px;
    margin-top: 20px;
}

.quick-nav-header {
    display: block;
    align-items: center;
    gap: 12px;
    width: 100% !important;
    text-align: center !important;
}

.quick-nav-header-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    background-color: #F9D2D5;
    color: #B7000F;
    border-radius: 50%;
    font-size: 18px;
}

.quick-nav-header h3 {
    color: #00154F;
    font-size: 15px;
    font-weight: 700;
    margin: 0 0 4px 0;
    text-center;
}

.quick-nav-header p {
    color: #5F6B7A;
    font-size: 12px;
    margin: 0;
}

.quick-nav-divider {
    border: 0;
    border-top: 1px solid #DEE2E6;
    margin: 16px 0;
    opacity: 1;
}

.quick-nav-links {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.quick-nav-link {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px;
    background-color: #FFFFFF;
    border: 1px solid #DEE2E6;
    border-radius: 6px;
    color: #00154F;
    text-decoration: none;
    transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out;
}

    .quick-nav-link:hover,
    .quick-nav-link:focus {
        background-color: #FCEBED;
        border-color: #F5CDD2;
        color: #00154F;
        text-decoration: none;
    }

.quick-nav-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 32px;
    width: 32px;
    height: 32px;
    background-color: #F9D2D5;
    color: #B7000F;
    border-radius: 50%;
    font-size: 13px;
}

.quick-nav-label {
    flex: 1;
    min-width: 0;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.4;
}

.quick-nav-arrow {
    color: #B7000F;
    font-size: 12px;
    flex-shrink: 0;
}

.quick-nav-card {
    background-color: #F8F9FA;
    border: 1px solid #DEE2E6;
    border-radius: 8px;
    padding: 16px;
    margin-top: 0;
}

/* End Quick Navigation Styling */


