/* Column layout */
@media (min-width: 992px) {
    /* Full height sidebar and content */
    .row {
        display: flex;
        align-items: stretch;
    }
}

.jeg_content {
    background-size: cover !important;
    min-height: 330px;
    background-attachment: fixed !important;
    background-repeat: no-repeat !important;
}

.jeg_content .container {
    box-shadow: 2px 2px 45px 6px rgb(0 0 0 / 17%);
    background: #fff;
    margin-top: 20px;
}

.jeg_content .jeg_main_content {
    padding: 20px;
    background: #fff;
}

.jeg_sidebar {
    padding: 0 !important;
    background: #eee;
}

.jeg_inner_content .widget_jnews_module_element_header {
    margin-top: 40px;
}


/* Registration and Login Section */
.pcm-webcast-register {
    width: 50%;
    padding-right: 20px;
    float:left;
}

.pcm-webcast-register-only {
    width: 100%;
    padding-right: 20px;
}

.pcm-webcast-login {
    width: 50%;
    padding-left: 20px;
    float:left;
}

@media (max-width: 1200px) {
    .pcm-webcast-register {
        width: 100%;
    }

    .pcm-webcast-register-only {
        width: 100%;
    }

    .pcm-webcast-login {
        width: 100%;
        padding-left: 0px;
    }
}


/* Moderators/speakers */
.pcm-webcast-speaker-list {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.pcm-webcast-speaker-card {
    display: flex;
    align-items: center;
    gap: 20px;
}

.pcm-webcast-speaker-photo {
    flex: 0 0 auto;
    max-width: 160px;
}

.pcm-webcast-speaker-photo img {
    width: 100%;
    max-width: 160px;
    height: auto;
    object-fit: cover;
    display: block;
}

.pcm-webcast-speaker-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.pcm-webcast-speaker-name {
    font-size: 1.2rem;
    font-weight: 600;
    color: #111827;
    line-height: 1.2rem;
    margin-bottom: 5px;
}

.pcm-webcast-speaker-title {
    font-size: 1.1rem;
    color: #374151;
    line-height: 1.4rem;
}


/* Partner logos */
.pcm-webcast-logo-list {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    list-style: none;
    padding: 0;
    margin: 0;
    justify-content: flex-start;
}

.pcm-webcast-logo {
    flex: 0 1 160px;
    box-sizing: border-box;
    text-align: center;
}

.pcm-webcast-logo img {
    width: 100%;
    height: auto;
    object-fit: cover;
}

.pcm-webcast-logo-name {
    font-size: 1.2rem;
    font-weight: 600;
    color: #111827;
    line-height: 1.2rem;
}

@media (max-width: 991px) {
    .pcm-webcast-logo {
        flex: 0 1 45%;
    }
}

@media (max-width: 600px) {
    .pcm-webcast-logo {
        flex: 0 1 45%;
    }
}


/* Video */
.pcm-webcast-video-wrapper {
    position: relative;
    padding: 56.25% 0 0 0; /* 16:9 aspect ratio */
    margin-bottom: 15px;
}

.pcm-webcast-video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.pcm-webcast-no-gutter {
    margin: 0 -30px -15px !important;
}

.pcm-webcast-below-video-content {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 14px 16px 0;
    margin: 10px;
    background: #f0f7ff;
    border: 1px solid #2b7cff;
    border-left: 5px solid #2b7cff;
    border-radius: 6px;
    color: #1f2a37;
    font-size: 15px;
    line-height: 1.5;
}

.pcm-webcast-below-video-content i {
    font-size: 22px;
    color: #2b7cff;
    flex-shrink: 0;
}


/* Sidebar */
.jeg_sidebar .jeg_block_heading_1 {
    border-bottom: 2px solid #ccc;
    margin-bottom: 15px !important;
}

.pcm-webcast-sidebar-section {
    padding: 20px 15px 1px;
}

.pcm-webcast-sidebar-section:nth-child(2) {
    background: #ddd;
}


/* Title */
.pcm-webcast-live-logo {
    float: right;
}


/* Main content */
.jeg_content .jeg_inner_content ul, .jeg_content .pcm-webcast-notes-container ul, .jeg_content .pcm-webcast-below-video-content ul,
.jeg_content .jeg_inner_content ol, .jeg_content .pcm-webcast-notes-container ol, .jeg_content .pcm-webcast-below-video-content ol {
    list-style: initial;
    padding: 0 0 20px 20px;
}

.jeg_content .jeg_inner_content .entry-content {
    font-size: 16px;
    line-height: 1.625em;
}


/* Date styling */
.pcm-webcast-date div {
    font-size: 1.1rem;
    line-height: 2.5rem;
}

.pcm-webcast-date div i {
    font-size: 1.5rem;
    width: 25px;
    text-align: center;
}


/* Notes */
.pcm-webcast-notes-container {
    width: 100%;
    background: #000;
    padding: 20px;
    color: #fff;
}


/* Login form */
.pcm-webcast-form-field {
    clear: left;
    padding: 3px 2px 6px;
    margin: 2px 0px;
    line-height: normal;
    position: relative;
}

.pcm-webcast-field-label {
    font-family: Helvetica, Arial, sans-serif;
    float: left;
    display: inline;
    margin: 0;
    text-transform: uppercase;
    color: var(--j-accent-color) !important;
    width: auto !important;
    text-align: left !important;
    max-width: 100%;
    font-weight: bold;
    font-size: 12px !important;
    line-height: 1.5em !important;
    position: absolute;
    top: -4px;
    left: 20px;
    background-color: white !important;
    padding: 0px 3px !important;
}

.pcm-webcast-form-input {
    height: 46px !important;
    border-radius: 3px !important;
    font-size: 14px !important;
    line-height: 1.42857143;
    padding: 6px 12px !important;
    color: #000;
    background: transparent !important;
    background-image: none !important;
    border: 2px solid var(--j-accent-color) !important;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075) !important;
    -o-transition: 0.2s !important;
    transition: 0.2s !important;
    box-sizing: border-box;
    width: 100% !important;
}

.pcm-webcast-login-button {
    font-family: Arial, sans-serif;
    border-radius: 3px;
    line-height: 1.42857143;
    padding: 6px 12px !important;
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
    -webkit-transition: border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;
    -o-transition: 0.2s;
    transition: 0.2s;
    box-sizing: border-box;
    width: 100%;
    height: 40px !important;
    font-size: 12px !important;
    background: var(--j-accent-color) !important;
    text-align: center;
    color: white !important;
    font-weight: bold !important;
    width: 100%;
    border: medium none !important;
    cursor: pointer;
}

.pcm-webcast-login-errors, .pcm-webcast-login-invalid {
    display: none;
    color: #cd2b20;
    margin: 0;
    font-size: 15px;
}

.pcm-webcast-form-field-error .pcm-webcast-field-label {
    color: #cd2b20 !important;
}