/**
 * Evenza Custom Helpers & Admin Utility Styles
 * Note: Core theme styles & colors are defined in evenza.css (--accent-color: #734BDF, --primary-color: #161A2D)
 */

/* ==========================================================
   Header Navigation Active State
   Theme Accent: #734BDF (Signature Evenza Electric Purple)
========================================================== */

/* Active link on main navigation bar */
.main-menu ul li a.active,
.main-menu ul li.active > a,
.main-menu .navbar-nav .nav-link.active,
.main-menu .navbar-nav .nav-item.active > .nav-link {
    color: var(--accent-color, #734BDF) !important;
}

/* Down caret for active parent menu */
.main-menu ul li.submenu.active > a:after,
.main-menu ul li.submenu > a.active:after {
    color: var(--accent-color, #734BDF) !important;
}

/* Active item inside dropdown submenu */
.main-menu ul ul li a.active,
.main-menu ul ul li.active > a {
    color: var(--primary-color, #161A2D) !important;
    background-color: rgba(255, 255, 255, 0.25) !important;
    font-weight: 700 !important;
    padding-left: 24px !important;
}

/* SlickNav mobile active menu link */
.slicknav_nav li a.active,
.slicknav_nav li.active > a,
.slicknav_nav .slicknav_row.active > a {
    color: var(--accent-color, #734BDF) !important;
    font-weight: 600 !important;
}

/* Disable custom cursor on touch and tablet screens */
@media (max-width: 991px) {
    .cb-cursor,
    #client-cursor {
        display: none !important;
    }
}

/* Ensure smooth scrolling */
html {
    scroll-behavior: smooth;
}

/* Admin Quick Bar when authenticated */
.admin-quick-bar {
    background: #161a2d;
    color: #ffffff;
    font-size: 13px;
    padding: 6px 15px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    z-index: 10000;
}
.admin-quick-bar a {
    color: #ffffff;
    text-decoration: none;
    margin-left: 15px;
    transition: color 0.2s;
}
.admin-quick-bar a:hover {
    color: #734BDF;
}

/* Laravel Alert Flash Messages */
.alert-floating {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 99999;
    min-width: 300px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.2);
    border-radius: 8px;
}

/* Bootstrap 5 Pagination Integration with Evenza Accent */
.pagination .page-item.active .page-link {
    background-color: var(--accent-color, #734BDF);
    border-color: var(--accent-color, #734BDF);
    color: #fff;
}
.pagination .page-link {
    color: var(--primary-color, #161A2D);
}
.pagination .page-link:hover {
    color: var(--accent-color, #734BDF);
}

/* Ensure responsive images do not distort */
img {
    max-width: 100%;
    height: auto;
}

/* ==========================================================
   Footer Layout Safeguard & Whitespace Prevention
========================================================== */
.main-footer,
.main-footer-metal,
.main-footer-gold {
    position: relative;
    overflow: hidden;
    background-color: var(--primary-color, #161A2D);
}

.main-footer-gold .footer-copyright-gold,
.main-footer-metal .footer-copyright-text-metal,
.main-footer .footer-copyright {
    margin-bottom: 0;
}

/* ==========================================================
   Evenza Schedule Single Page Styling & Sticky Refinements
========================================================== */
@media (min-width: 992px) {
    .page-schedule-single .page-single-sidebar {
        position: sticky;
        top: 110px;
        z-index: 10;
    }
}

.page-schedule-single .event-sidebar-booking-btn .btn-default {
    background-color: var(--accent-color, #734BDF);
    color: #ffffff;
    font-weight: 600;
    padding: 14px 28px;
    border-radius: 100px;
    transition: all 0.3s ease-in-out;
    text-decoration: none;
    box-shadow: 0 4px 15px rgba(115, 75, 223, 0.25);
}

.page-schedule-single .event-sidebar-booking-btn .btn-default:hover {
    background-color: #5d38c2;
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(115, 75, 223, 0.35);
    color: #ffffff;
}

.sidebar-related-events a:hover {
    background-color: #f6f6f7 !important;
}

.sidebar-related-events img {
    object-fit: cover;
    width: 64px;
    height: 64px;
    border-radius: 8px;
}

/* ==========================================================
   Hero & Above-The-Fold Visibility Protection
   Prevents blank section glitches caused by preloader / WOW delay
========================================================== */
.hero .wow,
.hero-metal .wow,
.hero-gold .wow,
.page-header .wow {
    visibility: visible !important;
}

/* Ensure SplitText headings in hero are visible immediately or upon animation */
.hero h1.text-anime-style-3,
.hero-metal h1.text-anime-style-3,
.hero-gold h1.text-anime-style-3,
.page-header h1.text-anime-style-3 {
    min-height: 1.2em;
}

/* ==========================================================
   Brand Logo Dimension Safeguards (Header & Footer)
   Ensures custom uploaded PNG/SVG/WebP scale with bold, prominent SaaS proportions
========================================================== */
.navbar-brand {
    display: inline-flex !important;
    align-items: center;
    padding: 0 !important;
    margin: 0 !important;
    min-height: 56px;
    max-height: 72px;
}

.navbar-brand img {
    height: 58px !important;
    max-height: 64px !important;
    width: auto !important;
    max-width: 260px !important;
    object-fit: contain !important;
    display: inline-block !important;
    vertical-align: middle !important;
    transition: all 0.25s ease-in-out;
}

/* Condense logo only when sticky navbar is actively scrolled */
header.main-header .header-sticky.active .navbar-brand img,
.main-header.active-sticky-header .header-sticky.active .navbar-brand img {
    height: 46px !important;
    max-height: 48px !important;
    max-width: 210px !important;
}

@media (max-width: 991px) {
    .navbar-brand {
        min-height: 44px;
        max-height: 56px;
    }
    .navbar-brand img {
        height: 46px !important;
        max-height: 50px !important;
        max-width: 200px !important;
    }
}

@media (max-width: 575px) {
    .navbar-brand {
        min-height: 38px;
        max-height: 48px;
    }
    .navbar-brand img {
        height: 38px !important;
        max-height: 42px !important;
        max-width: 170px !important;
    }
}

.footer-logo img,
.footer-logo-metal img,
.footer-logo-gold img,
.about-footer img,
.about-footer-metal img,
.about-footer-gold img {
    height: 62px !important;
    max-height: 70px !important;
    max-width: 270px !important;
    width: auto !important;
    object-fit: contain !important;
    display: inline-block !important;
    vertical-align: middle !important;
    transition: all 0.25s ease-in-out;
}

.about-footer,
.about-footer-metal,
.about-footer-gold {
    max-width: 440px !important;
}

/* ==========================================================
   Footer Corporate UEN Badge Alignment & Styling
========================================================== */
.footer-logo,
.footer-logo-metal,
.footer-logo-gold {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    text-align: left !important;
    padding: 0 !important;
    margin: 0 !important;
}

.footer-logo img,
.footer-logo-metal img,
.footer-logo-gold img {
    display: block !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    align-self: flex-start !important;
}

.about-footer .about-footer-content,
.about-footer-gold .about-footer-content-gold {
    margin-top: 20px !important;
}

@media (max-width: 768px) {
    .footer-logo img,
    .footer-logo-metal img,
    .footer-logo-gold img,
    .about-footer img,
    .about-footer-metal img,
    .about-footer-gold img {
        height: 52px !important;
        max-width: 220px !important;
    }
}

/* ==========================================================
   Homepage Section Anchor Scrolling & Sticky Header Offset
========================================================== */
html {
    scroll-behavior: smooth;
}

.homepage-section-wrapper,
#about,
#services,
#speakers,
#events,
#benefits,
#our-story,
#countdown,
#pricing,
#testimonials,
#faqs,
#blog,
#hero {
    scroll-margin-top: 105px !important;
}

@media (max-width: 991px) {
    .homepage-section-wrapper,
    #about,
    #services,
    #speakers,
    #events,
    #benefits,
    #our-story,
    #countdown,
    #pricing,
    #testimonials,
    #faqs,
    #blog,
    #hero {
        scroll-margin-top: 85px !important;
    }
}





