html {
    position: relative;
    min-height: 100%;
}

html.login {
    height: 100%;
}

body {
    min-height: 100%;
    font-family: Ubuntu, serif;
    margin-bottom: 200px; /* Margin bottom by footer height */
}

html, body, .card.competitor ul li a, .sidebar-item .sidebar-link, #search-form button[type="submit"], #dropdown-search a, .page-link, .page-link:hover, .nav-link {
    color: black !important;
}

body.login {
    margin-bottom: 0; /* Margin bottom by footer height */
}

.flex-root {
    -webkit-box-flex: 1;
    flex: 1;
    -ms-flex: 1 0 0;
}

.flex-column-auto {
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
}

.flex-column-fluid {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
}

.flex-row-auto {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
}

.flex-row-fluid {
    -webkit-box-flex: 1;
    flex: 1 auto;
    -ms-flex: 1 0 0px;
    min-width: 0;
}

.flex-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
    -ms-flex-direction: column !important;
    flex-direction: column !important;
}

.flex-center {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.position-relative {
    position: relative !important;
}

.overflow-hidden {
    overflow: hidden !important;
}

.rounded {
    border-radius: 50px !important;
}

.btn-primary:hover {
    background-color: #1464A5;
}

.link-primary {
    text-decoration: underline;
}

#navbar-collapse {
    z-index: 99;
}

#main-wrapper {
    width: 100%;
    padding-bottom: 2rem;
    position: relative;
}

#navbar {
    margin-right: -15px;
    margin-left: -15px;
}


.size-menu {
    font-size: 0.8rem;
    color: #000;
}

.nav-link {
    font-size: 0.75rem;
    color: #000 !important;
}

.page-wrapper {
    margin-left: 250px;
    text-align: center;
}

.page-wrapper > .container {
    max-width: 900px;
}

#scrolltop {
    border-radius: 40px;
    display: none;
    bottom: 92px;
    right: 30px;
    z-index: 99;
    color: white;
    cursor: pointer;
    padding: 1.2rem 1.5rem;
    position: fixed;
}

/** Sidebar **/

.left-sidebar {
    position: absolute;
    width: 250px;
    top: 154px;
    left: 0;
    z-index: 10;
    background: #fff;
    transition: .2s ease-in;
}

.sidebarnav {
    transition: .2s ease-in;
}

.sidebarnav.sub {
    max-height: 80vh;
    overflow-y: scroll;
    overflow-x: hidden;
}

.sidebar-nav ul {
    margin: 0;
    padding: 0;
}

.sidebar-nav ul li {
    list-style: none;
}

.sidebar-nav ul .sidebar-item {
    width: 250px;
}

.sidebar-item .sidebar-link {
    background-color: #F2F2F2;
    color: #878787;
    padding: 12px 20px;
    display: flex;
    white-space: nowrap;
    align-items: center;
    line-height: 25px;
}

.sidebar-item .sidebar-link:hover {
    text-decoration: none;
}

.sidebar-nav ul .sidebar-link.sidebar-title {
    background-color: #fff;
    font-weight: bold;
}

.sidebar-nav ul .sidebar-link.sidebar-title i.fa {
    margin-left: auto;
}

.sidebar-nav ul .toggler {
    position: relative;
}

.sidebarnav {
    position: absolute;
    margin-left: -280px !important;
}

.sidebarnav.active {
    margin-left: 0 !important;
}

.sidebarnav {
    -webkit-animation: slide 0.5s forwards;
    -webkit-animation-delay: 2s;
    animation: slide 0.5s forwards;
    animation-delay: 2s;
}

@-webkit-keyframes slide {
    100% {
        left: 0;
    }
}

@keyframes slide {
    100% {
        left: 0;
    }
}

/** Topbar **/
#top-bar {
    background-color: rgba(0, 0, 0, 0.1);
    background-blend-mode: overlay;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    min-height: 98px;
}

#top-bar a {
    color: #fff;
}

#top-bar .client-logo {
    height: 60px;
    object-fit: cover;
    object-position: center;
}

#top-bar .tcm-logo {
    height: 60px;
}

.navbar {
    padding: 0;
}

.container-fluid .navbar-collapse {
    margin: 0 -15px;
}

.nav-link {
    padding: 1rem!important;
}

.navbar-nav .nav-link.active {
    color: #fff !important;
}

#main-menu {
    background-color: #fff;
}

#main-menu.navbar-nav li > .dropdown-menu {
    margin: 0;
}

#main-menu.navbar-nav li:hover > .dropdown-menu {
    display: block;
}

#main-menu.navbar-nav li .dropdown:hover .dropdown-submenu {
    display: block;
}

#main-menu.navbar-nav li .dropdown .dropdown-menu {
    top: 0;
    left: 100%;
    margin-top: -6px;
}

/* rotate caret on hover */
#main-menu.navbar-nav li .dropdown a:hover:after {
    text-decoration: underline;
    transform: rotate(-90deg);
}

.bg-diagonal {
    align-self: baseline;
    background: linear-gradient(-55deg, #e6e6e6 93%, #e6e6e6 0%, transparent 0%);
    display: flex;
}

#search-form {
    height: 56px;
    padding-left: 2.5rem;
    position: relative;
    z-index: 2;
}

#search-form input[type=text] {
    border-radius: 8px;
    border: 0;
    padding: 1px 10px;
    font-size: 0.9rem;
    width: 75%;
}

#search-form button[type=submit] {
    background-color: transparent;
    border: 0;
    font-size: 1.5rem;
}

#advanced-search-form {
    padding: 0 0.5rem;
}

#dropdown-search {
    padding: 1rem;
}


#dropdown-search.show {
    background: #fff;
}

#dropdown-search .dropdown-toggle::after {
    display: none;
}

#dropdown-search .dropdown-menu {
    border: 0;
    border-radius: 0;
    top: 54px;
    left: -222px;
    width: 400px;
}

#dropdown-search .dropdown-menu .select2-container--default .select2-selection--single,
#dropdown-search .dropdown-menu .select2-container--default .select2-selection--multiple {
    background-color: #e6e6e6;
}

#dropdown-search .select2-container--default .select2-selection--multiple .select2-selection__choice {
    background-color: #fff;
    padding: .25rem .5rem;
    font-size: .8rem;
}

#dropdown-search div[class*=col] {
    padding: .5rem;
}


/** Documents Cards **/
.card.document {
    font-size: 0.8em;
    padding: 0;
    background-color: #E7E7E7;
    border-radius: 10px;
    margin: 15px 0;
    width: 100%;
}

.card.document .card-body {
    height: 12.5rem;
    flex: none;
}

.card-img-top {
    border-radius: 10px;
    object-fit: cover;
    object-position: top;
    height: 11rem;
}

.card-document-text {
    padding: 1.25rem;
    background-color: #F2F2F2;
    text-align: center;
    flex-grow: 1;
}

.card-document-text h5 {
    font-weight: bold;
    font-size: 1.25em;
}

img#logo-master-research {
    width: 80px;
}

body.login img#logo-master-research {
    bottom: 9px;
    /* right: 20px;*/
}

body.login img#logo-master-research2 {
    position: relative;
    top: 10px;
    /* right: 20px;*/
}

#page-container {
    display: flex;
    flex-direction: column;
}

#page-container > div#results {
    flex-grow: 1;
}

#historic {
    background-color: #ECECEC;
   margin-top: 0.5rem;
    width: 100%;
    position: relative;
}

#historic div.card {
    border: 0;
    text-align: center;
    height: 327px;
}

#historic .owl-item:nth-child(odd) div.card {
    background-color: #f3f2f3;
}

#historic .owl-item:nth-child(even) div.card {
    background-color: #ececec;
}

#historic div.card .icon {
    align-items: center;
    background-color: #fff;
    border: 2px solid #f7f8f9;
    display: flex;
    height: 92px;
    justify-content: center;
    margin: 3rem auto 1rem auto;
    padding: 1.5rem;
    width: 92px;
}

#historic div.card h5 {
    font-size: 1rem;
    margin-bottom: 1rem;
}

#historic .tab {
    background-color: #787878;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    color: #E9E8EA;
    left: 30px;
    padding: 0.5rem 1rem;
    position: absolute;
    top: -40px;
}

#banners-container-id .owl-item a {
    background-blend-mode: overlay;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    display: block;
    height: 200px;
    width: 100%;
}

.video-overlay {
    background-color: rgba(0, 0, 0, 0.5);
    display: flex;
    flex-direction: column;
    justify-content: center;
    color: #fff;
    height: 200px;
    width: 100%;
}

.card.competitor {
    background-color: #fff !important;
    height: 450px !important;
}

.card.competitor ul {
    margin: 0;
    padding: 0;
}

.card.competitor ul li {
    list-style: none;
    text-align: left;
}

.report-list {
    overflow-y: auto;
    border-right: 1px solid #dfdfdf;
    height: 277px;
}

.owl-item.active:last-child .report-list {
    border-right: 0;
}

footer {
    bottom: 0;
    /*height: 90px;*/
    position: absolute;
    width: 100%;
}

footer.footer-login {
    background-color: #062045;
    height: 36px;
}

footer #tcm-footer {
    background-color: #E6E6E6;
    font-size: 0.8rem;
    color: #656565;
    padding: 0.5rem 0;
}

footer.footer ul.nav-footer {
    margin: 0;
    padding: 0;
}

footer.footer ul.nav-footer li {
    list-style: none;
    color: #fff;
    padding: 0.25rem 2rem;
    border-left: 1px solid rgba(0, 0, 0, 0.1);
    border-right: 1px solid rgba(0, 0, 0, 0.1);
    float: left;
}

footer.footer ul.nav-footer li:first-child {
    border-left: 0;
}

footer.footer ul.nav-footer li:last-child {
    border-right: 0;
}

footer.footer ul.nav-footer li a {
    color: #fff;
}

.page-link {
    background-color: #F2F2F2;
    border: 0;
}


.page-item.active .page-link {
    color: #fff;
    border: 0;
    background-color: #787878;
}


.file-preview {
    border-radius: 0 !important;
    border: 0 !important;
    padding: 0 !important;
    margin-bottom: 0;
}

.file-drop-zone {
    border: 0 !important;
    border-radius: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.krajee-default.file-preview-frame {
    margin: 0 !important;;
    width: 100% !important;
}

.krajee-default.file-preview-frame .kv-file-content {
    width: 100% !important;
    height: 400px !important;
}

.kv-preview-data.file-preview-pdf,
.kv-preview-data.file-preview-gdocs,
.kv-preview-data.file-preview-office {
    width: 100% !important;
    height: 400px !important;
}

/** Select2 Default Theme **/
.select2-container--default .select2-selection--single {
    height: 35px;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 35px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 33px;
}

.select2-container--default .select2-selection--single {
    border: 0;
}

#contact-form {
    padding: 2rem 3rem;
}

@media only screen and (max-width: 1386px) {
    .nav-link {
        padding: 1rem !important;
    }

}

@media only screen and (max-width: 1294px) {
    .left-sidebar {
        top: 208px;
    }

}

@media only screen and (max-width: 1200px) {
    body:not(.login) img#logo-master-research {
        bottom: 150px;
    }

    footer #tcm-footer {
        font-size: 0.75rem;
    }

}

@media only screen and (max-width: 992px) {
    img#logo-master-research {
        width: 75px;
    }

    body:not(.login) img#logo-master-research {
        bottom: 175px;
    }

    footer #tcm-footer {
        font-size: 0.7rem;
    }
}

@media only screen and (min-width: 789px) {
    .sidebar-item.toggler {
        display: none;
    }

    .login-position {
        right: 25%;
    }

}

@media only screen and (max-width: 786px) {
    .page-wrapper {
        margin-left: 0;
    }

    .navbar-toggler {
        margin: 5px;
    }

    .left-sidebar {
        top: 220px;
    }

    #main-wrapper[data-sidebar="collapsed"] .sidebar-link span,
    #main-wrapper[data-sidebar="collapsed"] .sidebar-item:not(.toggler) {
        display: none;
    }

    #main-wrapper[data-sidebar="collapsed"] .left-sidebar {
        left: -185px;
    }

    #main-wrapper[data-sidebar="expanded"] .sidebar-nav ul .sidebar-title i.fa-chevron-right {
        display: none;
    }

    #main-wrapper[data-sidebar="collapsed"] .sidebar-nav ul .sidebar-title i.fa-chevron-left {
        display: none;
    }

    .bg-diagonal {
        background: #e6e6e6;
        flex-direction: column;
    }

    #search-form input[type="text"] {
        font-size: 1rem;
        width: 85%;
    }

    #dropdown-search {
        padding: 1rem;
        text-align: center;
        width: 100%;
    }

    #dropdown-search .dropdown-menu {
        left: 0;
        width: calc(100%);
    }

    body {
        margin-bottom: 280px;
    }
}

@media only screen and (max-width: 468px) {
    body {
        margin-bottom: 350px;
    }

    header {
        height: 218px;
    }

    body:not(.login) img#logo-master-research {
        bottom: 300px;
    }

    #scrolltop {
        border: 2px solid #fff;
    }

    #contact-form {
        padding: 1rem;
    }

    footer #tcm-footer {
        font-size: 0.65rem;
    }
}

@media (max-height: 480px) and (orientation: portrait) {
    body.login img#logo-master-research,
    footer.footer-login {
        display: none;
    }
}

@media (max-height: 480px) and (orientation: landscape) {
    body.login img#logo-master-research,
    footer.footer-login {
        display: none;
    }
}
