/* * {
    margin: 0;
    padding: 0
} */

html {
    font-size: 9px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

svg,
canvas {
    -ms-touch-action: none;
    touch-action: none
}

body {
    font-family: samim;
    font-weight: 400;
    font-size: 1.8rem;
    line-height: 2.3rem
}

img {
    max-width: 100%;
    height: auto;
    border: 0
}

h1,
h2,
h3,
h4,
h5 {
    margin-bottom: .1rem;
    font-weight: 600
}

h1 {
    font-size: 2.8rem;
    margin-bottom: .5rem;
    font-weight: 800
}

h2 {
    font-size: 2.2rem;
    margin-bottom: .3rem;
    font-weight: 700
}

h3 {
    font-size: 2rem
}

h4 {
    font-size: 1.9rem
}

h5 {
    font-size: 1.8rem
}

p {
    margin-bottom: 1rem
}

a:link,
a:visited,
a:hover,
a:active {
    color: #000
}

a:hover {
    color: red
}

a:active {
    color: orange
}

ul {
    margin-left: 2em;
    margin-bottom: 1em
}

ol {
    margin-left: 2em;
    margin-bottom: 1em
}

hr.front_page {
    border: 2px dashed #000;
    margin-top: 3rem;
    margin-bottom: 3rem
}

div.front_page_divider {
    margin-top: 3rem;
    margin-bottom: 3rem
}

#wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

#left_column {
    width: 10%;
    display: none;
    padding: .8rem
}

#left_column .title {
    text-align: center;
    font-size: 1.2rem;
    line-height: 1.2rem
}

#left_gutter {
    width: 2%;
    color: #fff
}

#middle_column {
    width: 96%
}

#right_gutter {
    width: 2%;
    color: #fff
}

#right_column {
    min-width: 20%;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    display: none;
    text-align: left;
    min-height: 700px
}

#right_column .ad_text {
    font-size: 1.2rem;
    padding-top: .5rem
}

#ad_top {
    text-align: center;
    min-height: 60px;
    font-size: 1rem;
    margin-bottom: 1rem
}

#top_navigation {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    margin-top: 1rem;
    margin-bottom: .5rem
}

#top_navigation .logo {
    text-align: left;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1
}

#top_navigation .item {
    margin-left: .5rem
}

#sub_navigation_side {
    font-size: 1.7rem;
    line-height: 1.8rem
}

#sub_navigation_side a {
    display: inline-block;
    min-width: 9rem;
    width: 100%;
    margin-bottom: .6rem
}

#sub_navigation_middle .title {
    font-weight: 800;
    margin-right: .5rem
}

#sub_navigation_middle {
    font-size: 1.8rem;
    line-height: 1.9rem;
    padding: 0;
    margin: 0;
    margin-bottom: 1rem
}

#sub_navigation_middle li {
    display: inline-block;
    margin-bottom: .5rem;
    list-style: none
}

#sub_navigation_middle a {
    display: inline-block;
    margin-right: 1rem
}

#promotion_wrapper {
    margin-top: 3rem;
    margin-bottom: 3rem
}

#promotion {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

#promotion .item {
    -webkit-box-flex: 1;
    -ms-flex: auto;
    flex: auto;
    width: 20%;
    text-align: center;
    border-radius: .8rem;
    border: .2rem solid;
    padding: 1.5rem;
    margin: .3rem
}

#promotion a {
    font-weight: 700;
    text-decoration: none
}

#offstage {
    margin-top: 2rem;
    margin-bottom: 2rem
}

#offstage .offstage_comic {
    text-align: center
}

#home_intro_copy {
    margin-top: 2rem;
    margin-bottom: 2rem
}

#home_body_copy {
    margin-top: 2rem;
    margin-bottom: 2rem
}

#grid_container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

#grid_container .item {
    -webkit-box-flex: 1;
    -ms-flex: auto;
    flex: auto;
    width: 40%;
    text-align: center;
    border-radius: .8rem;
    border: .2rem solid;
    padding: 1.5rem;
    margin: .3rem
}

#grid_container a {
    font-size: 2.2rem;
    line-height: 2.3rem;
    font-weight: 700;
    text-decoration: none
}

#grid_container .title {
    font-family: samim;
    margin-top: 1rem
}

#grid_container .board {
    border-radius: .2rem;
    border: .2rem solid;
    padding-top: 8rem;
    padding-bottom: 8rem
}

#grid_container .board a {
    font-size: 1.8rem;
    line-height: 2rem
}

#grid_container_left_column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

#grid_container_left_column .item {
    -webkit-box-flex: 1;
    -ms-flex: auto;
    flex: auto;
    text-align: center;
    padding: .5rem;
    border-radius: .8rem;
    border: .2rem solid;
    padding: 1rem;
    margin: .3rem
}

#grid_container_left_column a {
    font-family: samim;
    font-size: 1.6rem;
    line-height: 1.8rem;
    font-weight: 800;
    text-decoration: none
}

#search_header {
    margin-top: 2rem;
    margin-bottom: 2rem;
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

#search_header .search_main {
    display: inline-block;
    width: 250px
}

#search_header .search_query_results {
    font-weight: 700;
    color: #234d61
}

#form_search input[type=search] {
    width: 80%;
    padding: .5rem;
    font-size: 1.6rem;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #fff
}

#form_search button {
    /* float: right; */
    height: 32px;
    width: 15%;
    padding: 0;
    background-color: #010313;
    border: none;
    color: #fff;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    cursor: pointer;
    text-transform: uppercase;
    font-size: 1rem;
    border-radius: .5rem
}

.book_shop_image_divider {
    margin-top: 5rem;
    margin-bottom: 3rem
}

.book_shop_description {
    margin-top: 4rem;
    margin-bottom: 1rem
}

.book_shop_call_to_action {
    text-align: center;
    padding: .5rem;
    border-radius: .8rem;
    border: .2rem solid;
    padding: 1rem;
    margin: .3rem;
    background-color: #ffb000;
    margin-bottom: 3rem
}

.internal_promotion_wrapper {
    margin-bottom: 2rem
}

.internal_promotion {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.internal_promotion .item {
    -webkit-box-flex: 1;
    -ms-flex: auto;
    flex: auto;
    width: 50%;
    text-align: center;
    border-radius: .8rem;
    border: .2rem solid;
    padding: 2rem;
    margin: .3rem
}

.internal_promotion .description {
    text-align: left;
    padding: 1rem
}

#category_title {
    margin-top: 2rem
}

#game_container {
    display: none
}

#game {
    position: relative
}

/* #game_content {
    margin-top: 5rem
} */

#loading_div {
    padding-bottom: 10rem;
    text-align: center;
    font-weight: 700
}

#loading_div .action {
    font-size: 1.2rem
}

#settings {
    display: none;
    margin-top: 1rem;
    margin-bottom: 1rem
}

#settings_container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

#settings_container .item {
    margin-right: 1rem
}

#fullscreen_control {
    display: none;
    text-align: center
}

#fullscreen_link {
    display: inline-block;
    text-transform: uppercase;
    width: 14rem;
    border-color: #000;
    border-radius: 1rem;
    border: .2rem solid;
    padding: 1rem;
    font-size: 1.4rem
}

#mute_control {
    text-align: center
}

#mute_link {
    display: inline-block;
    text-transform: uppercase;
    width: 14rem;
    border-color: #000;
    border-radius: 1rem;
    border: .2rem solid;
    padding: 1rem;
    font-size: 1.4rem
}

.pagination {
    font-size: 1.6rem;
    font-weight: 700
}

h2.screen-reader-text {
    display: none
}

#footer {
    font-size: 1.4rem
}

#footer .footer-nav {
    font-size: 1.4rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

#footer .menu-item {
    display: inline-block;
    margin: 1rem;
    margin-bottom: 0;
    font-weight: 700
}

#footer .copyright {
    font-size: 1.1rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

#contact {
    padding-top: 10rem;
    padding-bottom: 10rem;
    text-align: center
}

#contact .section_margin {
    margin-top: 1rem
}

#cookie_consent_div {
    padding: 1.8rem;
    background-color: #333;
    color: #f0f8ff;
    font-family: samim;
    font-size: 1.6rem;
    display: none
}

#cookie_consent_div .item {
    margin-right: 2rem
}

#cookie_consent_div a {
    color: #f0f8ff
}

#dismiss_cookie {
    cursor: pointer;
    background-color: gold;
    color: #000;
    border-radius: .2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: .4em .8rem;
    font-size: 1.5rem;
    font-weight: 700;
    white-space: nowrap
}

@media all and (max-width:30em) {
    #ad_top {
        display: none
    }

    #loading_div {
        padding-top: 10rem
    }
}

@media all and (min-width:30em) {
    #grid_container .item {
        width: 20%
    }

    .ad_size {
        width: 468px;
        height: 60px
    }
}

@media all and (min-width:40em) {
    html {
        font-size: 10px
    }

    #grid_container a {
        font-size: 1.7rem;
        line-height: 1.8rem
    }

    #top_navigation img {
        max-height: 72px
    }

    #ad_top {
        height: 60px
    }

    #grid_container .item {
        width: 16%
    }

    #loading_div {
        padding-top: 10rem
    }
}

@media all and (min-width:55em) {
    #top_navigation img {
        max-height: 500px
    }

    #sub_navigation_middle {
        display: none
    }

    #left_column {
        display: inline
    }

    #right_column {
        display: inline
    }

    #right_gutter {
        width: 6%
    }

    #middle_column {
        width: 72%
    }

    #ad_top {
        display: none
    }

    #settings {
        display: inline
    }

    #fullscreen_control {
        display: block
    }

    #loading_div {
        padding-top: 20rem
    }

    .internal_promotion .description {
        padding: 2rem
    }
}

@media all and (min-width:65em) {
    #grid_container .item {
        width: 14%
    }
}

@media all and (min-width:75em) {
    #grid_container .item {
        width: 12%
    }
}

@media all and (min-width:90em) {
    #grid_container .item {
        width: 10%
    }
}

#privacy_terms ul {
    display: inline-block;
    text-align: left;
    margin-bottom: 1em;
    margin-left: 3em
}

#privacy_terms ol {
    display: inline-block;
    text-align: left;
    margin-top: .2em;
    margin-bottom: 1em;
    margin-left: 3em
}

#privacy_terms ol ul {
    list-style-type: disc
}

#privacy_terms li {
    line-height: 1.4em;
    margin-bottom: 1.1em
}

#privacy_terms a {
    word-break: break-all
}