/*Thanks for visiting! Keep your code fissure-free. Support the site. Buy the book :) */


/*Document structure including dominant fonts--------------------*/

* {
    box-sizing: border-box;
    margin: 0;
}


body {
    background-color: #f2f4f1 /*#eeede9*/;
    font-family: 'Open Sans', sans-serif;
    letter-spacing: -.01rem;
}


.wrapper {
    background-color: #fff;
    margin: -1px auto 0 auto;
    max-width: 980px;
    border: 1px solid #c2c0b9;
}


header {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    min-height: 30px;
    margin: 10px 0px;
}


main {
    margin: 8% 18%;
}


.skipnav {
    display: flex;
    justify-content: center;
    width: 100%;
}


.skipnav a {
    /*height: 34px;
    margin: 0 auto 10px auto;*/
    margin: 4px;
    background-color: #fff;
    font-size: 14px;
    font-weight: 100;
    color: #fff;
    text-align: center;
}
        

.skipnav a:focus {
    width: 70%;
    background-color: #43475c;  		
    border-radius: 4px;
    font-size: 24px;
    font-weight: 600;
}


.masthead, nav {
    display: flex;
    align-items: center;
    width: 100%;    
}


#sitename {
    padding-left: 30px;
    padding-right: 12px;
    margin-right: 12px;
    font-size: 24px;
    font-weight: 600;
    letter-spacing: -0.3px;
    color: #999;
    text-decoration: none;
}


#menu a:hover {
    text-decoration: underline;
}


#navbtn {
    cursor: pointer;
    padding: 1px 7px;
    margin: 12px 0 10px 0;
    background-color: #fff;
    border-top: 2px solid #c2c2c2;
    border-bottom: 2px solid #c2c2c2;
    border-left: none;
    border-right: none;
    border-radius: 0px;
    text-align: center;
    font-size: 2px;
    color: #fff;
    outline-color: #ddd;
}


#coming-soon {
    font-size: 32px;
    font-weight: 400;
    text-align: center;
}


			
.dropdown-content {
    display: none;
    width: 84%;
    margin: 10px auto 0 auto;
    border: 3px double #aaa;
    background-color: #f4f4f4;
    text-align: center;
}


.dropdown-content ol {
    padding-left: 0px;
}


.dropdown-content li {
    display: block;
    padding: 0.5rem;
    text-decoration: none;
}


.dropdown-content a {
    font-size: 16px;
    color: #4b4745;
    text-decoration: none;
}


.dropdown-content li:first-child {
    padding-top: 30px;
}


.dropdown-content li:last-child {
    padding-bottom: 10px;
}


.updated {
    padding-top: 4rem;
    font-size: 0.7rem;
    color: #888;
}


footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 40px 0px;
    background-color: #f4f4f4;
}


.footer-nav {
    display: flex;
    justify-content: center;
    width: 100%;
}


.footer-nav ul {
    padding: 0;
}


.footer-nav li {
    display: inline-block;
    text-decoration: none;
    padding: 10px;
}


.footer-nav a {
    font-size: 13px;
    font-weight: 600;
    color: #5c5856; /*#8d004b #7f0030; #75462c*/;
    text-decoration: none;
}


 .copyright {
    font-size: 11px;
    color: #5c5856;
    padding: 20px;
    text-align: center;
 }

		
.show {
    display: block;
}


.long-list-head {
    font-style: italic;
    font-weight: 700;
    padding-bottom: .4rem;
    padding-top: 1.1rem; 
}


.long-list li {
    line-height: 1.8rem;
    padding-left: 5px;
}


.figure-flex-row {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
}


.figure-flex-row-reverse {
    display: flex;
    flex-direction: row-reverse;
    flex-wrap: nowrap;
    justify-content: space-between;
}



/*Table Styles--------------------*/

table {
    border: 1px solid #ccc;
    border-collapse: collapse;
    margin: 2% auto 8% auto;
    table-layout: auto;
    text-align: left;
}


thead, tbody,th, tr, td {
    border: 1px solid #ccc;
    border-collapse: collapse;
    line-height: normal;
    padding: 10px;
    font-size: .97rem;
}


tbody tr:nth-child(odd) {
    background-color: #eee;
    
}


.fixed {
    width: 40%;
}



table#t7 th, table#t7 tr, table#t7 td {
    font-size: .9rem;
}


.dark {
    background-color: #777;
    color: #fff;
}


.light {
    background-color: #eee;
}


.borderless {
    border-left-style: none;
    border-right-style: none;
}


table#t7 tbody tr:nth-child(odd) {
    background-color: #fff;
}


.fixed-7 {
    width: 46%;
}





/*Main Text Styles--------------------*/

header, main, nav, footer {
    color: /*#4b4745*/ #130d0b;
    font-weight: 400;
}


main {
    font-size: 18px;
    line-height: 2;  
}


main a {
    text-decoration: none;
    color: #ff005f /*#ff0089*/;
}


h1 {
    font-size: 2.5rem;
    font-weight: 600;
    letter-spacing: -.8px;
    line-height: normal;
    padding-bottom: 2rem;
}


h2 {
    font-size: 1.9rem;
    font-weight: 600;
    letter-spacing: -.8px;
    line-height: normal;
    padding-top: 1.2rem;
    padding-bottom: 1rem;
}


h3 {
    font-size: 1.5rem;
    font-weight: 600;
    margin-top: 1.2rem;
}


h4 {
    letter-spacing: -.02rem;
}


abbr {
    border-bottom: none;
    text-decoration: none;
}


p, ul, ol {
    padding-bottom: 1.8rem;
}


li {
    padding: 1rem;
}


strong {
    font-style: oblique;
    letter-spacing: -.02rem;
}


caption {
    font-size: 0.8rem;
}



cite, .refs {
    font-size: 0.98rem;
    word-wrap: break-word;
    line-height: 1.6rem;
}


.refs a {
    font-size: 0.95rem;
    color: #008695 /*rgba(0, 134, 149, 1)*/;
}


.center {
    text-align: center;
}


.ext {
    color: #008695 /*#005380*/;
}


.oomph {
    font-weight: 600;
    letter-spacing: -.03rem;
}


.extra-oomph {
    font-weight: 700;
    letter-spacing: -.03rem;
}


.de-oomph {
    font-weight: 400;
    letter-spacing: -.03rem;
}


.emg {
    list-style-type: square;
}


.straight {
    font-style: normal;
}


.nodec li {
    list-style-type: none;
}


.moretop {
    padding-top: 60px;
}


.no-orphan {
    white-space: nowrap;
}


.essentials {
    font-size: inherit;
    font-weight: 700;
    letter-spacing: -0.02rem;
}


.availability {
    border: 2px dashed #f0cc87;
    border-radius: 4px;
    background-color: #fff1df;
    font-size: 1rem;
    padding: 20px;
    text-align: center;
    
}


/*Figures and Images--------------------*/

img {
    max-width: 100%;
    }


.right-float {
    float: right;
    margin-left: 1.5rem;
    width: 50%;
}


figure {
    display: flex;
    align-items: center;
    flex-flow: column wrap;
    margin: 1.5rem 0 4rem 0;
}


figcaption {
    align-self: flex-end;
    padding-top: 16px;
    font-size: 60%;
}


.mid {
    width: 80%;
    margin: .5rem auto 2rem auto;
}


.w-100 {
    width: 100%;
}


.w-45 {
    width: 45%;
}




/* Forms--------------------*/

#div-contact {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    margin-bottom: 12rem;
}


#div-contact div {
    display: flex;
    justify-content: flex-end;
}


#div-contact p {
    color: #666;
    font-size: 0.8rem;
    padding: 0;
    margin: 2px;
}


.btn {
    border: none;
    border-radius: 4px;
    background-color: #ddd;
    cursor: pointer;
    font-family: inherit;
    font-size: 1rem;
    margin: 20px 0 0 20px;
    padding: 10px 30px;
}


.reset {
    background-color: #fff;
    color: #666;
}


.success {
    display: block;
    background-color: #e6ffe3;
    border: 1px solid #afccab;
    border-radius: 3px;
    font-family: inherit;
    font-size: .95rem;
    padding: 10px;
}


.alert {
    display: block;
    background-color: #ffe2e2;
    border: 1px solid #ccacac;
    border-radius: 3px;
    font-family: inherit;
    font-size: .95rem;
    padding: 10px;
}


textarea {
    border: 1px solid #ddd;
    font-size: 1rem;
    line-height: 1.5rem;
    padding: 10px;
    width: 100%;
}





/* Asides--------------------*/

aside {
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    padding: 30px;
    margin: 20px 0px 40px 0px;
}


aside p {
    color: #777;
    padding: 10px 0px;
    text-align: center;
}


.fastr-options {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
}


aside a {
    display: block;
    color: dodgerblue /*#00a7ff*/;
    background-color: #eee;
    border-radius: 4px;
    font-size: .95rem;
    margin: 16px 16px;
    padding: 12px 16px;
    text-align: center;
    min-width: 120px;
}


aside a:hover {
    background-color: dodgerblue/*#dedede*/;
    color: white;
}





/* Media Queries--------------------*/

@media screen and (max-width: 768px) {
  
    h1 {
        font-size: 2.2rem;
    }
    
    main {
        padding: 0 10%;
        margin: 8% auto;        
    }
}    


@media screen and (max-width: 736px) {
  
    main {
        line-height: 1.8;       
    }
} 


@media screen and (max-width: 620px) {
  
    table#t6 th, table#t6 tr, table#t6 td {
        font-size: .8rem;
        padding: 0.3rem;
    }


    .figure-flex-row {
    flex-wrap: wrap;
    }

    .figure-flex-row-reverse {
    flex-wrap: wrap;
    }
    
    main {
        padding: 0px 40px;
        margin: 8% auto;        
    }


}


@media screen and (max-width: 560px) {
   
    main {
        padding: 0px 30px;
        margin: 8% auto;        
    }
    
    .right-float {
    float: right;
    margin-left: 1.5rem;
    width: 100%;
    }

}
   

@media screen and (max-width: 507px) {
   
    main {
        line-height: 1.7;
        padding: 0px 30px;
        margin: 8% auto;        
    }
    
    .skipnav {
        height: 24px;
    }
    
    .skipnav:focus {
        height: 24px;
        font-size: 16px;
    }
    
    table th, tr, td {
        font-size: .6rem;
    }
    
    table#t6 th, table#t6 tr, table#t6 td {
        font-size: 0.5rem;
        padding: 0.3rem;
    }
    
    table#t7 th, table#t7 tr, table#t7 td {
        font-size: 0.5rem;
        padding: 0.3rem;
    }
    
    
    p, ol, li {
        word-break: hyphenate;
    }
    
    .w-45 {
        width: 100%;
    }
    
    .right-float {
    float: right;
    margin-left: 1.5rem;
    width: 100%;
    }
}
