#backBtn, .tile a, input:focus {
    outline: 0;
}

#backBtn, button, input[type=submit] {
    cursor: pointer;
}

* {
    box-sizing: border-box;
}

@font-face {
    font-family: 'Avenir Web';
    src: url(../fonts/avenir/avenir-book-webfont.woff2) format("woff2"), url(../fonts/avenir/avenir-book-webfont.woff) format("woff"), url(../fonts/avenir/avenir-book-webfont.ttf) format("truetype");
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Avenir Web';
    src: url(../fonts/avenir/avenir-bookoblique.otf) format("opentype");
    font-weight: 400;
    font-style: italic;
}

@font-face {
    font-family: 'Avenir Web';
    src: url(../fonts/avenir/avenir-heavy-webfont.woff2) format("woff2"), url(../fonts/avenir/avenir-heavy-webfont.woff) format("woff"), url(../fonts/avenir/avenir-heavy-webfont.ttf) format("truetype");
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'Avenir Web';
    src: url(../fonts/avenir/avenir-heavyoblique-webfont.woff2) format("woff2"), url(../fonts/avenir/avenir-heavyoblique-webfont.woff) format("woff"), url(../fonts/avenir/avenir-heavyoblique-webfont.ttf) format("truetype");
    font-weight: 700;
    font-style: italic;
}

@font-face {
    font-family: icomoon;
    src: url(../fonts/icomoon/icomoon.eot);
    src: url(../fonts/icomoon/icomoon.eot#iefix) format("embedded-opentype"), url(../fonts/icomoon/icomoon.ttf) format("truetype"), url(../fonts/icomoon/icomoon.woff) format("woff"), url(../fonts/icomoon/icomoon.svg#icomoon) format("svg");
    font-weight: 400;
    font-style: normal;
}

.icon, .slick-arrow, .social-links-list a:before, .widget h3:before, [class*=" icon-"], [class^=icon-] {
    font-family: icomoon, sans-serif !important;
    speak: none;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body, input {
    font-family: "Avenir Web", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
}

.label-icon, .social-links-list a:before, .widget h3:before {
    color: #fd0a28;
    margin-right: .25em;
    vertical-align: middle;
}

.icon-burger:before, header.masthead .toggle-nav .icon:before {
    content: "\e90b"
}

.icon-email-circle:before, .social-links-list a.email:before {
    content: "\e904"
}

.icon-email:before {
    content: "\e903"
}

.icon-facebook:before {
    content: "\e905"
}

.icon-instagram:before, .widget.instagram h3:before {
    content: "\e906"
}

.icon-twitter:before, .widget.tweets h3:before {
    content: "\e908"
}

.icon-twitter-circle:before, .social-links-list a.twitter:before {
    content: "\e900"
}

.icon-instagram-circle:before, .social-links-list a.instagram:before {
    content: "\e901"
}

.icon-facebook-circle:before, .social-links-list a.facebook:before {
    content: "\e902"
}

.icon-plus:before, div.expandable a.expand .icon:before {
    content: "\e909"
}

.icon-angle-down:before, div.genre-select .button .icon:before {
    content: "\e907"
}

.icon-angle-left:before, .slick-prev a:before {
    content: "\e90a"
}

.icon-angle-right:before, .slick-next a:before {
    content: "\e90d"
}

.icon-angle-up:before {
    content: "\e910"
}

.icon-bubble:before, .widget.news h3:before {
    content: "\e929"
}

.icon-close:before, body.nav-open .toggle-nav .icon:before, div.genre-select.expanded .icon:before {
    content: "\e965"
}

.icon-minus:before, div.expandable.expanded a.expand .icon:before {
    content: "\e9a6"
}

.icon-search:before {
    content: "\e9e5"
}

.icon-arrow-left:before {
    content: "\ea40"
}

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

.container, body.archive #main, body.archive div.list .alm-reveal, body.archive div.list .container, body.error404 .site-content, body.home #main, body.page article, body.search-results #main, body.search-results div.list .alm-reveal, body.search-results div.list .container, body.single div.related-content, footer.site-footer {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}

blockquote, dd {
    margin-left: 0;
}

body, html {
    overflow-x: hidden;
}

html {
    font-size: 16px;
}

body {
    background: #fff;
    color: #81858a;
    line-height: 1.5em;
    margin: 0;
    padding: 0;
    word-break: break-word;
}

.h1, .h2, .h3, .h4, body.archive div.list h2, body.archive section.featured-items h2, body.search-results div.list h2, body.search-results section.featured-items h2, dt, h1, h2, h3, h4, table th {
    color: #000;
    font-weight: 600;
    margin-bottom: .5em;
}

.h2, .h3, body.archive div.list h2, body.archive section.featured-items h2, body.search-results div.list h2, body.search-results section.featured-items h2, h2, h3 {
    font-weight: 400;
    line-height: 1.375em;
}

.h1, h1 {
    font-size: 2.25rem;
}

.h2, h2 {
    font-size: 2rem;
}

.h3, body.archive div.list h2, body.archive section.featured-items h2, body.search-results div.list h2, body.search-results section.featured-items h2, h3 {
    font-size: 1.5rem;
}

.h4, .h5, .h6, dt, h4, h5, h6, table th {
    font-size: 1rem;
}

.entry-header h1, .page-header h1 {
    font-size: 3rem;
}

.button, a, button, input[type=submit] {
    -moz-transition: all .25s;
    -o-transition: all .25s;
    -webkit-transition: all .25s;
    transition: all .25s;
}

.tile p, div.related-books .tile img {
    -moz-transition: all .25s;
    -o-transition: all .25s;
    -webkit-transition: all .25s;
    transition: all .25s;
}

a {
    color: #000;
    text-decoration: none;
}

a.red-link {
    color: #fd0a28;
    text-decoration: none;
}

.button, button, input[type=submit] {
    -moz-border-radius: 2rem;
    -webkit-border-radius: 2rem;
    border-radius: 2rem;
    background-color: #fd0a28;
    border: 0;
    color: #fff;
    font-size: .875rem;
    padding: .675rem 2.125rem;
    white-space: nowrap;
    -webkit-appearance: none;
}

form input[type=submit], input:not([type=submit]) {
    height: 3rem;
    font-size: 1rem;
}

.button:hover, button:hover, input[type=submit]:hover {
    background-color: #d2021b;
}

.button.small, button.small, input[type=submit].small {
    padding: .25rem 1.25rem;
    text-transform: uppercase;
}

.button.large, button.large, input[type=submit].large {
    padding: .5rem 1rem;
}

input {
    border: none;
}

input:not([type=submit]) {
    background: #f8f8f8;
    border-radius: 2rem;
    padding: 1rem;
    width: 100%
}

input[type=search] {
    padding-right: 3rem;
}

input::placeholder {
    color: #b6b8bb;
}

table {
    margin-bottom: 1rem;
}

table img {
    max-width: 160px;
}

table td, table th, table tr {
    padding: 1rem;
}

table th {
    text-align: left;
}

table tr {
    border-bottom: 1px solid #ffd4da;
    font-size: .875rem;
}

table td + td, table th + th {
    border-left: 1px solid #f8f8f8;
}

dt {
    margin-top: 1rem;
}

div.quotes {
    align-content: flex-start;
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
}

blockquote {
    font-style: italic;
}

/*blockquote:before {*/
/*color: #f6b935;*/
/*content: '"';*/
/*display: block;*/
/*font-size: 1.75rem;*/
/*}*/

img {
    height: auto;
    max-width: 100%
}


img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

img.alignleft {
    float: left;
}

img.alignright {
    float: right;
}

.featured-image img, a.book-cover img, img.book-cover {
    -moz-box-shadow: rgba(0, 0, 0, .2) 0 .75rem .75rem;
    -webkit-box-shadow: rgba(0, 0, 0, .2) 0 .75rem .75rem;
    box-shadow: rgba(0, 0, 0, .2) 0 .75rem .75rem;
}

iframe {
    width: 100%
}

.slick-arrow {
    font-size: 2rem;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
}

.slick-arrow a {
    -moz-border-radius: 2rem;
    -webkit-border-radius: 2rem;
    border-radius: 2rem;
    -moz-box-shadow: rgba(0, 0, 0, .2) 0 .125rem .5rem;
    -webkit-box-shadow: rgba(0, 0, 0, .2) 0 .125rem .5rem;
    box-shadow: rgba(0, 0, 0, .2) 0 .125rem .5rem;
    background: #fff;
    font-size: 1.5rem;
    height: 3rem;
    width: 3rem;
    padding: 1rem;
}

.slick-arrow a:active, .slick-arrow a:hover {
    -moz-box-shadow: rgba(0, 0, 0, .4) 0 .125rem .5rem;
    -webkit-box-shadow: rgba(0, 0, 0, .4) 0 .125rem .5rem;
    box-shadow: rgba(0, 0, 0, .4) 0 .125rem .5rem;
    color: #fd0a28;
}

.slick-prev {
    left: -5%
}

.slick-prev a:before {
    margin-right: 2px;
}

.slick-next {
    right: -5%
}

.slick-next a {
    padding-right: calc(1rem - 1px);
}

.slick-next a:before {
    margin-left: 2px;
}

@media screen and (min-width: 1300px) {
    .slick-prev {
        left: -8rem;
    }

    .slick-next {
        right: -8rem;
    }
}

.tile img {
    width: 100%
}

.tile p {
    height: 1.5em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-top: .125em;
    margin-bottom: 0;
}

.tile .title {
    color: #81858a;
}

.tile .sub-title {
    color: #9b9fa3;
}

.tile:active .title, .tile:hover .title {
    color: #000;
}

.tile:active .sub-title, .tile:hover .sub-title {
    color: #4f5256;
}

.meta.author {
    display: inline-block;
    margin-right: 1rem;
}

.page-header::after, div.related-books > div::after {
    content: "";
    display: block;
    clear: both;
}

.meta.author a {
    color: #fd0a28;
    font-size: .75rem;
}

.meta.author img {
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    vertical-align: bottom;
    margin-right: .25em;
    width: 30px;
}

.page-header {
    padding: 1rem 0;
}

.page-title {
    padding: 2rem;
    text-align: center;
}

div.related-books > div {
    margin-left: -1rem;
    margin-right: -1rem;
    width: calc(100% + 2rem);
}

#ctf .ctf-tweet-text-media-wrap, #ctf .fa-picture-o, .widget.news {
    display: none;
}

div.related-books .tile {
    width: calc(50% - 1.5rem);
    float: left;
    margin-left: 1rem;
    margin-bottom: 2rem;
}

.social-links-list a, div.expandable .content {
    -moz-transition: all .25s;
    -o-transition: all .25s;
    -webkit-transition: all .25s;
}

div.related-books .tile img:hover {
    -moz-transform: translateY(-.5rem);
    -ms-transform: translateY(-.5rem);
    -webkit-transform: translateY(-.5rem);
    transform: translateY(-.5rem);
}

aside .widget a:not(.button) {
    color: #fd0a28;
}

aside .widget a:not(.button):active, aside .widget a:not(.button):hover {
    color: #d2021b;
}

aside .widget p {
    font-size: .95rem;
}

aside.sidebar {
    padding-left: 1rem;
    padding-right: 1rem;
}

aside.sidebar .widget + .widget {
    padding-top: 1rem;
}

.social-links-list a {
    transition: all .25s;
    color: #81858a !important;
}

.social-links-list a:before {
    color: #fd0a28;
    font-size: 1.75rem;
    margin-right: .5em;
    vertical-align: middle;
}

.social-links-list a:active, .social-links-list a:hover {
    color: #fd0a28 !important;
}

#sbi_images {
    margin-left: -10px;
    margin-right: -10px;
}

#sbi_images .sbi_item a {
    -moz-border-radius: .25rem;
    -webkit-border-radius: .25rem;
    border-radius: .25rem;
    overflow: hidden;
}

#ctf .ctf-item {
    border-top: 1px solid #ffd4da;
}

#ctf .ctf-author-box-link {
    font-size: .75rem;
}

#ctf .ctf-author-name {
    font-weight: 400 !important;
}

#ctf .ctf-author-box {
    float: none !important;
}

#ctf .ctf-tweet-meta {
    float: right;
    line-height: 1.85rem;
}

.search-form .icon-search {
    font-size: 1.0125rem;
    font-weight: 700;
}

@media screen and (min-width: 768px) {
    div.related-books .tile {
        width: calc(33.33333% - 2.66667rem);
        float: left;
        margin-left: 2rem;
    }

    aside.sidebar {
        padding-left: 2rem;
        padding-right: 2rem;
    }

    aside.sidebar .widget + .widget {
        margin-top: 2rem;
        border-top: 1px solid #ffd4da;
        padding-top: 2rem;
    }
}

@media screen and (min-width: 1100px) {
    div.related-books > div {
        -moz-transform: translateX(-1rem);
        -ms-transform: translateX(-1rem);
        -webkit-transform: translateX(-1rem);
        transform: translateX(-1rem);
    }

    aside.sidebar {
        padding-left: 1.5rem;
        padding-right: 0;
    }
}

header.masthead {
    background: #272728;
    color: #fff;
    height: 3.5rem;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 3;
}

header.masthead a {
    color: #a9abaf;
}

header.masthead a:hover {
    color: #fd0a28;
}

header.masthead a.toggle-nav:hover {
    color: #a9abaf;
}

header.masthead li.books a:hover {
    color: #f6b935;
}

header.masthead li.authors a:hover {
    color: #7ed321;
}

header.masthead div.search {
    line-height: 3rem;
    margin-left: 1.5rem;
}

header.masthead div.search .text {
    color: #81858a;
    font-size: .875rem;
    letter-spacing: .05em;
}

header.masthead div.search .contents {
    -moz-transform: translateX(-10rem);
    -ms-transform: translateX(-10rem);
    -webkit-transform: translateX(-10rem);
    transform: translateX(-10rem);
    -moz-transition: -moz-transform .25s;
    -o-transition: -o-transform .25s;
    -webkit-transition: -webkit-transform .25s;
    transition: transform .25s;
}

header.masthead div.search .search-link {
    -moz-transition: opacity .125s;
    -o-transition: opacity .125s;
    -webkit-transition: opacity .125s;
    transition: opacity .125s;
}

header.masthead div.search.open .contents {
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -webkit-transform: translateX(0);
    transform: translateX(0);
}

header.masthead div.search.open .search-link {
    opacity: 0;
}

header.masthead .search-form {
    display: inline-block;
    position: relative;
    width: 13rem;
}

header.masthead .search-form input {
    background: 0 0;
    color: #81858a;
    font-size: 1.25rem;
}

header.masthead .search-form input::placeholder {
    color: transparent;
}

header.masthead .search-form .button {
    background: 0 0;
    position: absolute;
    right: -.5em;
    top: 50%;
    width: 2rem;
    padding-left: 1em;
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

header.masthead .search-form .icon-search {
    color: #dfdfdf;
    vertical-align: middle;
}

header.masthead .toggle-nav {
    width: calc(41.66667% - 1.41667rem);
    float: left;
    margin-left: 1rem;
    margin-top: 1rem;
    padding-left: .5rem;
}

header.masthead .toggle-nav .icon {
    display: inline-block;
    font-size: 1.375rem;
    margin-right: .5rem;
    text-align: center;
    vertical-align: text-bottom;
    width: 1.5rem;
}

header.masthead .toggle-nav .text:after {
    content: 'Menu'
}

header.masthead .site-title {
    width: calc(58.33333% - 1.58333rem);
    float: left;
    margin-left: 1rem;
    margin-top: .375rem;
    padding-right: .5rem;
    text-align: right;
}

header.masthead .logo {
    max-width: 185px;
    width: 6.5rem;
}

body.admin-bar .masthead {
    top: 32px;
}

body {
    padding-top: 3.5rem;
}

.main-nav {
    list-style-type: none;
    padding-left: 0;
}

.main-nav li {
    display: inline;
}

.main-nav li + li {
    margin-left: 1em;
}

header.masthead .main-nav, header.masthead div.desktop-search {
    display: none;
}

div.mobile-menu {
    background: #272728;
    border-top: 2px solid rgba(79, 82, 86, .5);
    display: none;
    height: 100vh;
    position: absolute;
    top: 3.5rem;
    left: 0;
    right: 0;
    bottom: 0;
}

div.mobile-menu::after {
    clear: both;
    content: "";
    display: block;
}

div.mobile-menu div.mobile-search {
    margin-left: .5rem;
    padding-top: .66667rem;
    padding-bottom: .66667rem;
}

div.mobile-menu .mobile-nav {
    border-top: 2px solid rgba(79, 82, 86, .5);
    font-size: 2rem;
    line-height: 1.65em;
}

div.mobile-menu ul {
    list-style: none;
    margin-left: 0;
    margin-top: 1rem;
    padding-left: 2rem;
}

body.nav-closed div.mobile-menu {
    display: none;
}

body.nav-open div.mobile-menu {
    display: block;
}

body.nav-open .toggle-nav .icon {
    font-size: 1rem;
    font-weight: 700;
    vertical-align: text-top;
}

body.nav-open .toggle-nav .text:after {
    content: 'Close'
}

@media only screen and (min-width: 768px) {
    header.masthead {
        height: 5.5rem;
        padding-top: 1rem;
        padding-bottom: 1rem;
    }

    header.masthead .site-title {
        margin-top: -.25rem;
    }

    header.masthead .logo {
        width: 10rem;
    }

    header.masthead div.search .contents {
        -moz-transform: translateX(-17rem);
        -ms-transform: translateX(-17rem);
        -webkit-transform: translateX(-17rem);
        transform: translateX(-17rem);
    }

    header.masthead .search-form {
        width: 20rem;
    }

    div.mobile-menu {
        top: 5.5rem;
    }

    div.mobile-menu .mobile-nav {
        font-size: 2.25rem;
        line-height: 1.75em;
    }

    div.mobile-menu ul {
        margin-top: 2rem;
    }

    body {
        padding-top: 5.5rem;
    }
}

@media only screen and (min-width: 1100px) {
    header.masthead .main-nav, header.masthead div.search {
        display: inline-block;
    }

    header.masthead div.search {
        width: calc(41.66667% - 1.41667rem);
        float: left;
        margin-left: 1rem;
    }

    header.masthead .site-title {
        width: calc(16.66667% - 1.16667rem);
        float: left;
        margin-left: 1rem;
        text-align: center;
        margin-right: -1.125rem;
    }

    header.masthead .main-nav {
        width: calc(41.66667% - 1.41667rem);
        float: left;
        margin-left: 1rem;
        text-align: right;
    }

    div.mobile-menu, header.masthead .toggle-nav {
        display: none;
    }
}

div.newsletter-signup {
    background: #f4f4fd;
    margin-bottom: 2rem;
    padding: 2rem 1rem;
    text-align: center;
}

div.newsletter-signup h2 {
    font-size: 1.5rem;
}

div.newsletter-signup input[type=email] {
    background: #fff;
    padding-right: 8.5rem;
}

div.newsletter-signup form {
    margin: 2.5rem auto;
    max-width: 22rem;
    position: relative;
}

div.newsletter-signup form p {
    margin-top: 2rem;
}

div.newsletter-signup .button {
    height: 3rem;
    line-height: 1.75rem;
    position: absolute;
    right: 0;
    top: 0;
}

@media only screen and (min-width: 768px) {
    div.newsletter-signup {
        padding-top: 4rem h2;
        padding-top-font-size: 2rem;
    }
}

footer.site-footer {
    color: #9b9fa3;
    font-size: .875rem;
    padding: 0 1rem 2rem;
    margin-bottom: 3rem;
    display: flex;
    flex-wrap: wrap;
}

footer.site-footer::after {
    clear: both;
    content: "";
    display: block;
}

footer.site-footer div.text {
    order: 3;
    width: 100%;
    text-align: center;
}

footer.site-footer .site-title .logo {
    width: 3.5rem;
}

footer.site-footer .main-nav {
    list-style-type: none;
    padding-left: 0;
    margin-top: 1.5rem;
}

footer.site-footer .main-nav li {
    display: inline;
}

footer.site-footer .main-nav li + li {
    margin-left: .25em;
}

footer.site-footer .main-nav li + li:before {
    content: "|";
    padding-right: .5em;
}

footer.site-footer .main-nav a {
    color: #9b9fa3;
}

footer.site-footer .main-nav a:hover {
    color: #272728;
}

footer.site-footer .main-nav ul {
    margin-bottom: .5rem;
    margin-top: 0;
    padding-left: 0;
}

footer.site-footer .social-links {
    flex: 2;
    font-size: 1.75rem;
    margin-top: 1rem;
    text-align: right;
}

footer.site-footer .social-links a {
    color: #404042;
    margin-left: .125em;
    vertical-align: middle;
}

footer.site-footer .social-links a:hover {
    color: #fd0a28;
}

@media only screen and (min-width: 768px) {
    footer.site-footer {
        display: block;
    }

    footer.site-footer .site-title, footer.site-footer .social-links {
        width: calc(25%);
        float: left;
        margin-left: 0;
    }

    footer.site-footer div.text {
        width: calc(50%);
        float: left;
        margin-left: 0;
    }

    footer.site-footer .site-title .logo {
        width: 5rem;
    }

    footer.site-footer .social-links {
        float: right;
        margin-top: 2rem;
    }
}

@media only screen and (min-width: 1100px) {
    footer.site-footer .site-title {
        width: calc(16.66667%);
        float: left;
        margin-left: 0;
    }

    footer.site-footer .social-links {
        width: calc(25%);
        float: left;
        margin-left: 0;
    }

    footer.site-footer div.text {
        width: calc(58.33333%);
        float: left;
        margin-left: 0;
    }

    footer.site-footer .main-nav {
        float: right;
        margin-left: 1rem;
        margin-top: 2rem;
        text-align: right;
    }

    footer.site-footer .site-info {
        float: left;
        margin-top: 2rem;
    }
}

body.home #main::after {
    clear: both;
    content: "";
    display: block;
}

.slick-active .radial-timer {
    overflow: hidden;
    height: 20px;
    width: 20px;
    position: absolute;
    right: 1rem;
    top: 1rem;
}

.slick-active .radial-timer .radial-timer-half {
    height: 20px;
    width: 10px;
    border-radius: 10px 0 0 10px;
    background: #fd0a28;
    position: absolute;
}

.slick-active .radial-timer .radial-timer-half:nth-of-type(2) {
    z-index: 99999999;
    -webkit-transform-origin: center right;
    -webkit-transform: rotate(180deg);
}

.slick-active .radial-timer .radial-timer-half:after, .slick-active .radial-timer .radial-timer-half:before {
    background: #f4f4fd;
    content: "";
    position: absolute;
}

.slide, div.expandable h3 {
    position: relative;
}

.slick-active .radial-timer .radial-timer-half:before {
    top: 3px;
    left: 3px;
    height: 14px;
    width: 7px;
    border-radius: 8.5px 0 0 8.5px;
}

.slick-active .radial-timer .radial-timer-half:after {
    height: 40px;
    width: 30px;
    left: -20px;
    top: -10px;
    -webkit-transform-origin: center right;
}

.slick-active .radial-timer.s-animate {
    -webkit-transform-origin: center right;
}

.slick-active .radial-timer.s-animate .radial-timer-half:nth-of-type(1):after {
    -webkit-animation: rotateLeftMask 10s infinite linear;
}

.slick-active .radial-timer.s-animate .radial-timer-half:nth-of-type(2):after {
    -webkit-animation: rotateRightMask 10s infinite linear;
}

@-webkit-keyframes rotateLeftMask {
    0%, 50% {
        -webkit-transform: rotate(0);
    }
    100% {
        -webkit-transform: rotate(180deg);
    }
}

@-webkit-keyframes rotateRightMask {
    0% {
        -webkit-transform: rotate(0);
    }
    100%, 50% {
        -webkit-transform: rotate(180deg);
        visibility: hidden;
    }
}

.slick-active div.featured-multi-books .radial-timer-half {
    background: #f6b935;
}

.slick-active div.featured-author .radial-timer-half {
    background: #7ed321;
}

.hero-carousel {
    margin-bottom: 6rem;

}

.hero-carousel .slide div.text p {
    display: none;
}

.hero-carousel div.featured-item h3 {
    font-weight: 700;
    line-height: 1.125em;
}

.hero-carousel div.featured-book {
    margin: 1rem;
    max-width: 50rem;
}

.hero-carousel div.featured-book h3 {
    margin-top: 0;
}

.hero-carousel div.featured-book div.img {
    margin-bottom: 1rem;
    text-align: center;
}

.hero-carousel div.featured-book div.img img {
    max-width: 140px;
}

.hero-carousel div.featured-multi-books {
    margin: 2rem auto;
    max-width: 58rem;
}

.hero-carousel div.featured-multi-books h3 {
    margin-bottom: 1rem;
}

.hero-carousel div.featured-multi-books div.img {
    display: flex;
    flex-wrap: wrap;
}

.hero-carousel div.featured-multi-books div.img img {
    width: calc(33.33333% - 2.66667rem);
    height: calc(30% - 1rem);
    float: left;
    margin-left: 2rem;
    margin-bottom: 2rem;
}

.hero-carousel div.featured-multi-books div.text {
    padding: 2rem;
}

.hero-carousel div.featured-multi-books .button {
    background-color: #f6b935;
}

.hero-carousel div.featured-multi-books .button:hover {
    background-color: #eda60b;
}

.hero-carousel div.featured-author, .hero-carousel div.featured-promotion {
    padding: 1rem;
    text-align: center;
}

.hero-carousel div.featured-author div.img, .hero-carousel div.featured-promotion div.img {
    height: 220px;
    overflow: hidden;
}

.hero-carousel div.featured-author div.img img, .hero-carousel div.featured-promotion div.img img {
    max-width: 220px;
}

.hero-carousel div.featured-author h3, .hero-carousel div.featured-promotion h3 {
    margin-top: 1rem;
    margin-bottom: 2rem;
}

.hero-carousel div.featured-author div.text p {
    margin-bottom: 1rem;
}

.hero-carousel div.featured-author div.books {
    display: none;
    font-size: .875rem;
    margin-bottom: 2rem;
}

.hero-carousel div.featured-author div.books span {
    display: block;
    margin-bottom: .5em;
}

.hero-carousel div.featured-author div.books img {
    display: inline-block;
    margin-right: .5rem;
    width: 50px;
}

.hero-carousel div.featured-author .button {
    background-color: #7ed321;
}

.hero-carousel div.featured-author .button:hover {
    background-color: #64a71a;
}

.hero-carousel div.featured-promotion p {
    margin-bottom: 2rem;
}

.hero-carousel .slide {
    background: #f4f4fd;
    min-height: 400px;
    outline: 0;
}

.hero-carousel .slide img {
    display: inline-block;
}

.hero-carousel .slick-prev {
    left: 2rem;
}

.hero-carousel .slick-next {
    right: 2rem;
}

.hero-carousel .slick-list {
    overflow: visible !important;
}

@media only screen and (min-width: 768px) {
    .hero-carousel .slide div.text p, .hero-carousel div.featured-author div.books {
        display: block;
    }

    .hero-carousel div.featured-item h3 {
        font-size: 2.25rem;
    }

    .hero-carousel div.featured-book div.img, .hero-carousel div.featured-multi-books div.img {
        min-height: 300px;
    }

    .hero-carousel div.featured-book {
        margin: 4rem 3rem;
    }

    .hero-carousel div.featured-book div.img {
        max-width: 220px;
        margin-bottom: 0;
        text-align: left;
    }

    .hero-carousel div.featured-book div.img img {
        max-width: 100%
    }

    .hero-carousel div.featured-book div.text {
        margin-left: 2rem;
    }

    .hero-carousel div.featured-multi-books h3 {
        margin-bottom: 3rem;
    }

    .hero-carousel div.featured-multi-books div.img {
        width: calc(58.33333% - 1.58333rem);
        float: left;
        margin-left: 1rem;
        display: flex;
        flex-wrap: wrap;
    }

    .hero-carousel div.featured-multi-books div.text {
        width: calc(41.66667% - 1.41667rem);
        float: left;
        margin-left: 1rem;
    }

    .hero-carousel div.featured-author, .hero-carousel div.featured-promotion {
        padding: 0;
        text-align: left;
    }

    .hero-carousel div.featured-author div.img, .hero-carousel div.featured-author div.text, .hero-carousel div.featured-promotion div.img, .hero-carousel div.featured-promotion div.text {
        width: calc(50% - 1.5rem);
        float: left;
        margin-left: 1rem;
        padding: 1rem;
    }

    .hero-carousel div.featured-author div.img, .hero-carousel div.featured-promotion div.img {
        height: 450px;
    }

    .hero-carousel div.featured-author div.img img, .hero-carousel div.featured-promotion div.img img {
        max-width: 100%;
        width: 100%;
        height: auto;
    }

    .hero-carousel div.featured-author h3, .hero-carousel div.featured-promotion h3 {
        margin-bottom: auto;
    }

    .hero-carousel div.featured-promotion h3 {
        margin-top: 2rem;
    }

    .hero-carousel .slide {
        height: 450px;
    }
}

@media only screen and (min-width: 1100px) {
    .hero-carousel .slide {
        border-left: 3px solid #fff;
        border-right: 3px solid #fff;
        opacity: .5;
        transition: opacity 1s;
    }

    .hero-carousel .slick-current {
        opacity: 1;
    }

    .hero-carousel .slick-prev {
        left: 5rem;
    }

    .hero-carousel .slick-next {
        right: 5rem;
    }

    .hero-carousel div.featured-book div.img {
        max-width: none;
    }

    .hero-carousel div.featured-book div.img img {
        max-width: 265px;
    }
}

@media only screen and (min-width: 1250px) {
    .hero-carousel div.featured-author div.img, .hero-carousel div.featured-promotion div.img {
        margin-left: 0;
        padding: 0;
        width: 450px;
    }

    .hero-carousel div.featured-author div.img img, .hero-carousel div.featured-promotion div.img img {
        min-height: 100%
    }

    .hero-carousel div.featured-author div.text, .hero-carousel div.featured-promotion div.text {
        padding: 2rem;
    }
}

body.home section.featured {
    margin-bottom: 5rem;
    padding-left: 1rem;
    padding-right: 1rem;
}

body.home section.featured .related-books > div {
    display: flex;
    flex-wrap: wrap;
}

body.home section.featured .featured-book {
    margin-top: 4rem;
    max-width: 42rem;
}

body.home section.featured .featured-book h3 {
    font-weight: 700;
}

body.home section.featured .featured-book div.text {
    margin-left: 0;
}

body.home section.featured .featured-book .button {
    background-color: #f6b935;
}

body.home section.featured .featured-book .button:hover {
    background-color: #eda60b;
}

div.featured-item::after {
    clear: both;
    content: "";
    display: block;
}

div.featured-book div.img {
    text-align: center;
}

div.featured-book div.img img {
    max-width: 180px;
}

div.featured-book div.text p {
    margin-bottom: 2rem;
}

@media screen and (min-width: 768px) {
    body.home section.featured {
        margin-bottom: 8rem;
        padding-left: 2rem;
        padding-right: 2rem;
    }

    body.home div.featured-book div.img {
        width: calc(41.66667% - 1.41667rem);
        float: left;
        margin-left: 1rem;
        text-align: left;
    }

    body.home div.featured-book div.text {
        width: calc(58.33333% - 1.58333rem);
        float: left;
        margin-left: 1rem;
    }

    body.home .featured div.featured-book img {
        max-width: 220px;
    }
}

body.home aside.sidebar::after {
    clear: both;
    content: "";
    display: block;
}

body.home aside.sidebar .widget + .widget {
    border: none;
    padding-top: 0;
    margin-top: 0;
}

@media screen and (min-width: 1100px) {
    body.home section.featured {
        width: calc(75% - 1.75rem);
        float: left;
        margin-left: 1rem;
        padding-left: 0;
        padding-right: 0;
    }

    body.home aside.sidebar {
        width: calc(25% - 1.25rem);
        float: left;
        background: 0 0 !important;
        border-left: 1px solid #ffd4da;
        margin-left: 0;
        margin-bottom: 6rem;
        padding-top: 0 !important;
        padding-left: 2rem;
    }

    body.home aside.sidebar div.widget {
        width: 100%;
        margin-left: 0;
    }

    body.home .site-main aside.sidebar {
        padding-left: 2rem;
        padding-right: 0;
    }

    body.home .site-main aside.sidebar .social-links-list h3 {
        margin-top: 0;
    }

    body.home .widget.news {
        display: block;
    }

    body.home .social-links-list a {
        display: block;
        padding: .5rem 0;
    }

    body.home .social-links-list a + a {
        border-top: 1px solid #f8f8f8;
    }
}

body.page article::after {
    clear: both;
    content: "";
    display: block;
}

body.page .entry-header {
    padding: 2rem;
    text-align: center;
}

body.page .entry-header h1 {
    line-height: 1em;
}

aside.footer-widgets, body.home aside.sidebar {
    background: #f8f8f8;
    padding: 2rem 3rem;
}

aside.footer-widgets .container::after, body.home aside.sidebar .container::after {
    clear: both;
    content: "";
    display: block;
}

aside.footer-widgets .widget.social-links-list a + a, body.home aside.sidebar .widget.social-links-list a + a {
    border-color: #dfdfdf;
}

aside.footer-widgets .social-links-list a, body.home aside.sidebar .social-links-list a {
    display: block;
    padding: .5rem 0;
}

aside.footer-widgets .social-links-list a + a, body.home aside.sidebar .social-links-list a + a {
    border-top: 1px solid #f8f8f8;
}

aside.footer-widgets .ctf-item p, body.home aside.sidebar .ctf-item p {
    font-size: .875rem;
    line-height: 1.5em;
}

aside.footer-widgets .ctf-item:last-of-type, body.home aside.sidebar .ctf-item:last-of-type {
    display: none;
}

@media screen and (min-width: 768px) {
    body.page .entry-header {
        padding-top: 5rem;
    }

    aside.footer-widgets, body.home aside.sidebar {
        padding-left: 0;
        padding-right: 0;
    }

    aside.footer-widgets .widget, body.home aside.sidebar .widget {
        width: calc(33.33333% - 2.66667rem);
        float: left;
        margin-left: 2rem;
    }
}

@media screen and (min-width: 1100px) {
    body.page .entry-content {
        padding-left: 2rem;
        padding-right: 2rem;
    }

    aside.footer-widgets .widget, body.home aside.sidebar .widget {
        width: calc(33.33333% - 8rem);
        float: left;
        margin-left: 6rem;
    }
}

body.page-template-default .entry-content {
    padding-left: 1rem;
    padding-right: 1rem;
    padding-bottom: 6rem;
}

@media screen and (min-width: 1100px) {
    body.page-template-default .entry-content {
        width: calc(83.33333% - 1.83333rem);
        float: left;
        margin-left: 1rem;
        margin-left: calc(8.33333% - 1.08333rem + 2rem);
        padding-left: 2rem;
        padding-right: 2rem;
    }
}

body.page-template-about-page .entry-content {
    padding-left: 2rem;
    padding-right: 2rem;
    padding-bottom: 3rem;
}

body.page-template-about-page .primary-content p {
    line-height: 1.5em;
}

body.page-template-about-page .primary-content img {
    margin-bottom: 2rem;
}

body.page-template-about-page div.team {
    margin-left: -1rem;
    margin-right: -1rem;
    width: calc(100% + 2rem);
}

body.page-template-about-page div.team::after {
    clear: both;
    content: "";
    display: block;
}

body.page-template-about-page div.team h3 {
    margin-bottom: 2rem;
    text-align: center;
}

body.page-template-about-page div.team p {
    font-size: 1rem;
    overflow: visible;
    white-space: unset;
}

body.page-template-about-page div.team p:empty {
    display: none;
}

body.page-template-contact-page div.input-group::after, body.page-template-contact-page div.primary-content::after {
    display: block;
    content: "";
    clear: both;
}

body.page-template-about-page .tile-container {
    display: flex;
    flex-wrap: wrap;
}

body.page-template-about-page .tile {
    margin-bottom: 3rem;
    max-width: calc(50% - 10px);
    margin-left: 10px;
}

@media screen and (min-width: 768px) {
    body.page-template-about-page .entry-content {
        padding-bottom: 6rem;

    }

    body.page-template-about-page .primary-content p {
        font-size: 1.25rem;
    }

    body.page-template-about-page .primary-content img {
        margin-bottom: 0;
    }

    body.page-template-about-page .tile {
        margin-bottom: 3rem;
        max-width: calc(33% - 10px);
        margin-left: 10px;
    }
}

@media screen and (min-width: 1100px) {
    body.page-template-about-page .entry-content {
        width: calc(83.33333% - 1.83333rem);
        float: left;
        margin-left: 1rem;
        margin-left: calc(8.33333% - 1.08333rem + 2rem);
    }

    body.page-template-about-page .tile {
        width: calc(25% - 1.25rem);
        float: left;
        margin-left: 1rem;
    }
}

body.page-template-contact-page .entry-header {
    padding-bottom: .5rem;
}

body.page-template-contact-page div.contact-info, body.page-template-contact-page div.primary-content {
    padding-left: 1rem;
    padding-right: 1rem;
}

body.page-template-contact-page div.primary-content {
    margin-bottom: 6rem;
}

body.page-template-contact-page div.primary-content .heading {
    text-align: center;
    margin-bottom: 2rem;
}

body.page-template-contact-page div.primary-content .heading p {
    color: #000;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.375em;
}

body.page-template-contact-page div.primary-content .h1 {
    font-weight: 700;
    line-height: 1.25em;
    margin-top: 0;
}

body.page-template-contact-page div.primary-content input[type=submit] {
    width: 100%
}

body.page-template-contact-page div.input-group input {
    margin-bottom: 1rem;
}

body.page-template-contact-page div.input-group input:last-of-type {
    margin-bottom: 0;
}

body.page-template-contact-page div.input-group br {
    display: none;
}

body.page-template-contact-page div.contact-info {
    background: #f8f8f8;
    padding-top: 2rem;
    padding-bottom: 4rem;
}

body.page-template-contact-page div.contact-info::after {
    clear: both;
    content: "";
    display: block;
}

body.page-template-contact-page div.contact-info h3, body.page-template-contact-page div.contact-info strong {
    color: #4f5256;
}

body.page-template-contact-page div.contact-info a {
    color: #fd0a28;
}

body.page-template-contact-page div.contact-info a:hover {
    color: #d2021b;
}

body.page-template-contact-page div.contact-info ul {
    list-style-type: none;
    margin-left: 0;
    padding-left: .75em;
    text-indent: -.75em;
}

body.page-template-contact-page div.contact-info ul li:before {
    content: '–';
    padding-right: .5em;
}

body.page-template-contact-page div.contact-info ul li + li {
    margin-top: .75em;
}

body.page-template-contact-page div.contact-info div.last {
    margin-top: 4rem;
}

div.wpcf7-validation-errors {
    border-color: #f6b935;
}

div.wpcf7-mail-sent-ok {
    border-color: #7ed321;
}

@media screen and (min-width: 768px) {
    body.page-template-contact-page .entry-header {
        padding-bottom: 4rem;
    }

    body.page-template-contact-page div.contact-info, body.page-template-contact-page div.primary-content {
        padding-left: 8rem;
        padding-right: 8rem;
    }

    body.page-template-contact-page div.primary-content .heading {
        margin-bottom: 4rem;
    }

    body.page-template-contact-page div.primary-content .heading p {
        font-size: 2.25rem;
        margin-top: 0;
    }

    body.page-template-contact-page div.input-group {
        margin-left: -1rem;
        margin-right: -1rem;
        width: calc(100% + 2rem);
    }

    body.page-template-contact-page div.input-group input {
        width: calc(50% - 1.5rem);
        float: left;
        margin-left: 1rem;
    }

    body.page-template-contact-page div.input-group input:last-of-type {
        width: calc(100% - 2rem);
        float: left;
        margin-left: 1rem;
    }

    body.page-template-contact-page div.contact-info {
        padding-top: 4rem;
    }
}

@media screen and (min-width: 1100px) {
    body.page-template-contact-page div.contact-info div.last, body.page-template-contact-page div.primary-content .heading p {
        margin-top: 0;
    }

    body.page-template-contact-page div.contact-info, body.page-template-contact-page div.primary-content {
        padding-left: 0;
        padding-right: 0;
    }

    body.page-template-contact-page div.primary-content .heading, body.page-template-contact-page div.primary-content form {
        width: calc(50% - 1.5rem);
        float: left;
        margin-left: 1rem;
    }

    body.page-template-contact-page div.primary-content .heading {
        margin-bottom: 0;
        padding-right: 2rem;
        text-align: left;
    }

    body.page-template-contact-page div.contact-info .container > div {
        width: calc(50% - 3.75rem);
        float: left;
        margin-left: 2.5rem;
    }
}

div.expandable {
    padding-left: 2rem;
}

div.expandable .content {
    transition: all .25s;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
}

div.expandable h3 {
    font-size: 1rem;
}

div.expandable a.expand .icon {
    color: #fd0a28;
    margin-right: .5em;
    position: absolute;
    left: -2rem;
    top: .125em;
}

div.expandable.expanded .content {
    max-height: 1000rem;
    opacity: 1;
}

@media screen and (min-width: 768px) {
    div.expandable {
        padding-left: 4rem;
    }

    div.expandable h3 {
        font-size: 1.5rem;
    }

    div.expandable a.expand .icon {
        left: -3.5rem;
    }
}

body.error404 .site-content {
    margin-bottom: 6rem;
    padding-left: 2rem;
    padding-right: 2rem;
}

body.error404 .site-content::after {
    clear: both;
    content: "";
    display: block;
}

body.error404 .page-title {
    line-height: 1em;
}

body.archive #main::after, body.search-results #main::after {
    clear: both;
    content: "";
    display: block;
}

body.archive .page-header, body.search-results .page-header {
    margin-left: -1rem;
    margin-right: -1rem;
    width: calc(100% + 2rem);
}

body.archive .page-header .search-form, body.search-results .page-header .search-form {
    position: relative;
}

body.archive .page-header .search-form button, body.search-results .page-header .search-form button {
    font-size: 1.5rem;
    line-height: .65em;
    height: 3rem;
    width: 3rem;
    padding: 0;
    position: absolute;
    right: 0;
    top: 0;
}

body.post-type-archive-books .page-header, body.search-results .page-header, body.tax-genres .page-header, body.tax-index .page-header, div.genre-select {
    position: relative;
}

body.archive .page-header .search-form input[type=search], body.search-results .page-header .search-form input[type=search] {
    padding-right: 3rem;
}

body.archive .page-header .search-form input[type=search]::-webkit-search-cancel-button, body.archive .page-header .search-form input[type=search]::-webkit-search-decoration, body.archive .page-header .search-form input[type=search]::-webkit-search-results-button, body.archive .page-header .search-form input[type=search]::-webkit-search-results-decoration, body.search-results .page-header .search-form input[type=search]::-webkit-search-cancel-button, body.search-results .page-header .search-form input[type=search]::-webkit-search-decoration, body.search-results .page-header .search-form input[type=search]::-webkit-search-results-button, body.search-results .page-header .search-form input[type=search]::-webkit-search-results-decoration {
    display: none;
}

body.archive .slick-carousel, body.search-results .slick-carousel {
    margin-left: -2rem;
    margin-right: -2rem;
}

body.archive .slick-carousel .tile, body.search-results .slick-carousel .tile {
    margin-left: 0;
    padding-left: .5rem;
    padding-right: .5rem;
}

body.archive .slick-arrow, body.search-results .slick-arrow {
    transform: translateY(calc(-50% + -1.5rem));
}

body.archive .site-main, body.search-results .site-main {
    padding-left: 2rem;
    padding-right: 2rem;
}

body.archive div.list, body.archive section.featured-items, body.search-results div.list, body.search-results section.featured-items {
    padding-top: 2rem;
    padding-bottom: 2rem;
}

body.archive div.list h2, body.archive section.featured-items h2, body.search-results div.list h2, body.search-results section.featured-items h2 {
    margin-bottom: 2rem;
    text-align: center;
}

body.archive section.featured-items, body.search-results section.featured-items {
    border-top: 1px solid #ffd4da;
    margin-top: 1rem;
}

body.archive section.featured-items::after, body.search-results section.featured-items::after {
    clear: both;
    content: "";
    display: block;
}

body.archive .tile, body.search-results .tile {
    width: calc(50% - 1.5rem);
    float: left;
    margin-left: 1rem;
}

body.archive div.list, body.search-results div.list {
    background: #fff;
    padding-left: .5rem;
    padding-right: .5rem;
}

body.archive div.list .tile, body.search-results div.list .tile {
    margin-bottom: 2rem;
}

body.archive div.list .alm-reveal, body.archive div.list .container, body.search-results div.list .alm-reveal, body.search-results div.list .container {
    flex-wrap: wrap;
}

body.archive div.list .alm-reveal::after, body.archive div.list .container::after, body.search-results div.list .alm-reveal::after, body.search-results div.list .container::after {
    clear: both;
    content: "";
    display: block;
}

.lastname-index {
    list-style-type: none;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 0;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-top: 1rem;
    text-align: left;
    text-transform: uppercase;
    width: 100%
}

.lastname-index li {
    display: inline;
}

.lastname-index li {
    margin-right: .3em;
}

.lastname-index a {
    color: #9b9fa3;
    font-size: 14px;
}

.lastname-index a:hover {
    color: #000;
}

.ajax-load-more-wrap {
    margin-left: auto;
    margin-right: auto;
}

@media screen and (min-width: 768px) {
    body.archive .slick-carousel, body.search-results .slick-carousel {
        margin-left: 0;
        margin-right: 0;
    }

    body.archive .slick-carousel .tile, body.search-results .slick-carousel .tile {
        padding: 0;
        margin-left: 1rem;
    }

    body.archive .site-main, body.archive div.list, body.search-results .site-main, body.search-results div.list {
        padding-left: 3rem;
        padding-right: 3rem;
    }

    body.archive .tile, body.search-results .tile {
        width: calc(33.33333% - 1.33333rem);
        float: left;
        margin-left: 1rem;
    }

    body.archive div.list .tile, body.search-results div.list .tile {
        margin-bottom: 3rem;
    }

    .lastname-index {
        margin-bottom: 1rem;
        padding-top: 2rem;
        padding-left: 1rem;
        padding-right: 1rem;
    }
}

body.post-type-archive-authors .tile img, body.post-type-archive-books .page-header .search-form, body.search-results .page-header .search-form, body.tax-alpha .tile img, body.tax-genres .page-header .search-form, body.tax-index .page-header .search-form {
    margin-bottom: 1rem;
}

body.post-type-archive-authors .page-header .search-form button, body.tax-alpha .page-header .search-form button {
    background-color: #7ed321;
}

body.post-type-archive-authors .page-header .search-form button:hover, body.tax-alpha .page-header .search-form button:hover {
    background-color: #64a71a;
}

body.post-type-archive-authors section.featured-items, body.tax-alpha section.featured-items {
    border-color: #c8f09d;
}

@media screen and (min-width: 1100px) {
    body.archive .site-main, body.archive div.list, body.search-results .site-main, body.search-results div.list {
        padding-left: 0;
        padding-right: 0;
    }

    body.archive section.featured-items, body.search-results section.featured-items {
        margin-top: 2rem;
    }

    body.archive .tile, body.search-results .tile {
        width: calc(25% - 1.25rem);
        float: left;
        margin-left: 1rem;
    }

    .lastname-index {
        width: calc(50% - 1.5rem);
        float: left;
        display: inline-block;
        margin-left: 0;
        padding: 0;
        text-align: left;
    }

    body.post-type-archive-authors .page-header::after, body.tax-alpha .page-header::after {
        clear: both;
        content: "";
        display: block;
    }

    body.post-type-archive-authors .page-header .search-form, body.tax-alpha .page-header .search-form {
        width: calc(33.33333% - 1.33333rem);
        float: left;
        margin-left: 1rem;
    }

    body.post-type-archive-authors .lastname-index, body.tax-alpha .lastname-index {
        width: calc(58.33333% - 1.58333rem);
        margin-left: 1rem;
        float: right;
        margin-right: 1rem;
    }

    body.post-type-archive-authors .tile img, body.tax-alpha .tile img {
        max-width: 220px;
    }
}

body.post-type-archive-books .page-header .button, body.search-results .page-header .button, body.tax-genres .page-header .button, body.tax-index .page-header .button {
    background-color: #f6b935;
}

body.post-type-archive-books .page-header .button:hover, body.search-results .page-header .button:hover, body.tax-genres .page-header .button:hover, body.tax-index .page-header .button:hover {
    background-color: #eda60b;
}

body.post-type-archive-books .tile, body.search-results .tile, body.tax-genres .tile, body.tax-index .tile {
    width: calc(50% - 1.5rem);
    float: left;
    margin-left: 1rem;
}

body.post-type-archive-books section.featured-items, body.search-results section.featured-items, body.tax-genres section.featured-items, body.tax-index section.featured-items {
    border-color: #f6b935;
}

div.genre-select .button {
    display: inline-block;
    height: 3rem;
    line-height: 1rem;
    padding: 1rem 3.5rem 1rem 1.5rem;
    position: relative;
    width: 100%
}

div.genre-select .button .icon {
    font-size: 1.25rem;
    margin-left: .75em;
    position: absolute;
    right: 1em;
    top: .65em;
}

div.genre-select .genre-list {
    -moz-transition: all .25s;
    -o-transition: all .25s;
    -webkit-transition: all .25s;
    transition: all .25s;
    -moz-transform: translateY(calc(100% - 4rem));
    -ms-transform: translateY(calc(100% - 4rem));
    -webkit-transform: translateY(calc(100% - 4rem));
    transform: translateY(calc(100% - 4rem));
    background: #f8f8f8;
    left: 0;
    bottom: -3rem;
    opacity: 0;
    padding: 1rem 2rem;
    pointer-events: none;
    position: absolute;
    z-index: 2;
}

div.genre-select .genre-list .button {
    background: 0 0;
    border: 1px solid #f6b935;
    color: #4f5256;
    line-height: 1.25em;
    margin-bottom: 1rem;
}

div.genre-select .genre-list .button:active, div.genre-select .genre-list .button:hover {
    background: #f6b935;
    color: #fff;
}

div.genre-select.expanded > .button {
    background: #81858a;
}

div.genre-select.expanded .icon {
    font-size: 1rem;
    top: 1em;
    right: 1.375em;
}

div.genre-select.expanded .genre-list {
    -moz-transform: translateY(calc(100% - 2rem));
    -ms-transform: translateY(calc(100% - 2rem));
    -webkit-transform: translateY(calc(100% - 2rem));
    transform: translateY(calc(100% - 2rem));
    opacity: 1;
    pointer-events: all;
}

div.genre-select.expanded .genre-list.new-genre-list {
    padding: 1rem 0;
    background-color: transparent;
}

div.genre-select.expanded .genre-list.new-genre-list .nonfiction {
    display: inline-block;
    width: 100%;
    padding: 1rem;
    background-color: #f3f3f2;
}

div.genre-select.expanded .genre-list.new-genre-list .fiction {
    display: inline-block;
    width: 100%;
    padding: 1rem;
    background-color: #f9f8f8;
}

div.genre-select.expanded .genre-list.new-genre-list .button {
    width: calc(100% - 1.25rem);
    float: left;
    margin-left: 1rem;
    display: block;
    text-align: center;
    overflow: hidden;
    padding: 1rem .3rem;
}

div.genre-select.expanded .genre-list.new-genre-list h3 {
    color: #4f5256;
    font-size: 1.1rem;
    padding: .5rem 1.5rem;
    margin-top: 0;
}

#backBtn {
    display: none;
    position: fixed;
    bottom: 20px;
    right: 30px;
    z-index: 99;
    border: none;
    border-radius: 10px;
    background-image: url(../img/back-to-top.svg);
    height: 50px;
    width: 50px;
    padding: 0;
    background-repeat: no-repeat;
}

#backBtn:hover {
    background-color: #555;
}

@media screen and (min-width: 768px) {
    div.genre-select .genre-list {
        bottom: -2rem;
    }

    body.post-type-archive-books .tile, body.search-results .tile, body.tax-genres .tile, body.tax-index .tile, div.genre-select .genre-list .button {
        width: calc(25% - 1.25rem);
        float: left;
        margin-left: 1rem;
    }

    div.genre-select.expanded .genre-list.new-genre-list .button {
        width: calc(50% - 1.25rem);
    }

    div.genre-select.expanded .genre-list.new-genre-list .fiction, div.genre-select.expanded .genre-list.new-genre-list .nonfiction {
        width: 50%
    }
}

@media screen and (min-width: 1100px) {
    body.post-type-archive-books .page-header .search-form, body.search-results .page-header .search-form, body.tax-genres .page-header .search-form, body.tax-index .page-header .search-form {
        margin-bottom: 0;
    }

    div.genre-select {
        position: static;
    }

    body.post-type-archive-books .page-header .genre-select, body.post-type-archive-books .page-header .search-form, body.search-results .page-header .genre-select, body.search-results .page-header .search-form, body.tax-genres .page-header .genre-select, body.tax-genres .page-header .search-form, body.tax-index .page-header .genre-select, body.tax-index .page-header .search-form {
        width: calc(25% - 1.25rem);
        float: left;
        margin-left: 1rem;
    }

    body.post-type-archive-books .tile, body.search-results .tile, body.tax-genres .tile, body.tax-index .tile {
        width: calc(16.66667% - 1.16667rem);
        float: left;
        margin-left: 1rem;
    }

    div.genre-select .button {
        width: auto;
    }
}

body.search-no-results h3.page-title, body.search-results h3.page-title {
    border-top: 1px solid #f6b935;
    margin-top: 2rem;
}

body.search-no-results div.no-results, body.search-results div.no-results {
    min-height: 8rem;
    text-align: center;
}

body.search-no-results div.no-results h2, body.search-results div.no-results h2 {
    margin: 4rem auto 2rem;
}

body.search-no-results div.no-results p, body.search-results div.no-results p {
    margin: 2rem auto 8rem;
}

body.single .go-back {
    margin-bottom: 4rem;
    text-align: center;
}

body.single .entry-content {
    background: #f4f4fd;
    margin-bottom: 4rem;
    padding-top: 4rem;
    padding-bottom: 6rem;
}

body.single .entry-content::after {
    clear: both;
    content: "";
    display: block;
}

body.single .entry-content h1 {
    font-size: 1.5rem;
    line-height: 1.25em;
    margin-top: .25rem;
}

body.single .entry-content h1 span {
    display: block;
    font-weight: 400;
}

body.single div.featured-image {
    margin-bottom: 4rem;
    text-align: center;
}

body.single div.featured-image img {
    max-width: 140px;
}

body.single div.related-content {
    margin-bottom: 2rem;
}

body.single div.related-content::after {
    clear: both;
    content: "";
    display: block;
}

body.single div.related-books > div {
    display: flex;
    flex-wrap: wrap;
}

body.single section.featured {
    width: calc(100% - 2rem);
    float: left;
    margin-left: 1rem;
    margin-top: 4rem;
}

body.single section.featured h3 {
    margin-bottom: 3rem;
}

body.single .social-links-list {
    padding-top: 3rem;
    padding-bottom: 2rem;
}

body.single .social-links-list::after {
    clear: both;
    content: "";
    display: block;
}

body.single .social-links-list a {
    display: block;
    margin-bottom: 1rem;
    margin-left: 0;
}

body.single .social-links-list h3 {
    margin-bottom: 1em;
    margin-top: 0;
}

body.single div.description {
    padding-left: 1rem;
    padding-right: 1rem;
    position: relative;
}

body.single div.description h1, body.single div.description h2 {
    font-size: 36px;
    margin: 0;
    padding: 0;
}

body.single div.description .detais p {
    font-size: 18px;
    margin: 0 0 10px;
    padding: 0;
    color: #000;
}

body.single div.description .the-content {
    margin-top: 2rem;
}

body.single div.description .the-content-ellipsis {
    max-height: 380px;
    overflow: hidden;
}

body.single div.description .the-content-ellipsis-show {
    max-height: 150000px;
}

#read-more-button {
    position: relative;
    top: 164px;
    float: right;
    margin-right: 10px;
}

#gradient {
    display: none;
    background-color: red;
    position: absolute;
    z-index: 2;
    right: 0;
    bottom: 0;
    left: 0;
    height: 200px; /* adjust it to your needs */
    background: url(data:image/svg+xml;base64,alotofcodehere);
    background: -moz-linear-gradient(top, rgba(244, 244, 253, 0) 0%, rgba(244, 244, 253, 1) 70%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(244, 244, 253, 0)), color-stop(70%, rgba(244, 244, 253, 1)));
    background: -webkit-linear-gradient(top, rgba(244, 244, 253, 0) 0%, rgba(244, 244, 253, 1) 70%);
    background: -o-linear-gradient(top, rgba(244, 244, 253, 0) 0%, rgba(244, 244, 253, 1) 70%);
    background: -ms-linear-gradient(top, rgba(244, 244, 253, 0) 0%, rgba(244, 244, 253, 1) 70%);
    background: linear-gradient(to bottom, rgba(244, 244, 253, 0) 0%, rgba(244, 244, 253, 1) 70%);
}

​

@media only screen and (min-width: 768px) {
    body.single div.featured-image img {
        max-width: 220px;
    }

    body.single .social-links-list {
        padding-top: 2rem;
    }

    body.single .social-links-list a {
        width: calc(50% - 1.5rem);
        float: left;
        margin-left: 1rem;
    }

    body.single div.description {
        width: calc(66.66667% - 1.66667rem);
        float: left;
        margin-left: 1rem;
        margin-left: calc(16.66667% - 1.16667rem + 2rem);
        padding-left: 0;
        padding-right: 0;
    }
}

@media only screen and (min-width: 1100px) {
    body.single .go-back {
        margin-bottom: 6rem;
        text-align: left;
    }

    body.single div.description, body.single div.featured-image {
        width: calc(50% - 1.5rem);
        float: left;
        margin-left: 1rem;
    }

    body.single div.featured-image {
        margin-bottom: 0;
    }

    body.single div.featured-image img {
        max-width: none;
    }

    body.single section.featured {
        width: calc(66.66667% - 1.66667rem);
        float: left;
        margin-left: 1rem;
        border-right: 1px solid #ffd4da;
        margin-top: 0;
    }

    body.single aside.sidebar {
        width: calc(33.33333% - 1.33333rem);
        margin-left: 1rem;
        float: right;
    }

    body.single aside .social-links-list a {
        display: block;
        margin-bottom: 0;
        padding: .5rem 0;
        width: 100%
    }

    body.single aside .social-links-list a + a {
        border-top: 1px solid #f8f8f8;
    }
}

body.single-books article .button {
    background-color: #f6b935;
}

body.single-books article .button:hover {
    background-color: #eda60b;
}

body.single-books div.related-content {
    margin-bottom: 4rem;
}

body.single-books section.featured .related-author::after {
    clear: both;
    content: "";
    display: block;
}

body.single-books section.featured .related-author div.img {
    margin-left: 0;
}

body.single-books section.featured .related-author div.text {
    margin-top: 1rem;
}

body.single-books section.featured .related-author div.text p {
    margin-bottom: 2rem;
}

body.single-books section.featured .related-author h3 {
    font-weight: 700;
    margin: 0;
}

body.single-books .view-more {
    padding-top: 2rem;
    text-align: center;
    width: 100%
}

body.single-books .widget ul {
    background: #f4f4fd;
    padding: 1rem;
}

body.single-books .widget ul li {
    flex: 1;
    font-size: 80%;
    list-style-type: none;
}

body.single-books .widget ul li::after {
    clear: both;
    content: "";
    display: block;
}

body.single-books .widget ul li + li {
    margin-top: .66667rem;
}

body.single-books .widget ul .button {
    float: right;
    background-color: #fd0a28;
    margin-left: .5em;
}

body.single-books .widget ul .button:hover {
    background-color: #d2021b;
}

body.single-books .widget.reviews {
    margin-left: -1rem;
    margin-right: -1rem;
    width: calc(100% + 2rem);
    padding-left: 1rem;
    padding-right: 1rem;
}

body.single-books .widget.reviews::after {
    clear: both;
    content: "";
    display: block;
}

body.single-books .widget.reviews blockquote {
    border-bottom: 2px solid #f8f8f8;
    margin-right: 0;
    margin-bottom: 0;
    padding-bottom: 1rem;
}

body.single-books .widget.reviews blockquote:nth-of-type(odd) {
    font-size: 1rem;
    line-height: 1.375em;
}

@media only screen and (min-width: 768px) {
    body.single-books section.featured .related-author div.img {
        width: calc(41.66667% - 1.41667rem);
        float: left;
        margin-left: 1rem;
    }

    body.single-books section.featured .related-author div.text {
        width: calc(58.33333% - 1.58333rem);
        float: left;
        margin-left: 1rem;
        margin-top: 0;
    }

    body.single-books .related-author, body.single-books .social-links-list, body.single-books .widget.purchase, body.single-books .widget.reviews h3, body.single-books div.related-books {
        margin-left: 2rem;
        margin-right: 2rem;
    }

    body.single-books .widget ul {
        display: flex;
    }

    body.single-books .widget ul li + li {
        margin-top: 0;
    }

    body.single-books .widget ul .button {
        float: left;
    }

    body.single-books .widget.reviews {
        padding-left: 0;
        padding-right: 0;
    }

    body.single-books .widget.reviews blockquote {
        width: calc(33.33333% - 1.33333rem);
        float: left;
    }
}

@media only screen and (min-width: 1100px) {
    body.single-books .widget ul {
        display: block;
    }

    body.single-books .widget ul li + li {
        margin-top: .66667rem;
    }

    body.single-books .widget ul .button {
        float: right;
    }

    body.single-books .related-author, body.single-books .social-links-list, body.single-books .widget.purchase, body.single-books .widget.reviews h3, body.single-books div.related-books {
        margin-left: 0;
        margin-right: 0;
    }

    body.single-books .widget.reviews blockquote {
        width: calc(100% - 2rem);
        float: left;
    }
}

body.single-authors .entry-content {
    margin-bottom: 0;
}

body.single-authors .related-content {
    display: flex;
    flex-wrap: wrap;
}

body.single-authors aside.sidebar {
    order: 2;
}
#sb_instagram #sbi_load {
    margin-left: -10px;
    margin-right: -10px;
}


@media screen and (min-width: 768px) {
    body.single-authors .related-content {
        margin-bottom: 4rem;
        padding-left: 2rem;
        padding-right: 2rem;
    }
}

@media screen and (min-width: 1100px) {
    body.single-authors .related-content {
        display: block;
        padding-left: 0;
        padding-right: 0;
    }

    body.single-authors .entry-content {
        margin-bottom: 4rem;
    }

    .alm-reveal .books-tile img {
        height: 222px;
    }
}