/**
 * Bhairav Page / Post Generator
 * Frontend: Sidebar
 *
 * Bhairav AMS
 * Corporate Engineering Presentation
 *
 * Sidebar presentation:
 * - premium corporate navigation
 * - clear content hierarchy
 * - native WordPress menu friendly
 * - styled bullet points
 * - PDF action treatment
 * - responsive and theme-safe
 */

.bams-ppg-sidebar {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin: 0 !important;
    padding: 28px 0 36px 32px !important;
    box-sizing: border-box;
    color: #536477;
    font-size: 15px;
    line-height: 1.65;
}

.bams-ppg-sidebar *,
.bams-ppg-sidebar *::before,
.bams-ppg-sidebar *::after {
    box-sizing: border-box;
}

/* =========================================================
   SIDEBAR TITLE
========================================================= */

.bams-ppg-sidebar .bams-ppg-sidebar-title {
    position: relative;
    display: block;
    width: 100%;
    margin: 0 0 22px !important;
    padding: 0 0 16px !important;
    color: #082d5c !important;
    font-family: inherit;
    font-size: 22px !important;
    line-height: 1.3 !important;
    font-weight: 700 !important;
    letter-spacing: -0.01em;
    border: 0;
    overflow-wrap: anywhere;
}

.bams-ppg-sidebar .bams-ppg-sidebar-title::after {
    content: "";
    display: block;
    width: 46px;
    height: 3px;
    margin-top: 13px;
    background: #f2ad24;
}

.bams-ppg-sidebar .bams-ppg-sidebar-title::before {
    content: "";
    position: absolute;
    left: 58px;
    bottom: 17px;
    width: 42px;
    height: 1px;
    background: #a9d4ef;
}

/* =========================================================
   INTRODUCTION
========================================================= */

.bams-ppg-sidebar .bams-ppg-sidebar-intro {
    width: 100%;
    margin: 0 0 24px !important;
    padding: 0 0 22px !important;
    color: #607184 !important;
    font-size: 15px !important;
    line-height: 1.72 !important;
    border-bottom: 1px solid #dbe5ed;
    overflow-wrap: anywhere;
}

.bams-ppg-sidebar .bams-ppg-sidebar-intro p {
    margin: 0 0 10px;
}

.bams-ppg-sidebar .bams-ppg-sidebar-intro p:last-child {
    margin-bottom: 0;
}

/* =========================================================
   GENERAL SIDEBAR CONTENT
========================================================= */

.bams-ppg-sidebar .bams-ppg-sidebar-items {
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
}

.bams-ppg-sidebar .bams-ppg-sidebar-item {
    position: relative;
    width: 100%;
    max-width: 100%;
    margin: 0 0 20px !important;
    padding: 0 0 19px 17px !important;
    border-bottom: 1px solid #dbe5ed;
    color: #5e6d7b;
    overflow-wrap: anywhere;
}

.bams-ppg-sidebar .bams-ppg-sidebar-item:last-child {
    margin-bottom: 0 !important;
    border-bottom: 0;
}

.bams-ppg-sidebar .bams-ppg-sidebar-item::before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    width: 7px;
    height: 7px;
    border: 2px solid #f2ad24;
    border-radius: 50%;
    background: #fff;
}

.bams-ppg-sidebar .bams-ppg-sidebar-item-title {
    margin: 0 0 7px !important;
    padding: 0 !important;
    color: #0a315f !important;
    font-size: 16px !important;
    line-height: 1.4 !important;
    font-weight: 700 !important;
    border: 0;
    overflow-wrap: anywhere;
}

.bams-ppg-sidebar .bams-ppg-sidebar-item-title::before,
.bams-ppg-sidebar .bams-ppg-sidebar-item-title::after {
    display: none;
}

.bams-ppg-sidebar .bams-ppg-sidebar-item-title a {
    color: #0a315f !important;
    text-decoration: none !important;
    transition: color .18s ease;
}

.bams-ppg-sidebar .bams-ppg-sidebar-item-title a:hover,
.bams-ppg-sidebar .bams-ppg-sidebar-item-title a:focus {
    color: #d89412 !important;
}

.bams-ppg-sidebar .bams-ppg-sidebar-item-text {
    margin: 0 !important;
    padding: 0 !important;
    color: #657482 !important;
    font-size: 14px !important;
    line-height: 1.62 !important;
    overflow-wrap: anywhere;
}

.bams-ppg-sidebar .bams-ppg-sidebar-item-text p {
    margin: 0 0 8px;
}

.bams-ppg-sidebar .bams-ppg-sidebar-item-text p:last-child {
    margin-bottom: 0;
}

/* =========================================================
   BULLET POINTS
   Intentionally separate from navigation.
========================================================= */

.bams-ppg-sidebar .bams-ppg-sidebar-bullets,
.bams-ppg-sidebar .bams-ppg-sidebar-bullets ul {
    margin: 0 0 24px !important;
    padding: 0 !important;
    list-style: none !important;
}

.bams-ppg-sidebar .bams-ppg-sidebar-bullets li {
    position: relative;
    margin: 0 0 11px !important;
    padding: 0 0 0 18px !important;
    color: #536477 !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
}

.bams-ppg-sidebar .bams-ppg-sidebar-bullets li:last-child {
    margin-bottom: 0 !important;
}

.bams-ppg-sidebar .bams-ppg-sidebar-bullets li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .65em;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #f2ad24;
}

/* =========================================================
   NAVIGATION SECTION
   Supports the PPG menu wrapper and native WP menu markup.
========================================================= */

.bams-ppg-sidebar .bams-ppg-sidebar-navigation,
.bams-ppg-sidebar .bams-ppg-sidebar-navigation,
.bams-ppg-sidebar .bams-ppg-sidebar-menu,
.bams-ppg-sidebar nav {
    width: 100%;
    margin-top: 24px;
}

.bams-ppg-sidebar .bams-ppg-sidebar-navigation-title,
.bams-ppg-sidebar .bams-ppg-sidebar-menu-title {
    margin: 0 0 12px !important;
    padding: 0 0 9px !important;
    color: #082d5c !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    letter-spacing: .09em;
    text-transform: uppercase;
    border-bottom: 1px solid #dbe5ed;
}

.bams-ppg-sidebar nav ul,
.bams-ppg-sidebar nav ol,
.bams-ppg-sidebar .menu,
.bams-ppg-sidebar .sub-menu {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.bams-ppg-sidebar nav li,
.bams-ppg-sidebar .menu li {
    position: relative;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid #e4ebf1;
    list-style: none !important;
}

.bams-ppg-sidebar nav li:last-child,
.bams-ppg-sidebar .menu li:last-child {
    border-bottom: 0;
}

.bams-ppg-sidebar nav li a,
.bams-ppg-sidebar .menu li a {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 42px;
    width: 100%;
    padding: 9px 28px 9px 12px !important;
    color: #173e69 !important;
    background: transparent;
    text-decoration: none !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
    border: 0 !important;
    box-shadow: none !important;
    transition:
        color .18s ease,
        background-color .18s ease,
        padding-left .18s ease;
}

.bams-ppg-sidebar nav li a::after,
.bams-ppg-sidebar .menu li a::after {
    content: "›";
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    color: #8ca1b4;
    font-size: 18px;
    line-height: 1;
    opacity: .8;
    transition:
        color .18s ease,
        right .18s ease;
}

.bams-ppg-sidebar nav li a:hover,
.bams-ppg-sidebar nav li a:focus,
.bams-ppg-sidebar .menu li a:hover,
.bams-ppg-sidebar .menu li a:focus {
    color: #082d5c !important;
    background: #f3f7fa;
    padding-left: 16px !important;
}

.bams-ppg-sidebar nav li a:hover::after,
.bams-ppg-sidebar nav li a:focus::after,
.bams-ppg-sidebar .menu li a:hover::after,
.bams-ppg-sidebar .menu li a:focus::after {
    right: 7px;
    color: #f2ad24;
}

.bams-ppg-sidebar nav li.current-menu-item > a,
.bams-ppg-sidebar nav li.current_page_item > a,
.bams-ppg-sidebar .menu li.current-menu-item > a,
.bams-ppg-sidebar .menu li.current_page_item > a {
    color: #082d5c !important;
    background: #eef5fa;
    padding-left: 16px !important;
    box-shadow: inset 3px 0 0 #f2ad24 !important;
}

.bams-ppg-sidebar nav li.current-menu-item > a::after,
.bams-ppg-sidebar nav li.current_page_item > a::after,
.bams-ppg-sidebar .menu li.current-menu-item > a::after,
.bams-ppg-sidebar .menu li.current_page_item > a::after {
    color: #f2ad24;
}

/* Nested WordPress menu items */

.bams-ppg-sidebar nav .sub-menu,
.bams-ppg-sidebar .menu .sub-menu {
    padding: 0 0 4px !important;
    background: #f8fafc;
}

.bams-ppg-sidebar nav .sub-menu li a,
.bams-ppg-sidebar .menu .sub-menu li a {
    min-height: 36px;
    padding: 7px 24px 7px 25px !important;
    color: #607184 !important;
    font-size: 13px !important;
    font-weight: 500 !important;
}

.bams-ppg-sidebar nav .sub-menu li a::after,
.bams-ppg-sidebar .menu .sub-menu li a::after {
    display: none;
}

/* =========================================================
   GENERIC LISTS
   Used only when bullet content is not wrapped in the
   dedicated bullets class.
========================================================= */

.bams-ppg-sidebar > ul,
.bams-ppg-sidebar .bams-ppg-sidebar-item-text > ul {
    margin: 0 0 24px !important;
    padding: 0 !important;
    list-style: none !important;
}

.bams-ppg-sidebar > ul > li,
.bams-ppg-sidebar .bams-ppg-sidebar-item-text > ul > li {
    position: relative;
    margin: 0 0 10px !important;
    padding: 0 0 0 18px !important;
    color: #536477 !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
}

.bams-ppg-sidebar > ul > li::before,
.bams-ppg-sidebar .bams-ppg-sidebar-item-text > ul > li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .68em;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #f2ad24;
}

/* =========================================================
   PDF ACTION
   Makes a PDF look like a deliberate document action,
   not an ordinary text link.
========================================================= */

.bams-ppg-sidebar .bams-ppg-sidebar-pdf,
.bams-ppg-sidebar .bams-ppg-sidebar-pdf {
    margin-top: 26px;
    padding-top: 20px;
    border-top: 1px solid #dbe5ed;
}

.bams-ppg-sidebar .bams-ppg-sidebar-pdf-title,
.bams-ppg-sidebar .bams-ppg-sidebar-pdf-title {
    margin: 0 0 10px !important;
    color: #082d5c !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.bams-ppg-sidebar .bams-ppg-sidebar-pdf a,
.bams-ppg-sidebar .bams-ppg-sidebar-pdf a,
.bams-ppg-sidebar a[href$=".pdf"],
.bams-ppg-sidebar a[href*=".pdf?"] {
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 54px;
    width: 100%;
    margin: 0 !important;
    padding: 10px 14px !important;
    color: #082d5c !important;
    background: #f3f7fa;
    border: 1px solid #d7e3eb !important;
    border-left: 3px solid #f2ad24 !important;
    border-radius: 2px;
    text-decoration: none !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    font-weight: 700 !important;
    box-shadow: none !important;
    transition:
        background-color .18s ease,
        border-color .18s ease,
        transform .18s ease;
}

.bams-ppg-sidebar .bams-ppg-sidebar-pdf a::before,
.bams-ppg-sidebar .bams-ppg-sidebar-pdf a::before,
.bams-ppg-sidebar a[href$=".pdf"]::before,
.bams-ppg-sidebar a[href*=".pdf?"]::before {
    content: "PDF";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 36px;
    height: 34px;
    color: #fff;
    background: #082d5c;
    border-radius: 2px;
    font-size: 9px;
    line-height: 1;
    font-weight: 800;
    letter-spacing: .04em;
}

.bams-ppg-sidebar .bams-ppg-sidebar-pdf a:hover,
.bams-ppg-sidebar .bams-ppg-sidebar-pdf a:hover,
.bams-ppg-sidebar a[href$=".pdf"]:hover,
.bams-ppg-sidebar a[href*=".pdf?"]:hover {
    color: #082d5c !important;
    background: #edf4f8;
    border-color: #b9cedc !important;
    transform: translateY(-1px);
}

/* =========================================================
   LINKS OUTSIDE NAVIGATION
========================================================= */

.bams-ppg-sidebar a {
    overflow-wrap: anywhere;
}

.bams-ppg-sidebar a:not(.bams-ppg-sidebar-pdf a):not(.bams-ppg-sidebar-pdf a) {
    text-underline-offset: 3px;
}

/* Never allow browser/default WordPress purple visited links. */

.bams-ppg-sidebar a:visited {
    color: inherit;
}

/* =========================================================
   MEDIA
========================================================= */

.bams-ppg-sidebar img,
.bams-ppg-sidebar video,
.bams-ppg-sidebar iframe,
.bams-ppg-sidebar svg {
    max-width: 100%;
    height: auto;
}

/* =========================================================
   LEFT / RIGHT SIDEBAR
========================================================= */

.bams-ppg-sidebar-left .bams-ppg-sidebar {
    padding-left: 0 !important;
    padding-right: 32px !important;
}

.bams-ppg-sidebar-right .bams-ppg-sidebar {
    padding-left: 32px !important;
    padding-right: 0 !important;
}

/* =========================================================
   DESKTOP
========================================================= */

@media (min-width: 1001px) {

    .bams-ppg-sidebar {
        margin-top: 0 !important;
        padding-top: 28px !important;
    }
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1000px) {

    .bams-ppg-sidebar {
        margin: 0 !important;
        padding: 28px 24px 34px !important;
    }

    .bams-ppg-sidebar-left .bams-ppg-sidebar,
    .bams-ppg-sidebar-right .bams-ppg-sidebar {
        padding-left: 24px !important;
        padding-right: 24px !important;
    }
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

    .bams-ppg-sidebar {
        margin: 0 !important;
        padding: 24px 0 30px !important;
    }

    .bams-ppg-sidebar-left .bams-ppg-sidebar,
    .bams-ppg-sidebar-right .bams-ppg-sidebar {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .bams-ppg-sidebar .bams-ppg-sidebar-title {
        font-size: 21px !important;
    }

    .bams-ppg-sidebar .bams-ppg-sidebar-intro {
        font-size: 15px !important;
    }

    .bams-ppg-sidebar nav li a,
    .bams-ppg-sidebar .menu li a {
        min-height: 44px;
        font-size: 14px !important;
    }

    .bams-ppg-sidebar .bams-ppg-sidebar-item-title {
        font-size: 16px !important;
    }

    .bams-ppg-sidebar .bams-ppg-sidebar-item-text {
        font-size: 14px !important;
    }
}
