/* ==========================================================================
   MATRITSATA - CAMPUS ON AIR BRAND THEME STYLESHEET
   Scope: body.campus-on-air-theme / .site-brand-campus
   ========================================================================== */

:root {
    --campus-gradient: linear-gradient(135deg, #440CEC 0%, #8C15DA 50%, #D416B3 100%);
    --campus-gradient-dark: linear-gradient(135deg, #3208B4 0%, #6E0FA8 50%, #A5118D 100%);
    --campus-gradient-deep: linear-gradient(135deg, #25058A 0%, #530B7E 50%, #7E0D6B 100%);
    --campus-accent-fuchsia: #D416B3;
    --campus-accent-purple: #8C15DA;
    --campus-accent-violet: #440CEC;
    --campus-glow: rgba(140, 21, 218, 0.45);
}

/* ==========================================================================
   1. BRAND LOGOS (HEADER: COMBO | FOOTER CENTER: 'C' | FOOTER COL: TEXT)
   ========================================================================== */
.site-brand-campus {
    display: flex !important;
    align-items: center !important;
}

.site-brand-campus .brand-link {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    text-decoration: none !important;
}

/* mix-blend-mode: screen completely removes solid black backgrounds on PNGs,
   leaving only the white letters and circular emblem crisp on the gradient */
.site-brand-campus .site-logo-img {
    mix-blend-mode: screen !important;
    filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.4)) !important;
    width: auto !important;
    display: block !important;
    object-fit: contain !important;
}

/* --- 1. HEADER: COMBO LOGO ([C] Campus On Air |) --- */
.site-brand-header.site-brand-campus .site-logo-campus-combo,
.site-brand-header.site-brand-campus .site-logo-campus-header {
    height: 44px !important;
    max-width: 320px !important;
}

/* --- 2. FOOTER CENTER: CIRCULAR 'C' EMBLEM --- */
.site-brand-footer-center.site-brand-campus {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}

.site-brand-footer-center.site-brand-campus .site-logo-campus-icon,
.site-brand-footer-center.site-brand-campus .site-logo-campus-footer-icon {
    height: 64px !important;
    width: 64px !important;
    max-width: 64px !important;
    border-radius: 50% !important;
    transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), filter 0.25s ease !important;
}

.site-brand-footer-center.site-brand-campus .site-logo-campus-icon:hover,
.site-brand-footer-center.site-brand-campus .site-logo-campus-footer-icon:hover {
    transform: scale(1.1) !important;
    filter: drop-shadow(0 0 16px rgba(255, 255, 255, 0.75)) !important;
}

/* --- 3. FOOTER LEFT COLUMN: TEXT-ONLY LOGO (CAMPUS ON AIR) --- */
.site-brand-footer.site-brand-campus .site-logo-campus-text,
.site-brand-footer.site-brand-campus .site-logo-campus-footer-text {
    height: 24px !important;
    max-width: 240px !important;
}

.site-brand-footer.site-brand-campus .site-logo-campus-combo,
.site-brand-footer.site-brand-campus .site-logo-campus-footer-col {
    height: 36px !important;
    max-width: 240px !important;
}

/* --- MOBILE DRAWER LOGO --- */
.site-brand-drawer.site-brand-campus .site-logo-campus-combo {
    height: 32px !important;
    max-width: 220px !important;
}

.site-brand-drawer.site-brand-campus .site-logo-campus-icon {
    height: 32px !important;
    max-width: 36px !important;
}

.site-brand-drawer.site-brand-campus .site-logo-campus-text {
    height: 16px !important;
    max-width: 170px !important;
}

/* --- MOBILE RESPONSIVE SCALING (< 1024px) --- */
@media (max-width: 1023px) {

    .site-brand-header.site-brand-campus .site-logo-campus-combo,
    .site-brand-header.site-brand-campus .site-logo-campus-header {
        height: 32px !important;
        max-width: 220px !important;
    }

    .site-brand-footer-center.site-brand-campus .site-logo-campus-icon,
    .site-brand-footer-center.site-brand-campus .site-logo-campus-footer-icon {
        height: 48px !important;
        width: 48px !important;
        max-width: 48px !important;
    }

    .site-brand-footer.site-brand-campus .site-logo-campus-text,
    .site-brand-footer.site-brand-campus .site-logo-campus-footer-text {
        height: 20px !important;
        max-width: 180px !important;
    }

    .site-brand-footer.site-brand-campus .site-logo-campus-combo,
    .site-brand-footer.site-brand-campus .site-logo-campus-footer-col {
        height: 30px !important;
        max-width: 190px !important;
    }
}

/* ==========================================================================
   2. HEADER GRADIENT & NAVIGATION CONTROLS
   ========================================================================== */
body.campus-on-air-theme .site-header {
    background: var(--campus-gradient) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.18) !important;
    box-shadow: 0 4px 25px rgba(68, 12, 236, 0.28) !important;
}

body.campus-on-air-theme .header-top-tier {
    background-color: transparent !important;
    border-bottom: none !important;
}

/* Desktop Navigation Menu Links & Hover */
body.campus-on-air-theme .primary-nav-desktop a {
    color: rgba(255, 255, 255, 0.85) !important;
}

body.campus-on-air-theme .primary-nav-desktop a:hover,
body.campus-on-air-theme .primary-nav-desktop li.current-menu-item a,
body.campus-on-air-theme .primary-nav-desktop li.active a {
    color: #FFFFFF !important;
    text-shadow: 0 0 10px rgba(255, 255, 255, 0.6) !important;
}

/* Active Category Underline -> Crisp White Glow Underline */
body.campus-on-air-theme .primary-nav-desktop li.current-menu-item a::after,
body.campus-on-air-theme .primary-nav-desktop li.active a::after {
    background-color: #FFFFFF !important;
    box-shadow: 0 0 10px rgba(255, 255, 255, 0.8) !important;
    height: 3px !important;
}

/* Edge Fade Masks for Nav Scroll Track */
body.campus-on-air-theme .primary-nav-desktop::before {
    background: linear-gradient(to right, rgba(68, 12, 236, 0.95), transparent) !important;
}

body.campus-on-air-theme .primary-nav-desktop::after {
    background: linear-gradient(to left, rgba(212, 22, 179, 0.95), transparent) !important;
}

/* Scroll Arrows */
body.campus-on-air-theme .nav-scroll-btn {
    background-color: rgba(255, 255, 255, 0.15) !important;
    border-color: rgba(255, 255, 255, 0.3) !important;
    color: #FFFFFF !important;
}

body.campus-on-air-theme .nav-scroll-btn:hover {
    background-color: #FFFFFF !important;
    color: #8C15DA !important;
    box-shadow: 0 0 12px rgba(255, 255, 255, 0.6) !important;
}

/* Header Action Buttons (Language, Search, Hamburger, User) */
body.campus-on-air-theme .btn-header-action,
body.campus-on-air-theme .btn-header-drawer-toggle,
body.campus-on-air-theme .btn-header-login {
    background: rgba(255, 255, 255, 0.12) !important;
    border: 1px solid rgba(255, 255, 255, 0.25) !important;
    color: #FFFFFF !important;
}

body.campus-on-air-theme .btn-header-action:hover,
body.campus-on-air-theme .btn-header-drawer-toggle:hover,
body.campus-on-air-theme .btn-header-login:hover {
    background: rgba(255, 255, 255, 0.26) !important;
    border-color: #FFFFFF !important;
    color: #FFFFFF !important;
    box-shadow: 0 0 14px rgba(255, 255, 255, 0.4) !important;
}

body.campus-on-air-theme .header-user-tiny-avatar {
    border-color: #FFFFFF !important;
}

/* Campus On Air Navbar Button (Active Page State) */
body.campus-on-air-theme .primary-nav-desktop a[href*="campus"],
body.campus-on-air-theme .primary-nav-desktop li.campus-menu-item a {
    background: rgba(255, 255, 255, 0.2) !important;
    border: 1.5px solid #FFFFFF !important;
    box-shadow: 0 0 12px rgba(255, 255, 255, 0.45) !important;
    color: #FFFFFF !important;
}

/* Mobile Frosted Glass Header with Purple Tint (< 1024px) */
@media (max-width: 1023px) {
    body.campus-on-air-theme::before {
        background: #440CEC !important;
    }

    body.campus-on-air-theme .site-header {
        background: linear-gradient(135deg, rgba(68, 12, 236, 0.85) 0%, rgba(140, 21, 218, 0.85) 50%, rgba(212, 22, 179, 0.85) 100%) !important;
        backdrop-filter: blur(14px) saturate(180%) !important;
        -webkit-backdrop-filter: blur(14px) saturate(180%) !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.22) !important;
    }
}

/* ==========================================================================
   3. FOOTER GRADIENT & STRUCTURE
   ========================================================================== */
body.campus-on-air-theme .site-footer {
    background: var(--campus-gradient-dark) !important;
    border-top: 1px solid rgba(255, 255, 255, 0.18) !important;
    color: #FFFFFF !important;
    position: relative;
    overflow: hidden;
}

body.campus-on-air-theme .footer-manifesto-row,
body.campus-on-air-theme .footer-links-grid {
    border-bottom: 1px solid rgba(255, 255, 255, 0.14) !important;
}

body.campus-on-air-theme .footer-quote,
body.campus-on-air-theme .footer-col-title,
body.campus-on-air-theme .footer-social-label {
    color: #FFFFFF !important;
}

body.campus-on-air-theme .footer-nav-list a {
    color: rgba(255, 255, 255, 0.82) !important;
}

body.campus-on-air-theme .footer-nav-list a:hover {
    color: #FFFFFF !important;
    text-shadow: 0 0 8px rgba(255, 255, 255, 0.6) !important;
}

body.campus-on-air-theme .social-icon-link {
    background-color: rgba(255, 255, 255, 0.14) !important;
    color: #FFFFFF !important;
    border: 1px solid rgba(255, 255, 255, 0.22) !important;
}

body.campus-on-air-theme .social-icon-link:hover {
    background-color: #FFFFFF !important;
    color: #8C15DA !important;
    border-color: #FFFFFF !important;
    box-shadow: 0 0 16px rgba(255, 255, 255, 0.6) !important;
}

body.campus-on-air-theme .footer-signal-box {
    background-color: rgba(0, 0, 0, 0.28) !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

body.campus-on-air-theme .footer-signal-text {
    color: rgba(255, 255, 255, 0.85) !important;
}

body.campus-on-air-theme .btn-send-signal {
    color: #FF8CF6 !important;
}

body.campus-on-air-theme .footer-bottom-bar {
    color: rgba(255, 255, 255, 0.72) !important;
}

body.campus-on-air-theme .footer-legal-links a {
    color: rgba(255, 255, 255, 0.78) !important;
}

body.campus-on-air-theme .footer-legal-links a:hover {
    color: #FFFFFF !important;
}

/* ==========================================================================
   4. CATEGORY ARCHIVE (CAMPUS ON AIR) HERO & NAVIGATION
   ========================================================================== */
body.campus-on-air-theme .category-hero-section.no-hero-bg {
    background: var(--campus-gradient-dark) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.15) !important;
}

body.campus-on-air-theme .category-hero-section.has-hero-bg {
    background-color: #120336 !important;
}

body.campus-on-air-theme .category-hero-title {
    color: #FFFFFF !important;
    text-shadow: 0 2px 14px rgba(0, 0, 0, 0.5) !important;
}

body.campus-on-air-theme .category-hero-desc {
    color: rgba(255, 255, 255, 0.92) !important;
}

/* Breadcrumbs (Resolves Red-on-Purple Contrast) */
body.campus-on-air-theme .cat-hero-breadcrumbs .cat-crumb-current,
body.campus-on-air-theme .mob-cat-breadcrumbs .mob-crumb-current,
body.campus-on-air-theme .matritsata-breadcrumbs .current-crumb {
    color: #FFFFFF !important;
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.4) !important;
}

body.campus-on-air-theme .cat-hero-breadcrumbs a,
body.campus-on-air-theme .mob-cat-breadcrumbs a,
body.campus-on-air-theme .matritsata-breadcrumbs a {
    color: rgba(255, 255, 255, 0.85) !important;
}

body.campus-on-air-theme .cat-hero-breadcrumbs .cat-crumb-sep,
body.campus-on-air-theme .mob-crumb-sep {
    color: rgba(255, 255, 255, 0.5) !important;
}

/* Mobile Category Hero Box */
body.campus-on-air-theme .mob-cat-hero-box.no-hero-bg {
    background: var(--campus-gradient) !important;
    padding: 20px 14px !important;
    margin-left: calc(-1 * var(--container-padding, 14px)) !important;
    margin-right: calc(-1 * var(--container-padding, 14px)) !important;
}

body.campus-on-air-theme .mob-cat-hero-box.no-hero-bg .mob-cat-main-title,
body.campus-on-air-theme .mob-cat-hero-box.no-hero-bg .mob-cat-desc {
    color: #FFFFFF !important;
}

/* Horizontal Subcategories Rail */
body.campus-on-air-theme .mob-subcat-tab.active {
    color: #8C15DA !important;
    border-bottom-color: #8C15DA !important;
}

body.campus-on-air-theme .mob-subcat-kicker,
body.campus-on-air-theme .mob-cat-kicker,
body.campus-on-air-theme .category-badge,
body.campus-on-air-theme .category-top-read-rank {
    color: #8C15DA !important;
}

body.campus-on-air-theme .square-bullet {
    background-color: #8C15DA !important;
}

body.campus-on-air-theme .mob-cat-loader-dot {
    background-color: #8C15DA !important;
}

/* Sub-tier Desktop Bar */
body.campus-on-air-theme .header-sub-tier .category-pills-list a:hover,
body.campus-on-air-theme .header-sub-tier .category-pills-list li.current-cat a {
    color: #8C15DA !important;
}

body.campus-on-air-theme .header-sub-tier .aktuallno-label .square-bullet {
    background-color: #8C15DA !important;
}

/* ==========================================================================
   5. SINGLE ARTICLE HEADER (WITH TRANSPARENT "C" WATERMARK BEHIND TEXT)
   ========================================================================== */
body.campus-on-air-theme.single .single-article-header-box {
    position: relative !important;
    overflow: hidden !important;
    background: var(--campus-gradient-deep) !important;
    border-color: rgba(255, 255, 255, 0.18) !important;
    box-shadow: 0 8px 32px rgba(68, 12, 236, 0.35) !important;
}

/* Keeps all text, links, and buttons in front of the watermark */
body.campus-on-air-theme.single .single-article-header-box>* {
    position: relative !important;
    z-index: 2 !important;
}

/* Circular "C" Watermark behind the headline */
body.campus-on-air-theme.single .single-article-header-box::before {
    content: '';
    position: absolute;
    top: 50%;
    right: -25px;
    transform: translateY(-50%);
    width: clamp(220px, 35vw, 360px);
    height: clamp(220px, 35vw, 360px);
    background-image: var(--campus-icon-bg, url('../images/campus-on-air-icon.png'));
    background-repeat: no-repeat;
    background-position: center right;
    background-size: contain;
    opacity: 0.16;
    /* Clean, subtle transparency */
    mix-blend-mode: screen;
    /* Strips any black background from the PNG */
    pointer-events: none;
    z-index: 1;
}

/* Single Article Typography & Metadata */
body.campus-on-air-theme.single .single-article-header-box .single-post-title,
body.campus-on-air-theme.single .single-article-header-box .single-post-lead,
body.campus-on-air-theme.single .single-article-header-box .author-display-name {
    color: #FFFFFF !important;
}

body.campus-on-air-theme.single .single-article-header-box .reaction-btn {
    border-color: rgba(255, 255, 255, 0.35) !important;
    color: #FFFFFF !important;
}

body.campus-on-air-theme.single .single-article-header-box .reaction-btn:hover {
    background-color: rgba(255, 255, 255, 0.15) !important;
    border-color: #FFFFFF !important;
}

body.campus-on-air-theme.single .single-article-header-box .reaction-btn.js-like-btn.active {
    border-color: #FF8CF6 !important;
    color: #FF8CF6 !important;
}

body.campus-on-air-theme.single .single-article-header-box .reaction-btn.js-like-btn.active svg {
    fill: #FF8CF6 !important;
    stroke: #FF8CF6 !important;
}

body.campus-on-air-theme.single .single-article-header-box .reaction-btn.js-bookmark-btn.active {
    border-color: #FF8CF6 !important;
    color: #FF8CF6 !important;
}

body.campus-on-air-theme.single .single-article-header-box .reaction-btn.js-bookmark-btn.active svg {
    fill: #FF8CF6 !important;
    stroke: #FF8CF6 !important;
}

/* Mobile single header box (< 1024px) */
@media (max-width: 1023px) {
    body.campus-on-air-theme.single .single-article-header-box {
        background: var(--campus-gradient) !important;
    }

    body.campus-on-air-theme.single .single-article-header-box::before {
        right: -30px;
        top: 40%;
        width: 220px;
        height: 220px;
        opacity: 0.18;
    }
}

/* ==========================================================================
   6. MOBILE NAVIGATION DRAWER
   ========================================================================== */
body.campus-on-air-theme .drawer-top-bar {
    background: var(--campus-gradient) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2) !important;
}

body.campus-on-air-theme .drawer-top-bar .btn-drawer-close {
    color: #FFFFFF !important;
}

body.campus-on-air-theme .drawer-top-bar .btn-drawer-close:hover {
    background-color: rgba(255, 255, 255, 0.2) !important;
}