/*
quark-dark-side.css

Main CSS overwrites here.

(c)2019-2020 Harald Schneider
*/

/* --- MAIN -------------------------------------------- */

/* Fix horizontal scrolling on mobile devices */

body,html{
    overflow-x:hidden !important;
}

/* Make iframes responsive */

iframe {
    max-width: 100%;
    max-height: auto;
}

/* Nicer headlines */

h1 {
    font-size: 3rem;
    font-weight: 100;
    line-height: 1.2;
    margin-bottom: 5px;
}
h2 {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.2;
    margin-top: 0;
}

h3, h4 {
    line-height: 1.2;
    margin-top: 0;
}
h5, h6 {
    line-height: 1.3;
    margin-top: 0;
}

/* Nicer quotes */

blockquote {
    margin-left: 40px;
    margin-right: 40px;
    padding: .4rem .8rem;
    border-left: .6rem solid #e7e9ed;
}

/* Nicer Figures */

figure {
    border-radius: 12px;
    background-color: #fafafa;
    padding: 10px;
}
figcaption {
    font-size: 0.7rem;
    line-height: 0.9rem;
    margin-top: -10px;
}

/* Nicer EditWihtTinyMCE button */

.edit_btn {
    background-color: greenyellow !important;
    color: black !important;
}

/* Nicer Mobile Overlay Menu */

.mobile-logo img, .mobile-logo svg {
    display: none;
}
.mobile-container .treemenu li {
    background: none;
}
.mobile-container .treemenu li a {
    color: white !important;
}
.mobile-container .treemenu .toggler {
    color: white !important;
}
.mobile-container .sidebar-menu-icon {
    padding-left: 15px;
}
.mobile-container .treemenu li.tree-empty>.toggler {
    display: none;
}
.mobile-container .overlay .language-selector-sidebar {
    margin-top: 40px;
}
.mobile-container .overlay .language-selector-sidebar a {
    color: white;
}
.mobile-container .overlay .language-selector-sidebar img {
    margin-bottom: 3px;
}
.mobile-container .overlay .language-selector-sidebar span {
    background-color: #202020;
}
.overlay.open {
    opacity: 0.85;
}
.overlay-menu {
    width: 100vw !important;
}

/* Fix Bootstrap CSS */

.btn-danger {
    color: white !important;
    background-color: rgb(220, 53, 69) !important;
    border: none !important;
}
.modal {
    opacity: 1 !important;
}
.card .card-body {
    font-size: 0.75rem;
}
.card .card-text {'<i class="fa fa-video-camera fa-3x" style="margin-right: 20px;margin-top:-10px"></i>'
    margin-bottom: 20px !important;
}
.card .card-footer {
    text-align: right;
}

/* Boostrap Media Object */

.bs-media {margin-bottom:20px;background-color:#fafafa;padding:15px;}
.bs-media-headline {font-size:24px}
.bs-media-body {font-size:16px}

/* Fix External Links CSS */

a.external-link.icon, a.external-link.no-image, a.external, a.external {
    margin-right: 5px;
}

/* Blog */

.blog-listing .card {
    margin-bottom: 25px;
    border: 1px solid #cecece;
    box-shadow: 0 10px 25px -9px rgba(0, 0, 0, .1);
}
.blog-listing .card-footer {
    background-color: unset;
    border: unset;
}
.blog-item-title  {
    margin-bottom: 20px;
}
.blog-item-title h1 {
    font-weight: 200;
    font-size: 2.5rem;
    line-height: 1.0;
    margin-bottom: 10px;
}
.recent-posts { margin-left: 0;}
.recent-posts .media {margin-top: 0; min-width: 200px; }
.recent-posts h2 {font-size: 15px; font-weight: bold;}
.recent-post-excerpt {font-size: 12px; }
.recent-posts-img {border-radius: 12px; }

#sidebar-blog h4 {
    font-size: 1.0rem;
}
.syndicate .btn {
    margin: 2px;
    zoom: 0.8;
}
/* Language Selector */

.language-selector {
    top: unset;
    margin-top: 35px !important;
    margin-right: 40px !important;
}
.language-selector .btn {
    border: 0px;
}
.language-selector .btn img {
    width: 20px !important;
    height: 14px !important;
}
.language-selector .dropdown-menu {
    font-size: 0.7rem !important;
    left: -120px;
}
.language-selector .dropdown-menu img {
    width: 20px !important;
    height: 14px !important;
    margin-right: 8px;
}
.language-selector img {
    width: 20px !important;
    height: 14px !important;
}
.language-selector-sidebar {
    display: block;
    height: 20px;
    margin-top: -29px;
    padding-left: 25px;
    padding-bottom: 8px;
    font-size: 0.55rem;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.language-selector-sidebar span {
    margin-right: 2px;
    padding: 6px;
    border-radius: 8px;
    background-color: #2c2f38;
}
.language-selector-sidebar span:hover {
    background-color: #525660;
}
.language-selector-sidebar img {
    width: 18px;
    height: 12px;
    margin-right: 4px;
    margin-bottom: 5px;
    vertical-align: middle;
}
#page-wrapper.toggled #sidebar .language-selector-sidebar {
    margin-left: 500px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

/* Header */

#header .logo img, #header .logo svg {
    height: 55px;
    margin-left: 18px;
}
body.header-fixed.header-animated #header.scrolled .logo img, body.header-fixed.header-animated #header.scrolled .logo svg {
    margin-top: 10px;
    margin-left: 18px;
    height: 48px !important;
}
body.header-fixed.header-animated #header.scrolled {
    height: 3rem;
    box-shadow: 5px 5px 10px #ccc;
	-webkit-box-shadow: 5px 5px 10px #ccc;
    -moz-box-shadow: 5px 5px 10px #ccc;
}

#header {
    border: none;
    max-width: 100vw;
    margin-right: auto;
    margin-left: -20px;
}

/* Navbar */

.navbar {
    width: 100vw;
    padding-left: 0px;
    padding-top: 0px;
    margin-left: auto;
}
.navbar-section {
    width: 100%;
}
.login-status-header-wrapper-no-sidebar{
    color: black;
    margin-right: -120px;
}
.login-status-header-wrapper {
     position: absolute;
     right: 160px;
     display: flex;
     width: 100%;
     color: black;
     -webkit-transition: all 0.3s ease;
     -moz-transition: all 0.3s ease;
     -o-transition: all 0.3s ease;
     transition: all 0.3s ease;
}

#page-wrapper.toggled .login-status-header-wrapper {
    position: absolute;
    right: 0px;
    margin-right: -40px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.login-status-header {
    margin-left:auto; 
    margin-right:152px;
}
#login-avatar-header {
    float: left;
    margin-right: 0px;
}
#login-username-header {
    float: left;
    margin-right: 16px;
    margin-left: -8px;
    font-weight: normal;
}
.login-header {
    float: left;
    font-weight: normal;
    text-decoration: none !important;
}
.logout-header {
    float: left;
    font-weight: normal;
    text-decoration: none !important;
}
.logout-header i {
    margin-right: 0px !important;
}
.user-profile-header {
    float: left;
    font-weight: normal;
    text-decoration: none !important;
    margin-left: 16px;
}

.desktop-menu {
    z-index: 1000;
    justify-content: center;
}
.desktop-menu-label {
    color: #454d5d !important;
    padding-left: 0px !important;
}
.desktop-menu-label-with-icon {
    color: #454d5d !important;
    padding-left: 28px !important;
}
/* Triangle on top of pulldown menu:
.dropmenu ul ul:before {
    content:"";
    position:relative;
    top: -10px;
    left: 15px;
    border-width: 0 10px 10px;
    border-style: solid;
    border-color:#d6d6d6 transparent;
    display: block;
    width: 0;
}
*/
#header .dropmenu ul li a.active {
    color: #3085ee;
}
#header .dropmenu ul ul li a.active {
    color: #3085ee;
}
#header .dropmenu ul ul ul li a.active {
    color: #3085ee;
}
#header .dropmenu ul ul ul ul li a.active {
    color: #3085ee;
}
.dropmenu ul li a {
    padding: 7px 30px 7px 4px;
    font-size: 0.7rem;
}
.dropmenu ul ul {
    min-width: 100px !important;
    border: 1px solid;
    border-color: #d6d6d6;
    border-top-color: #3085ee;
    border-top-width: 6px;
}

.dropmenu.animated ul {
    transition: none !important;
}
.dropmenu ul li a:hover {
    background-color: #f1f2f3;
}
.mobile-menu .button_container span {
    display: none;
}

/* Breadcrumbs */

#breadcrumbs {
    display: flex;
    margin-bottom: 0px;
    font-size: 14px;
}
#breadcrumbs i {
    display: flex;
    flex: 0;
}
#breadcrumbs a:not(:first-child)::before, #breadcrumbs span:not(:first-child)::before {
    display: none;
}

/* Main Content */

#body-wrapper {
    margin-top: 60px !important;
    padding-top: 0px !important;
}
#body-wrapper .container {
    margin-top: 0px;
    padding-top: 0px;
}
#page-wrapper-no-sidebar {
    padding-left: 0px;
}
#page-wrapper {
    padding-left: 240px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
#page-wrapper.toggled {
    padding-left: 0px;
    margin-left: 40px;
}
#page-wrapper.toggled .navbar-section {
    width: 100vw;
}
#page-wrapper.toggled #content {
    position: relative;
}
#content {
    padding: 20px;
    position: relative;
    width: 100%;
}

/* Sidebar */

#sidebar {
    z-index: 1000;
    position: fixed;
    top: 0;
    left: 240px;
    height: 100vh;
    width: 240px;
    margin-left: -240px;
    background: #3D424E;
    color: white;
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
#sidebar a {
    color: white;
    text-decoration: none;
}
#sidebar ul li {
    margin-top: 0px !important;
}
#sidebar ul {
    margin-left: 0px;
    padding-left: 0px;
}
#sidebar ul ul {
    margin-left: 0px;
    padding-left: 0px;
    margin-top: 2px;
}
#sidebar li {
    list-style: none;
    font-size: 15px;
}
#sidebar li li a{
    list-style: none;
    font-size: 15px;
    padding-left: 42px !important;
}
#sidebar li a {
    display: block;
    padding-left: 25px;
    padding-top: 0.7rem;
    padding-bottom: 0.7rem;
    position: relative;
}
#sidebar li:hover {
    background: #525660;
}
#sidebar li a.active {
    background: #323640;
    color: #fff;
    border-left: 9px solid #007ab8;
    padding-left: 16px !important;
    height: 50px;
}
#sidebar li li a.active {
    background: #323640;
    color: #fff;
    border-left: 18px solid #003f6b;
    padding-left: 24px !important;
}
#sidebar-toggle {
    position: absolute;
    left: 200px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
#sidebar-toggle-button {
    color: white;
    background: #3D424E;
    border: none !important;
    font-size: 24px;
    font-weight: bolder;
}
.sidebar-menu-icon {
    font-size: 22px !important;
    font-weight: normal;
    margin-right: 4px;
    vertical-align: text-bottom;
    position: fixed;
}

#page-wrapper.toggled #sidebar {
    width: 52px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
#page-wrapper.toggled #sidebar-toggle-button {
    margin-left: 6px;
    border: none !important;
}
#page-wrapper.toggled .login-status {
    display: none;
}
#page-wrapper.toggled #sidebar-toggle {
    left: 4px;
}
#page-wrapper.toggled .sidebar-menu-label {
    /*color: transparent;*/
    margin-left: 240px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
#page-wrapper .sidebar-menu-label {
    color: white;
    margin-left: 40px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
#page-wrapper.toggled .sidebar-menu-icon {
    position: absolute;
    left: 17px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
#page-wrapper.toggled .active .sidebar-menu-icon {
    position: absolute;
    left: 8px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
#page-wrapper.toggled ul ul .active .sidebar-menu-icon {
    position: absolute;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
#page-wrapper.toggled li li a.active {
    border-width: 10px;
    left: -1px;
    -webkit-transition: all 1.3s ease;
    -moz-transition: all 1.3s ease;
    -o-transition: all 1.3s ease;
    transition: all 1.3s ease;
}

#page-wrapper.toggled .login-status-wrapper {
    display: none;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.login-status-wrapper {
    padding-left: 30px !important;
    padding-top: 10px;
    padding-bottom: 0px;
    background-color: #2c2f38;
    text-align: left;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.login-status-wrapper:after {
    content:"";
    position:relative;
    top: 15px;
    left: -5px; /* controls horizontal position */
    border-width: 15px 15px 0; /* vary these values to change the angle of the vertex */
    border-style: solid;
    border-color:#2c2f38 transparent;
    /* reduce the damage in FF3.0 */
    display: block;
    width: 0;
}
#login-avatar {
    display: flex;
    float: left;
    margin-right: 4px;
    margin-left: -19px;
}
#login-fullname {
    font-family: "Helvetica Neue", Helvetica, Tahoma, Geneva, Arial, sans-serif;
    font-weight: normal;
    font-size: 15px;
    color: white;
}
#login-username {
    font-family: "Helvetica Neue", Helvetica, Tahoma, Geneva, Arial, sans-serif;
    font-weight: normal;
    font-size: 15px;
    color: gray;
}
#login-title {
    font-family: "Helvetica Neue", Helvetica, Tahoma, Geneva, Arial, sans-serif;
    font-weight: normal;
    font-size: 15px;
    color: gray;
}
#login-email {
    font-family: "Helvetica Neue", Helvetica, Tahoma, Geneva, Arial, sans-serif;
    font-weight: normal;
    font-size: 12px;
    color: gray;
}
.login {
    font-family: "Helvetica Neue", Helvetica, Tahoma, Geneva, Arial, sans-serif;
    font-weight: normal;
    font-size: 13px;
    color: white;
    padding-left: 2px;
}
.logout {
    font-family: "Helvetica Neue", Helvetica, Tahoma, Geneva, Arial, sans-serif;
    font-weight: normal;
    font-size: 13px;
    color: white;
}
.user-profile {
    font-family: "Helvetica Neue", Helvetica, Tahoma, Geneva, Arial, sans-serif;
    font-weight: normal;
    font-size: 13px;
    color: white;
    margin-left: 12px;
}

/* Login Dialog */

#grav-login {
    border: unset !important;
}
#grav-login h1 {
    font-size: 2rem;
    font-weight: normal;
}
#grav-login>form {
    max-width: unset;
}
#grav-login .btn {
    width: 100px;
    height: 40px;
}
#grav-login .login-form .btn .fa {
    display: none;
}
#grav-login > form > div.button-wrapper > a {
    border: none;
    margin-top: 2px;
    text-decoration: underline;
}
#grav-login .form-actions .button {
    width: 200px;
    height: 40px;
    background-color: #3085ee;
    color: white;
}
#grav-login .form-actions .button .fa {
    display: none !important;
}
#grav-login input[type=checkbox] {
    margin-right: 4px;
}
#grav-login > form > div.form-actions.secondary-accent > button {
    width: 350px;
}
#grav-login a, #grav-login a:visited {
    color: black;
}

/* User Profile Page */

#user-profile img {
    width: 100px;
    margin-top: 40px;
    border-radius: 50%;
    box-shadow: 4px 4px 8px rgba(102, 102, 102, 0.555);
	-webkit-box-shadow: 4px 4px 8px rgba(102, 102, 102, 0.555);
    -moz-box-shadow: 4px 4px 8px rgba(102, 102, 102, 0.555);
}

/* Footer */ 

#footer {
    margin-bottom: 80px;
    font-size: 0.7rem;
}
#footer-content {
    margin-bottom: 60px;
}
#footer-credits {
    width: 100vw !important;
    position: relative !important;
    margin-left: -50vw !important;
    margin-top: -20px !important;
    left: 50% !important;
    padding: 20px;
}
#return-to-top {
    z-index: 1000;
}

/* Modular Features */

.modular-features .columns {
    align-items: center;
    justify-content: center;
    vertical-align: top;
}
.modular-features .column {
    align-self: flex-start;
}

.modular-features .frame-box p {
    font-size: 0.9rem;
    line-height: 1.1;
    text-align: left;
    margin-left: 0px;
    margin-right: 0px;
}
.modular-features a {
    text-decoration: none;
}
.modular-features .frame-box h6 {
    font-size: 1.2rem;
    line-height: 1.6rem;
}
.modular-features .frame-box .feature-content {
    padding-top: 16px;
}
.modular-features .frame-box .feature-content p {
    font-size: 0.8rem;
    line-height: 1.2rem;
    text-align: center;
}

/* --- Media Breakpoints ------------------------------- */

/* Replace menu bar with mobile menu */

@media (max-width: 1100px) {
    #header .navbar-section.desktop-menu { display: none !important; }
    .dropmenu { display: none !important; }
    .mobile-menu { display: block !important; }
    .mobile-menu .button_container span { display: block !important; }
    
    body.header-fixed.header-animated #header.scrolled {
        height: 60px !important;
    }
    .logo img {
        /* width: 210px; */
    }
    .login-status-header-wrapper-no-sidebar {
        margin-right: -70px;
    }
    .language-selector {
        display: none;
    }
}
@media (max-width: 1300px) {
    .recent-posts-img {
        width: 50px;
        height: 50px;
        -webkit-transition: all 0.5s ease;
        -moz-transition: all 0.5s ease;
        -o-transition: all 0.5s ease;
        transition: all 0.5s ease;
    }
}
@media (max-width: 980px) {
    .recent-posts-img {
        display: none;
    }
}

/* --- MOBILE CSS -------------------------------------- */

@media only screen and (max-device-width: 768px) {

    html {
        font-size: calc(16px + 4 * ((100vw - 480px) / 800) + 5px) !important;
    }
    h1 {
        font-size: 1.7rem !important;
    }
    #breadcrumbs {
        display: none;
    }

    /* Logo */

    .navbar .logo{
        margin-left: -20px;
        margin-top: -2px;
    }
    .mobile-logo {
        margin-left: -8px;
        margin-top: -6px;
    }
    #header, #header .logo img {
        max-width: 150%;
    }
    .mobile-logo img, .mobile-logo svg {
        visibility: hidden;
    }
    #header.scrolled .logo img {
        padding-top: 10px;
    }

    .header-fixed #header {
        max-width: 100vw !important;
    }

    /* Menu */
    
    .mobile-menu .button_container {
        top: 0.5rem;
        right: 0.6rem;
    }
    .mobile-menu .button_container span {
        display: block;
        background: black;
    }
    .treemenu {
        display: block !important;
    }
    body.header-fixed.header-animated #header.scrolled {
        height: 3.0rem;
    }

    .login-status-header-wrapper, .login-status-header-wrapper-no-sidebar {
        display: none;
    }
    .overlay {
        background-color: #323640;
    }
    #overlay > nav > ul > li .active {
        border-left: 9px solid #007ab8;
        margin-left: 10px !important;
        padding-left: 4px;
    }

    .sidebar-menu-label {
        color: white !important;
        font-size: 20px;
        line-height: 1.8em;
        margin-left: 40px;
    }
    .sidebar-menu-icon {
        color: white !important;
        font-size: 20px !important;
        position: absolute !important;
        left: 40px !important;
        margin-top: 7px !important;
    }

    /* Main Content */

    #page-wrapper {
        padding-left: 0px !important;
        margin-left: 0px !important;
    }

    /* Desktop Sidebar */

    #sidebar {
        display: none;
    }
    .treemenu .toggler {
        display: none;
    }

    /* Blog Sidebar */

    .recent-posts-img {
        display: unset;
    }

	@media (orientation: landscape) {
	
		/* Landscape only styles here */
  	
  	}
}

/* iPhone 6 Plus */

@media only screen 
and (min-device-width : 540px) 
and (max-device-width : 960px) {

    #breadcrumbs {
        display: none;
    }
    .recent-posts-img {
        display: unset;
    }
}

/* iPad Pro Landscape */

@media only screen
and (min-width: 1024px)
and (max-height: 1366px)
and (orientation: landscape)
and (-webkit-min-device-pixel-ratio: 1.5) {

    #header {
        border: none;
        max-width: 100vw;
        margin-right: auto;
        margin-left: -20px;
    }
    .recent-posts-img {
        display: unset;
    }

}

/* iPad Portrait */

@media only screen 
and (min-device-width : 768px) 
and (max-device-width : 1024px) 
and (orientation : portrait) { 
    #breadcrumbs {
        display: flex;
    }
    .recent-posts-img {
        display: unset;
    }
}
