/*! HTML5 Boilerplate v5.2.0 | MIT License | https://html5boilerplate.com/ */

/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html {
    color: #222;
    font-size: 1em;
    line-height: 1.4;
}

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #C4C4C4;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */

.browserupgrade {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0.1em;
    width: 100%;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */




/*FONT*/


@font-face {
font-family: "RalewayWB";
font-weight: bold;
font-style: normal;
src: url("../fonts/Raleway_Bold_Subset_Deep.ttf");
}

@font-face {
font-family: "RalewayWB";
font-weight: normal;
font-style: italic;
src: url("../fonts/Raleway_Italic_Subset_Deep.ttf");
}

@font-face {
font-family: "RalewayWB";
font-weight: normal;
font-style: normal;
src: url("../fonts/Raleway_Regular_Subset_Deep.ttf");
}

@font-face {
font-family: "DingbatWB";
font-weight: normal;
font-style: normal;
src: url("../fonts/WBBarFont.ttf");
}

@font-face {
font-family: "NotoWB";
font-weight: normal;
font-style: normal;
src: url("../fonts/Raleway_Bold_Subset_Deep.ttf");
}

body
{
font-family: "RalewayWB", "Raleway", "Arial", sans-serif;
}


h1, h2, h3, h4, h5, h6
{
font-family: "RalewayWB", "Raleway", "Arial", sans-serif;
}

form, table, textarea, button, legend, fieldset, input, nav, footer, a.abtn, p.errorresponse, p.validresponse
{
font-family: "RalewayWB", "Raleway", "Arial", sans-serif;
}

hr, p.glyphright, span.dingbat, span.wb
{
font-family: "DingbatWB", sans-serif;
}

span.thaitext
{
font-family: "NotoWB", serif;
}


/*COLOR*/
body
{
background-color: #000000;
color: #FFFFFF;
}

a {color: #4392F2;}
a:visited {color: #4FC667;}
a:hover {color: #4FC667;}


nav, footer
{
background-color: #474747;
color: #FFFFFF;
}

nav a, nav a:visited
{
color: #FFFFFF;
}

nav a:hover, nav li a.selected_nav
{
color: #000000;
background-color: #FFFFFF;
}

section
{
background-color: #474747;
}

aside
{
background-color: #474747;
}


hr
{
color: #FFF;
background-color: #474747;
}
hr:after
{
background-color: #474747;
}



/*BASE*/

p
{
text-align: left;
margin: 1.0em 0 0 0;
font-size: 0.9em;
}

ul, ol
{
font-size: 0.9em;
}

table
{
font-size: 0.8em;
margin: 1.0em auto 0 auto;
}

h1+table, h2+table, h3+table
{
margin: 2px 0 0 0;
}

h1
{
text-align: left;
font-size: 1.5em;
font-weight: bold;
margin: 0.8em 0 0 0;
}

h2
{
text-align: left;
font-size: 1.4em;
margin: 0.8em 0 0 0;
}

h2.centeredh2
{
text-align: center;
font-size: 1.2em;
margin: 0.8em 0 0 0;
}

h3
{
text-align: left;
font-size: 1.2em;
font-weight: bold;
margin: 0.8em 0 0 0;
}

h3.faqheading
{
text-align: left;
font-size: 1.0em;
font-weight: bold;
margin: 0.8em 0 0 0;
}

h4
{
text-align: left;
font-size: 1.0em;
font-weight: bold;
margin: 0.8em 0 0 0;
}

h5
{
text-align: left;
font-size: 1.0em;
font-weight: bold;
margin: 0.8em 0 0 0;
}

h6
{
text-align: left;
font-size: 1.0em;
font-weight: bold;
margin: 0.8em 0 0 0;
}

h1+p, h2+p, h3+p, h4+p, h5+p, h6+p
{
margin: 2px 0 0 0;
}
section h1:first-child, article h1:first-child, article h2:first-child, article h3:first-child
{
margin: 2px 0 0 0;
}

aside ul
{
margin-left: 1.0em;
padding-left: 0;
}

aside h3
{
font-size: 0.9em;
text-align: center;
}

aside h4
{
font-size: 0.8em;
text-align: center;
}

aside h3:first-child
{
margin: 2px 0 0 0;
}

aside p, aside ul, aside ol
{
font-size: 0.75em;
}


/*LISTS*/
ul.navulpipe
{
list-style: none;
margin-left: 0;
padding-left: 1.0em;
}
ul.navulpipe li
{
padding-left: 0;
text-indent: -1.3em;

}

ul.navulpipe li:before
{
content: '|';
padding-right: 5px;
}

ul.ulnav
{
list-style: none;
margin-left: 3px;
padding-left: 1.0em;
}

ul.ulnav li
{
margin-left: 0;
padding-left: 0;
text-indent: -1.2em;
}

ul.ulnav li:before
{
content: '•';
font-family: "DingbatBB", sans-serif;
padding-right: 5px;
}

ul.ulnav li li:before
{
content: '';
font-family: sans-serif;
padding-right: 15px;
}

ul.ulcheckyes, ul.ulcheckno
{
list-style: none;
}

ul.ulcheckyes li, ul.ulcheckno li
{
padding-left: 0;
text-indent: -1.3em;

}

ul.ulcheckyes li:before
{
content: '✓';
padding-right: 5px;
}

ul.ulcheckno li:before
{
content: '✗';
padding-right: 5px;
}

/* TABLES */
table, table tr, table tr td
{
border: 1px dotted #FFF;
background-color: #000;
}

table
{
width: 100%;
max-width: 500px;
}



th, td
{
text-align: left;
padding: 1px 3px;
}

td.tdc
{
text-align: center;
}

td.tdr
{
text-align: right;
}

/*CLASSES*/

p.glyphright
{
margin: 2px 0 0 5px;
font-size: 3em;
float: right;
}

p.glyphright+p
{
margin: 2px 0 0 0;
}

span.wb
{
font-size: 2.5em;
color: #FFF;
}

span.dingbat
{
font-size: 4.0em;
color: #C4C4C4;
}


span.dingbat:hover
{
color: #FFF;
cursor: pointer;
}

p.nocsswarning
{
display: none;
}

a.nounderline
{
text-decoration: none !important;
}

p.right
{
text-align: right;
}

p.rightnomarg
{
margin: 0.1em 0 0 0;
text-align: right;
}

p.centered
{
text-align: center;
}

p.blocksmall
{
font-size: 0.9em;
text-align: left;
}

p.blocksmallnomarg
{
margin: 0;
font-size: 0.9em;
text-align: left;
}


p#bbebooks_banner img
{
width: 100%;
}

div.abovethefold
{
margin: 20px 40px 0 40px;
font-weight: bold;
padding: 20px 20px;
color: #FFFFFF;
font-size: 1.1em;
background-color: #7F7F7F;
border-radius: 10px;
-moz-border-radius: 10px;
-webkit-border-radius: 10px;
box-shadow: 2px 2px 2px #B5B5B5;
-moz-box-shadow: 2px 2px 2px #B5B5B5;
-webkit-box-shadow: 2px 2px 2px #B5B5B5;
}

/*FORMS and BUTTONS */

a.abtn
{
display: inline-block;
}





input[type="submit"], input[type="reset"], a.abtn
{
padding: 2px;
margin-top: 2px;
width: 100px;
color: black;
border: 0;
background-color: #B2B2B2;
border-radius: 3px;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
box-shadow: inset 0px 0px 3px #fff;
-moz-box-shadow: inset 0px 0px 3px #fff;
-webkit-box-shadow: inset 0px 0px 3px #fff;
text-transform: uppercase;
text-decoration: none;
font-size: 0.8em;
cursor: pointer;
font-weight: bold;
}

input[type="submit"]:hover, input[type="submit"]:active, input[type="submit"]:focus, input[type="reset"]:hover, input[type="reset"]:active, input[type="reset"]:focus , a.abtn:hover,  a.abtn:focus, a.abtn:active
{
background-color: #6B6B6B;
color: #FFFFFF;
}

input:hover
{
background-color: #F7F7F7;
}
input[type="text"]:focus, input[type="search"]:focus, input[type="email"]:focus, select:focus, textarea:focus
{
background-color: #F7F7F7;
border: 2px solid #B3B3B4;
box-shadow: 0px 0px 10px #cccccc;
-moz-box-shadow: 0px 0px 10px #cccccc;
-webkit-box-shadow: 0px 0px 10px #cccccc;
}

input[type="radio"]
{
display: none;
}

input[type="radio"], input[type="checkbox"]
{
display: none;
}

input[type="radio"] + label, input[type="checkbox"] + label
{
cursor: pointer;
}

input[type="radio"] + label span, input[type="checkbox"] + label span {
display:inline-block;
width: 1em;
height: 1em;
margin:-1px 4px 0 0;
vertical-align: middle;
cursor: pointer;
-moz-border-radius: 33%;
border-radius: 33%;
border: 1px solid #BBBBBB;
background-color: transparent;
}

input[type="radio"]:checked + label span, input[type="checkbox"]:checked + label span {
background-color: #CCCCCC;
}

input[type="text"], input[type="email"], textarea, select
{
font-size: 14px;
border: 1px solid #CCCCCC;
}

input[type="search"]
{
color: #000;
}

textarea
{
width: 90%;
font-size: 14px;
height: 200px;
}


fieldset
{
margin: 1.0em 0 0 0;
border: 1px solid #CCCCCC;
padding: 0 5px;
}

legend
{
font-weight: bold;
}

/* HORIZONTAL RULES */
section hr
{
text-align: center;
margin: 1.0em 3.0em;
}
section hr:after
{
content: "*";
display: inline-block;
position: relative;
top: -0.75em;
font-size: 1.5em;
padding: 0 0.25em;
}

aside hr
{
background-color: #000;
}


/* IMAGES */
img
{
max-width: 100%;
}
p.imgleft
{
text-align: left;
padding: 1.0em 5px 5px 0;
float: left;
}

p.imgright
{
text-align: right;
padding: 1.0em 0 5px 5px;
float: right;
}

p.imgcenter
{
text-align: center; 
padding: 0 5px 0 5px;
}


p.imgleft, p.imgright, p.imgcenter
{
font-size: 0.8em;
font-style: italic;
max-width: 100%;
}
/*ADVANCED*/

nav
{
margin: 0;
width: 100%;
font-weight: bold;
font-size: 0.8em;
}


nav ul
{
margin: 0;
padding: 0;
list-style: none;
list-style-image: none;
text-align: center;
line-height: 1.8;
}

nav ul li a
{
padding: 3px 10px;
height: 20px;
font-size: 1.1em;
display: block;
float: left;
text-decoration: none;
transition: .2s background-color;
transition: .2s color;
}

section
{
margin: 1.0em 0 0 0;
padding: 5px;
}

aside
{
margin: 1.0em 0.5em 0 0.5em;
padding: 5px;
}

aside p
{
text-align: center;
}

footer
{
margin: 1.0em 0 0 0;
border-top: 1px dotted #CCC;
border-bottom: 1px dotted #CCC;
padding-top: 12px;
padding-bottom: 12px;
}

footer p
{
text-align: center;
font-size: 0.7em;
margin: 0.2em 0 0 0;
}

div#progress_screen_id
{
border-radius: 5px;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
background-color: rgba(0,0,0,.3);
color: white;
font-size: 16px;
font-weight: bold;
height: 100px;
line-height: 100px;
margin: 0 auto;
position: fixed;
text-align: center;
top: 25%;
left: 25%;
width: 50%;
}



/*===TECHNICAL CONSIDERATIONS===*/
span.tech_text
{
color: #000000;
background-color: #EFEEEE;
}

span.keyboard_text
{
color: #000000;
background-color: #B4EBA8;
}

div.codeblock
{
background-color: #EFEEEE;
color: black;
overflow-x: auto;
overflow-y: scroll;
padding: 5px;
font-size: 12px;
margin: 1.0em 0 0 0;
max-height: 600px;
border: 2px solid #cccccc;
}

div.codeblock pre
{
white-space: pre;
}

div.codeblock div.htmlcomment, div.codeblock div.csscomment
{
display: inline;
}

/* HTML Syntax Highlights */
div.codeblock .htmltag {color: #0A178D;}
div.codeblock .htmlattr {color: #C41223;}
div.codeblock .htmlvalue {color: #520B6A;}
div.codeblock .htmlcomment {color: #21870D;}

/* CSS Syntax Highlights */
div.codeblock .csssel {color: #391BE3;}
div.codeblock .cssclass {color: #F22731;}
div.codeblock .csspseudo {color: #F29D27;}
div.codeblock .cssproperty {color: #2789F2;}
div.codeblock .cssid {color: #9D9D9E;}
div.codeblock .csscomment {color: #21870D;}
div.codeblock .cssimportant {color: #DB2800;}

/* BLOG */
div.social_addons
{
width: 95%;
margin: 1.0em 0 0 0;
height: 60px;
display: block;
}

div.social_addons div
{
display: block; /* MOBILE Only */
}

div.social_addons div.twitter_social
{
width: 100px;
}


div.blockquote
{
margin: 1.5em 1.5em 0 1.5em;
background-color: white;
padding: 0 10px 10px 10px;
border: 1px solid #cccccc;
border-radius: 5px;
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
}

div.blockquote p
{
margin: 1.0em 0 0 0;
color: #4C4C4C;
font-size: 0.9em;
}


h1 a, h2 a, h1 a:visited, h2 a:visited, h1 a:focus, h2 a:focus
{
color: inherit;
text-decoration: none;
outline: 0;
}

h1 a:active, h2 a:active
{
color: #BD37F2;
}
h1 a:hover, h2 a:hover
{
color: #008A2E;
}

h1, h2, section hr
{
clear: both;
}


article.blogpost_article p.blogpost_date, article.blogpost_article p.blogpost_label
{
font-variant: small-caps;
font-size: 0.8em;
font-weight: bold;
margin: 1.0em 0 0 0;
text-align:left;
}

article.blogpost_article p.blogpost_related
{
font-variant: small-caps;
font-size: 0.8em;
font-weight: bold;
margin: 0 0 1.0em 0;
text-align: left;
}

article.blogpost_article p.blogpost_by
{
font-variant: small-caps;
font-size: 0.8em;
font-weight: bold;
margin: 0;
text-align: left;
}

article.blogpost_article p.blogpost_notice
{
font-style: italic;
}

article.blogpost_article span.blogpost_appendum
{
font-size: 0.8em;
font-variant: small-caps;
}

article.blog_sidebar ul
{
list-style: none;
}
article.blog_sidebar ul
{
margin-left: 0.2em;
}

article.blog_sidebar ul li:before
{
content: '•';
font-family: "DingbatBB", sans-serif;
padding-right: 5px;
}


/*===IN-LINE STYLES===*/
span.i
{
font-style: italic;
}

span.b
{
font-weight: bold;
}

span.u
{
text-decoration: underline;
}

span.st
{
text-decoration: line-through;
}

span.ib
{
font-style: italic;
font-weight: bold;
}

span.iu
{
font-style: italic;
text-decoration: underline;
}

span.bu
{
font-weight: bold;
text-decoration: underline;
}

span.ibu
{
font-style: italic;
font-weight: bold;
text-decoration: underline;
}


/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Hide visually and from screen readers:
 */

.hidden {
    display: none !important;
}

/*
 * Hide only visually, but have it available for screen readers:
 * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screen readers, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 45em) {
    /* Style adjustments for viewports that meet the condition */
html
{
max-width: 960px;
}

p.glyphright
{
font-size: 5em;
}

div.sectionwrap
{
width: 72%;
float: left;
}

aside
{
width: 24%;
margin-left: 74%;
margin-right: 10px;
}

nav ul li a
{
padding: 3px 15px;
height: 40px;
font-size: 1.5em;
}

div.social_addons
{
width: 95%;
margin: 1.0em 0 0 0;
height: 40px;
display: block;
}

div.social_addons div
{
display: inline;
float: left;
}

div.social_addons div.twitter_social
{
width: 100px;
}


}

@media print,
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 1.25dppx),
       (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   http://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
    *,
    *:before,
    *:after {
        background: transparent !important;
        color: #000 !important; /* Black prints faster:
                                   http://www.sanbeiji.com/archives/953 */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    /*
     * Printing Tables:
     * http://css-discuss.incutio.com/wiki/Printing_Tables
     */

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
