/***** Global, Tags, Classes, IDs ******/

/***** Global *****/
:root {
    --color: #CCC;
    --background: #333;
    --background-dark: #222;
    --background-light: #444;
    --border: #555;
    --nav-height: 5em;
}

@media screen and (min-width: 1px) and (max-width: 580px) {
    .main {
        margin-top: 3% !important;
        width: 90% !important;
    }
    .sidenav:hover::before {
        content: "";
    }
    .sidenav::before {
        content: "≡";
        color: white;
        font-size: 40px;
        display: block;
        padding: 0 0.25em;
        margin: 0;
        position: fixed;
        top: -0.25em;
        right: 0;
        z-index: 1000;
    }
    .sidenav a {
        display: block;
        padding: 4px;
        text-decoration: none;
    }
    .sidenav a:active ul {
        display: none;
    }
    .sidenav object {
        float: right;
    }
    .sidenav:hover ul {
        display: block;
    }
    .sidenav ul {
        display: none;
        padding: 4px 8px;
        background: var(--background);
        list-style-type: none;
        position: absolute;
        right:0;
        z-index: 100;
        width: 14em;
    }
    .sidenav ul ul {
        list-style-type: '-';
        margin-left: 0.5em;
        padding: 0 0 4px 1em;
        position: relative;
        width: 10em;
    }
    #give-lively-widget {
        padding-bottom: 1em;
    }
    footer {
        font-size: smaller;   
    }
}

@media screen and (min-width: 580px) {
    html {
        scroll-padding-top: var(--nav-height);
    }
    /* this section is for the navigation menu properties*/
    .sidenav {
        background: var(--background-light);
        border-bottom: 1px inset gray;
        margin: 0;
        padding: 0;
        position: fixed;
        text-align: center;
        top: 0;
        width: 100%;
    }
    .sidenav a:hover{
        color: var(--color);
    }
    .sidenav ul { 
        display: inline-block;
        list-style-type: none;
        margin: 0;
        padding: 0;
        text-align: center;
    }
    .sidenav ul li {
        background: var(--background-light);
        display: inline-block;
        position: relative;
    }
    .sidenav ul li a {
        color: #2196F3;
        display: block;
        padding: 0.5em;
        min-width: 11em;
        text-decoration: none;
    }
    .sidenav ul li a:hover {
        color: white;
    }
    .sidenav ul ul {
        border-bottom: 1px inset gray;
        display: none;
        left: 0;
        padding: 0;
        position: absolute;
        z-index: 100;
    }
    .sidenav ul li ul li {
        border-left: 1px inset gray;
        border-right: 1px inset gray;
    }
    .sidenav ul li:hover ul ul,
    .sidenav ul li li:hover ul {
        display: none;
    }
    .sidenav ul li:hover ul {
        display: block;
    }
    /* nav properties end at this line   */

    .main {
        margin: var(--nav-height) 0 0 0; 
    }

    #give-lively-widget { float: right; padding: 0 0 0 2em; }
}

/***** Tags *****/
html, body {
	font-family: Tahoma, sans-serif;
    background: var(--background-dark) !important;
    color: var(--color);
    line-height: 1.4;
    margin: 0;
    padding: 0;
}

a { color: #2196F3; }
a:hover:not(.active) { color: #064579; }

h1, h2, h3 { margin-bottom: 0; }

footer {
    background: var(--background);
    color: var(--color);
	text-align: center;
  	padding: 3px;
} 

table, th, td {
	border: 1px solid black;
  	border-collapse: collapse;
}


/***** Classes *****/

.bi { color: white;}

.cb { clear: both; }

.main {
    background: var(--background);
    border: 1px solid gray;
    border-radius: 8px;
    color: var(--color);
    margin-left: auto;
    margin-right: auto;
    padding: 3%;
    text-align: justify;
    width: 80%;
}

.footer {
    background: var(--background);
    clear: both;
    color: var(--color);
    margin: 3% 0 0 0;
  	padding: 0 0 1em 0;
	text-align: center;
}

.footer img {
    min-width: 100px;
    width: 10%;
}

.float_left { float: left; padding: 0 1em 0.5em 0; margin: 0 1em 0.5em 0; }
.float_right { float: right; padding: 0 0 0.5em 1em;  margin: 0 0 0.5em 1em; }

/***** IDs *****/

#logo_banner {
    float: right;
    padding: 0 0 1em 1em;
    min-width: 100px;
    max-width: 600px;
    width: 100%;
}

#logo_tux {
    float: left;
    min-width: 120px;
    width: 15%;
}

#logo_tux a {
    display: block;
    padding: 0 1em;
    position: relative;
}

#logo_tux a:after {
  content: ""; 
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  position: absolute;
}

@media print {
    img {
        display: block;
        break-inside: avoid;
        page-break-inside: avoid;
    }
    .footer, .footer p, .main {
        border: 0;
        margin: 0 !important;
        padding: 0 !important;
        width: 100%;
    }
    .footer img {
        display: inline;
    }
    .sidenav {
        display: none;
    }
}
