/* Theme colours */
:root{
    --primary: #0d6efd;
}


/* Bootstrap variables */


/* Blockquote */
blockquote {
    padding: 1rem;
    font-style: italic;
    background-color: #f8f9fa;
    border-radius: 0.25rem;
}

/* Definition list */
dt {
    font-weight: bold;
    margin: 1em 0;
}
dd {
    font-style: italic;
    margin: 0 0 .5em 1em;
}

/* Code */
pre{ 
    padding: 0.2rem 0.4rem;
    font-size: 90%;
    color: #bd4147;
    background-color: #f8f9fa;
    border-radius: 0.25rem;
}

/*Images */
img{
    max-width: 100%;
    height: auto;
    width: auto;
}

/* Global layout styles */
.page-wrapper{
    overflow: hidden;
}

/* Overrides */
body.home .hide-on-home{
    display: none !important;
}

body.home main > section {
    padding: 0;
}

/* Hide the main left col on top level pages that have no sub-nav children
body.has-no-children.page-level-1 .main-left-col{
    display: none !important;
}

/* Containers */

/* Make sure the default container class has a max-width of 1140px; */
.container{
    max-width: 1140px;
}

/* Navbar */
header .logo img{
    max-height: 40px;
}

/* Main menu navigation */

.main-navbar{
    .navbar-nav{
        margin-bottom: -1px;
        
        > .nav-item{
            border-bottom: 3px solid transparent;
        }
        > .nav-item:hover{
            border-bottom-color: #d8d8d8;
        }
        > .nav-item.active{
            border-bottom-color: var(--primary);
            > a{
                color: #333;
            }
        }
        .dropdown-menu{
            padding: 0;
            border: none;
            margin-top: 3px;
            box-shadow: 1px 1px 0.25rem 1px #e6e6e6;
            
            li{
                padding: 0;
            
                a{
                    padding: 0.6rem 1rem;
                }
            }
            li.active a{
                color: #fff;
            }
        }
    }
}

/* List group for navigation */
.list-group-nav{
    .list-group-item{
        padding: 0px;
        
        a{
            display: block;
            padding: .6rem 1rem;
            text-decoration: none;
            color: #495057;
        }
    }
    .list-group-item.active > {
        a{
            color: #fff;
        }
    }
    .list-group-item.hierarchy{
        background: transparent;
        > a{
            color: var(--primary);
        }
    }
    .list-group-sub{
        padding-left: 0;
        list-style: none;
        border-radius: 0;
        font-size: 0.9rem;
        
        .list-group-item {
            border-width: 0px;
            border-top-width: 1px;
            border-style: dotted;
        }
        a{
            padding-left: 1.4rem;
        }
    }
}

/* Layout utilities */
.full-width-section{
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
}

.hidden {
    display: none;
}
.superHidden {
    display: none !important;
}
.has-subnav .toggle.hidden {
    display: block;
}


/* Hover based dropdown menu */
@media (min-width: 768px){
    li:hover > .dropdown-menu.dropdown-menu-hover {
        display: block;
    }
}

/* original custom-WYSIWYG component */
main section.main__content {
    & > section {
        &:first-of-type {margin: var(--spacing-md) 0 0 0;}
        &:last-of-type {margin-bottom: var(--spacing-md);}
        &.latest-news {margin-bottom: 0;}
        &.contact-us:last-of-type {margin-bottom: 0;}
        &.wysiwyg {
            h1, h2, h3, h4, h5 {margin: 0 0 var(--spacing-md) 0;}
            h1, h2, h3, h4, h5, h6 {
                strong, bold {font-weight: inherit;}
            }
            h2:nth-child(n+2) {margin: var(--spacing-lg) 0 var(--spacing-md) 0;}
            h3 {margin: 0 0 var(--spacing-xs) 0;}
            h4 {margin: 0 0 var(--spacing-xs) 0;}
            h5 {margin: 0 0 var(--spacing-xs) 0;}
            h6 {margin: 0 0 var(--spacing-xs) 0;}
            p, div {
                line-height: var(--spacing-md);
                font-size: var(--base-font-size);
                font-weight: var(--font-light);
                color: var(--dark-grey);
            }
            p {margin: 0 0 var(--spacing-md) 0;}
            &> img {margin: 0 0 var(--spacing-md) 0;}
            ul, ol {
                li {
                    margin-bottom: var(--spacing-xs);
                    p {margin-bottom: 0;}
                    &:last-child {margin-bottom: 0;}
                    ul, ol {margin-top: var(--spacing-xs);}
                }
            }
            .responsive-table__wrapper {margin: 0 0 var(--spacing-md) 0;}
            & > :last-child {margin-bottom: 0;}
        }
        &.page-introduction .page-introduction__description {
            p, div {
                line-height: var(--spacing-md);
                font-size: var(--base-font-size);
                font-weight: var(--font-light);
                color: var(--dark-grey);
            }
        }
    }
}

.home main section.main__content > section:first-of-type {margin: 0;}

/* Cleanup Service now import into FAQ */

div.faqs-accordion {
    article {
        div:has(section):first-of-type {}
        h3:has(+ section) {margin-bottom: var(--spacing-xs);}
        span > br {display: none;}
        span:empty {display: none;}
        ul {
            li {
                list-style-type: circle;
                span {display: inline;}
            }
            ul {
                li {list-style-type: square;}
            }
        }
        ol {
            li {
                br {display: none;}
                span {display: inline;}
            }
        }
    }
}
