/* CSS reset */
body, p, h1, h2, h3, h4, h5, h6 {
    padding: 0;
    margin: 0;
}

/* box model fix here */
* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }

/* --- BODY --- */
body {
    font-family: 'Source Sans Pro', sans-serif;
    color: black;
    background-color: #ceebfd;
    background-image: url(images/BkgGradient.gif);
    background-repeat: repeat-x;
    font-size: 16px;
}

div.wrapper{
    max-width: 1000px;
    margin: 0 auto;
    box-shadow: 0 0 8px 5px black;
}

/* --- HEADER --- */
header {
    padding: 3.4rem;
    background-color: #253E52;
    background-image: url(images/KPHeadernewedited3.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

/* --- NAVIGATION --- */
/* phone nav rules */
@media only screen and (max-width: 680px) {
    nav {
        background-color: #733A19;
        font-family: Poppins;
        font-size: 1.2rem;
        padding: 0 1%;
        border-top: solid 1px lightskyblue;
        border-bottom: solid 1px lightskyblue;
    }
    
    nav ul.menu {
        list-style-type: none;
        padding: 0;
        margin: 6px 0;
    }
    
    nav ul.menu li a {
        padding: .4rem 2%;
        margin-bottom: 2px;
        background-color: #402D22;
        color: #f5b66a;
        font-weight: 600;
        text-decoration: none;
        display: block;
        border: solid 1px black;
        text-align: center;
    }
    
    nav ul.menu li.active a {
        background-color: #f5b66a;
        color: #402D22;
        text-shadow: 1px 1px white;
    }
    
} /*end phone*/

/* desktop nav rules */
@media only screen and (min-width: 681px) {

    nav {
        background-color: #402D22;
        font-family: Poppins;
        font-size: 1.2rem;
        border-top: solid 1px lightskyblue;
        border-bottom: solid 1px lightskyblue;
    }

    nav ul.menu {
        list-style-type: none;
        margin: 0;
        padding: 0;
        display: flex;
        justify-content: center;
        width: 100%;
    }

    nav ul.menu li {
        float: left;
    }

    nav ul.menu li a {
        display: block;
        padding: 4px 10px; /* CHANGE: 4px 7px when there are 9 tabs and 4 px 10px when there are 8 */
        color: #f5b66a;
        text-decoration: none;
    }

    nav ul.menu li.active a {
        background-color: #f5b66a;
        color: #402D22;
        text-shadow: 1px 1px white;
    }

    nav ul.menu li a:hover {
        background-color: #733A19;
        color: #f5b66a;
        text-shadow: 2px 2px #253E52;
}
    
}/* end of desktop */

/* --- MAIN --- */

main {
    background-color: #F2E6D3;
}

main div.mainhome{
    padding: 0;
    border-top: solid 2px #253E52;
}

main div.mainother{
    padding: 1rem 2%;
    border-top: solid 2px #253E52;
}

main h1 {
    font-size: 2rem;
    margin-bottom: 1.5rem;
    text-align: center;
    color: black;
    text-shadow: 1px 2px lightskyblue;
    font-style: italic;
}

main h2 {
    font-size: 1.3rem;
    margin-top: 2rem;
    margin-bottom: .7rem;
    font-style: italic;
}

main h3 {
    font-size: 1.1rem;
    margin-left: 2%;
    margin-bottom: .7rem;
    font-style: italic;
    font-weight: 700;
}

span.spanh3 {
    font-size: 1.1rem;
    margin-left: -2%;
    font-style: italic;
    font-weight: 700;
}

span.spanh3cont {
    font-size: 1.1rem;
    font-style: italic;
    font-weight: 700;
    line-height: 3rem;
}

p.response {
    margin-left: 4%;
    margin-bottom: .8rem;
}

p.responseintroducinglist {
    margin-left: 4%;
    margin-bottom: -.5rem;
}

.responsesub {
    margin-left: 4%;
    margin-bottom: .8rem;
    padding-left: 2%;
    padding-bottom: 0;
}

p.signature {
    text-align: center;
}

main span.headtitle {
    font-style: normal;
}

main span.title {
    font-style: italic;
}

main p {
    padding-bottom: .8rem;
    line-height: 150%;
}

main div.flex-grid {
    display: flex;
    flex-direction: row-reverse;
}

@media only screen and (max-width: 680px) {
    main div.flex-grid {
        display: block;
    }
}

main div.col1 {
    flex: 1;
    padding: 1.5rem 2%;
    background-color: #733A19;
}

main div.col2 {
    flex: 5;
    padding: 1.5rem 2%;
}

@media only screen and (max-width: 680px) {
    
    main div.colquarter {
        width: 100%;
    }
    
    main td.colquarter {
        height: 0px;
    }
}
    
main a {
    color: #076cab;
}

main a:visited {
    color: #733A19;
}

main a:hover {
    color: #f5b66a;
    font-style: italic;
}

main a.clickhere {
    font-size: .8rem;
    font-weight: 800;
}

p.bookslist {
    font-family: 'Poppins', sans-serif;
    font-size: 1.3rem;
    text-align: center;
    font-style: italic;
    color: #f5b66a;
    text-shadow: 3px 2px #253E52;
    padding-top: 1rem;
    padding-bottom: 1.8rem;
}

div.bookgallery{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

div.bookgallery figure {
    border: solid 3px #402D22;
    margin: 15px 25px 50px 25px;
    width: 206px;
    background-color: white;
}

div.bookgallery img {
    width: 200px;
    height: 299px;
    padding: 2px;
    background-color: white;
    border-bottom: solid 3px #402D22;
}

div.bookgallery figure.dummy {
    border: none;
    background-color: #F2E6D3;
}

div.bookgallery img.dummy {
    border: none;
    padding: 0px;
}

div.bookgallery figcaption {
    text-align: left;
    padding: 2px;
}

div.bookgallery ul.bookaboutfulllist {
    margin-top: .1rem;
    padding-bottom: 1.5rem;
}

div.bookgallery li.bookabout {
    margin-left: 1rem;
}

p.comingsoon {
    margin: 50px 0 0 0;
    padding: 0 0 5px 0;
    font-style: italic;
    font-size: 1.5rem;
    text-align: center;
}

p.comingsoontitle {
    font-size: 1.5rem;
    text-align: center;
    margin: 0px 0 50px 0;
}

p.nolspaceholder {
    padding: 0px;
    margin-bottom: 93px;
}

p.hmtfspaceholder {
    padding: 0px;
    margin-bottom: 0px;
}

p.buyonnol, p.buyonhmtf {
    border-top: solid 3px white;
    padding-top: .5rem;
    padding-bottom: .5rem;
    font-weight: 700;
    text-align: center;
}

p.buyonnol {
    box-shadow: 0px -3.5px #183E4A;
    color: #9AACB0;
    background-color: #183E4A;
}

p.buyonhmtf {
    box-shadow: 0px -3.5px #402D22;
    color: #C4BAB8;
    background-color: #402D22;
}

ul.buynol, ul.buyhmtf {
    padding: 0;
    margin: 0;
    text-align: center;
    list-style-type: none;
    line-height: 100%;
}

ul.buynol {
    background-color: #183E4A;
}

ul.buyhmtf {
    background-color: #402D22;
}

ul.buynol li, ul.buyhmtf li {
    padding-bottom: .4rem;
    font-weight: 700;
}


ul.buynol a, ul.buyhmtf a {
    text-decoration: none;
}

ul.buynol a {
    color: #9AACB0;
}

ul.buyhmtf a {
    color: #C4BAB8;
}

ul.buynol a:hover, ul.buyhmtf a:hover {
    color: #f5b66a;
    text-shadow: 1px 1px red;
    font-weight: 800;
}

main ul {
    padding: 0 2% 0 4%;
}

li.hangingindent {
    list-style-type: none;
    text-indent: -3%;
    padding-bottom: 0.8rem; /* same as general paragraph */
    line-height: 150%; /*same as general paragraph */
}

ul span.att { /* att for attribution */
    font-style: italic;
    margin-left: 1rem;
}

h4{
    font-weight: 700;
    font-size: 1.2rem;
    color: #402D22;
    text-shadow: 1px 1px orange;  
    margin-bottom: .8rem;
}

span.emphasis { /* same as h4 but inline */
    font-weight: 700;
    font-size: 1.2rem;
    color: #402D22;
    text-shadow: 1px 1px orange;
    margin-right: 10px;
} 

li.paragraphlist {
    padding-bottom: 0.8rem; /* same as general paragraph */
    line-height: 150%; /*same as general paragraph */
}

li.sublist {
    list-style-type: circle;
    margin-left: 4%; /* 4% additional to 4% padding for main ul */
    padding-bottom: 0.8rem; /* same as general paragraph */
    line-height: 150%; /*same as general paragraph */
}

span.listhead {
    font-weight: 700;
    margin-right: 7px;
}

span.listheadpart {
    font-weight: 700;
}
    
div.letter {
    margin-left: 2%;
    margin-bottom: 2rem;
}

p.lastparagraph {
    margin-bottom: 1.5rem;
}

ul.contact {
    margin-top: .5rem;
    padding-bottom: 1.5rem;
}

ul.contact li {
    list-style-type: none;
    padding-bottom: .3rem;
}

div.biglink {
    font-size: 1.3rem;
    font-weight: 700;
    margin-bottom: .7rem;
}

p.note {
    margin-bottom: 1.5rem;
}

span.reviewbold {
    font-weight: 700;
}

button.morebutton {
    border: none;
    margin: 0;
    background-color: #F2E6D3;
    color: #076cab;
    font-family: 'Source Sans Pro', sans-serif;
    cursor: pointer;
    font-size: .8rem;
    font-weight: 700;
}

button.morebutton:hover {
    font-style: italic;
    color: black;
    text-shadow: 1px 0px lightskyblue;
}

h4.newsection {
    margin-top: 2rem;
    margin-bottom: 2rem;
}

/* --- IMAGES --- */

figure.colphoto {
    margin: 0 12.5% 2rem 12.5%;
    padding: 0%;
    width: 75%; 
    text-align: center;
}

figure.colphoto img {
    width: 100%; 
    border: solid 2px #F2E6D3;
    outline: solid 4px #253E52;
}

figure.photo {
    float: left;
    width: 18%;
    margin: 0 2% .75% 0;
    padding: 0%;
}

figure.photo img {width: 100%;}

figure.photo figcaption {
    font-family: 'Poppins', sans-serif;
    font-size: .8rem;
    text-align: center;
}

figure.socialmedia {
    float: left;
    width: 1rem;
    margin: 2px 5px 0 0;
    padding: 0%;
}

figure.socialmedia img {width: 100%;}

/* --- FOOTER --- */
footer {
    background-color: #253E52;
}

footer p {
    text-align: center;
    color: lightskyblue;
    padding: .5rem;
    font-size: .8rem;
}

/* Embedded Form */

iframe.form {
    width: 100%;
    height: 880px;
    margin: 0;
    padding: 0;
    border: none;
}

/* Video */

.video {
    width: 100%;
    height: auto;
}

/* --- OTHER --- */

div.keepOpen {
    clear: both;
}