/* Custom CSS for Jean-Louis Garnell website */

/* ==================================
   SPACING & TYPOGRAPHY
   ================================== */

/* Add top spacing to main-content div */
.docs-content .main-content {
    padding-top: 1rem !important;
}

/* Custom heading sizes */
h1,
.h1 {
    font-size: 24px !important;
}

h2,
.h2 {
    font-size: 20px !important;
}

h3,
.h3 {
    font-size: 16px !important;
}

h4,
.h4 {
    font-size: 12px !important;
}

/* ==================================
   COLOR VARIABLES
   ================================== */

:root {
    /* --secondary: #4F46E5; */
    --sidebar-bg: var(--primary-50-08-on-white) !important;
    --top-header-bg: var(--primary-50-08) !important;
    --sidebar-menu-active-bg: #fff !important;
    --sidebar-dropdown-hover-bg: #fff !important;
    --pswp-bg: #d9d9d9 !important;
    --content-link-color: var(--primary-700);
}

/* ==================================
   HOVER EFFECTS
   ================================== */

.features.feature-full-bg:hover {
    background-color: var(--secondary) !important;
}

.card:hover {
    border-color: var(--secondary) !important;
}

#doc-nav .card:hover .card-title {
    color: var(--secondary) !important;
}

/* ==================================
   RESPONSIVE: HIDE CARDS ON DESKTOP
   ================================== */

/* Hide list cards on large screens for pages with hidecardsoncomputer: true */
@media screen and (min-width: 1024px) {
    .jl-hide-cards-on-computer>.col-md-4 {
        display: none !important;
    }
}

/* ==================================
   MOBILE LAYOUT (< 1024px)
   ================================== */

/* Hide sidebar title text on mobile but keep the space */
@media screen and (max-width: 1023px) {
    .sidebar-wrapper .sidebar-brand {
        visibility: hidden !important;
    }
}

/* ==================================
   DESKTOP LAYOUT (>= 1024px)
   ================================== */

@media screen and (min-width: 1024px) {

    /* --- TOP HEADER --- */
    /* Fix the top header in place at top of viewport */
    #top-header {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        z-index: 1000 !important;
    }

    /* Always show site title in top header on desktop */
    .top-header .logo-icon {
        display: block !important;
    }

    .top-header .logo-icon .big {
        display: block !important;
    }

    /* --- SIDEBAR --- */
    /* Hide title from sidebar (it's in top header now) */
    .sidebar-wrapper .sidebar-brand {
        display: none !important;
    }

    /* Position sidebar below top header */
    .sidebar-wrapper {
        position: fixed !important;
        top: 66px !important;
        /* Height of top header */
        left: 0 !important;
        bottom: 0 !important;
        /* Extend to bottom of viewport */
        height: auto !important;
        z-index: 999 !important;
        transition: transform 0.3s ease !important;
    }

    /* Make sidebar content fill the entire height */
    .sidebar-wrapper .sidebar-content {
        height: 100% !important;
    }

    /* Hide sidebar when toggled class is NOT present */
    .page-wrapper:not(.toggled) .sidebar-wrapper {
        transform: translateX(-300px) !important;
    }

    /* Show sidebar when toggled class IS present */
    .page-wrapper.toggled .sidebar-wrapper {
        transform: translateX(0) !important;
    }

    /* --- MAIN CONTENT --- */
    /* Keep main content at full width, add top padding for fixed header */
    .page-content {
        margin-left: 0 !important;
        width: 100% !important;
    }

    main.page-content {
        padding-top: 0px !important;
    }

    /* When sidebar is visible, shift content right */
    .page-wrapper.toggled .page-content {
        margin-left: 0px !important;
    }
}