
body {
    font-family: Tahoma, Georgia, "Times New Roman", Times, serif;

}

h1, h2, h3, h4 {
    font-family: Helvetica, Geneva, Arial, SunSans-Regular, sans-serif;
   
}

a {
    text-decoration: underline;
    color: #0000EE;
    transition: color 0.3s;
}

a:visited {
    color: #551A8B;
}

a:hover {
    text-decoration: underline;
}

pre,
code,
kbd,
samp,
tt {
    font-family: "PT Mono", "Consolas", "Courier New", monospace;
    font-size: 1em;
   
}


*.no-header {
    visibility: hidden;
    overflow: hidden;
    float: left;
    clear: both;
    width: 1px;
    height: 1px;
}

*.small-caps {
    font-variant: small-caps;
}


pre {
    white-space: pre-wrap;       /* CSS3 */
    white-space: -moz-pre-wrap;  /* Mozilla */
    white-space: -pre-wrap;      /* Opera 4-6 */
    white-space: -o-pre-wrap;    /* Opera 7 */
    word-wrap: break-word;       /* IE 5.5+ */
    word-break: normal;          /* Safari */
    overflow-wrap: break-word;   /*modern*/
}


img { 
    max-width: 100%; 
    height: auto;
}


@viewport {
    width: device-width;
    user-zoom: zoom;
    min-zoom: 1;
    zoom: 1;
}

@-ms-viewport {
    width: device-width;
    user-zoom: zoom;
    min-zoom: 1;
    zoom: 1;
}


@media (max-width: 768px) {
    body {
        background-image: none; 
    }
}


@media only screen and (min-width: 500px) {
    body {
        margin-left: 28%;
    }

    blockquote,
    p, li, dd {
        max-width: 760px;
    }

    *.nav {
        margin-left: -28%;
        width: 26%;
        position: fixed;
        top: 0;
        overflow: auto;
        height: 100%;
    }
}


@media only screen and (min-width: 784px) {
    body {
        margin-left: 15em;
    }

    *.nav {
        margin-left: -15em;
        width: 14em;
        position: fixed;
        top: 0;
        overflow: auto;
        height: 100%;
    }
}


div.book > div.nav {
    padding-left: 0.5em;
    
}

*.nav ul {
    list-style-type: none;
    padding-left: 1em;
}

*.nav-break {
    margin-top: 10px;
}

*.nav-top {
    color: #FFF;
    background-color: #ccc;
    text-decoration: none;
    text-transform: uppercase;
    font-style: italic;
}

*.menu-nav ul {
    text-decoration: none;
}
