/* EVRS Events Integration Styles */

/* ========================================
   BUTTONS / CTA - Match "Become A Member" style
   ======================================== */
.evrs-featured-btn,
.evrs-btn {
    display: inline-block;
    font-family: Roboto, sans-serif;
    font-size: 18px;
    font-weight: 500;
    color: #fff;
    background: rgb(26, 54, 96);
    padding: 20px 40px;
    border-radius: 5px;
    text-decoration: none;
    line-height: 1;
    transition: background 0.2s ease;
    text-align: center;
    box-sizing: border-box;
}

.evrs-featured-btn:hover,
.evrs-btn:hover {
    background: rgb(20, 42, 75);
    color: #fff;
}

.evrs-btn-full {
    display: block;
    width: 100%;
}

/* ========================================
   GRID LAYOUT (upcoming/past events shortcode)
   ======================================== */
.evrs-events-grid {
    display: grid;
    gap: 24px;
    margin: 30px 0;
}

.evrs-columns-2 { grid-template-columns: repeat(2, 1fr) !important; }
.evrs-columns-3 { grid-template-columns: repeat(3, 1fr) !important; }
.evrs-columns-4 { grid-template-columns: repeat(4, 1fr) !important; }

@media (max-width: 768px) {
    .evrs-columns-2,
    .evrs-columns-3,
    .evrs-columns-4 {
        grid-template-columns: 1fr !important;
    }
    .evrs-featured-events.evrs-columns-3 {
        grid-template-columns: 1fr !important;
    }
}

@media (min-width: 769px) and (max-width: 1024px) {
    .evrs-columns-3,
    .evrs-columns-4 {
        grid-template-columns: repeat(2, 1fr);
    }
}

.evrs-event-card {
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.evrs-event-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}

.evrs-event-image img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    display: block;
}

.evrs-event-content {
    padding: 20px;
}

.evrs-event-category {
    display: none;
}

.evrs-event-date {
    color: rgb(26, 54, 96);
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 8px;
}

.evrs-event-title {
    margin: 0 0 8px;
    font-size: 18px;
    line-height: 1.3;
}

.evrs-event-title a {
    color: #1a1a2e;
    text-decoration: none;
}

.evrs-event-title a:hover {
    color: rgb(26, 54, 96);
}

.evrs-event-venue {
    font-size: 13px;
    color: #666;
}

.evrs-no-events {
    text-align: center;
    padding: 40px 20px;
    color: #666;
}

/* ========================================
   FEATURED EVENTS CARDS (Homepage)
   Fixed height images, flexbox for equal cards,
   buttons pinned to bottom
   ======================================== */
.evrs-featured-events {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin: 30px 0;
}

@media (max-width: 768px) {
    .evrs-featured-events {
        grid-template-columns: 1fr !important;
    }
}

@media (min-width: 769px) and (max-width: 1024px) {
    .evrs-featured-events {
        grid-template-columns: repeat(2, 1fr);
    }
}

.evrs-featured-card {
    background: #fff;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.evrs-featured-card:hover {
    transform: translateY(-5px);
}

/* All images same height - forced */
.evrs-featured-image {
    position: relative;
    overflow: hidden;
    height: 240px !important;
    min-height: 240px !important;
    max-height: 240px !important;
    flex-shrink: 0;
}

.evrs-featured-image img {
    width: 100% !important;
    height: 240px !important;
    object-fit: cover !important;
    display: block;
}

/* Hide badge */
.evrs-featured-badge {
    display: none;
}

/* FIXED: Flex content to push button to bottom */
.evrs-featured-content {
    padding: 24px;
    display: flex;
    flex-direction: column;
    flex: 1;
}

/* Title takes available space */
.evrs-featured-title {
    font-family: Titillium Web, sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.3;
    margin: 0;
    padding-bottom: 20px;
    flex: 1;
}

.evrs-featured-title a {
    color: rgb(14, 32, 77);
    text-decoration: none;
}

.evrs-featured-title a:hover {
    color: rgb(26, 54, 96);
}

/* Date - more prominent */
.evrs-featured-meta {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 20px;
    flex-shrink: 0;
}

.evrs-featured-date {
    font-family: Roboto, sans-serif;
    font-size: 17px;
    font-weight: 600;
    color: rgb(26, 54, 96);
}

.evrs-featured-venue {
    font-family: Roboto, sans-serif;
    font-size: 14px;
    color: #555;
}

/* No emoji */
.evrs-featured-date::before,
.evrs-featured-venue::before {
    content: none;
}

/* Load More */
.evrs-loadmore-wrapper {
    text-align: center;
    margin-top: 30px;
}

.evrs-loadmore-btn {
    cursor: pointer;
    border: none;
}

/* Button full width, pinned to bottom */
.evrs-featured-content .evrs-featured-btn {
    flex-shrink: 0;
    display: block;
    width: 100%;
    text-align: center;
    box-sizing: border-box;
}

/* ========================================
   SPONSOR + CTA SECTION (Single Event Page)
   ======================================== */

/* Details box after image */
.evrs-event-details-box {
    background: #f7f8fa;
    border-radius: 10px;
    padding: 30px;
    margin: 30px 0;
}

.evrs-event-details-box .evrs-detail-row {
    display: flex;
    align-items: baseline;
    padding: 8px 0;
    border-bottom: 1px solid #e8e8e8;
    font-family: Roboto, sans-serif;
}

.evrs-event-details-box .evrs-detail-row:last-child {
    border-bottom: none;
}

.evrs-event-details-box .evrs-detail-label {
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #888;
    width: 100px;
    flex-shrink: 0;
}

.evrs-event-details-box .evrs-detail-value {
    font-size: 16px;
    color: #333;
    font-weight: 500;
}

/* Sponsor box - white with subtle border */
.evrs-event-sponsor-box {
    background: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 10px;
    padding: 24px;
    margin: 20px 0;
    text-align: center;
}

.evrs-event-sponsor-box .evrs-sponsor-label {
    font-family: Roboto, sans-serif;
    font-size: 12px;
    color: #999;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 12px;
    display: block;
}

.evrs-event-sponsor-box .evrs-sponsor-logo {
    max-height: 50px;
    width: auto;
}

/* CTA full width */
.evrs-event-cta-full {
    margin: 20px 0;
}

.evrs-event-cta-full .evrs-btn {
    display: block;
    width: 100%;
}

/* Hide TEC default details section (we show our own) */
.tribe-events-single .tribe-events-meta-group-details {
    display: none;
}

/* Legacy extras container */
.evrs-event-extras {
    margin-top: 30px;
}

/* ========================================
   FEATURED SECTION HEADER & CAROUSEL
   ======================================== */

.evrs-featured-header {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: 30px;
}

.evrs-featured-section-title {
    font-family: Titillium Web, sans-serif;
    font-size: 40px;
    font-weight: 700;
    color: rgb(14, 32, 77);
    margin: 0;
}

.evrs-featured-viewall {
    font-family: Roboto, sans-serif;
    font-size: 16px;
    font-weight: 500;
    color: rgb(26, 54, 96);
    text-decoration: none;
    white-space: nowrap;
}

.evrs-featured-viewall:hover {
    text-decoration: underline;
}

@media (max-width: 768px) {
    .evrs-featured-header {
        flex-direction: column;
        gap: 10px;
    }
    .evrs-featured-section-title {
        font-size: 28px;
    }
}

/* Carousel */
.evrs-carousel-wrapper {
    position: relative;
}

.evrs-carousel-track {
    display: flex;
    gap: 30px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -ms-overflow-style: none;
    scrollbar-width: none;
    padding: 10px 0;
}

.evrs-carousel-track::-webkit-scrollbar {
    display: none;
}

.evrs-carousel-track .evrs-featured-card {
    flex: 0 0 calc(33.333% - 20px);
    scroll-snap-align: start;
    min-width: 300px;
}

@media (max-width: 768px) {
    .evrs-carousel-track .evrs-featured-card {
        flex: 0 0 85%;
        min-width: 280px;
    }
}

@media (min-width: 769px) and (max-width: 1024px) {
    .evrs-carousel-track .evrs-featured-card {
        flex: 0 0 calc(50% - 15px);
    }
}

.evrs-carousel-prev,
.evrs-carousel-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: rgb(26, 54, 96);
    color: #fff;
    border: none;
    cursor: pointer;
    font-size: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 10px rgba(0,0,0,0.2);
    transition: background 0.2s ease;
}

.evrs-carousel-prev:hover,
.evrs-carousel-next:hover {
    background: rgb(20, 42, 75);
}

.evrs-carousel-prev { left: -24px; }
.evrs-carousel-next { right: -24px; }

@media (max-width: 768px) {
    .evrs-carousel-prev { left: -10px; }
    .evrs-carousel-next { right: -10px; }
    .evrs-carousel-prev,
    .evrs-carousel-next {
        width: 36px;
        height: 36px;
        font-size: 16px;
    }
}

/* ========================================
   WEBINAR SCHEDULE TABLE (Euretina-style)
   ======================================== */

.evrs-schedule-table {
    width: 100%;
    font-family: Roboto, sans-serif;
    margin: 20px 0;
}

.evrs-schedule-header,
.evrs-schedule-row {
    display: grid;
    grid-template-columns: minmax(0, 2.5fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
    gap: 0;
    padding: 0;
    align-items: center;
}

.evrs-schedule-header {
    background: rgb(14, 32, 77);
    color: #fff;
    font-family: Titillium Web, sans-serif;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 8px 8px 0 0;
}

.evrs-schedule-header .evrs-schedule-col {
    padding: 14px 16px;
    color: #fff !important;
}

.evrs-schedule-row {
    border-bottom: 1px solid #eee;
    transition: background 0.15s ease;
}

.evrs-schedule-row .evrs-schedule-col {
    padding: 18px 16px;
}

.evrs-schedule-row:hover {
    background: rgba(26, 54, 96, 0.03);
}

.evrs-schedule-row:last-child {
    border-bottom: none;
}

/* Title column */
.evrs-col-title a {
    font-family: Titillium Web, sans-serif;
    font-weight: 700;
    font-size: 16px;
    color: rgb(14, 32, 77);
    text-decoration: none;
}

.evrs-col-title a:hover {
    color: rgb(26, 54, 96);
    text-decoration: underline;
}

/* Date column - date and time on separate lines */
.evrs-col-date {
    font-size: 15px;
    font-weight: 500;
    color: #333;
}

.evrs-schedule-date-line {
    display: block;
    font-weight: 600;
    color: rgb(14, 32, 77);
}

.evrs-schedule-time-line {
    display: block;
    font-size: 13px;
    font-weight: 400;
    color: #666;
    margin-top: 2px;
}

/* Sponsor column - centered horizontally */
.evrs-col-sponsor {
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: center;
    justify-content: center;
}

.evrs-schedule-logo {
    max-height: 28px;
    width: auto;
    display: block;
}

.evrs-schedule-sponsor-name {
    font-size: 13px;
    color: #666;
    font-weight: 500;
}

/* CTA column - all buttons same width */
.evrs-col-cta {
    display: flex;
    align-items: center;
}

.evrs-schedule-btn {
    display: block;
    width: 100%;
    box-sizing: border-box;
    font-family: Roboto, sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: #fff;
    background: rgb(26, 54, 96);
    padding: 12px 16px;
    border-radius: 5px;
    text-decoration: none;
    text-align: center;
    transition: background 0.2s ease;
    white-space: nowrap;
}

.evrs-schedule-btn:hover {
    background: rgb(20, 42, 75);
    color: #fff;
}

/* Mobile: stack columns */
@media (max-width: 768px) {
    .evrs-schedule-header {
        display: none;
    }

    .evrs-schedule-row {
        display: flex;
        flex-direction: column;
        gap: 8px;
        padding: 20px 16px;
    }

    .evrs-col-title a {
        font-size: 18px;
    }

    .evrs-col-date {
        font-size: 14px;
        color: rgb(26, 54, 96);
        font-weight: 600;
    }

    .evrs-col-sponsor {
        flex-direction: row;
        gap: 12px;
    }

    .evrs-schedule-btn {
        width: 100%;
        text-align: center;
        padding: 14px 20px;
    }
}

@media (min-width: 769px) and (max-width: 1024px) {
    .evrs-schedule-header,
    .evrs-schedule-row {
        grid-template-columns: minmax(0, 2.5fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
    }
}

/* ========================================
   CTA ICONS (inline SVG, white)
   ======================================== */

.evrs-icon-video::before,
.evrs-icon-register::before,
.evrs-icon-details::before,
.evrs-icon-download::before {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-right: 8px;
    vertical-align: middle;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

/* Monitor play - Watch Video */
.evrs-icon-video::before {
    background-image: url("data:image/svg+xml,%3Csvg fill='%23ffffff' viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M168,224a8,8,0,0,1-8,8H96a8,8,0,0,1,0-16h64A8,8,0,0,1,168,224ZM232,64V176a24,24,0,0,1-24,24H48a24,24,0,0,1-24-24V64A24,24,0,0,1,48,40H208A24,24,0,0,1,232,64Zm-68,56a8,8,0,0,0-3.7-6.75l-44-28A8,8,0,0,0,104,92v56a8,8,0,0,0,12.3,6.75l44-28A8,8,0,0,0,164,120Z'/%3E%3C/svg%3E");
}

/* Pen - Register */
.evrs-icon-register::before {
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M3.25 22C3.25 21.586 3.586 21.25 4 21.25H20C20.414 21.25 20.75 21.586 20.75 22C20.75 22.414 20.414 22.75 20 22.75H4C3.586 22.75 3.25 22.414 3.25 22Z' fill='%23ffffff'/%3E%3Cpath d='M11.52 14.929L17.437 9.012C16.632 8.677 15.678 8.127 14.776 7.225C13.874 6.322 13.323 5.368 12.988 4.563L7.071 10.48C6.609 10.942 6.378 11.173 6.18 11.427C5.946 11.727 5.745 12.052 5.581 12.396C5.442 12.687 5.339 12.997 5.132 13.617L4.044 16.883C3.942 17.188 4.021 17.524 4.249 17.752C4.476 17.979 4.812 18.058 5.117 17.956L8.383 16.868C9.003 16.661 9.313 16.558 9.604 16.419C9.948 16.255 10.273 16.054 10.573 15.82C10.828 15.622 11.058 15.391 11.52 14.929Z' fill='%23ffffff'/%3E%3Cpath d='M19.079 7.37C20.307 6.142 20.307 4.15 19.079 2.921C17.85 1.693 15.858 1.693 14.63 2.921L13.92 3.631C13.93 3.66 13.94 3.69 13.95 3.72C14.21 4.47 14.701 5.453 15.624 6.376C16.548 7.299 17.53 7.79 18.28 8.05C18.31 8.061 18.34 8.071 18.369 8.08L19.079 7.37Z' fill='%23ffffff'/%3E%3C/svg%3E");
}

/* Details - Info/Details */
.evrs-icon-details::before {
    background-image: url("data:image/svg+xml,%3Csvg fill='%23ffffff' viewBox='0 0 36 36' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M32,6H4A2,2,0,0,0,2,8V28a2,2,0,0,0,2,2H32a2,2,0,0,0,2-2V8A2,2,0,0,0,32,6ZM19,22H9a1,1,0,0,1,0-2H19a1,1,0,0,1,0,2Zm8-4H9a1,1,0,0,1,0-2H27a1,1,0,0,1,0,2Zm0-4H9a1,1,0,0,1,0-2H27a1,1,0,0,1,0,2Z'/%3E%3C/svg%3E");
}

/* Download - reuse details icon for now */
.evrs-icon-download::before {
    background-image: url("data:image/svg+xml,%3Csvg fill='%23ffffff' viewBox='0 0 36 36' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M32,6H4A2,2,0,0,0,2,8V28a2,2,0,0,0,2,2H32a2,2,0,0,0,2-2V8A2,2,0,0,0,32,6ZM19,22H9a1,1,0,0,1,0-2H19a1,1,0,0,1,0,2Zm8-4H9a1,1,0,0,1,0-2H27a1,1,0,0,1,0,2Zm0-4H9a1,1,0,0,1,0-2H27a1,1,0,0,1,0,2Z'/%3E%3C/svg%3E");
}

/* ========================================
   CUSTOM MENU - Modern clean style
   ======================================== */

/* Main nav links */
#mastmenu > li > a {
    font-family: Titillium Web, sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    letter-spacing: 0.3px !important;
    color: rgb(14, 32, 77) !important;
    text-transform: none !important;
    padding: 10px 16px !important;
    transition: color 0.2s ease !important;
    position: relative;
}

#mastmenu > li > a:hover,
#mastmenu > li.current-menu-item > a,
#mastmenu > li.current-menu-ancestor > a {
    color: rgb(26, 54, 96) !important;
}

/* Subtle underline on hover */
#mastmenu > li > a::after {
    content: "" !important;
    position: absolute !important;
    bottom: 2px !important;
    left: 16px !important;
    right: 16px !important;
    height: 2px !important;
    background: rgb(26, 54, 96) !important;
    transform: scaleX(0) !important;
    transition: transform 0.25s ease !important;
    transform-origin: center !important;
    width: auto !important;
    border-radius: 0 !important;
}

#mastmenu > li > a:hover::after,
#mastmenu > li.current-menu-item > a::after,
#mastmenu > li.current-menu-ancestor > a::after {
    transform: scaleX(1) !important;
}

/* Hide ALL our custom arrows on mobile/tablet - theme has its own toggle buttons */
@media (max-width: 1199px) {
    #mastmenu > li > a::after,
    #mastmenu > li.menu-item-has-children > a::after,
    #mastmenu .sub-menu > li > a::after,
    #mastmenu .sub-menu > li.menu-item-has-children > a::after,
    .primary-menu > li > a::after,
    .primary-menu > li.menu-item-has-children > a::after,
    .primary-menu .sub-menu > li > a::after,
    .primary-menu .sub-menu > li.menu-item-has-children > a::after,
    .menu-item-has-children > a::after {
        content: none !important;
        display: none !important;
    }
}

/* Also target any cloned menu used on mobile */
#main-menu-mobile .menu-item-has-children > a::after,
.mobile-menu .menu-item-has-children > a::after,
.cms-modal-menu .menu-item-has-children > a::after {
    content: none !important;
    display: none !important;
}

/* Chevron down for items with children - DESKTOP ONLY */
@media (min-width: 1200px) {
    #mastmenu > li.menu-item-has-children > a::after {
        font-family: Material-Design-Iconic-Font !important;
        content: '\f2f9' !important;
        position: relative !important;
        padding-left: 7px !important;
        color: inherit !important;
        font-weight: bold !important;
        font-size: 16px !important;
        background: none !important;
        transform: none !important;
        bottom: auto !important;
        left: auto !important;
        right: auto !important;
        height: auto !important;
        width: auto !important;
        display: inline !important;
    }
}

/* First level dropdown */
#mastmenu .sub-menu {
    background: #fff !important;
    border-radius: 12px !important;
    box-shadow: 0 8px 30px rgba(14, 32, 77, 0.12) !important;
    padding: 12px 0 !important;
    min-width: 240px !important;
    border: 1px solid rgba(14, 32, 77, 0.06) !important;
    animation: evrsMenuIn 0.2s ease !important;
}

@keyframes evrsMenuIn {
    from { opacity: 0; transform: translateY(-6px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Dropdown items */
#mastmenu .sub-menu > li > a {
    font-family: Titillium Web, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: rgb(51, 51, 51) !important;
    padding: 10px 24px !important;
    transition: all 0.15s ease !important;
    display: block !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    border-left: 3px solid transparent !important;
}

#mastmenu .sub-menu > li > a:hover {
    color: rgb(26, 54, 96) !important;
    background: rgba(26, 54, 96, 0.04) !important;
    border-left-color: rgb(26, 54, 96) !important;
}

/* Sub-items with children: arrow right - DESKTOP ONLY */
@media (min-width: 1200px) {
    #mastmenu .sub-menu > li.menu-item-has-children > a::after {
        content: "\203A" !important;
        float: right !important;
        font-size: 18px !important;
        line-height: 1 !important;
        color: #aaa !important;
        position: static !important;
        transform: none !important;
        background: none !important;
        height: auto !important;
        width: auto !important;
        display: inline !important;
    }

    #mastmenu .sub-menu > li.menu-item-has-children:hover > a::after {
        color: rgb(26, 54, 96) !important;
    }
}

/* Third-level fly-out - DESKTOP ONLY */
@media (min-width: 1200px) {
    #mastmenu .sub-menu .menu-item-has-children {
        position: relative;
    }

    #mastmenu .sub-menu .menu-item-has-children > .sub-menu {
        position: absolute !important;
        left: calc(100% + 4px) !important;
        top: -12px !important;
        visibility: hidden !important;
        opacity: 0 !important;
        transition: opacity 0.2s ease, visibility 0.2s ease !important;
        z-index: 9999;
    }

    #mastmenu .sub-menu .menu-item-has-children:hover > .sub-menu {
        visibility: visible !important;
        opacity: 1 !important;
    }

    /* Bridge gap for hover */
    #mastmenu .sub-menu .menu-item-has-children::after {
        content: "";
        position: absolute;
        top: 0;
        right: -12px;
        width: 12px;
        height: 100%;
    }
}

/* Third-level on MOBILE - show inline vertically */
@media (max-width: 1199px) {
    #mastmenu .sub-menu .menu-item-has-children > .sub-menu {
        position: static !important;
        left: auto !important;
        top: auto !important;
        visibility: visible !important;
        opacity: 1 !important;
        box-shadow: none !important;
        border: none !important;
        border-radius: 0 !important;
        padding: 0 !important;
        min-width: 0 !important;
        animation: none !important;
        background: transparent !important;
    }

    #mastmenu .sub-menu .menu-item-has-children > .sub-menu > li > a {
        padding-left: 40px !important;
        font-size: 13px !important;
    }

    /* Hide bridge pseudo-element on mobile */
    #mastmenu .sub-menu .menu-item-has-children::after {
        display: none !important;
    }
}

/* Non-clickable parent label (Annual Meeting with #) */
#mastmenu .sub-menu > li.menu-item-has-children > a[href="#"] {
    font-weight: 600 !important;
    font-size: 14px !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    color: rgb(14, 32, 77) !important;
    cursor: default !important;
    border-left-color: transparent !important;
}

#mastmenu .sub-menu > li.menu-item-has-children > a[href="#"]:hover {
    background: transparent !important;
}

/* ========================================
   TEC FONT OVERRIDE
   ======================================== */

/* Base: Roboto */
.tribe-events,
.tribe-events *,
.tribe-common,
.tribe-common * {
    font-family: Roboto, sans-serif;
}

/* Headings: Titillium Web */
.tribe-events .tribe-events-single-event-title,
.tribe-events-pg-template h1,
.tribe-events-pg-template h2,
.tribe-events-pg-template h3,
.tribe-events h1,
.tribe-events h2,
.tribe-events h3,
.tribe-common h1,
.tribe-common h2,
.tribe-common h3 {
    font-family: Titillium Web, sans-serif;
}

/* Event titles in grids: Roboto */
.tribe-events .tribe-events-calendar-month__header-column-title,
.tribe-events .tribe-events-calendar-month__calendar-event-title,
.tribe-events .tribe-events-calendar-list__event-title,
.tribe-events .tribe-events-calendar-day__event-title {
    font-family: Roboto, sans-serif;
}

/* FIXED: April 2026 - target button AND all children */
.tribe-events .tribe-events-c-top-bar__datepicker-button,
.tribe-common .tribe-events-c-top-bar__datepicker-button,
.tribe-events .tribe-events-c-top-bar__datepicker-button *,
.tribe-common .tribe-events-c-top-bar__datepicker-button * {
    font-family: Titillium Web, sans-serif !important;
    font-weight: 700 !important;
    font-size: 40px !important;
    color: rgb(14, 32, 77) !important;
}

/* Event titles in grids */
.tribe-events-calendar-month__calendar-event-title a,
.tribe-events-calendar-month__calendar-event-tooltip-title,
.tribe-events-calendar-list__event-title a {
    font-family: Roboto, sans-serif;
    font-weight: 500;
}

/* Search bar */
.tribe-events .tribe-events-c-search__input,
.tribe-common .tribe-common-form-control-text__input.tribe-events-c-search__input {
    font-family: Roboto, sans-serif !important;
}

/* View tabs */
.tribe-events .tribe-events-c-view-selector__list-item-text {
    font-family: Roboto, sans-serif;
    font-weight: 500;
}

/* Day numbers */
.tribe-events-calendar-month__day-date-daynum {
    font-family: Roboto, sans-serif;
}

/* TEC Buttons */
.tribe-events .tribe-events-c-search__button,
.tribe-events .tribe-common-c-btn,
.tribe-common .tribe-common-c-btn {
    font-family: Roboto, sans-serif !important;
    font-weight: 500;
    background: rgb(26, 54, 96) !important;
    border-radius: 5px;
}

.tribe-events .tribe-events-c-search__button:hover,
.tribe-common .tribe-common-c-btn:hover {
    background: rgb(20, 42, 75) !important;
}

/* ========================================
   SINGLE EVENT PAGE
   ======================================== */

.tribe-events-single-event-title {
    font-family: Titillium Web, sans-serif !important;
    font-weight: 700;
    font-size: 36px;
    color: rgb(14, 32, 77);
    margin-bottom: 10px;
}

/* Hide Homepage category link */
.tribe-events-event-categories a[href*="homepage"] {
    display: none;
}

.tribe-events-single {
    max-width: 900px;
    margin: 0 auto;
}

.tribe-events-single .tribe-events-event-image img {
    width: 100%;
    border-radius: 10px;
    margin-bottom: 10px;
}

.tribe-events-schedule {
    font-family: Roboto, sans-serif;
    font-size: 16px;
    color: #555;
    padding: 12px 0;
    margin-bottom: 20px;
    border-bottom: 1px solid #e8e8e8;
}

/* Single event meta group styling */
.tribe-events-single .tribe-events-meta-group {
    background: #f7f8fa;
    border-radius: 8px;
    padding: 24px;
    margin-bottom: 20px;
}

.tribe-events-single .tribe-events-meta-group .tribe-events-single-section-title {
    font-family: Titillium Web, sans-serif;
    font-size: 18px;
    font-weight: 700;
    color: rgb(14, 32, 77);
    margin-bottom: 12px;
    padding-bottom: 8px;
    border-bottom: 2px solid rgb(26, 54, 96);
}

.tribe-events-meta-group dt {
    font-family: Roboto, sans-serif;
    font-weight: 600;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #888;
}

.tribe-events-meta-group dd {
    font-family: Roboto, sans-serif;
    font-size: 15px;
    color: #333;
    margin-bottom: 16px;
}

/* Navigation */
.tribe-events-back a,
.tribe-events-nav-pagination a {
    font-family: Roboto, sans-serif;
    font-weight: 500;
    color: rgb(26, 54, 96);
    text-decoration: none;
}

.tribe-events-back a:hover,
.tribe-events-nav-pagination a:hover {
    text-decoration: underline;
}

/* Event URL link as button */
.tribe-events-event-url a {
    display: inline-block;
    font-family: Roboto, sans-serif;
    font-size: 18px;
    font-weight: 500;
    color: #fff !important;
    background: rgb(26, 54, 96);
    padding: 20px 40px;
    border-radius: 5px;
    text-decoration: none;
    transition: background 0.2s ease;
}

.tribe-events-event-url a:hover {
    background: rgb(20, 42, 75);
}

/* Subscribe dropdown */
.tribe-events .tribe-events-c-subscribe-dropdown__button {
    font-family: Roboto, sans-serif !important;
    font-weight: 500;
    border: 2px solid rgb(26, 54, 96);
    color: rgb(26, 54, 96);
    border-radius: 5px;
    background: transparent;
}

.tribe-events .tribe-events-c-subscribe-dropdown__button:hover {
    background: rgb(26, 54, 96);
    color: #fff;
}

.tribe-events-cal-links a {
    font-family: Roboto, sans-serif;
    font-weight: 500;
    color: rgb(26, 54, 96);
}

/* ========================================
   LIST VIEW
   ======================================== */

/* Event titles in list view: Titillium Web */
.tribe-events-calendar-list__event-title {
    font-family: Titillium Web, sans-serif !important;
}

.tribe-events-calendar-list__event-title a {
    font-family: Titillium Web, sans-serif !important;
    font-weight: 700 !important;
    color: rgb(14, 32, 77);
}

/* Date tag: weekday (SAT) in Titillium Web */
.tribe-events-calendar-list__event-date-tag-weekday {
    font-family: Titillium Web, sans-serif !important;
    font-weight: 700 !important;
    color: rgb(14, 32, 77) !important;
}

/* Date tag: day number (4) - big Titillium Web */
.tribe-events-calendar-list__event-date-tag-daynum {
    font-family: Titillium Web, sans-serif !important;
    font-weight: 700 !important;
    font-size: 40px !important;
    color: rgb(14, 32, 77) !important;
    line-height: 1 !important;
}

/* Date tag datetime container */
.tribe-events-calendar-list__event-date-tag-datetime,
.tribe-events-calendar-list__event-date-tag-datetime * {
    font-family: Titillium Web, sans-serif !important;
}

/* Event datetime (April 4 @ 3:00 pm - 5:00 pm) - more prominent */
.tribe-events-calendar-list__event-datetime,
.tribe-events-calendar-list__event-datetime * {
    font-family: Roboto, sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: rgb(26, 54, 96) !important;
}

/* Month separator (April 2026) - Titillium Web */
.tribe-events-calendar-list__month-separator-text {
    font-family: Titillium Web, sans-serif !important;
    font-weight: 700 !important;
    font-size: 20px !important;
    color: rgb(14, 32, 77) !important;
}

/* ========================================
   Training School page - mobile button stack
   (VIEW THE PROGRAM / DISCOVER THE FACULTY)
   ======================================== */
@media (max-width: 767px) {
    /* Override Elementor's flex-shrink:1 which keeps both widgets on one row */
    .elementor-element-7e7a0df .elementor-widget-cms_button {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        margin-bottom: 12px !important;
    }
    .elementor-element-7e7a0df .cms-button-wrapper {
        width: 100%;
    }
    .elementor-element-7e7a0df .cms-button-wrapper .btn {
        display: flex !important;
        width: 100% !important;
        justify-content: center;
        align-items: center;
        text-align: center;
        padding-left: 16px;
        padding-right: 16px;
    }
    .elementor-element-7e7a0df .cms-button-text {
        white-space: normal;
    }
}

/* === Menu in MAIUSCOLO (EVRS Global) === */
#site-header-wrap .main-navigation a,
#site-header-wrap .primary-menu a,
#site-header-wrap .primary-menu .sub-menu a,
#mastmenu li a { text-transform: uppercase !important; }


/* === Header CTA "Become a Member" (EVRS Global) === */
#site-header-wrap .site-header-button .btn,
.site-header-button .btn {
    background-color: #ffba09 !important;
    border-color: #ffba09 !important;
    color: #003366 !important;
}
#site-header-wrap .site-header-button .btn:hover,
.site-header-button .btn:hover {
    background-color: #e6a700 !important;
    border-color: #e6a700 !important;
    color: #003366 !important;
}

/* ── Footer nav-menu link colors — added 2026-06-29 ───────────────────────
   I widget cms_navigation_menu del footer non hanno colore link impostato:
   i link ereditavano il colore di default (scuro) e la voce della pagina
   corrente era forzata #262626 !important. #colophon (ID) dà specificita'
   sufficiente a vincere anche su quell'!important. */
#colophon .cms-navigation-menu ul.menu li a,
#colophon .cms-navigation-menu ul.menu li a:link,
#colophon .cms-navigation-menu ul.menu li a:visited,
#colophon .cms-navigation-menu ul.menu li.current_page_item > a {
    color: #ffffff !important;
}
#colophon .cms-navigation-menu ul.menu li a:hover,
#colophon .cms-navigation-menu ul.menu li.current_page_item > a:hover {
    color: #ffba09 !important;
}

/* ── Side Menu (Unlimited Elements) close button fix — added 2026-07-02 ──
   Col widget in modalita "Menu Side: Right" il pulsante di chiusura nativo
   del plugin usa "right: -50px" (pensato per pannelli aperti da sinistra),
   che con un pannello destro finisce fuori dal viewport e diventa
   irraggiungibile. Lo riportiamo dentro il pannello. */
.uc-side-menu-wrapper.menu-right-open .uc-close-side-menu {
    right: 20px !important;
    left: auto !important;
}

/* ── Link inline dentro le icon-list — added 2026-07-31 ───────────────────
   Elementor applica "display:flex" a ".elementor-icon-list-item a": un link
   dentro il testo di un punto elenco diventa quindi un blocco e manda a capo
   la riga prima e dopo di se'. Lo riportiamo inline (pagina Membership,
   bullet su Young EVRS GLOBAL). */
.elementor-widget .elementor-icon-list-item .elementor-icon-list-text a {
    display: inline !important;
}

/* ── EVRS GLOBAL Bank: bottoni CREATE AN ACCOUNT / SIGN IN — added 2026-07-31
   I due bottoni hanno una larghezza fissa (~40% ciascuno) e stanno nella
   stessa riga flex della colonna, che pero' allinea a sinistra: la coppia
   risultava visibilmente decentrata rispetto ai titoli sopra. */
.elementor-element-5a92253 .elementor-widget-wrap {
    justify-content: center;
}
