/* Magnific Popup CSS */
.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #0b0b0b;
  opacity: 0.8;
  filter: alpha(opacity=80); }

.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden; }

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

.mfp-container:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle; }

.mfp-align-top .mfp-container:before {
  display: none; }

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045; }

.mfp-inline-holder .mfp-content, .mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto; }

.mfp-ajax-cur {
  cursor: progress; }

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -moz-zoom-out;
  cursor: -webkit-zoom-out;
  cursor: zoom-out; }

.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in; }

.mfp-auto-cursor .mfp-content {
  cursor: auto; }

.mfp-close, .mfp-arrow, .mfp-preloader, .mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none; }

.mfp-loading.mfp-figure {
  display: none; }

.mfp-hide {
  display: none !important; }

.mfp-preloader {
  color: #CCC;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 1044; }
  .mfp-preloader a {
    color: #CCC; }
    .mfp-preloader a:hover {
      color: #FFF; }

.mfp-s-ready .mfp-preloader {
  display: none; }

.mfp-s-error .mfp-content {
  display: none; }

button.mfp-close, button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  padding: 0;
  z-index: 1046;
  -webkit-box-shadow: none;
  box-shadow: none; }
button::-moz-focus-inner {
  padding: 0;
  border: 0; }

.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: 0.65;
  filter: alpha(opacity=65);
  padding: 0 0 18px 10px;
  color: #FFF;
  font-style: normal;
  font-size: 28px;
  font-family: Arial, Baskerville, monospace; }
  .mfp-close:hover, .mfp-close:focus {
    opacity: 1;
    filter: alpha(opacity=100); }
  .mfp-close:active {
    top: 1px; }

.mfp-close-btn-in .mfp-close {
  color: #333; }

.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {
  color: #FFF;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%; }

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #CCC;
  font-size: 12px;
  line-height: 18px;
  white-space: nowrap; }

.mfp-arrow {
  position: absolute;
  opacity: 0.65;
  filter: alpha(opacity=65);
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
  .mfp-arrow:active {
    margin-top: -54px; }
  .mfp-arrow:hover, .mfp-arrow:focus {
    opacity: 1;
    filter: alpha(opacity=100); }
  .mfp-arrow:before, .mfp-arrow:after, .mfp-arrow .mfp-b, .mfp-arrow .mfp-a {
    content: '';
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 35px;
    margin-left: 35px;
    border: medium inset transparent; }
  .mfp-arrow:after, .mfp-arrow .mfp-a {
    border-top-width: 13px;
    border-bottom-width: 13px;
    top: 8px; }
  .mfp-arrow:before, .mfp-arrow .mfp-b {
    border-top-width: 21px;
    border-bottom-width: 21px;
    opacity: 0.7; }

.mfp-arrow-left {
  left: 0; }
  .mfp-arrow-left:after, .mfp-arrow-left .mfp-a {
    border-right: 17px solid #FFF;
    margin-left: 31px; }
  .mfp-arrow-left:before, .mfp-arrow-left .mfp-b {
    margin-left: 25px;
    border-right: 27px solid #3F3F3F; }

.mfp-arrow-right {
  right: 0; }
  .mfp-arrow-right:after, .mfp-arrow-right .mfp-a {
    border-left: 17px solid #FFF;
    margin-left: 39px; }
  .mfp-arrow-right:before, .mfp-arrow-right .mfp-b {
    border-left: 27px solid #3F3F3F; }

.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px; }
  .mfp-iframe-holder .mfp-content {
    line-height: 0;
    width: 100%;
    max-width: 900px; }
  .mfp-iframe-holder .mfp-close {
    top: -40px; }

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%; }
  .mfp-iframe-scaler iframe {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #000; }

/* Main image in popup */
img.mfp-img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 40px 0 40px;
  margin: 0 auto; }

/* The shadow behind the image */
.mfp-figure {
  line-height: 0; }
  .mfp-figure:after {
    content: '';
    position: absolute;
    left: 0;
    top: 40px;
    bottom: 40px;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #444; }
  .mfp-figure small {
    color: #BDBDBD;
    display: block;
    font-size: 12px;
    line-height: 14px; }
  .mfp-figure figure {
    margin: 0; }

.mfp-bottom-bar {
  margin-top: -36px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto; }

.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #F3F3F3;
  word-wrap: break-word;
  padding-right: 36px; }

.mfp-image-holder .mfp-content {
  max-width: 100%; }

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer; }

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  /**
       * Remove all paddings around the image on small screen
       */
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0; }
  .mfp-img-mobile img.mfp-img {
    padding: 0; }
  .mfp-img-mobile .mfp-figure:after {
    top: 0;
    bottom: 0; }
  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px; }
  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    .mfp-img-mobile .mfp-bottom-bar:empty {
      padding: 0; }
  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px; }
  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    text-align: center;
    padding: 0; }
 }

@media all and (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    transform: scale(0.75); }

  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin: 0; }

  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin: 100%; }

  .mfp-container {
    padding-left: 6px;
    padding-right: 6px; }
 }

.mfp-ie7 .mfp-img {
  padding: 0; }
.mfp-ie7 .mfp-bottom-bar {
  width: 600px;
  left: 50%;
  margin-left: -300px;
  margin-top: 5px;
  padding-bottom: 5px; }
.mfp-ie7 .mfp-container {
  padding: 0; }
.mfp-ie7 .mfp-content {
  padding-top: 44px; }
.mfp-ie7 .mfp-close {
  top: 0;
  right: 0;
  padding-top: 0; }

@charset "UTF-8";
/**
 *  # Casterman main theme
 *
 *  This stylesheet is generated using Sass. http://sass-lang.com/
 *  Do not edit compiled CSS files (`.css` extension) directly,
 *  please refer to the corresponding `.scss` file instead.
 *
 *  @depends sass 3.4+ || node-sass 3.0+
 *      (It may build on previous versions as well, but hasn't been tested)
 */
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 300;
  src: url("/bundles/castermanstatic/fonts/open-sans-latin/300.woff2?v1") format("woff2"), url("/bundles/castermanstatic/fonts/open-sans-latin/300.woff?v1") format("woff"); }

@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 400;
  src: url("/bundles/castermanstatic/fonts/open-sans-latin/400.woff2?v1") format("woff2"), url("/bundles/castermanstatic/fonts/open-sans-latin/400.woff?v1") format("woff"); }

@font-face {
  font-family: "Open Sans";
  font-style: italic;
  font-weight: 400;
  src: url("/bundles/castermanstatic/fonts/open-sans-latin/400i.woff2?v1") format("woff2"), url("/bundles/castermanstatic/fonts/open-sans-latin/400i.woff?v1") format("woff"); }

@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 600;
  src: url("/bundles/castermanstatic/fonts/open-sans-latin/600.woff2?v1") format("woff2"), url("/bundles/castermanstatic/fonts/open-sans-latin/600.woff?v1") format("woff"); }

@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 700;
  src: url("/bundles/castermanstatic/fonts/open-sans-latin/700.woff2?v1") format("woff2"), url("/bundles/castermanstatic/fonts/open-sans-latin/700.woff?v1") format("woff"); }

@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 800;
  src: url("/bundles/castermanstatic/fonts/open-sans-latin/800.woff2?v1") format("woff2"), url("/bundles/castermanstatic/fonts/open-sans-latin/800.woff?v1") format("woff"); }

*, :before, :after {
  box-sizing: border-box; }

/* # normalize.css v3.0.2 | MIT License | git.io/normalize */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline; }

audio:not([controls]) {
  display: none;
  height: 0; }

[hidden],
template {
  display: none; }

a {
  background-color: transparent; }

a:active,
a:hover {
  outline: 0; }

abbr[title] {
  border-bottom: 1px dotted; }

b,
strong {
  font-weight: bold; }

dfn {
  font-style: italic; }

h1 {
  font-size: 2em;
  margin: 0.67em 0; }

mark {
  background: #ff0;
  color: #000; }

small {
  font-size: 80%; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

img {
  border: 0; }

svg:not(:root) {
  overflow: hidden; }

figure {
  margin: 1em 40px; }

hr {
  box-sizing: content-box;
  height: 0; }

pre {
  overflow: auto; }

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0; }

button {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer; }

button[disabled],
html input[disabled] {
  cursor: default; }

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

input {
  line-height: normal; }

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0; }

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box; }

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

legend {
  border: 0;
  padding: 0; }

textarea {
  overflow: auto; }

optgroup {
  font-weight: bold; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

h1, h2, h3, h4, h5, h6 {
  margin: 0;
  line-height: 1.2;
  font-weight: inherit; }

p, ul, ol, figure {
  margin: 0; }

ul, ol {
  list-style: none;
  padding-left: 0; }

strong, b {
  font-weight: 700;
  font-style: normal; }

em, i {
  font-weight: 400;
  font-style: italic; }

a {
  color: inherit;
  text-decoration: underline; }

button {
  padding: 0;
  border: none;
  background: none; }

img, iframe {
  max-width: 100%; }

.Icon {
  display: inline-block;
  vertical-align: middle;
  fill: currentColor; }

::-ms-clear {
  display: none; }

html {
  font-size: 125%; }

body {
  font-size: .7rem;
  font-family: "Open Sans", "Segoe UI", "Lucida Grande", Verdana, sans-serif;
  font-weight: 400;
  font-style: normal;
  color: #1d1d1b;
  background-color: #f1f1f1; }

@media (max-width: 759px) {
  .noMobile {
    display: none !important; } }

@media (min-width: 760px) and (max-width: 999px) {
  .noTablet {
    display: none !important; } }

@media (min-width: 1000px) {
  .noDesktop {
    display: none !important; } }

.spaceBefore--1 {
  margin-top: 10px; }

.spaceBefore--2 {
  margin-top: 20px; }

.spaceBefore--3 {
  margin-top: 30px; }

.spaceBefore--4 {
  margin-top: 40px; }

.spaceBefore--6 {
  margin-top: 60px; }

@media (max-width: 759px) {
  .spaceBefore--1 {
    margin-top: 8px; }
  .spaceBefore--2 {
    margin-top: 15px; }
  .spaceBefore--3 {
    margin-top: 22px; }
  .spaceBefore--4 {
    margin-top: 30px; }
  .spaceBefore--6 {
    margin-top: 40px; } }

.spaceAfter--1 {
  margin-bottom: 10px; }

.spaceAfter--2 {
  margin-bottom: 20px; }

.spaceAfter--3 {
  margin-bottom: 30px; }

.spaceAfter--4 {
  margin-bottom: 40px; }

.spaceAfter--6 {
  margin-bottom: 60px; }

@media (max-width: 759px) {
  .spaceAfter--1 {
    margin-bottom: 8px; }
  .spaceAfter--2 {
    margin-bottom: 15px; }
  .spaceAfter--3 {
    margin-bottom: 22px; }
  .spaceAfter--4 {
    margin-bottom: 30px; }
  .spaceAfter--6 {
    margin-bottom: 40px; } }

.spaceInside--1 {
  padding-top: 10px;
  padding-bottom: 10px; }

.spaceInside--2 {
  padding-top: 20px;
  padding-bottom: 20px; }

.spaceInside--3 {
  padding-top: 30px;
  padding-bottom: 30px; }

.spaceInside--4 {
  padding-top: 40px;
  padding-bottom: 40px; }

@media (max-width: 759px) {
  .spaceInside--1 {
    padding-top: 8px;
    padding-bottom: 8px; }
  .spaceInside--2 {
    padding-top: 15px;
    padding-bottom: 15px; }
  .spaceInside--3 {
    padding-top: 22px;
    padding-bottom: 22px; }
  .spaceInside--4 {
    padding-top: 30px;
    padding-bottom: 30px; } }

.spacer--1 {
  height: 10px; }

.spacer--2 {
  height: 20px; }

.spacer--3 {
  height: 30px; }

.spacer--4 {
  height: 40px; }

@media (max-width: 759px) {
  .spacer--1 {
    height: 8px; }
  .spacer--2 {
    height: 15px; }
  .spacer--3 {
    height: 22px; }
  .spacer--4 {
    height: 30px; } }

.separator {
  display: block;
  border-top: solid 1px #e9e9e9; }

.separatorBefore {
  border-top: solid 1px #e9e9e9; }

.separatorAfter {
  border-bottom: solid 1px #e9e9e9; }

[align="justify"],
.text-left,
.textLeft {
  text-align: left; }

.text-right,
.textRight {
  text-align: right; }

.text-center,
.textCenter {
  text-align: center; }

.visuallyHidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important; }

.hideOutline {
  outline: none !important; }

.Testing-wrap {
  padding: 40px 20px;
  background-color: #eee; }
  @media (max-width: 759px) {
    .Testing-wrap {
      padding: 30px 15px; } }

.Testing-block {
  max-width: 1000px;
  margin: 50px auto; }

.Testing-col {
  display: inline-block;
  vertical-align: top;
  max-width: 450px;
  margin: 20px; }

.Testing-blank {
  height: 100px;
  margin: 0;
  border: none; }

.Testing-dummy {
  display: block;
  padding: 40px;
  border: solid 1px rgba(0, 0, 0, 0.15);
  text-align: center;
  background-color: rgba(0, 0, 0, 0.05); }

.Heading--top {
  padding-top: 8px;
  padding-bottom: 24px;
  background-color: #fff; }
  @media (max-width: 999px) {
    .Heading--top {
      padding-bottom: 15px; } }

@media (min-width: 760px) {
  .Heading--2col {
    display: table;
    width: 100%; }
    .Heading--2col > * {
      display: table-cell;
      vertical-align: middle; }
    .Heading--2col > :first-child {
      width: 58%;
      padding-right: 20px; }
    .Heading--2col > :last-child {
      text-align: right; } }

.Heading-title {
  text-indent: -.05em; }

.Heading-title--xbig {
  font-weight: 800;
  font-style: normal;
  line-height: 1;
  font-size: 2.4rem;
  text-transform: uppercase; }
  @media (max-width: 759px) {
    .Heading-title--xbig {
      font-size: 1.8rem; } }
  .Heading--youth .Heading-title--xbig {
    font-weight: 300;
    font-style: normal;
    font-size: 2.6rem;
    text-transform: none;
    color: #f3530b; }
    @media (max-width: 759px) {
      .Heading--youth .Heading-title--xbig {
        font-size: 2rem; } }

.Heading-title--big {
  font-weight: 800;
  font-style: normal;
  font-size: 1.5rem;
  line-height: 1.2; }
  @media (max-width: 759px) {
    .Heading-title--big {
      font-size: 1.2rem; } }
  .Heading--comic .Heading-title--big {
    text-transform: uppercase; }
  .Heading--youth .Heading-title--big {
    font-weight: 400;
    font-style: normal;
    color: #f3530b; }

.Heading-title--main {
  font-weight: 800;
  font-style: normal;
  font-size: 1.9rem;
  line-height: 1.05; }
  @media (max-width: 759px) {
    .Heading-title--main {
      font-size: 1.6rem; } }
  .Heading--youth .Heading-title--main {
    font-weight: 300;
    font-style: normal;
    font-size: 2rem;
    color: #f3530b; }
    @media (max-width: 759px) {
      .Heading--youth .Heading-title--main {
        font-size: 1.7rem; } }

.Heading-title--secundary {
  font-weight: 600;
  font-style: normal;
  font-size: 1.5rem;
  line-height: 1.2; }
  @media (max-width: 759px) {
    .Heading-title--secundary {
      font-size: 1.2rem; } }
  .Heading--youth .Heading-title--secundary {
    font-weight: 400;
    font-style: normal; }
  .Heading-title--main + .Heading-title--secundary {
    margin-top: 5px; }

.Heading-title--catalog {
  font-weight: 400;
  font-style: normal;
  font-size: 1.6rem;
  line-height: 1.2; }
  .Heading-title--catalog strong {
    font-weight: 700;
    font-style: normal; }
  .Heading--youth .Heading-title--catalog {
    font-weight: 300;
    font-style: normal; }
    .Heading--youth .Heading-title--catalog strong {
      font-weight: 600;
      font-style: normal; }

.Heading-subTitle {
  max-width: 880px;
  margin-top: 8px;
  margin-bottom: 8px;
  font-size: .8rem;
  line-height: 1.3; }
  @media (max-width: 759px) {
    .Heading-subTitle {
      font-size: .7rem; } }
  .Heading-title--main + .Heading-subTitle {
    margin-top: .4rem; }
  .Heading-subTitle a {
    position: relative;
    text-decoration: none; }
    .Heading-subTitle a:hover, .Heading-subTitle a:focus, .Heading-subTitle a:active {
      color: #e3001a; }
      .Heading--youth .Heading-subTitle a:hover, .Heading--youth .Heading-subTitle a:focus, .Heading--youth .Heading-subTitle a:active {
        color: #e64216; }
    .Heading-subTitle a .Icon {
      position: absolute;
      left: -16px;
      top: 50%;
      margin-top: -6px;
      width: 14px;
      height: 14px; }
    @media (max-width: 759px) {
      .Heading-subTitle a {
        padding-left: 16px; }
        .Heading-subTitle a .Icon {
          left: 0; } }

.Heading-links {
  padding-top: 8px; }
  .Heading--2col .Heading-links {
    padding-top: 0; }
  .Heading-links li {
    display: inline-block;
    margin: 4px 2px; }
  .Heading-links--teacher .Btn-bw {
    margin-bottom: 8px; }
  .Heading-links--teacher .Btn-bw[data-state='active'],
  .Heading-links--teacher .Btn-bw:hover, .Heading-links--teacher .Btn-bw:focus {
    background-color: #e3001a;
    border-color: #e3001a; }

.Heading--youth .Btn-bw {
  border-radius: 5px; }

@media (max-width: 759px) {
  .Heading-links li {
    display: inline; } }

.Heading-time {
  font-weight: 400;
  font-style: normal;
  display: inline-block;
  margin-top: .35rem;
  margin-bottom: .4rem;
  font-size: .9rem;
  line-height: 1.2; }

.Btn-big {
  font-weight: 700;
  font-style: normal;
  display: inline-block;
  min-width: 285px;
  max-width: 100%;
  padding: 13px 25px 15px;
  border: solid 2px;
  line-height: 1;
  font-size: .9rem;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none;
  color: #1d1d1b; }
  .Btn-big:hover, .Btn-big:focus, .Btn-big:active {
    color: #fff;
    border-color: #1d1d1b;
    background-color: #1d1d1b; }

.Btn-big--icon {
  position: relative;
  padding-right: 30px;
  border-left-width: 48px; }
  .Btn-big--icon .Icon {
    position: absolute;
    top: 50%;
    left: -31px;
    width: 16px;
    height: 16px;
    margin-top: -8px;
    color: #fff; }

.Btn-big--side {
  min-width: 200px;
  padding: 10px 15px 11px;
  font-size: .8rem;
  text-transform: none; }
  .Btn-big--side.Btn-big--icon {
    border-left-width: 42px; }
    .Btn-big--side.Btn-big--icon .Icon {
      left: -28px; }

.Btn-big--comic {
  color: #e3001a; }
  .Btn-big--comic:hover, .Btn-big--comic:focus, .Btn-big--comic:active {
    color: #fff;
    border-color: #e3001a;
    background-color: #e3001a; }

.Btn-big--youth {
  border-radius: 15px;
  color: #e64216; }
  .Btn-big--youth:hover, .Btn-big--youth:focus, .Btn-big--youth:active {
    color: #fff;
    border-color: #e64216;
    background-color: #e64216; }
  .Btn-big--youth.Btn-big--side {
    border-radius: 8px; }

.Btn-bw {
  font-weight: 700;
  font-style: normal;
  display: inline-block;
  min-width: 140px;
  padding: 8px 12px 9px;
  border: solid 1px #1d1d1b;
  font-size: .6rem;
  line-height: 1;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none;
  color: #1d1d1b; }
  .Btn-bw:hover, .Btn-bw:focus, .Btn-bw:active, .Btn-bw[data-state="active"] {
    color: #fff;
    background-color: #1d1d1b; }

.Btn-bw--youth {
  border-radius: 5px; }

.Btn-small {
  padding: 5px 10px;
  font-size: .8rem;
  text-decoration: none; }
  .Btn-small .Icon {
    width: 1em;
    height: 1em;
    vertical-align: -2px;
    margin: 0 4px 0 -4px; }
  .Btn-small:hover span, .Btn-small:focus span {
    text-decoration: underline; }

.Btn-neutral {
  font-weight: 700;
  font-style: normal;
  display: inline-block;
  min-width: 140px;
  padding: 8px 12px 9px;
  background-color: #d0d0d0;
  color: #1d1d1b;
  font-size: .6rem;
  line-height: 1;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none;
  margin-top: 10px; }

.Text {
  max-width: 880px;
  font-size: .7rem; }
  .Text > :first-child {
    margin-top: 0; }
  .Text > :last-child {
    margin-bottom: 0; }
  .Text::after {
    content: "";
    display: table;
    clear: both; }
  .Text h1, .Text h2 {
    font-weight: 800;
    font-style: normal;
    margin-top: 30px;
    margin-bottom: 10px;
    line-height: 1.2;
    font-size: 1.5rem; }
    @media (max-width: 759px) {
      .Text h1, .Text h2 {
        font-size: 1.2rem; } }
  .Text h3, .Text h4 {
    font-weight: 800;
    font-style: normal;
    margin-top: 30px;
    margin-bottom: 10px;
    line-height: 1.2;
    font-size: 1rem;
    text-transform: uppercase; }
    @media (max-width: 759px) {
      .Text h3, .Text h4 {
        font-size: .9rem; } }
  .Text h5, .Text h6 {
    margin-top: 10px;
    margin-bottom: 20px;
    font-size: inherit;
    font-weight: bold; }
  .Text p {
    margin-top: 10px;
    margin-bottom: 20px;
    line-height: 1.5; }
  .Text ul, .Text ol {
    margin-top: 10px;
    margin-bottom: 20px;
    line-height: 1.5; }
  .Text ul ul, .Text ol ol,
  .Text ul ol, .Text ol ul {
    margin-top: 0;
    margin-bottom: 0; }
  .Text ul > li {
    padding-left: 20px;
    background: url("/bundles/castermanstatic/images/text/comic_arrow.png?v1") no-repeat 0 0.4em;
    background-size: 8px auto; }
  .Text ol {
    counter-reset: ol;
    padding-left: 20px; }
  .Text ol > li {
    counter-increment: ol; }
  .Text ol > li::before {
    font-weight: 700;
    font-style: normal;
    content: counter(ol) ". ";
    float: left;
    margin-left: -20px; }
  .Text a {
    color: #e3001a; }
  .Text blockquote {
    position: relative;
    margin: 10px 0 20px;
    padding-left: 40px; }
    .Text blockquote .hide {
      display: none; }
    .Text blockquote::before {
      content: "«";
      position: absolute;
      top: -30px;
      left: -2px;
      width: 35px;
      overflow: hidden;
      font-size: 68px;
      line-height: 1;
      color: #ccc;
      font-style: italic; }

.Text--youth h1, .Text--youth h2 {
  font-weight: 400;
  font-style: normal;
  color: #f3530b; }

.Text--youth h3 {
  font-weight: 600;
  font-style: normal;
  color: #3d4b4b;
  font-size: 1.1rem;
  text-transform: none; }
  @media (max-width: 759px) {
    .Text--youth h3 {
      font-size: 1rem; } }

.Text--youth ul li {
  background-image: url("/bundles/castermanstatic/images/text/youth_arrow.png?v1"); }

.Text--youth ol li::before {
  color: #e64216; }

.Text--youth a {
  color: #e64216; }

.Text-excerpt.Text-excerpt {
  font-weight: 600;
  font-style: normal;
  font-size: .85rem;
  line-height: 1.3; }

.Text--youth .Text-excerpt {
  font-weight: 400;
  font-style: normal; }

.Text-img,
.object-left,
.object-right,
.object-center {
  margin-top: 20px;
  margin-bottom: 20px; }
  .Text-img img,
  .object-left img,
  .object-right img,
  .object-center img {
    vertical-align: middle;
    max-width: 100%;
    height: auto; }

.Text-img figcaption {
  padding-top: 4px;
  font-size: .6rem;
  color: #404040; }

.Text-img--center,
.object-center {
  text-align: center; }
  @media (min-width: 760px) {
    .Text-img--center img,
    .object-center img {
      max-width: 70%; } }

.Text-img--full img {
  width: 100%;
  height: auto; }

@media (max-width: 759px) {
  .Text-img--full {
    margin-left: -15px;
    margin-right: -15px; }
    .Text-img--full figcaption {
      padding-left: 15px;
      padding-right: 15px; } }

.Text-img--left,
.Text-img--right,
.object-left,
.object-right {
  margin-top: 4px;
  margin-bottom: 20px; }

@media (min-width: 400px) {
  .Text-img--left,
  .object-left {
    float: left;
    max-width: 50%;
    max-width: calc(50% - 10px);
    margin-right: 20px; }
  .Text-img--right,
  .object-right {
    float: right;
    max-width: 50%;
    max-width: calc(50% - 10px);
    margin-left: 20px; } }

.text-break,
.Text .separator,
.object-center,
.Text-img--center,
.Text-img--full,
.Text h1,
.Text h2 {
  clear: both; }

.renderedtable th, .renderedtable td {
  border: 1px solid #e9e9e9;
  padding: 6px 10px; }

.factbox {
  padding: 20px;
  background: #e0e0e0; }
  .factbox > *:first-child {
    margin-top: 0; }
  .factbox > *:last-child {
    margin-bottom: 0; }

.Header {
  position: relative;
  z-index: 20;
  margin-left: auto;
  margin-right: auto; }
  .Header a {
    color: inherit;
    text-decoration: none; }

.Header-inner {
  position: relative;
  width: 100%; }

@media (min-width: 1000px) {
  .Header-inner {
    padding: 12px; }
  .Header--onTop .Header-inner {
    position: absolute; } }

.Header-top {
  padding-top: 1px;
  border: solid 1px transparent;
  line-height: 1;
  color: #fff;
  background-color: #555; }
  @media (max-width: 759px) {
    .Header-top {
      border-width: 0; } }

.Header-items {
  font-weight: 700;
  font-style: normal;
  display: table;
  width: 100%;
  margin: -1px 0;
  font-size: .75rem; }
  @media (min-width: 1000px) {
    .Header-items {
      font-size: .9rem; } }
  @media (max-width: 759px) {
    .Header-items {
      margin: 0; } }

.Header-item {
  display: table-cell;
  table-layout: fixed;
  vertical-align: bottom;
  width: 20%;
  min-width: 54px;
  text-align: center;
  white-space: nowrap; }
  * + .Header-item {
    border-left: solid 1px transparent; }

.Header-itemBtn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 54px;
  padding: 10px;
  line-height: 30px; }
  .Header-item--main .Header-itemBtn,
  .Header-item--menu .Header-itemBtn,
  .Header-item--search .Header-itemBtn {
    min-width: 100%; }
  @media (max-width: 759px) {
    .Header-item--menu .Header-itemBtn,
    .Header-item--search .Header-itemBtn {
      min-width: 100%;
      width: 60px; } }
  @media (min-width: 760px) and (max-width: 999px) {
    .Header-itemBtn {
      min-height: 62px;
      line-height: 38px; } }
  @media (min-width: 1000px) {
    .Header-itemBtn {
      min-height: 74px;
      line-height: 50px; } }
  .Header-itemBtn[data-state="active"] {
    color: #1d1d1b;
    background-color: #fff;
    outline: none; }
    @media (max-width: 759px) {
      .Header-itemBtn[data-state="active"] {
        min-height: 50px;
        padding-top: 10px;
        padding-bottom: 10px; } }
    @media (min-width: 760px) and (max-width: 999px) {
      .Header-itemBtn[data-state="active"] {
        min-height: 58px;
        padding-top: 8px;
        padding-bottom: 8px; } }
    @media (min-width: 1000px) {
      .Header-itemBtn[data-state="active"] {
        min-height: 66px;
        padding-top: 6px;
        padding-bottom: 6px; } }

.Header-item--logo {
  font-weight: 700;
  font-style: normal;
  width: 40%;
  padding-right: 5px;
  text-align: left; }
  @media (max-width: 759px) {
    .Header-item--logo {
      width: 80%; } }
  .Header-item--logo .Header-itemBtn {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
    @media (min-width: 1000px) {
      .Header-item--logo .Header-itemBtn {
        padding-left: 16px;
        padding-right: 16px; } }
  .Header-item--logo img, .Header-item--logo .Icon {
    display: inline-block;
    vertical-align: middle;
    width: 236px;
    height: 48px;
    font-size: 160%;
    line-height: 1; }
    @media (min-width: 1000px) and (max-width: 1279px) {
      .Header-item--logo img, .Header-item--logo .Icon {
        width: 190px;
        height: 38px; } }
    @media (min-width: 760px) and (max-width: 999px) {
      .Header-item--logo img, .Header-item--logo .Icon {
        width: 160px;
        height: 33px; } }
    @media (max-width: 759px) {
      .Header-item--logo img, .Header-item--logo .Icon {
        width: 148px;
        height: 30px; } }

.Header-item--main {
  font-weight: 800;
  font-style: normal;
  width: 9%;
  min-width: 150px;
  font-size: 20px;
  text-transform: uppercase; }
  @media (max-width: 759px) {
    .Header-item--main {
      display: none; } }
  @media (min-width: 1000px) {
    .Header-item--main {
      min-width: 220px; } }
  @media (min-width: 1300px) {
    .Header-item--main {
      min-width: 330px; } }
  .Header-item--main .Header-itemBtn {
    padding-left: 22px;
    padding-right: 22px; }
    @media (min-width: 1000px) {
      .Header-item--main .Header-itemBtn {
        padding-left: 40px;
        padding-right: 40px; } }

.Header-item--search {
  width: 10%; }
  .Header-item--search .Icon {
    width: 1.75em;
    height: 1.75em;
    -webkit-transform: translateY(-3px);
        -ms-transform: translateY(-3px);
            transform: translateY(-3px); }
    @media (max-width: 759px) {
      .Header-item--search .Icon {
        -webkit-transform: translateY(-4px);
            -ms-transform: translateY(-4px);
                transform: translateY(-4px); } }

@media (min-width: 760px) {
  .Header-item--search {
    width: 2%; }
  .Header:not(.Header--global) .Header-item--search {
    display: none !important; }
  .Header-item--search .Header-itemBtn {
    padding-left: 20px;
    padding-right: 20px; } }

@media (min-width: 1300px) {
  .Header-item--search .Header-itemBtn {
    padding-left: 30px;
    padding-right: 30px; } }

@media (min-width: 760px) {
  .Header-item--menu {
    display: none !important; } }

.Header-item--menu .Icon {
  width: 24px;
  height: 20px;
  -webkit-transform: translateY(-2px);
      -ms-transform: translateY(-2px);
          transform: translateY(-2px); }

.Header-item--end {
  width: 40%;
  text-align: right; }
  .Header-item--end > ul {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    margin-top: 1px;
    background-color: #D00018; }
  .Header-item--end .Header-itemBtn {
    padding: 10px 15px; }
  .Header-item--end .Icon {
    width: 10px;
    height: 10px;
    vertical-align: baseline; }
  @media (max-width: 759px) {
    .Header-item--end {
      display: none; } }

.TeacherSpace-link .Icon {
  margin-right: 5px; }

.TeacherSpace-link a {
  font-weight: 600;
  font-style: normal;
  position: relative; }
  .TeacherSpace-link a:after {
    content: '';
    position: absolute;
    width: 1px;
    height: 35%;
    top: 50%;
    right: 0;
    background-color: #fff;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
        transform: translateY(-50%); }

.TeacherSpace-account {
  position: relative; }
  .TeacherSpace-account[data-state="active"] .TeacherSpace-accountBox {
    display: block; }
  .TeacherSpace-account[data-state="active"] .TeacherSpace-accountBtn {
    background-color: #BE0016; }

.TeacherSpace-accountBtn .Icon--account {
  -webkit-transform: scale(1.8);
      -ms-transform: scale(1.8);
          transform: scale(1.8);
  margin: 0 5px; }

.TeacherSpace-accountBtn .Icon--arrow1-right {
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg);
  margin-left: 5px;
  margin-right: 2px; }

.TeacherSpace-accountBtn.logged-in .Icon--account {
  -webkit-transform: scale(1.2);
      -ms-transform: scale(1.2);
          transform: scale(1.2); }

.TeacherSpace-accountBox {
  display: none;
  z-index: 50;
  position: absolute;
  width: 230px;
  padding: 12px 15px;
  top: 101%;
  right: -1px;
  background-color: #fff;
  text-align: left;
  box-shadow: 0 2px 7px rgba(48, 54, 61, 0.2); }
  .TeacherSpace-accountBox hr {
    margin: 6px 5px 10px;
    border: 0;
    border-top: 1px solid #ccc8c8;
    box-shadow: none; }

.TeacherSpace-signIn,
.TeacherSpace-info {
  font-weight: 400;
  font-style: normal;
  display: block;
  padding: 10px 5px;
  color: #1d1d1b !important; }

.TeacherSpace-action {
  font-weight: 400;
  font-style: italic;
  padding: 0 5px 5px;
  color: #1d1d1b; }

.TeacherSpace-signUp,
.TeacherSpace-signOut {
  font-weight: 700;
  font-style: normal;
  display: block;
  min-width: 155px;
  margin-top: 10px;
  padding: 8px 10px;
  color: #fff !important;
  background-color: #1d1d1b;
  text-align: center;
  text-transform: uppercase; }

.Header-nav {
  padding: 6px 15px;
  text-align: center;
  font-size: .8rem;
  color: #1d1d1b;
  background-color: #fff; }
  @media (max-width: 759px) {
    .Header-nav {
      display: none; } }

.Header-navItem {
  display: inline-block;
  vertical-align: middle;
  margin: 4px 5px; }
  .Header-navItem > * {
    display: inline-block;
    vertical-align: baseline;
    padding: 2px 8px 3px; }
  .Header-navItem .Icon {
    margin: 0 4px 0 2px;
    vertical-align: -2px; }

@media (min-width: 1000px) {
  .Header-navItem:nth-last-child(1n+2)::after {
    content: "/";
    display: inline-block;
    vertical-align: baseline;
    margin: 0 -4px 0 6px;
    -webkit-transform: rotate(10deg);
        -ms-transform: rotate(10deg);
            transform: rotate(10deg);
    opacity: .5; } }

.Header-navItem--special {
  margin-left: 10px;
  margin-right: 10px;
  white-space: nowrap; }

.Header-navItem[data-state="active"] > * {
  border-radius: 6px;
  background-color: #eee; }

.Header-search {
  padding: 10px 12px;
  border-bottom: solid 1px rgba(0, 0, 0, 0.1);
  color: #1d1d1b;
  background-color: #fff;
  outline: none; }
  @media (max-width: 759px) {
    .Header-search {
      box-shadow: 0 3px 4px rgba(0, 0, 0, 0.1); } }
  @media (min-width: 760px) {
    .Header-search {
      position: absolute;
      z-index: 21;
      left: 0;
      right: 0; }
      .Header-nav + .Header-search {
        margin-top: -8px; } }
  @media (min-width: 1000px) {
    .Header-search {
      left: 12px;
      right: 12px; } }
  .Header-search[aria-hidden="true"] {
    display: none; }
  .Header-search form {
    position: relative; }

.Header-searchArrow {
  position: absolute;
  top: 50%;
  left: 15px;
  margin-top: -8px;
  line-height: .5;
  pointer-events: none; }
  @media (max-width: 759px) {
    .Header-searchArrow {
      display: none; } }

.Header-searchText {
  font-weight: 400;
  font-style: normal;
  width: 100%;
  text-overflow: ellipsis;
  padding: 13px 20px 16px 50px;
  border: solid 1px rgba(0, 0, 0, 0.05);
  line-height: normal;
  font-family: inherit;
  font-size: 1rem;
  color: inherit;
  background-color: #eee;
  outline: none; }
  .Header-searchText::-webkit-input-placeholder {
    font-weight: 400;
    font-style: italic; }
  .Header-searchText::-moz-placeholder {
    font-weight: 400;
    font-style: italic; }
  .Header-searchText:-ms-input-placeholder {
    font-weight: 400;
    font-style: italic; }
  .Header-searchText:placeholder-shown {
    font-weight: 400;
    font-style: italic; }
  @media (min-width: 1000px) {
    .Header-searchText {
      font-size: 1.2rem; } }
  @media (max-width: 759px) {
    .Header-searchText {
      padding: 10px 12px 12px;
      font-size: 0.7rem; } }

.Header-rwdMenu {
  box-shadow: 0 3px 4px rgba(0, 0, 0, 0.1); }
  @media (min-width: 760px) {
    .Header-rwdMenu {
      display: none !important; } }
  .Header-rwdMenu[aria-hidden="true"] {
    display: none; }

.Header--global .Header-top {
  background-color: #e3001a; }

.Header--global .Header-item {
  border-color: rgba(255, 255, 255, 0.3); }

.Header--comic .Header-top {
  border-color: #000;
  background-color: #1d1d1b; }

.Header--comic .Header-item {
  border-color: #000; }

.Header--comic .Header-navBtn {
  text-transform: uppercase;
  color: #fff;
  background-color: #1d1d1b; }

.Header--comic .Header-item--end > ul {
  background-color: #262624; }

.Header--comic .TeacherSpace-account[data-state="active"] .TeacherSpace-accountBtn {
  background-color: #353535; }

.Header--youth .Header-top {
  color: #616f70;
  border-color: #fff;
  background-color: #c2e4e5; }

.Header--youth .Header-item {
  border-color: #fff; }

.Header--youth .Header-item--main {
  color: #616f70; }

.Header--youth .Header-itemBtn[data-state="active"] {
  color: #e64216; }

.Header--youth .Header-nav {
  color: #e64216; }

.Header--youth .Header-navBtn {
  border-radius: 6px;
  color: #fff;
  background-color: #e64216; }

.Header--youth .Header-item--end > ul {
  background-color: #B8DDDE; }

.Header--youth .TeacherSpace-account[data-state="active"] .TeacherSpace-accountBtn {
  background-color: #AED5D7; }

.Header--youth .TeacherSpace-link a:after {
  background-color: #616f70; }

.Footer {
  position: relative;
  z-index: 10;
  display: table;
  width: 100%;
  min-height: 100px;
  font-size: .65rem;
  text-transform: uppercase;
  color: #fff;
  background: #aaa;
  border-top: 1px solid transparent; }
  .Footer > * {
    display: table-cell;
    vertical-align: middle;
    width: 15%;
    padding: 20px 0; }
    @media (max-width: 999px) {
      .Footer > * {
        display: block;
        width: 100%;
        text-align: center;
        padding: 10px 0 0 0; } }
  .Footer a {
    text-decoration: none;
    display: inline-block;
    vertical-align: middle;
    padding: 10px;
    white-space: nowrap; }

.Footer-logo {
  padding-left: 30px;
  padding-right: 20px;
  text-align: left; }
  @media (max-width: 999px) {
    .Footer-logo {
      display: block;
      text-align: center;
      padding-left: 0;
      padding-right: 0;
      padding-top: 20px; } }
  .Footer-logo a {
    padding: 0; }
  .Footer-logo img, .Footer-logo .Icon {
    vertical-align: middle;
    width: 160px;
    height: 33px; }

.Footer-nav {
  width: 70%;
  text-align: center; }

@media (max-width: 999px) {
  .Footer-nav {
    display: block;
    width: auto; } }

.Footer-navItem {
  position: relative;
  display: inline-block;
  vertical-align: top;
  padding-left: 8px;
  padding-right: 8px; }
  @media (max-width: 999px) {
    .Footer-navItem {
      display: block; } }
  .Footer-navItem > a {
    padding-top: 6px;
    padding-bottom: 6px;
    padding-left: 10px;
    padding-right: 10px;
    font-weight: 700;
    font-style: normal;
    background-color: transparent;
    border-radius: 5px; }
    @media (max-width: 999px) {
      .Footer-navItem > a {
        padding-top: 5px;
        padding-bottom: 5px; } }
  .Footer-navItem[data-state="closed"] .Footer-subnav {
    display: none;
    background-color: transparent; }
  .Footer-navItem[data-state="open"] .Footer-subnav {
    position: absolute;
    bottom: 38px;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    min-width: 160px;
    max-width: 90%;
    padding: 3px 0;
    background-color: #000; }
    @media (max-width: 999px) {
      .Footer-navItem[data-state="open"] .Footer-subnav {
        z-index: 10;
        bottom: 30px; } }

.Footer-subnavLink .Icon {
  margin-left: 5px;
  width: 10px;
  height: 10px; }

.Footer-navChild {
  white-space: normal;
  text-align: left;
  text-transform: none; }
  .Footer-navChild a {
    display: block;
    position: relative;
    padding: 6px 10px 6px 30px;
    white-space: normal;
    background: #000; }
    .Footer-navChild a:hover, .Footer-navChild a:focus {
      background-color: #e3001a; }
  .Footer-navChild .Icon {
    position: absolute;
    top: 11px;
    left: 10px;
    width: 10px;
    height: 10px;
    margin-right: 10px; }

.Footer-copyright {
  font-weight: 400;
  font-style: normal;
  padding-left: 20px;
  padding-right: 30px;
  text-align: right;
  white-space: nowrap; }
  @media (max-width: 999px) {
    .Footer-copyright {
      display: block;
      width: auto;
      padding: 20px 0 10px 0;
      text-align: center;
      font-size: 0.5rem; } }

.Footer--global {
  background: #e3001a; }
  .Footer--global .Footer-navItem > a:hover,
  .Footer--global .Footer-navItem > a:focus {
    background-color: #b10014; }
  .Footer--global .Footer-navChild a:hover,
  .Footer--global .Footer-navChild a:focus {
    background-color: #b10014; }

.Footer--comic {
  background: #1d1d1b;
  border-top: 1px solid #0b0b0b; }
  .Footer--comic .Footer-navItem > a:hover,
  .Footer--comic .Footer-navItem > a:focus {
    background-color: #0b0b0b; }

.Footer--youth {
  color: #1d1d1b;
  background: #fff; }
  .Footer--youth .Footer-navItem > a:hover,
  .Footer--youth .Footer-navItem > a:focus {
    background-color: #eaeaea; }
  .Footer--youth .Footer-navChild {
    color: #fff; }

.Layout {
  overflow-x: hidden; }

.Layout--comic {
  background-color: #fff; }

.Layout--global {
  background-color: #fff; }

.Layout--youth {
  background-color: #c2e4e5; }

.Layout-header {
  position: relative; }

.Layout-cover {
  display: block;
  position: absolute;
  z-index: 1;
  left: 0;
  width: 100%;
  background-repeat: no-repeat; }
  @media (min-width: 1680px) {
    .Layout-cover {
      background-size: cover; } }
  @media (min-width: 1000px) {
    .Layout-cover {
      top: 0;
      height: 800px;
      background-position: center top; } }
  @media (min-width: 760px) and (max-width: 999px) {
    .Layout-cover {
      position: relative;
      height: 35px;
      background-position: center bottom; } }
  @media (max-width: 759px) {
    .Layout-cover {
      display: none !important; } }

@media (max-width: 759px) {
  .Layout-cover--default {
    display: none; } }

@media (min-width: 760px) and (max-width: 999px) {
  .Layout-cover--default {
    height: 35px; } }

.Layout--comic .Layout-cover--default {
  max-height: 400px;
  background-color: #f1f1f1;
  background-repeat: repeat;
  background-position: center bottom; }
  @media (min-width: 1000px) {
    .Layout--comic .Layout-cover--default {
      bottom: -130px;
      height: auto;
      background-color: #f4f4f4; } }
  @media (min-width: 760px) and (max-width: 999px) {
    .Layout--comic .Layout-cover--default {
      background-color: #f4f4f4; } }

.Layout-main {
  position: relative;
  z-index: 2;
  background-color: #fff; }
  @media (min-width: 1000px) {
    .Layout-main {
      width: calc(100% - 24px);
      max-width: 1260px;
      margin-top: 80px;
      margin-bottom: 80px;
      margin-left: auto;
      margin-right: auto; } }
  @media (max-width: 1279px) {
    .Layout-main {
      border-radius: 0 !important;
      max-width: none !important; } }

.Layout-top {
  position: relative;
  min-height: 50px;
  padding: 12px 27% 12px 20px;
  font-size: .7rem;
  line-height: 1rem; }
  @media (max-width: 999px) {
    .Layout-top {
      display: none !important; } }
  .Layout-top[aria-hidden="true"] {
    display: none !important; }
  .Layout-top:empty {
    min-height: 0; }
  .Layout--youth .Layout-top {
    padding-top: 16px; }

.Layout-cols[aria-hidden="true"] {
  display: none !important; }

.Layout-col--full,
.Layout-col--wide {
  padding: 5px 20px 25px; }

.Layout-col--side {
  padding-bottom: 40px; }

.Layout-col--bg {
  background-color: #f4f4f4 !important; }

@media (min-width: 1000px) {
  .Layout-cols {
    display: table;
    table-layout: fixed;
    width: 100%; }
  .Layout-col {
    display: table-cell;
    vertical-align: top;
    box-sizing: border-box; }
  .Layout-col--wide {
    width: 74.60317%;
    padding-right: 40px; }
  .Layout-col--side {
    width: 25.39683%;
    background-color: #fff; } }

@media (min-width: 1000px) and (max-width: 1179px) {
  .Layout-col--wide {
    width: auto;
    padding-right: 30px; }
  .Layout-col--side {
    width: 280px; } }

@media (max-width: 999px) {
  .Layout-col--side > * {
    max-width: 500px;
    margin: 0 auto; } }

@media (min-width: 760px) and (max-width: 999px) {
  .Layout-col--full,
  .Layout-col--wide {
    padding: 20px 25px 40px; }
  .Layout-col--side {
    padding: 0 0 25px; } }

@media (max-width: 759px) {
  .Layout-col {
    padding: 15px 15px 30px; }
  .Layout-col--side {
    padding: 0 0 15px; } }

.Layout-bc {
  margin: 0 -5px; }
  @media (max-width: 759px) {
    .Layout-bc {
      display: none; } }

.Layout-bcItem {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin-right: 8px; }
  .Layout-bcItem a, .Layout-bcItem strong {
    display: inline-block;
    padding: 3px 5px;
    text-decoration: none; }
  .Layout-bcItem a:hover, .Layout-bcItem a:focus, .Layout-bcItem a:active {
    text-decoration: underline; }
  .Layout-bcItem .Icon {
    position: absolute;
    top: 50%;
    right: -12px;
    width: 12px;
    height: 12px;
    margin-top: -6px;
    color: #e3001a;
    pointer-events: none; }
    .Layout--youth .Layout-bcItem .Icon {
      color: #e64216; }

.Layout-bcItem--current {
  font-weight: 700;
  font-style: normal;
  color: #e3001a; }
  .Layout--youth .Layout-bcItem--current {
    color: #e64216; }

@media (min-width: 1000px) {
  .Layout--global .Layout-main {
    margin-top: 60px;
    margin-bottom: 60px; } }

.Layout--comic .Layout-col--bg {
  background-color: #f4f4f4; }

.Layout--youth .Layout-header--topSlider {
  height: 800px; }

.Layout--youth .Layout-col--bg {
  background-color: #f6f7f8; }

@media (min-width: 1280px) {
  .Layout--youth .Layout-main {
    border-radius: 40px; }
  .Layout--youth .Layout-col--side {
    border-bottom-right-radius: 40px; } }

@media (max-width: 529px) {
  .EventsSidebar, .EventSearch, .SideBlock {
    margin-left: -15px;
    margin-right: -15px; } }

@media (min-width: 530px) {
  .EventsSidebar, .EventSearch, .SideBlock {
    max-width: 500px;
    margin-left: auto;
    margin-right: auto; } }

.HomeRow {
  padding: 20px 15px; }

.HomeRow-content {
  max-width: 1230px;
  margin-left: auto;
  margin-right: auto; }

.HomeRow--comic {
  padding: 40px 15px; }
  @media (min-width: 400px) and (max-width: 759px) {
    .HomeRow--comic {
      padding-left: 25px;
      padding-left: 25px; } }
  @media (min-width: 760px) {
    .HomeRow--comic {
      padding: 80px 60px; } }
  .HomeRow--comic .HomeRow-content + .HomeRow-content {
    margin-top: 40px; }
    @media (min-width: 760px) {
      .HomeRow--comic .HomeRow-content + .HomeRow-content {
        margin-top: 80px; } }

.HomeRow--youth {
  padding: 60px 40px;
  background-color: #c2e4e5; }
  .HomeRow--youth .HomeRow-content {
    max-width: 1500px;
    padding: 40px 60px;
    border-radius: 35px;
    background-color: #fff; }
    @media (min-width: 1300px) {
      .HomeRow--youth .HomeRow-content {
        padding-left: 90px;
        padding-right: 90px; } }
    @media (min-width: 1500px) {
      .HomeRow--youth .HomeRow-content {
        padding-left: 135px;
        padding-right: 135px; } }
  .HomeRow--youth .HomeRow-content + .HomeRow-content {
    margin-top: 60px; }
  @media (min-width: 760px) and (max-width: 999px) {
    .HomeRow--youth {
      padding: 40px 20px; }
      .HomeRow--youth .HomeRow-content {
        padding: 30px 40px; }
      .HomeRow--youth .HomeRow-content + .HomeRow-content {
        margin-top: 40px; } }
  @media (max-width: 759px) {
    .HomeRow--youth {
      padding: 20px 0; }
      .HomeRow--youth .HomeRow-content {
        margin: 0;
        padding: 20px 15px;
        border-radius: 20px; }
      .HomeRow--youth .HomeRow-content + .HomeRow-content {
        margin-top: 20px; } }

.HomeRow--blueOrange {
  padding-top: 0 !important;
  background-image: -webkit-linear-gradient(top, #c2e4e5, #c2e4e5);
  background-image: linear-gradient(to bottom, #c2e4e5, #c2e4e5);
  background-size: 100% 40px;
  background-repeat: repeat-x;
  background-color: #e64216; }
  .HomeRow--blueOrange .HomeRow-content:first-child {
    margin-top: 0 !important; }

.HomeRow--teacher {
  padding: 30px 60px; }
  @media (min-width: 1000px) {
    .HomeRow--teacher:first-of-type {
      padding: 0 60px 30px; }
      .HomeRow--teacher:first-of-type .HomeRow-content {
        padding: 20px 80px; } }
  @media (max-width: 759px) {
    .HomeRow--teacher {
      padding: 20px 5px; } }
  .HomeRow--teacher .HomeRow-content {
    padding: 50px 80px; }
    @media (min-width: 760px) and (max-width: 999px) {
      .HomeRow--teacher .HomeRow-content {
        padding: 35px 45px; } }
    @media (max-width: 759px) {
      .HomeRow--teacher .HomeRow-content {
        padding: 30px 25px; } }
    .HomeRow--teacher .HomeRow-content--grey {
      background-color: #f4f4f4; }

:root {
  --white2: #737373; }

#klaro .cookie-notice, #klaro .cookie-modal .cm-modal {
  background-color: #1d1d1b;
  border-radius: 0;
  box-shadow: none; }
  @media all and (min-width: 700px) {
    #klaro .cookie-notice, #klaro .cookie-modal .cm-modal {
      max-width: 460px; } }

#klaro .cn-body, #klaro .cookie-modal .cm-modal {
  padding: 10px 20px 20px;
  font-size: rem-calc(13.3);
  line-height: 1.5; }
  @media all and (min-width: 700px) {
    #klaro .cn-body, #klaro .cookie-modal .cm-modal {
      padding: 20px 30px; } }

#klaro .cookie-modal a, #klaro .cookie-notice a {
  color: #e3001a; }

#klaro .cookie-modal .cm-list-input:checked + .cm-list-label .slider,
#klaro .cookie-notice .cm-list-input:checked + .cm-list-label .slider {
  background-color: #e3001a; }

#klaro .cookie-notice {
  bottom: 0px;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  z-index: 10000; }
  @media all and (min-width: 700px) {
    #klaro .cookie-notice {
      max-width: 900px; } }

#klaro .cn-ok {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: 0; }

#klaro .cm-btn {
  margin-top: 10px;
  padding: 7px 10px 4px;
  border-radius: 0;
  line-height: 1.2; }

#klaro .cm-btn-success, #klaro .cm-btn-danger {
  margin-right: 15px;
  background-color: #999999;
  border: 1px solid #999999;
  -webkit-transition: background-color .25s ease-in-out, border-color .25s ease-in-out;
  transition: background-color .25s ease-in-out, border-color .25s ease-in-out; }
  #klaro .cm-btn-success:hover, #klaro .cm-btn-danger:hover {
    background-color: rgba(153, 153, 153, 0.8);
    border-color: rgba(153, 153, 153, 0.8); }

#klaro .cm-link {
  display: inline-block;
  margin-top: 10px;
  padding: 7px 0 4px;
  color: rgba(255, 255, 255, 0.8);
  line-height: 1.2;
  white-space: nowrap; }
  #klaro .cm-link:hover {
    color: #fff; }

#klaro .cookie-modal {
  z-index: 100000; }
  @media all and (max-width: 700px) {
    #klaro .cookie-modal .cm-modal {
      max-height: 100%;
      height: 100%; } }
  #klaro .cookie-modal .cm-modal .cm-body .cm-service p, #klaro .cookie-modal .cm-modal .cm-body .cm-service span {
    color: #fff; }
  #klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service p.purposes {
    display: none; }

.klaro.cm-as-context-notice .context-notice {
  background-color: #1d1d1b; }
  .klaro.cm-as-context-notice .context-notice p {
    color: #fff; }
  .klaro.cm-as-context-notice .context-notice .cm-buttons .cm-btn-success {
    background-color: #e3001a; }
  .klaro.cm-as-context-notice .context-notice .cm-buttons .cm-btn-success-var {
    display: none; }

body.Layout--youth #klaro .cookie-notice, body.Layout--youth #klaro .cookie-modal .cm-modal {
  background-color: #c2e4e5; }

body.Layout--youth #klaro p, body.Layout--youth #klaro h1, body.Layout--youth #klaro h2, body.Layout--youth #klaro h3, body.Layout--youth #klaro h4, body.Layout--youth #klaro h5, body.Layout--youth #klaro ul, body.Layout--youth #klaro li, body.Layout--youth #klaro span {
  color: #1d1d1b !important; }

body.Layout--youth #klaro svg {
  stroke: #1d1d1b !important; }

body.Layout--youth #klaro .cookie-modal a, body.Layout--youth #klaro .cookie-notice a {
  color: #e74b21; }

body.Layout--youth #klaro .cookie-modal .cm-list-input:checked + .cm-list-label .slider,
body.Layout--youth #klaro .cookie-notice .cm-list-input:checked + .cm-list-label .slider {
  background-color: #e74b21; }

body.Layout--youth .klaro.cm-as-context-notice .context-notice {
  background-color: #c2e4e5; }
  body.Layout--youth .klaro.cm-as-context-notice .context-notice p {
    color: #1d1d1b; }
  body.Layout--youth .klaro.cm-as-context-notice .context-notice .cm-buttons .cm-btn-success {
    background-color: #e74b21; }
  body.Layout--youth .klaro.cm-as-context-notice .context-notice .cm-buttons .cm-btn-success-var {
    display: none; }

#matomo-opt-out {
  text-decoration: none;
  color: inherit; }

.RwdMenu {
  color: #1d1d1b;
  background-color: #fff; }

.RwdMenu-subItems {
  margin-left: 16px;
  margin-right: 16px;
  padding-top: 20px;
  padding-bottom: 20px; }
  .RwdMenu-subItems li + li {
    margin-top: 4px; }
  .RwdMenu-subItems + .RwdMenu-subItems {
    border-top: 1px solid; }
  .RwdMenu-subItems--youth {
    color: #e64216; }

.RwdMenu-subItemTitle {
  text-transform: uppercase;
  font-weight: 700;
  margin: 0 -10px 10px; }
  .RwdMenu-subItemTitle a {
    display: block;
    padding: 0 10px;
    text-decoration: none; }

.RwdMenu-subItem a {
  display: block;
  padding: 2px 12px;
  text-decoration: none; }

.RwdSection {
  padding: 25px; }
  .RwdSection[aria-hidden="true"] {
    display: none !important; }
  @media (max-width: 759px) {
    .RwdSection {
      padding: 15px; } }

.Layout--comic .RwdSection--bg {
  background-color: #f4f4f4; }

.Layout--youth .RwdSection--bg {
  background-color: #f6f7f8; }

.RwdTabs {
  display: table;
  table-layout: fixed;
  width: 100%;
  height: 54px;
  border-top: solid 1px transparent;
  border-bottom: solid 1px #fff;
  color: #fff;
  background-color: #666;
  outline: none; }
  .RwdTabs[aria-hidden="true"] {
    display: none !important; }

.RwdTabs-link {
  font-weight: 700;
  font-style: normal;
  display: table-cell;
  vertical-align: middle;
  padding: 8px 15px;
  text-align: center;
  text-decoration: none;
  font-size: .7rem;
  line-height: 1.1;
  outline-offset: -8px; }
  @media (min-width: 760px) {
    .RwdTabs-link {
      padding: 10px 12px;
      font-size: .8rem; } }

.RwdTabs-link--active {
  color: #1d1d1b;
  background-color: #fff; }

.RwdTabs--global {
  border-top-color: rgba(255, 255, 255, 0.3);
  background-color: #e3001a; }
  .RwdTabs--global .RwdTabs-link--active {
    color: #1d1d1b; }

.RwdTabs--comic {
  border-top-color: #000;
  background-color: #1d1d1b; }
  .RwdTabs--comic .RwdTabs-link--active {
    color: #1d1d1b; }

.RwdTabs--youth {
  border-top-color: #fff;
  color: #616f70;
  background-color: #c2e4e5; }
  .RwdTabs--youth .RwdTabs-link--active {
    color: #e64216; }
  @media (min-width: 760px) {
    .RwdTabs--youth {
      background-color: #daefef; } }

@media (min-width: 760px) {
  .RwdTabs--area {
    display: none !important; } }

.RwdTabs--area .RwdTabs-link {
  text-transform: uppercase; }
  @media (max-width: 359px) {
    .RwdTabs--area .RwdTabs-link {
      font-size: .65rem; } }

.RwdTabs--area.RwdTabs--global {
  border-bottom-color: rgba(255, 255, 255, 0.6); }
  .RwdTabs--area.RwdTabs--global .RwdTabs-link + .RwdTabs-link {
    border-left: solid 1px rgba(255, 255, 255, 0.3); }

.RwdTabs--inPage {
  padding-top: 4px;
  height: 57px; }

.AgeGroup {
  font-weight: 800;
  font-style: normal;
  overflow: hidden;
  padding: 40px 30px 25px;
  background-color: #fff; }
  @media (max-width: 759px) {
    .AgeGroup {
      padding: 30px 15px 15px; } }
  @media (min-width: 760px) {
    .AgeGroup {
      border-top: solid 1px rgba(0, 0, 0, 0.15);
      border-bottom: solid 1px rgba(0, 0, 0, 0.15); } }

.AgeGroup-title {
  margin-bottom: 50px;
  font-size: 2.7rem;
  line-height: 1;
  text-transform: uppercase;
  text-align: center;
  color: #e64216; }

.AgeGroup-subTitle {
  font-weight: 300;
  font-style: normal;
  margin-bottom: 10px;
  padding: 0 20px;
  font-size: 1.8rem;
  line-height: 1;
  white-space: nowrap; }
  @media (max-width: 759px) {
    .AgeGroup-subTitle {
      padding: 0;
      font-size: 1rem;
      white-space: normal;
      text-align: center; } }

.AgeGroup-list {
  max-width: 1000px;
  font-size: 0rem; }
  .AgeGroup-list .AgeGroup-item {
    width: 20%; }
  @media (max-width: 759px) {
    .AgeGroup-list {
      margin-left: -5px;
      margin-right: -5px; }
      .AgeGroup-list .AgeGroup-item {
        width: 33.3%; } }
  @media (min-width: 400px) and (max-width: 759px) {
    .AgeGroup-list {
      max-width: 500px;
      margin-left: auto;
      margin-right: auto; } }

.AgeGroup-item {
  display: inline-block;
  vertical-align: top;
  text-align: center;
  color: #707070; }
  .AgeGroup-item a {
    display: block;
    text-decoration: none;
    outline: none; }
  .AgeGroup-item img {
    vertical-align: top; }
  .AgeGroup-item span {
    display: block;
    padding: 8px 0px 12px;
    font-size: 1.2rem;
    line-height: 1; }
    @media (max-width: 759px) {
      .AgeGroup-item span {
        font-size: .8rem; } }
  .AgeGroup-item a:hover span, .AgeGroup-item a:focus span {
    text-decoration: underline; }

.AgeGroup-item--0-3 {
  color: #ff4b80; }

.AgeGroup-item--3-6 {
  color: #00d2de; }

.AgeGroup-item--6-9 {
  color: #ff3400; }

.AgeGroup-item--9-13 {
  color: #ffcc00; }

.AgeGroup-item--13-18 {
  color: #00c38a; }

.AgeGroup-result {
  position: relative;
  margin-top: 15px;
  margin-bottom: 5px;
  padding: 15px 10px;
  border-radius: 20px;
  background-color: #f4fafa; }

.AgeGroup-resultHead {
  display: block;
  text-align: center; }
  .AgeGroup-resultHead .AgeGroup-item span {
    padding: 0 0 8px; }

.AgeGroup-resultCol {
  padding: 0 10px;
  text-align: center; }

@media (max-width: 759px) {
  .AgeGroup-result {
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
    padding: 10px 5px 20px; }
  .AgeGroup-resultHead {
    padding-bottom: 10px; }
    .AgeGroup-resultHead .AgeGroup-item span {
      font-size: 1rem; } }

@media (min-width: 760px) and (max-width: 999px) {
  .AgeGroup-result {
    width: 100%; } }

@media (min-width: 760px) {
  .AgeGroup-result {
    display: table;
    width: 100%;
    max-width: 1000px; }
  .AgeGroup-resultHead {
    display: table-cell;
    vertical-align: middle;
    width: 24%;
    padding-right: 20px; }
  .AgeGroup-resultCol {
    display: table-cell;
    width: 38%;
    vertical-align: middle;
    text-align: left; } }

.AgeGroup-themes {
  font-weight: 400;
  font-style: normal;
  font-size: .9rem;
  line-height: 1.3;
  text-transform: uppercase; }
  .AgeGroup-themes a {
    position: relative;
    display: block;
    padding: .2em 0 .2em 18px;
    text-decoration: none;
    color: #e64216; }
    .AgeGroup-themes a:hover, .AgeGroup-themes a:focus {
      text-decoration: underline; }
  .AgeGroup-themes .Icon {
    position: absolute;
    left: 0;
    top: 11px;
    width: 10px;
    height: 10px; }
  @media (max-width: 759px) {
    .AgeGroup-themes {
      font-size: .7rem; }
      .AgeGroup-themes a {
        padding: .4em 0; }
      .AgeGroup-themes .Icon {
        position: static;
        margin-right: 4px;
        vertical-align: 0; } }

.AgeGroup-close {
  position: absolute;
  top: -22px;
  right: -22px;
  padding: 10px;
  text-align: center; }
  @media (max-width: 759px) {
    .AgeGroup-close {
      top: -17px;
      right: -17px; } }

.AgeGroup-closeBtn {
  display: inline-block;
  width: 40px;
  height: 40px;
  padding: 10px;
  border-radius: 50%;
  font-size: .7rem;
  line-height: 1;
  color: #fff;
  background-color: #e64216; }
  .AgeGroup-closeBtn .Icon {
    width: 20px;
    height: 20px;
    vertical-align: top; }

.AgeGroup-closeLabel {
  font-weight: 400;
  font-style: normal;
  position: absolute;
  right: 50%;
  bottom: 100%;
  -webkit-transform: translateX(50%);
      -ms-transform: translateX(50%);
          transform: translateX(50%);
  max-width: 180px;
  opacity: 0;
  padding: 6px 8px;
  font-size: 13px;
  border: 1px solid #e6e6e6;
  background-color: #fff;
  -webkit-transition: opacity 350ms linear;
  transition: opacity 350ms linear;
  white-space: nowrap; }
  .AgeGroup-close:hover .AgeGroup-closeLabel,
  .AgeGroup-closeBtn:focus + .AgeGroup-closeLabel {
    opacity: 1; }
  .AgeGroup-closeLabel::after {
    content: "";
    position: absolute;
    bottom: -6px;
    right: 50%;
    -webkit-transform: translateX(50%);
        -ms-transform: translateX(50%);
            transform: translateX(50%);
    display: block;
    width: 7px;
    height: 7px;
    text-align: center;
    background-image: url("/bundles/castermanstatic/images/layout/hovericon.png?v1");
    background-position: 50% 50%;
    background-repeat: no-repeat; }

@media (min-width: 1000px) {
  .AgeGroup {
    display: table;
    width: 100%;
    padding: 70px 70px 30px 50px; }
  .AgeGroup-title {
    display: table-cell;
    vertical-align: middle;
    width: 30%;
    margin: 0;
    padding-right: 40px;
    text-align: center;
    font-size: 3rem; }
  .AgeGroup-main {
    display: table-cell;
    vertical-align: middle;
    width: 70%; } }

@media (min-width: 1280px) {
  .AgeGroup {
    padding: 80px 120px 40px 70px; }
  .AgeGroup-title {
    width: 35%;
    padding-right: 70px;
    font-size: 3.4rem; }
  .AgeGroup-main {
    width: 65%; } }

.ArticleHead {
  padding-bottom: 30px; }
  .ArticleHead .Text {
    vertical-align: top;
    display: table-cell; }

.ArticleHead--2col {
  display: table; }
  .ArticleHead--2col > * {
    display: table-cell;
    vertical-align: top; }
    @media (max-width: 759px) {
      .ArticleHead--2col > * {
        width: 100%;
        display: block; } }
  .ArticleHead--2col .Picture {
    max-width: 322px;
    width: 37%;
    padding-top: 0;
    padding-right: 4.5%; }
    @media (min-width: 760px) {
      .ArticleHead--2col .Picture {
        padding-bottom: 0; } }
    @media (max-width: 759px) {
      .ArticleHead--2col .Picture {
        display: block;
        width: 100%;
        max-width: 400px;
        margin-left: auto;
        margin-right: auto;
        padding-right: 0;
        padding-bottom: 20px; } }

.ArticleTeaser {
  margin-top: 35px;
  margin-bottom: 60px;
  padding-bottom: 25px;
  border-bottom: 1px solid #d7d7d7;
  font-size: .7rem; }
  @media (max-width: 759px) {
    .ArticleTeaser {
      margin-top: 25px;
      margin-bottom: 25px; } }

.ArticleTeaser-container {
  display: table;
  width: 100%; }

.ArticleTeaser--comic a:hover,
.ArticleTeaser--comic a:focus {
  color: #e3001a; }

.ArticleTeaser--youth a:hover,
.ArticleTeaser--youth a:focus {
  color: #e64216; }

.ArticleTeaser-date {
  font-weight: 700;
  font-style: normal;
  vertical-align: top;
  display: table-cell;
  width: 5%; }
  .ArticleTeaser-date time {
    display: block;
    width: 60px;
    overflow: hidden;
    text-align: center;
    color: #fff;
    background-color: #1d1d1b; }
  .ArticleTeaser-date span {
    display: block;
    padding: 6px; }
  .ArticleTeaser-date span:first-child {
    padding-top: 12px;
    padding-bottom: 12px;
    font-size: 1.2rem;
    background-color: #1d8cd3; }
    .ArticleTeaser--comic .ArticleTeaser-date span:first-child {
      background-color: #1d8cd3; }
    .ArticleTeaser--youth .ArticleTeaser-date span:first-child {
      background-color: #2aa3a7; }
  .ArticleTeaser-date span:last-child {
    font-size: .6rem; }
  .ArticleTeaser--youth .ArticleTeaser-date time {
    border-radius: 10px 0 0 10px; }
  .ArticleTeaser--youth.ArticleTeaser--noPic .ArticleTeaser-date time {
    border-radius: 10px; }
  .ArticleTeaser--noPic .ArticleTeaser-date {
    padding-right: 20px; }

.ArticleTeaser-image {
  display: block;
  margin-bottom: 20px; }
  .ArticleTeaser-image img {
    width: 100%;
    vertical-align: top; }
  @media (min-width: 760px) {
    .ArticleTeaser--tallPic .ArticleTeaser-image {
      float: left;
      width: 50%;
      margin-right: 10px;
      padding-right: 10px; } }
  .ArticleTeaser-noPic .ArticleTeaser-image {
    display: none; }

@media (max-width: 759px) {
  @supports (object-fit: cover) {
    .ArticleTeaser-image img {
      min-height: 120px;
      max-height: 70vh;
      object-fit: cover; } } }

.ArticleTeaser-title {
  font-weight: 700;
  font-style: normal;
  margin-bottom: 20px;
  font-size: 1.2rem;
  line-height: 1.2; }
  .ArticleTeaser-title a {
    text-decoration: none; }

.ArticleTeaser-content {
  display: table-cell;
  vertical-align: top; }
  @media (max-width: 759px) {
    .ArticleTeaser-content {
      display: block; } }

.ArticleTeaser-desc {
  font-weight: 400;
  font-style: normal;
  overflow: hidden;
  margin-top: 0;
  margin-bottom: 20px;
  line-height: 1.5;
  word-break: break-word; }
  @media (min-width: 1000px) {
    .ArticleTeaser-desc {
      margin-bottom: 40px; } }
  .ArticleTeaser-desc a {
    color: #e3001a; }
    .ArticleTeaser--youth .ArticleTeaser-desc a {
      color: #e64216; }

.ArticleTeaser-readm {
  text-align: right; }
  @media (min-width: 760px) {
    .ArticleTeaser-readm {
      font-size: .8rem; } }
  .ArticleTeaser-readm a {
    text-decoration: none; }
  .ArticleTeaser-readm .Icon {
    width: 14px;
    height: 14px;
    vertical-align: -2px; }

.AuthorInfo-title {
  font-weight: 800;
  font-style: normal;
  margin-bottom: 0.5rem;
  font-size: 1.5rem;
  line-height: 1.2; }

.AuthorInfo-subtitles {
  margin-bottom: 40px; }
  @media (max-width: 759px) {
    .AuthorInfo-subtitles {
      margin-bottom: 20px; } }

.AuthorInfo-subtitle {
  display: block;
  color: #e3001a;
  font-size: .75rem;
  text-decoration: none; }
  .AuthorInfo-subtitle .Icon {
    width: 14px;
    height: 14px;
    vertical-align: -2px;
    margin-left: -2px;
    color: #1d1d1b; }

.AuthorInfo-content {
  margin-bottom: 20px;
  font-size: .7rem; }

.AuthorInfo-readmore {
  display: inline-block;
  color: #e3001a; }

.AuthorInfo-update {
  font-size: .7rem;
  font-style: italic;
  text-align: right; }

.AuthorInfo--youth .AuthorInfo-title {
  font-weight: 400;
  font-style: normal; }

.AuthorInfo--youth .AuthorInfo-subtitle {
  color: #e64216; }

.AuthorInfo--youth .AuthorInfo-readmore {
  color: #e64216; }

.AuthorTabs {
  padding-left: 30px;
  padding-right: 30px; }

.AuthorTabs-head {
  margin: 0 -22px;
  font-size: 0rem; }

.AuthorTabs-btn {
  font-weight: 300;
  font-style: normal;
  display: inline-block;
  vertical-align: top;
  min-width: 1.35em;
  margin: 0 3px 3px 0;
  padding: .1em 0 .2em;
  font-size: 1.6rem;
  line-height: 1;
  outline: none; }
  .AuthorTabs-btn:hover, .AuthorTabs-btn:focus {
    background-color: #eee; }
  .AuthorTabs-btn[data-state="active"] {
    background-color: #ddd; }

.AuthorTabs-tab {
  margin-top: 60px; }

.AuthorTabs-list {
  -webkit-column-count: 3;
     -moz-column-count: 3;
          column-count: 3;
  font-size: 0rem; }

.AuthorTabs-listItem {
  font-weight: 400;
  font-style: normal;
  display: inline-block;
  width: 100%;
  margin-bottom: 12px;
  font-size: .8rem; }
  .AuthorTabs-listItem a {
    text-decoration: none; }
    .AuthorTabs-listItem a:hover {
      text-decoration: underline; }

.AuthorTabs-listItemLetter {
  font-weight: 700;
  font-style: normal;
  font-size: 4.5rem;
  line-height: 1; }

.AuthorTabs--youth .AuthorTabs-tab {
  margin-bottom: 60px; }

.AuthorTabs--youth .AuthorTabs-listItemLetter {
  color: #e64216; }

@media (min-width: 760px) and (max-width: 999px) {
  .AuthorTabs-list {
    -webkit-column-count: 2;
       -moz-column-count: 2;
            column-count: 2; } }

@media (max-width: 759px) {
  .AuthorTabs {
    padding-left: 0;
    padding-right: 0;
    display: table; }
  .AuthorTabs-list {
    -webkit-column-count: 1;
       -moz-column-count: 1;
            column-count: 1; }
  .AuthorTabs-head {
    display: table-cell;
    vertical-align: top;
    width: 5%;
    margin: 0;
    padding-right: 30px;
    text-align: center; }
  .AuthorTabs-tab {
    display: table-cell;
    width: 95%;
    vertical-align: top; }
  .AuthorTabs-tab[hidden] {
    display: none !important; }
  .AuthorTabs-btn {
    display: inline-block;
    margin-bottom: 10px;
    font-size: 1.4rem; }
  .AuthorTabs-btn[data-state="active"] {
    font-weight: 700;
    font-style: normal;
    -webkit-transform: scale(1.15);
        -ms-transform: scale(1.15);
            transform: scale(1.15); }
  .AuthorTabs-listItemLetter {
    display: none; } }

.BookCollection {
  margin: 0 -10px;
  font-size: 0rem;
  text-align: center; }
  @media (min-width: 1000px) {
    .BookCollection {
      margin: 0 -6px;
      text-align: left; } }

.BookCollection-item {
  display: inline-block;
  vertical-align: bottom;
  max-width: 320px;
  padding: 10px;
  font-size: .7rem; }
  @media (min-width: 1000px) {
    .BookCollection-item {
      width: 33.3%;
      padding: 10px 6px; } }
  @media (min-width: 760px) and (max-width: 999px) {
    .BookCollection-item {
      width: 50%; } }
  @media (max-width: 759px) {
    .BookCollection-item {
      display: block;
      width: 100%;
      margin-left: auto;
      margin-right: auto; } }

.BookCollection-cover {
  position: relative; }
  .BookCollection-cover::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: solid 1px rgba(0, 0, 0, 0.12); }
  .BookCollection-cover img {
    width: 100%;
    vertical-align: top; }

.BookCollection-text {
  display: block;
  min-height: 85px;
  padding: 10px 5px;
  background-color: white;
  line-height: 1.2;
  font-size: .7rem; }
  .BookCollection-text span {
    display: block;
    margin: 4px 5px 0; }
  .BookCollection-text a {
    font-weight: 700;
    font-style: normal;
    display: block;
    padding: 2px 5px;
    font-size: .9rem;
    text-decoration: none; }
    .BookCollection-text a:hover, .BookCollection-text a:focus {
      text-decoration: underline; }
    .BookCollection--youth .BookCollection-text a {
      color: #e64216; }
    .BookCollection--comic .BookCollection-text a {
      color: #1d8cd3; }
  @media (max-width: 999px) {
    .BookCollection-text {
      font-size: .65rem; }
      .BookCollection-text a {
        font-size: .8rem; } }

.BookFlip-container {
  max-width: 1230px;
  margin: 0 auto;
  padding: 9px;
  border: 1px solid #000;
  line-height: 1;
  background-color: #fff; }
  @media (max-width: 759px) {
    .BookFlip-container {
      background-color: #1d1d1b;
      border: none; } }

.BookFlip--simple {
  margin-top: 15px;
  margin-bottom: 15px; }

@media (max-width: 759px) {
  .BookFlip--simple {
    margin: 10px -15px; }
    .BookFlip--simple .BookFlip-container {
      padding: 8px 0; }
    .BookFlip--simple .BookFlip-content {
      padding: 5px 0; }
    .BookFlip--simple .BookFlip-item {
      padding-left: 4px;
      right: 4px; } }

.BookFlip-content {
  position: relative;
  padding: 10px 10px;
  border: 1px solid #000;
  background-color: #1d1d1b; }
  @media (max-width: 759px) {
    .BookFlip-content {
      border: none; } }

.BookFlip-container:not(.BookFlip-container--active) .BookFlip-slide + .BookFlip-slide {
  display: none; }

.BookFlip-container:not(.BookFlip-container--active) .BookFlip-nav {
  opacity: 0; }

.BookFlip-title {
  margin-left: 30px;
  padding-top: 6px;
  padding-bottom: 8px;
  color: #fff;
  font-size: 1.1rem;
  text-transform: uppercase; }

.BookFlip-teaserImg {
  vertical-align: middle;
  display: table-cell;
  width: 25%; }
  @media (max-width: 759px) {
    .BookFlip-teaserImg {
      width: 40%;
      max-width: 120px;
      vertical-align: top;
      display: inline-block; } }
  .BookFlip-teaserImg img {
    outline: solid 1px rgba(0, 0, 0, 0.1);
    outline-offset: -1px; }
    @media (max-width: 759px) {
      .BookFlip-teaserImg img {
        width: 100%; } }
  .BookFlip-teaserImg:hover img, .BookFlip-teaserImg:focus img {
    outline-color: #1d1d1b; }

.BookFlip-teaser {
  vertical-align: middle;
  display: table-cell;
  width: 30%;
  color: #fff;
  font-size: 0rem; }
  @media (max-width: 759px) {
    .BookFlip-teaser {
      width: 55%;
      display: inline-block; }
      .BookFlip-teaser > * {
        font-size: .4rem; } }
  .BookFlip-teaser > * {
    font-size: .7rem; }

.BookFlip-texts {
  min-width: 200px;
  margin-left: 30px; }
  @media (max-width: 759px) {
    .BookFlip-texts {
      min-width: initial;
      margin-left: 10px; } }

.BookFlip-authors {
  margin-bottom: 10px;
  font-size: 1.2rem;
  line-height: 1.2;
  text-transform: uppercase; }
  @media (max-width: 759px) {
    .BookFlip-authors {
      font-size: 14px; } }

.BookFlip-sup {
  margin-bottom: 5px; }

.BookFlip-sub {
  font-weight: 700;
  font-style: normal; }

.BookFlip-book {
  font-weight: 800;
  font-style: normal;
  padding-bottom: 14px;
  font-size: 1.2rem;
  text-transform: uppercase; }
  @media (max-width: 759px) {
    .BookFlip-book {
      font-size: 14px; } }

.BookFlip-desc {
  overflow: hidden;
  max-height: 8em;
  line-height: 1.6; }

.BookFlip-list {
  max-width: 740px;
  margin: 0 auto;
  font-size: 0rem;
  text-align: center; }
  .BookFlip-list ul {
    display: block;
    height: 170px;
    line-height: 170px;
    overflow: hidden;
    text-align: center; }

.BookFlip-item {
  display: inline-block;
  vertical-align: bottom;
  width: 20%;
  height: 166px;
  padding: 6px; }
  .BookFlip-item a {
    display: block;
    line-height: 154px; }
  .BookFlip-item img {
    vertical-align: bottom;
    max-width: none;
    max-height: 154px; }

@media (max-width: 759px) {
  .BookFlip-item {
    width: auto; } }

.BookFlip-img {
  display: inline-block;
  outline: none; }
  .BookFlip-img:hover img,
  .BookFlip-img:focus img {
    opacity: .5; }

.BookFlip-btn {
  font-weight: 700;
  font-style: normal;
  display: inline-block;
  margin: 10px;
  padding: 8px 22px;
  color: #fff;
  font-size: .8rem;
  text-decoration: none;
  text-transform: uppercase;
  background-color: #1d8cd3; }
  .BookFlip-btn:hover, .BookFlip-btn:focus {
    outline: solid 1px; }

.BookFlip--youth .BookFlip-container {
  padding: 10px;
  border: none;
  background-color: #c2e4e5; }
  @media (min-width: 760px) {
    .BookFlip--youth .BookFlip-container {
      border-radius: 16px; } }

.BookFlip--youth .BookFlip-content {
  padding: 9px 11px 11px;
  border: none;
  background-color: transparent; }

.BookFlip--youth .BookFlip-title {
  color: #1d1d1b; }

.BookFlip--youth .BookFlip-btn {
  padding: 10px 35px;
  color: #fff;
  background-color: #e64216;
  border-radius: 10px;
  -webkit-transition: background-color .15s;
  transition: background-color .15s; }
  .BookFlip--youth .BookFlip-btn:hover, .BookFlip--youth .BookFlip-btn:focus {
    background-color: #2aa3a7; }

.BookFlip--comic .BookFlip-btn {
  color: #fff;
  background-color: #1d8cd3; }
  .BookFlip--comic .BookFlip-btn:hover, .BookFlip--comic .BookFlip-btn:focus {
    outline: solid 1px; }

.BookFlip--teaser .BookFlip-content {
  display: table;
  table-layout: fixed;
  width: 100%;
  padding: 30px 40px; }
  @media (max-width: 759px) {
    .BookFlip--teaser .BookFlip-content {
      padding: 10px 10px; } }

@media (max-width: 759px) {
  .BookFlip--teaser .BookFlip-slide {
    position: static !important; }
    .BookFlip--teaser .BookFlip-slide.flex-active-slide .FullGallery-source {
      z-index: 10; } }

.BookFlip--teaser .BookFlip-list {
  display: table-cell;
  padding: 0 15px;
  vertical-align: middle; }
  @media (max-width: 999px) {
    .BookFlip--teaser .BookFlip-list {
      display: block;
      padding: 0; } }
  @media (max-width: 759px) {
    .BookFlip--teaser .BookFlip-list {
      position: absolute;
      left: 60px;
      right: 60px;
      bottom: 0; } }

.BookFlip--teaser .BookFlip-list ul {
  display: block;
  height: 160px;
  overflow: hidden;
  margin: 20px auto;
  text-align: center; }
  @media (max-width: 759px) {
    .BookFlip--teaser .BookFlip-list ul {
      display: none !important; } }

.BookFlip--teaser .BookFlip-item {
  display: inline-block;
  vertical-align: bottom;
  height: 160px;
  width: auto;
  padding: 0 15px 5px;
  line-height: 160px;
  text-align: center; }
  .BookFlip--teaser .BookFlip-item a {
    vertical-align: bottom; }
  .BookFlip--teaser .BookFlip-item img {
    width: auto;
    max-height: 155px;
    vertical-align: bottom; }

.BookFlip--teaser.BookFlip--comic {
  padding: 80px 5%;
  background-image: url("/bundles/castermanstatic/images/fullgallery/banner.jpg?v1");
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover; }
  @media (max-width: 759px) {
    .BookFlip--teaser.BookFlip--comic {
      padding: 0;
      background-image: none; }
      .BookFlip--teaser.BookFlip--comic .BookFlip-content {
        padding-bottom: 60px; } }
  .BookFlip--teaser.BookFlip--comic .BookFlip-nav {
    position: absolute; }
    @media (min-width: 760px) {
      .BookFlip--teaser.BookFlip--comic .BookFlip-nav {
        top: 50%;
        -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                transform: translateY(-50%); } }
    @media (max-width: 759px) {
      .BookFlip--teaser.BookFlip--comic .BookFlip-nav {
        bottom: 10px;
        z-index: 10; } }
  .BookFlip--teaser.BookFlip--comic .BookFlip-nav--prev {
    left: -28px; }
    @media (max-width: 759px) {
      .BookFlip--teaser.BookFlip--comic .BookFlip-nav--prev {
        left: 10px; } }
  .BookFlip--teaser.BookFlip--comic .BookFlip-nav--next {
    right: -28px; }
    @media (max-width: 759px) {
      .BookFlip--teaser.BookFlip--comic .BookFlip-nav--next {
        right: 10px; } }
  .BookFlip--teaser.BookFlip--comic .BookFlip-navContent {
    width: 46px;
    height: 52px;
    padding: 10px 0;
    line-height: 1;
    text-align: center;
    background-color: #fff;
    -webkit-transition: all 0.15s;
    transition: all 0.15s; }
    @media (max-width: 759px) {
      .BookFlip--teaser.BookFlip--comic .BookFlip-navContent {
        width: 32px;
        height: 32px;
        padding: 0;
        line-height: 0; } }
    .BookFlip--teaser.BookFlip--comic .BookFlip-navContent .Icon {
      width: 32px;
      height: 32px; }
      @media (max-width: 759px) {
        .BookFlip--teaser.BookFlip--comic .BookFlip-navContent .Icon {
          width: 20px !important;
          height: 20px !important; } }
    .BookFlip--teaser.BookFlip--comic .BookFlip-navContent:hover, .BookFlip--teaser.BookFlip--comic .BookFlip-navContent:focus {
      color: #fff;
      background-color: #1d8cd3; }
  .BookFlip--teaser.BookFlip--comic .BookFlip-teaserImg:hover img img,
  .BookFlip--teaser.BookFlip--comic .BookFlip-teaserImg:focus img img {
    outline-color: #fff; }

.BookFlip--teaser.BookFlip--youth {
  padding-top: 0;
  padding-bottom: 0;
  color: #1d1d1b; }
  .BookFlip--teaser.BookFlip--youth .BookFlip-container {
    max-width: 1380px;
    margin: 0 auto;
    padding: 40px;
    background-color: transparent; }
  @media (max-width: 759px) {
    .BookFlip--teaser.BookFlip--youth .BookFlip-container {
      padding: 0; }
    .BookFlip--teaser.BookFlip--youth .BookFlip-content {
      margin-bottom: -5px;
      padding: 10px 0 65px; } }
  .BookFlip--teaser.BookFlip--youth .BookFlip-teaser {
    width: 25%;
    padding-left: 30px;
    color: #1d1d1b; }
    @media (max-width: 759px) {
      .BookFlip--teaser.BookFlip--youth .BookFlip-teaser {
        padding-left: 0;
        width: 58%; } }
  .BookFlip--teaser.BookFlip--youth .BookFlip-texts {
    margin-left: 0;
    text-align: right; }
    @media (max-width: 759px) {
      .BookFlip--teaser.BookFlip--youth .BookFlip-texts {
        text-align: left; } }
  .BookFlip--teaser.BookFlip--youth .BookFlip-teaserImg {
    width: 25%;
    padding-left: 30px;
    text-align: center; }
    @media (max-width: 759px) {
      .BookFlip--teaser.BookFlip--youth .BookFlip-teaserImg {
        width: 40%;
        padding-left: 10px; } }
  .BookFlip--teaser.BookFlip--youth .BookFlip-nav {
    vertical-align: middle;
    display: table-cell;
    width: 54px;
    text-align: center; }
    @media (max-width: 759px) {
      .BookFlip--teaser.BookFlip--youth .BookFlip-nav {
        position: absolute;
        bottom: 10px;
        width: 36px; }
        .BookFlip--teaser.BookFlip--youth .BookFlip-nav button {
          width: 36px;
          height: 36px; } }
  @media (max-width: 759px) {
    .BookFlip--teaser.BookFlip--youth .BookFlip-nav--prev {
      left: 0; } }
  @media (max-width: 759px) {
    .BookFlip--teaser.BookFlip--youth .BookFlip-nav--next {
      right: 0; } }
  .BookFlip--teaser.BookFlip--youth .BookFlip-navContent {
    display: inline-block;
    width: 54px;
    height: 54px;
    padding: 11px;
    line-height: 1;
    color: #fff;
    background-color: #e64216;
    border-radius: 50%;
    -webkit-transition: background-color .15s;
    transition: background-color .15s; }
    .BookFlip--teaser.BookFlip--youth .BookFlip-navContent:hover, .BookFlip--teaser.BookFlip--youth .BookFlip-navContent:focus {
      background-color: #2aa3a7; }
    @media (max-width: 759px) {
      .BookFlip--teaser.BookFlip--youth .BookFlip-navContent {
        padding: 0;
        line-height: 0; } }
    .BookFlip--teaser.BookFlip--youth .BookFlip-navContent .Icon {
      width: 32px;
      height: 32px; }
      @media (max-width: 759px) {
        .BookFlip--teaser.BookFlip--youth .BookFlip-navContent .Icon {
          width: 15px !important;
          height: 15px !important; } }
  .BookFlip--teaser.BookFlip--youth .BookFlip-nav--prev .Icon {
    position: relative;
    right: 2px; }
  .BookFlip--teaser.BookFlip--youth .BookFlip-nav--next .Icon {
    position: relative;
    left: 2px; }

.HomeRow--youth .BookFlip--teaser .BookFlip-container {
  padding-left: 0;
  padding-right: 0; }

.HomeRow--youth .BookFlip--teaser .BookFlip-content {
  padding-left: 0;
  padding-right: 0; }

.BookFlip--teaser.BookFlip--small {
  background: none;
  padding-top: 0;
  padding-bottom: 0; }
  .BookFlip--teaser.BookFlip--small.BookFlip--youth .BookFlip-content {
    padding: 0; }
  .BookFlip--teaser.BookFlip--small .BookFlip-teaserImg {
    width: 30%; }
  .BookFlip--teaser.BookFlip--small .BookFlip-teaser {
    display: none; }
  .BookFlip--teaser.BookFlip--small .BookFlip-list {
    vertical-align: bottom;
    width: 70%; }

.BookInfo {
  display: block;
  max-width: 285px;
  margin-left: auto;
  margin-right: auto; }
  .BookInfo a {
    color: inherit;
    text-decoration: none; }
  .BookInfo a:hover, .BookInfo a:focus, .BookInfo a:active {
    text-decoration: underline; }

.BookInfo-top {
  position: relative;
  padding: 5px 0; }
  .BookInfo:first-child .BookInfo-top .BookInfo-label--new {
    position: absolute;
    left: 0;
    bottom: 5px; }

.BookInfo-frame {
  position: relative;
  padding: 9px 9px 2px;
  border: solid 1px #d8d8d8;
  background-color: #fff; }
  .BookInfo-frame .BookInfo-link_url {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 5;
    top: 0;
    left: 0; }

.BookInfo-label {
  display: inline-block;
  margin-right: 8px;
  padding: 6px;
  line-height: 1;
  font-size: .55rem;
  text-transform: uppercase;
  font-weight: 700;
  font-style: normal; }

.BookInfo-label--new {
  color: #fff;
  background-color: #404040; }
  .BookInfo--comic .BookInfo-label--new {
    background-color: #000; }
  .BookInfo--youth .BookInfo-label--new {
    background-color: #008d91; }

.BookInfo-label--icon {
  position: relative;
  padding-left: 20px; }
  .BookInfo-label--icon .Icon {
    position: absolute;
    top: 50%;
    left: 0;
    width: 16px;
    height: 16px;
    margin-top: -8px; }

.BookInfo-label--gray {
  border-radius: 5px;
  text-transform: none;
  color: #1d1d1b;
  background-color: #e3e3e3; }

.BookInfo-toggle {
  position: absolute;
  z-index: 6;
  line-height: 1;
  outline: none; }
  .BookInfo-toggle:focus {
    outline: solid 1px currentColor; }
  .BookInfo[data-state="compact"] .BookInfo-toggle {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    cursor: pointer;
    cursor: zoom-in;
    background-color: rgba(255, 255, 255, 0.001); }
    .BookInfo[data-state="compact"] .BookInfo-toggle .Icon {
      display: none; }
  [data-bookinfo-list="initial"] .BookInfo-toggle {
    display: none; }
  .BookInfo[data-state="expanded"] .BookInfo-toggle {
    top: -1px;
    right: -1px;
    padding: 10px;
    color: #fff;
    cursor: pointer;
    cursor: zoom-out; }
    .BookInfo[data-state="expanded"] .BookInfo-toggle:hover {
      color: #404040;
      background-color: #fff; }
    .BookInfo[data-state="expanded"] .BookInfo-toggle .Icon {
      vertical-align: top; }

.BookInfo-cover {
  position: relative;
  z-index: 4;
  margin: -10px -10px 0; }
  .BookInfo--coverOnly .BookInfo-cover {
    margin-bottom: -3px; }
  .BookInfo-cover img {
    display: block;
    width: 100%; }
  .BookInfo-cover::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border: solid rgba(0, 0, 0, 0.12);
    border-width: 1px 1px 0; }

.BookInfo-block {
  padding-top: 5px;
  padding-bottom: 5px;
  font-size: .6rem; }
  .BookInfo-block h2, .BookInfo-block h3, .BookInfo-block h4, .BookInfo-block p, .BookInfo-block li {
    padding-top: 3px;
    padding-bottom: 3px;
    line-height: 1.3; }
  .BookInfo-block h2, .BookInfo-block h3, .BookInfo-block h4 {
    font-weight: 700;
    font-style: normal;
    font-size: .8rem;
    line-height: 1.1; }

.BookInfo-block + .BookInfo-block {
  margin-top: 2px;
  border-top: solid 1px rgba(255, 255, 255, 0.6); }

.BookInfo-block--authors {
  padding-right: 25px; }

.BookInfo-block--desc {
  font-size: .65rem; }

.BookInfo-block--labels {
  margin-top: 5px; }
  .BookInfo-block--labels > * {
    margin-top: 5px;
    margin-bottom: 2px; }
  .BookInfo-block--labels .BookInfo-label:first-child {
    margin-right: 15px; }

.BookInfo-price {
  font-size: .9rem;
  font-weight: 700;
  font-style: normal; }

.BookInfo-link.BookInfo-link {
  text-decoration: underline; }

.BookInfo-cta {
  display: table;
  width: 100%;
  margin-top: 5px;
  border: solid 1px rgba(255, 255, 255, 0.6);
  font-size: .65rem;
  text-transform: uppercase; }
  .BookInfo-cta > * {
    display: table-cell;
    vertical-align: middle; }

.BookInfo-ctaItem {
  padding: 6px 8px;
  text-align: center;
  text-decoration: none;
  color: inherit; }
  .BookInfo-ctaItem:hover, .BookInfo-ctaItem:focus, .BookInfo-ctaItem:active {
    text-decoration: underline; }

.BookInfo-ctaSep {
  width: 1px; }
  .BookInfo-ctaSep::before {
    content: "";
    display: block;
    width: 1px;
    height: 1.2em;
    background-color: rgba(255, 255, 255, 0.6); }

.BookInfo[data-state="compact"] .BookInfo-block--desc,
.BookInfo[data-state="compact"] .BookInfo-block--meta,
.BookInfo[data-state="compact"] .BookInfo-block--pricing,
.BookInfo[data-state="compact"] .BookInfo-block--labels,
.BookInfo[data-state="compact"] .BookInfo-cta {
  display: none; }

.BookInfo[data-state="compact"].BookInfo--coverOnly .BookInfo-block {
  display: none; }

.BookInfo[data-state="compact"].BookInfo--coverOnly .BookInfo-cover::after {
  border-bottom-width: 1px; }

.BookInfo[data-state="expanded"] .BookInfo-frame {
  padding-top: 10px;
  padding-bottom: 25px;
  border-color: transparent;
  color: #fff;
  background-color: #1d1d1b; }

.BookInfo[data-state="expanded"] .BookInfo-cover {
  display: none; }

.BookInfo[data-state="expanded"] .BookInfo-block {
  padding-top: 10px;
  padding-bottom: 10px; }

.BookInfo[data-state="expanded"].BookInfo--coverOnly .BookInfo-block--meta,
.BookInfo[data-state="expanded"].BookInfo--coverOnly .BookInfo-block--pricing,
.BookInfo[data-state="expanded"].BookInfo--coverOnly .BookInfo-block--labels {
  display: none; }

.BookInfo--comic[data-state="expanded"] .BookInfo-frame {
  background-color: #1d8cd3; }

.BookInfo--youth[data-state="expanded"] .BookInfo-frame {
  background-color: #008d91; }

.BookLink {
  display: block;
  max-width: 300px;
  line-height: 1.2;
  font-size: .7rem;
  text-align: left; }
  .BookLink a {
    text-decoration: none; }

.BookLink-cover {
  position: relative;
  display: block;
  outline: none;
  margin-bottom: 10px; }
  .BookLink-cover img {
    display: block;
    width: 100%; }
  .BookLink-cover::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border: 1px solid rgba(0, 0, 0, 0.1); }
  .BookLink-cover:hover::after, .BookLink-cover:focus::after {
    border-color: rgba(0, 0, 0, 0.8); }

.BookLink-credits {
  margin-top: 6px; }
  .BookLink-credits a:hover, .BookLink-credits a:focus, .BookLink-credits a:active {
    text-decoration: underline; }

.BookLink-title {
  margin-top: 6px; }
  .BookLink-title span {
    display: block;
    font-size: .6rem; }
  .BookLink-title strong {
    display: block;
    padding: 2px 0; }

.BookLink-mainLink {
  display: block; }
  .BookLink-mainLink:hover strong, .BookLink-mainLink:focus strong {
    color: #e3001a; }
  .BookLink--youth .BookLink-mainLink:hover strong, .BookLink--youth .BookLink-mainLink:focus strong {
    color: #e64216; }

.BookLink-meta {
  margin-top: 6px; }

.BookLink-date {
  display: block;
  text-transform: uppercase; }
  .BookLink--comic .BookLink-date {
    color: #1d8cd3; }
  .BookLink--youth .BookLink-date {
    color: #ff6300; }

.BookLink-related {
  position: relative;
  display: inline-block;
  min-height: 26px;
  margin-top: 6px;
  border: solid 1px #e4e4e4;
  padding: 4px 6px 4px 22px;
  text-transform: uppercase;
  font-size: .65rem;
  background-color: #f6f7f8; }
  .BookLink-related .Icon {
    position: absolute;
    top: 50%;
    left: 3px;
    margin-top: -8px; }
  .BookLink--comic .BookLink-related {
    border-color: #d8d8d8; }
  .BookLink--youth .BookLink-related {
    border-radius: 5px;
    color: #e64216; }

.BookLink-main--small {
  height: 5em; }

.BookLink-main--medium {
  height: 7em; }

.BookLink-main--big {
  height: 9em; }

.BookSheet {
  margin-bottom: 15px; }
  @media (min-width: 500px) {
    .BookSheet {
      display: table;
      table-layout: fixed;
      width: 100%; } }

.BookSheet-label {
  font-weight: 700;
  font-style: normal;
  padding-top: 10px;
  font-size: .7rem;
  line-height: .8rem;
  text-transform: uppercase;
  text-align: center; }
  @media (min-width: 500px) {
    .BookSheet-label {
      display: table-caption;
      text-align: left; } }
  .BookSheet-label span {
    display: inline-block;
    padding: 3px 9px;
    color: #fff;
    background-color: #1d1d1b; }

.BookSheet-image {
  padding-top: 5px;
  padding-bottom: 25px;
  font-size: 0rem;
  text-align: center; }
  @media (min-width: 500px) {
    .BookSheet-image {
      display: table-cell;
      vertical-align: top;
      width: 42.5%;
      padding-right: 4.5%;
      padding-bottom: 15px;
      text-align: left; } }
  .BookSheet-image img {
    outline: solid 1px rgba(0, 0, 0, 0.12);
    outline-offset: -1px; }

.Booksheet-browse {
  font-weight: 700;
  font-style: normal;
  display: block;
  margin: 15px auto 0;
  text-align: center; }
  .Booksheet-browse a, .Booksheet-browse button {
    display: inline-block;
    padding: 9px 12px;
    color: #fff;
    font-size: .6rem;
    line-height: .5rem;
    text-transform: uppercase;
    text-decoration: none;
    background-color: #1d8cd3; }

.BookSheet-authors {
  margin-bottom: 10px;
  font-size: .9rem;
  line-height: 1.45; }
  .BookSheet-authors a {
    font-weight: 700;
    font-style: normal;
    display: inline-block;
    text-decoration: none;
    border-bottom: 1px solid #ddd;
    line-height: 1.2; }
    .BookSheet-authors a:hover, .BookSheet-authors a:focus {
      border-color: #555; }

.BookSheet-content {
  padding-bottom: 5px; }
  @media (min-width: 500px) {
    .BookSheet-content {
      display: table-cell;
      vertical-align: top;
      width: auto; } }

.BookSheet-suptitle {
  font-weight: 400;
  font-style: italic;
  margin-top: 24px;
  margin-bottom: 0;
  font-size: .9rem;
  line-height: 1.2; }

.BookSheet-title {
  font-weight: 700;
  font-style: normal;
  margin-top: 20px;
  margin-bottom: 25px;
  font-size: 1.2rem;
  line-height: 1.15; }
  .BookSheet-suptitle + .BookSheet-title {
    margin-top: 2px; }

.BookSheet-subtitle {
  font-weight: 700;
  font-style: normal;
  margin-bottom: 22px;
  font-size: .8rem;
  line-height: 1.2; }
  .BookSheet-title + .BookSheet-subtitle {
    margin-top: -20px; }

.BookSheet-meta {
  font-weight: 600;
  font-style: normal;
  margin-top: 10px;
  margin-bottom: 15px;
  color: #505050;
  font-size: .6rem; }

.BookSheet-metaDetail {
  display: block; }

.BookSheet-price {
  font-weight: 700;
  font-style: normal;
  margin-top: 20px;
  margin-bottom: 20px;
  font-size: .55rem; }

.BookSheet-priceValue {
  font-weight: 700;
  font-style: normal;
  font-size: .9rem; }

.BookSheet-priceTitle {
  display: inline-block;
  text-transform: uppercase; }

.BookSheet-priceList {
  display: inline-block;
  font-size: 0rem; }
  .BookSheet-priceList > * {
    font-size: .55rem; }

.BookSheet-priceItem {
  display: inline-block;
  padding: 3px 10px;
  margin-left: 6px;
  background-color: #eee;
  border-radius: 5px; }
  .BookSheet-priceItem a {
    text-decoration: none; }

.BookSheet-features {
  margin-top: 10px;
  margin-bottom: 10px;
  padding: 15px;
  border: 1px solid #dcdcdc; }

.BookSheet-featList {
  padding-bottom: 10px;
  font-size: 0rem; }
  .BookSheet-featList > * {
    font-size: .6rem; }
  .BookSheet-featList:nth-child(2) {
    padding-top: 10px; }
  .BookSheet-featList:last-child {
    padding-bottom: 0; }
  .BookSheet-featList strong {
    font-weight: 800;
    font-style: normal;
    font-size: .8rem; }
  .BookSheet-featList a {
    font-weight: 600;
    font-style: normal;
    display: inline-block;
    margin-left: 6px;
    padding-left: 6px;
    padding-right: 6px;
    text-decoration: none;
    background-color: #eee; }

.BookSheet-featIcon {
  font-weight: 700;
  font-style: normal;
  display: inline-block;
  margin-right: 20px;
  font-size: .6rem;
  text-transform: uppercase; }
  .BookSheet-featIcon span {
    font-weight: 400;
    font-style: normal;
    text-transform: none; }

.BookSheet-text {
  max-width: 620px;
  padding-top: 10px;
  padding-bottom: 10px;
  font-size: .7rem;
  line-height: 1.5; }
  .BookSheet-text strong {
    font-size: .9rem;
    line-height: 1.3; }
  .BookSheet-text p {
    padding-bottom: 20px; }

.BookSheet-video {
  margin-bottom: 10px;
  border-bottom: 1px solid #dcdcdc;
  padding-bottom: 10px; }

.BookSheet-videoText {
  margin-top: 10px;
  font-size: .7rem; }

.BookSheet-sound {
  max-width: 270px;
  padding-top: 10px;
  padding-bottom: 10px; }
  .BookSheet-sound audio {
    width: 100%; }

.BookSheet-soundText {
  font-weight: 600;
  font-style: normal;
  padding-bottom: 10px;
  font-size: .6rem; }
  .BookSheet-soundText span {
    font-weight: 700;
    font-style: normal;
    display: block;
    padding-bottom: 10px;
    font-size: .7rem; }
  .BookSheet-soundText a {
    color: #e3001a; }

.BookSheet--youth .BookSheet-label span {
  background-color: #2aa3a7; }

.BookSheet--youth .Booksheet-browse a,
.BookSheet--youth .Booksheet-browse button {
  background-color: #e64216; }

.BookSheet--youth .BookSheet-features {
  border-radius: 10px; }

.BookSheet--youth .BookSheet-soundText a {
  color: #e64216; }

.BookSlider,
.BookSlider-news {
  position: relative;
  min-width: 265px;
  max-width: 1285px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 5px;
  outline: none; }
  .BookSlider[data-state~="nav-left"],
  .BookSlider-news[data-state~="nav-left"] {
    padding-left: 60px; }
    .BookSlider[data-state~="nav-left"] .flex-viewport,
    .BookSlider-news[data-state~="nav-left"] .flex-viewport {
      margin-left: auto; }
  .BookSlider[data-state~="nav-right"],
  .BookSlider-news[data-state~="nav-right"] {
    padding-right: 60px; }
    .BookSlider[data-state~="nav-right"] .flex-viewport,
    .BookSlider-news[data-state~="nav-right"] .flex-viewport {
      margin-right: auto; }

.BookSlider-slides {
  white-space: nowrap;
  font-size: 0rem; }

.BookSlider > .BookSlider-slides > .BookSlider-slide:nth-child(1n+6),
.BookSlider-news > .BookSlider-slides > .BookSlider-slide:nth-child(1n+6) {
  visibility: hidden; }

.HomeRow .BookSlider,
.HomeRow .BookSlider-news {
  text-align: center; }

.BookSlider .flex-viewport {
  text-align: left;
  padding-bottom: 30px;
  margin-bottom: -30px; }

.BookSlider-news .flex-viewport {
  text-align: left; }

.BookSlider .BookSlider-slides,
.BookSlider-news .BookSlider-slides {
  overflow: hidden;
  padding-bottom: 30px;
  margin-bottom: -30px; }

.BookSlider-slide {
  float: none !important;
  display: inline-block !important;
  vertical-align: bottom;
  width: 205px;
  padding: 5px 0 10px;
  white-space: normal;
  font-size: .7rem; }
  * + .BookSlider-slide {
    margin-left: 20px; }
  .BookSlider[data-state~="gutter-large"] * + .BookSlider-slide,
  .BookSlider-news[data-state~="gutter-large"] * + .BookSlider-slide {
    margin-left: 35px; }

@supports (object-fit: cover) {
  @media (max-width: 759px) {
    .BookSlider-slide img {
      min-height: 205px;
      max-height: 290px;
      object-fit: cover; } } }

.BookSlider-btn {
  position: absolute;
  top: 50%;
  margin-top: -45px;
  padding: 10px;
  line-height: 10px;
  color: #fff;
  background-color: #404040;
  -webkit-transition: background-color linear .15s;
  transition: background-color linear .15s; }
  .BookSlider-btn[aria-hidden="true"] {
    display: none; }
  .BookSlider-btn:active {
    -webkit-transform: translateY(1px);
        -ms-transform: translateY(1px);
            transform: translateY(1px); }
  .BookSlider--comic .BookSlider-btn {
    padding: 14px 9px;
    background-color: #1d1d1b; }
    .BookSlider--comic .BookSlider-btn:hover, .BookSlider--comic .BookSlider-btn:focus {
      background-color: #e3001a; }
  .BookSlider--youth .BookSlider-btn {
    border-radius: 50%;
    padding: 12px;
    background-color: #e64216; }
    .BookSlider--youth .BookSlider-btn:hover, .BookSlider--youth .BookSlider-btn:focus {
      background-color: #2aa3a7; }
  .BookSlider-btn .Icon {
    vertical-align: top;
    width: 32px;
    height: 32px; }

.BookSlider-btn--prev {
  left: 0; }
  .BookSlider--youth .BookSlider-btn--prev {
    left: -5px; }
  .BookSlider-btn--prev .Icon {
    position: relative;
    left: -3px; }

.BookSlider-btn--next {
  right: 0; }
  .BookSlider--youth .BookSlider-btn--next {
    right: -5px; }
  .BookSlider-btn--next .Icon {
    position: relative;
    right: -3px; }

.BookSlider-news .flex-control-nav.flex-control-paging {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 15px; }
  .BookSlider-news .flex-control-nav.flex-control-paging li a {
    display: inline-block;
    width: 25px;
    height: 7px;
    margin: 5px;
    background-color: #d9dadb;
    font-size: 0;
    cursor: pointer; }
    .BookSlider-news .flex-control-nav.flex-control-paging li a.flex-active {
      background-color: #e3001a; }

.Columns {
  margin-left: -6px;
  margin-right: -6px;
  font-size: 0rem; }
  .Columns > * {
    display: inline-block !important;
    vertical-align: top;
    max-width: 320px;
    margin: 0 6px 15px;
    font-size: .8rem;
    text-align: left; }
  @media (max-width: 999px) {
    .Columns {
      text-align: center; } }

.Columns-col {
  margin: 0;
  padding-left: 6px;
  padding-right: 6px; }
  .Columns[data-columns="1"] .Columns-col {
    width: 100%; }
  .Columns[data-columns="2"] .Columns-col {
    width: 50%; }
  .Columns[data-columns="3"] .Columns-col {
    width: 33.33%; }
  .Columns[data-columns="4"] .Columns-col {
    width: 25%; }
  .Columns[data-columns="5"] .Columns-col {
    width: 20%; }

.Columns-col > * + * {
  margin-top: 15px; }

.EventsSidebar {
  padding-top: 30px;
  padding-bottom: 50px;
  background-color: #f4f4f4; }

.EventSidebar {
  padding-top: 20px;
  padding-bottom: 20px;
  margin-left: 20px;
  margin-right: 20px;
  border-bottom: 1px solid #e5e5e5; }

.EventSidebar-image {
  margin-bottom: 16px; }
  .EventSidebar-image img {
    vertical-align: top; }

.EventSidebar-title {
  font-weight: 700;
  font-style: normal;
  font-size: 15px; }

.EventSidebar-date {
  font-weight: 600;
  font-style: normal;
  display: inline-block;
  margin-bottom: 10px;
  font-size: 13px; }

.EventSidebar-desc {
  font-weight: 600;
  font-style: normal;
  font-size: 12px; }

.EventSidebar-readM {
  display: inline-block;
  color: #e3001a; }

.EventsSidebar--comic {
  background-color: #f4f4f4; }
  .EventsSidebar--comic .EventSidebar {
    margin-left: 20px;
    margin-right: 20px;
    border-bottom-color: #e5e5e5;
    border-bottom-width: 1px; }
  .EventsSidebar--comic .EventSidebar-readM {
    color: #e3001a; }

.EventsSidebar--youth {
  background-color: #f6f7f8; }
  .EventsSidebar--youth .EventSidebar {
    padding-left: 20px;
    padding-right: 20px;
    border-bottom-color: #fff;
    border-bottom-width: 3px; }
  .EventsSidebar--youth .EventSidebar-readM {
    color: #e64216; }

.EventSearch {
  padding-top: 25px;
  background-color: #e4e4e4; }

.EventSearch-title {
  font-weight: 800;
  font-style: normal;
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 25px;
  font-size: 16px;
  line-height: 1.2;
  text-transform: uppercase;
  background-color: #e4e4e4; }
  .EventSearch--youth .EventSearch-title {
    font-weight: 400;
    font-style: normal; }
  .EventSearch-title .EventSearch--comic {
    font-weight: 800;
    font-style: normal; }

.Filter {
  max-width: 440px;
  margin: 0 auto;
  padding-bottom: 1px;
  color: #1d1d1b; }
  .Filter button:focus {
    outline: dotted 1px #1d1d1b;
    outline-offset: 1px; }

.Filter--comic, .Filter--teacher {
  background-color: #f4f4f4; }

.Filter--youth {
  background-color: #f6f7f8; }

.Filter-btn {
  font-weight: 700;
  font-style: normal;
  display: inline-block;
  vertical-align: middle;
  position: relative;
  max-width: 100%;
  margin-top: 4px;
  margin-bottom: 4px;
  padding: 3px 6px;
  border: solid 1px #d0d0d0;
  border-radius: 5px;
  text-transform: uppercase;
  font-size: .55rem;
  text-align: left;
  overflow: hidden;
  text-overflow: ellipsis;
  text-decoration: none;
  background-color: #fff;
  cursor: pointer; }

.Filter-btn--big {
  font-weight: 400;
  font-style: normal;
  padding: 5px 10px;
  font-size: .7rem; }

.Filter-btn--active {
  color: #fff;
  border-color: #555;
  background-color: #555; }
  .Filter--comic .Filter-btn--active {
    border-color: #1d8cd3;
    background-color: #1d8cd3; }
  .Filter--youth .Filter-btn--active {
    border-color: #008d91;
    background-color: #008d91; }
  .Filter--teacher .Filter-btn--active {
    border-color: #e3001a;
    background-color: #e3001a; }

.Filter-btn::after {
  position: absolute;
  top: 50%;
  width: 15px;
  height: 15px;
  margin-top: -7px;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAAeBAMAAACCtmB8AAAAKlBMVEX///////////////////////////////////////////////////////9q+00tAAAADXRSTlMACQpDREZQr7m7vPX2ZiWTSAAAAOdJREFUeF6l0y1OxFAUhuEvtzCaJTSoAUWCQHQJY8aDQGNHI8BjWEIFgqRqqJrcJaABmm8v5L5HjTqC2vc8TXt/5ONHx0+el4cofvtsuewi6OaMPJeJ+tvftbxerqhdfWp52eqSPOq0WuXFe/Lg717yLJUJLN1aaxveVftZ8r0EHyWtrEcbPtj+kvyqxsG6sDZuHOwPyT89fIwpnVT4EFNy8PcYsoJfx1DL8PPAVvADmAxXYCu4wWQ4mAwHk+GByXAwGQ4mw8FZTl6efVryY9myJIuabEmyoclxSA5TchSTg5xdg//dsT9jA4SKFpCX6AAAAABJRU5ErkJggg==);
  background-size: auto 15px;
  background-color: #404040; }
  .Filter--comic .Filter-btn::after {
    background-color: #1d8cd3; }
  .Filter--youth .Filter-btn::after {
    background-color: #008d91; }
  .Filter--teacher .Filter-btn::after {
    background-color: #e3001a; }

.Filter-btn--active.Filter-btn::after {
  background-color: transparent; }

.Filter-btn--close {
  padding-right: 25px; }
  .Filter-btn--close::after {
    content: "";
    right: 5px; }

.Filter-btn--closeLeft {
  padding-left: 30px; }
  .Filter-btn--closeLeft::after {
    content: "";
    left: 8px; }

.Filter-btn--active.Filter-btn--close::after,
.Filter-btn--active.Filter-btn--closeLeft::after {
  background-position: right top; }

.Filter-top {
  padding: 18px 15px 25px; }
  .Filter--comic .Filter-top {
    background-color: #e4e4e4; }

.Filter-topTitle {
  margin-bottom: 8px;
  line-height: 1.2;
  text-transform: uppercase; }
  .Filter--comic .Filter-topTitle {
    font-weight: 700;
    font-style: normal;
    font-size: .9rem; }
  .Filter--youth .Filter-topTitle {
    font-weight: 300;
    font-style: normal;
    font-size: 1.1rem; }

.Filter-topList {
  margin-left: -2px;
  margin-right: -2px;
  padding: 5px 0; }
  .Filter-topList > li {
    display: inline-block;
    max-width: 100%;
    vertical-align: middle;
    margin: 2px; }

.Filter-topEnd {
  padding: 6px 0 4px;
  text-align: right; }

.Filter--youth .Filter-search {
  margin-top: -10px;
  margin-bottom: -10px;
  padding: 15px;
  border-top: solid 4px #fff;
  border-bottom: solid 4px #fff; }
  .RwdSection .Filter--youth .Filter-search {
    border: none; }

.Filter-box {
  position: relative;
  margin: 30px 15px;
  padding-bottom: 8px; }
  .Filter--comic .Filter-box,
  .Filter--teacher .Filter-box {
    border-top: solid 3px #1d1d1d;
    background-color: #e4e4e4; }
  .Filter--youth .Filter-box {
    border: solid 1px #e7e7e7;
    border-radius: 5px;
    background-color: #fff; }

.Filter-boxTitle {
  min-height: 42px;
  margin-right: 40px;
  padding: 8px 10px 15px 10px;
  font-size: 16px;
  font-weight: 700;
  font-style: normal; }
  .Filter--comic .Filter-boxTitle,
  .Filter--teacher .Filter-boxTitle {
    text-transform: uppercase; }
  .Filter--youth .Filter-boxTitle {
    min-height: 46px;
    padding-top: 12px; }

.Filter-boxReset {
  position: absolute;
  top: 0;
  right: 0;
  padding: 10px;
  width: 40px;
  height: 40px;
  color: #fff;
  background-color: #555;
  cursor: pointer; }
  .Filter-boxReset .Icon {
    vertical-align: top;
    width: 20px;
    height: 20px; }
  .Filter--comic .Filter-boxReset,
  .Filter--teacher .Filter-boxReset {
    top: -3px;
    background-color: #1d1d1b; }
  .Filter--youth .Filter-boxReset {
    top: 6px;
    right: 6px;
    width: 36px;
    height: 36px;
    padding: 8px;
    border-radius: 50%;
    background-color: #e64216; }

.Filter-boxHead--empty {
  padding-top: 15px; }
  .Filter-boxHead--empty ~ .Filter-boxList {
    padding-right: 50px; }

.Filter-boxReduce {
  padding: 0 10px 12px; }

.Filter-textInput {
  width: 100%;
  padding: 6px 8px;
  border: solid 1px #ccc;
  font-size: .65rem; }
  .Filter-textInput:focus {
    border-color: #999; }
  .Filter--comic .Filter-textInput,
  .Filter--teacher .Filter-textInput {
    padding-top: 7px;
    padding-bottom: 7px;
    border: none; }
  .Filter--youth .Filter-textInput {
    border-radius: 5px; }

.Filter-boxList {
  padding: 0 10px 1px; }
  .Filter-boxList::after {
    content: "";
    display: block;
    height: 12px; }
  .Filter-boxList li[aria-hidden="true"] {
    display: none; }

.Filter-boxList--overflow {
  max-height: 190px;
  overflow: auto; }

.Filter-boxList--overflowBig {
  max-height: 900px;
  overflow: auto; }

.Filter-subList {
  overflow: hidden;
  margin-left: 5px; }
  .Filter-subList > li {
    position: relative;
    padding-left: 15px; }
  .Filter-subList > li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 14px;
    width: 9px;
    border-bottom: solid 1px #555; }
  .Filter-subList > li::after {
    content: "";
    position: absolute;
    left: 0;
    height: 200px;
    bottom: 100%;
    margin-bottom: -14px;
    border-left: solid 1px #555; }
  .Filter-subList .Filter-btn {
    padding-top: 2px;
    padding-bottom: 2px;
    font-size: .5rem; }

.Filter-btn--tab {
  position: relative;
  bottom: -1px;
  margin-bottom: 0 !important;
  border-radius: 5px 5px 0 0;
  border-bottom-width: 0; }

.Filter-details {
  font-weight: 400;
  font-style: normal;
  display: table;
  padding: 10px 6px;
  border: solid 1px #d0d0d0;
  border-radius: 0 5px 5px 5px;
  text-transform: uppercase;
  font-size: .55rem;
  background-color: #fff; }

.Filter-btn--active + .Filter-details {
  color: #fff;
  border-color: #555;
  background-color: #555; }
  .Filter--comic .Filter-btn--active + .Filter-details {
    color: #fff;
    background-color: #1d8cd3;
    border-color: #1d8cd3; }
  .Filter--youth .Filter-btn--active + .Filter-details {
    color: #fff;
    background-color: #008d91;
    border-color: #008d91; }
  .Filter--teacher .Filter-btn--active + .Filter-details {
    color: #fff;
    background-color: #e3001a;
    border-color: #e3001a; }

.Filter-detailsLine {
  display: table-row;
  width: 100%; }
  .Filter-detailsLine > * {
    display: table-cell;
    vertical-align: middle;
    padding: 4px; }
  .Filter-detailsLine > label {
    width: 10%;
    white-space: nowrap; }

.Filter-date {
  padding-left: 10px;
  padding-right: 10px; }
  .Filter-date .Icon {
    position: absolute;
    margin: 3px 0 0 6px;
    pointer-events: none; }
  .Filter-date input {
    width: 100%;
    min-height: 24px;
    padding: 2px 10px 4px 26px;
    border: solid 1px;
    vertical-align: top;
    text-align: center;
    font: inherit;
    text-transform: uppercase;
    background-color: transparent;
    cursor: pointer; }
    .Filter-date input::-webkit-input-placeholder {
      font-weight: 400;
      font-style: italic;
      opacity: 1;
      text-transform: none;
      font-size: .6rem; }
    .Filter-date input::-moz-placeholder {
      font-weight: 400;
      font-style: italic;
      opacity: 1;
      text-transform: none;
      font-size: .6rem; }
    .Filter-date input:-ms-input-placeholder {
      font-weight: 400;
      font-style: italic;
      opacity: 1;
      text-transform: none;
      font-size: .6rem; }
    .Filter-date input:placeholder-shown {
      font-weight: 400;
      font-style: italic;
      opacity: 1;
      text-transform: none;
      font-size: .6rem; }

.Filter--comic .Filter-date .picker__input--active {
  color: #1d8cd3;
  border-color: #fff;
  background-color: #fff; }

.Filter--youth .Filter-date .picker__input--active {
  color: #008d91;
  border-color: #fff;
  background-color: #fff; }

.Filter-date .picker__select--month,
.Filter-date .picker__select--year {
  padding-top: 4px;
  padding-bottom: 4px; }

.Filter-date .picker__nav--prev,
.Filter-date .picker__nav--next {
  display: none; }

.Form {
  width: 100%; }

.Form-message {
  padding: 10px;
  border: 1px solid #eee; }
  .Form-message--success {
    border: 1px solid #287325;
    color: #287325;
    background-color: #AEE2AD; }
  .Form-message--error {
    color: #b94a48;
    background-color: #f2dede;
    border: 1px solid #E7433C; }

.Form-text {
  margin-bottom: 20px;
  font-size: .75rem; }

.Form-group, .Form-groupElement > *, .Form-groupElement--2-3 > * {
  margin-bottom: 20px;
  color: #1d1d1b;
  font-size: 0; }

.Form-element, .Form-groupElement > *, .Form-groupElement--2-3 > * {
  vertical-align: top;
  display: inline-block;
  -webkit-align-self: center;
      -ms-flex-item-align: center;
              -ms-grid-row-align: center;
          align-self: center;
  width: 100%;
  padding: 7px 5px;
  margin-bottom: 5px;
  font-size: .75rem;
  line-height: 1.4; }

.Form-element--1-2 {
  width: 50%; }
  @media (max-width: 759px) {
    .Form-element--1-2 {
      width: 100%; } }

.Form-element--1-3 {
  width: 33%; }
  @media (max-width: 759px) {
    .Form-element--1-3 {
      width: 100%; } }

.Form-element--2-3, .Form-groupElement--2-3 > * {
  width: 67%; }
  @media (max-width: 759px) {
    .Form-element--2-3, .Form-groupElement--2-3 > * {
      width: 100%; } }

.Form-title {
  color: #e3001a;
  font-size: 1.2rem;
  line-height: 1.05; }

.Form-label {
  font-weight: 700;
  font-style: normal;
  display: block;
  margin-right: 10px;
  margin-bottom: 5px;
  font-size: .75rem; }

.Form-select {
  font-weight: 400;
  font-style: normal;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: inline-block;
  width: 100%;
  padding: 4px 30px 5px 6px;
  border: 1px solid #c4c4c4;
  border-radius: 5px;
  font-size: .7rem;
  background-color: #f6f7f8;
  background-image: url("/bundles/castermanstatic/images/layout/arrow-bottom@2x.png?v1");
  background-position: 95% center;
  background-position: right 10px center;
  background-repeat: no-repeat;
  background-size: 13px 13px; }
  .Form-select::-ms-expand {
    display: none; }

.Form-select--light {
  height: 54px;
  padding: 14px 40px 15px 16px;
  border-color: #ccc8c8;
  font-size: .8rem;
  line-height: 20px;
  background-color: #fff;
  background-position: right 20px center;
  border-radius: 0; }

.Form-input {
  font-weight: 400;
  font-style: normal;
  display: inline-block;
  width: 100%;
  height: 100%;
  padding: 14px 16px 15px;
  border: 1px solid #ccc8c8;
  font-size: .8rem;
  line-height: 20px;
  background-color: transparent; }

.Form-input--light {
  height: 54px;
  padding-right: 20px;
  padding-left: 20px; }

.Form-textarea {
  overflow: auto;
  display: inline-block;
  width: 100%;
  min-height: 78px;
  resize: vertical;
  padding: 14px 20px 15px 20px;
  border: 1px solid #ccc8c8;
  font-size: .8rem;
  line-height: 20px; }

.Form-optional {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-bottom: 10px; }
  .Form-optional .Form-label {
    margin-right: 5px;
    margin-bottom: 0; }

.Form-legend {
  color: #404040;
  font-size: .7rem;
  font-style: italic; }

.Form-checkbox input,
.Form-radio input {
  position: absolute;
  left: -9999px; }

.Form-checkbox label,
.Form-radio label {
  position: relative;
  display: inline-block;
  height: 100%;
  padding: 7px 20px 6px 30px;
  font-size: .8rem;
  line-height: 20px;
  background-color: transparent;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }

.Form-checkbox label::before,
.Form-radio label::before {
  content: '';
  display: block;
  position: absolute;
  top: 6px;
  left: 0;
  width: 20px;
  height: 20px;
  border: 1px solid #ccc8c8;
  -webkit-transition: background-color .2s;
  transition: background-color .2s; }

.Form-checkbox input:checked + label::before,
.Form-radio input:checked + label::before {
  background-color: #404040;
  box-shadow: inset 0 0 0 1px white; }

.Form-checkbox input:focus + label::before,
.Form-radio input:focus + label::before {
  outline-offset: 1px;
  outline: solid 2px #a5baf2; }

.Form-checkbox--1-2,
.Form-radio--1-2 {
  margin-right: -10px; }
  .Form-checkbox--1-2 label,
  .Form-radio--1-2 label {
    width: calc(50% - 10px);
    margin-right: 10px;
    margin-bottom: 10px; }
    @media (max-width: 759px) {
      .Form-checkbox--1-2 label,
      .Form-radio--1-2 label {
        width: calc(100% - 10px); } }

.Form-checkbox--full label,
.Form-radio--full label {
  width: 100%;
  margin-bottom: 10px; }

@media (max-width: 759px) {
  .Form-checkbox label,
  .Form-radio label {
    display: block; } }

.Form-radio label, .Form-radio label::before {
  border-radius: 50%; }

.Form-radio input:checked + label::before {
  box-shadow: inset 0 0 0 3px white; }

.Form-rgpd {
  display: inline-block;
  font-size: .8rem; }
  .Form-rgpd a {
    font-weight: 400;
    font-style: italic;
    color: #e3001a;
    text-decoration: none; }

.Form-submit {
  display: inline-block;
  padding: 8px 20px 9px;
  border: none;
  color: #fff;
  font-size: .8rem;
  text-decoration: none;
  background-color: #1d1d1b;
  border-radius: 5px; }

.Form--youth .Form-submit {
  background-color: #e64216; }

.Form--youth .Form-select {
  background-image: url("/bundles/castermanstatic/images/layout/arrow-bottom-youth@2x.png?v1"); }

ul.error {
  background-color: #f2dede; }

ul.error li {
  color: #b94a48;
  padding: 2px 10px; }

.Form-mainErrors {
  padding: 10px .75rem;
  margin-bottom: 15px; }

.Form-error {
  padding: 0 .75rem;
  margin-top: 4px;
  color: #E7433C;
  background-color: rgba(231, 67, 60, 0.1);
  font-size: .6rem;
  line-height: 1.8; }

.FooterLogos {
  font-size: 0rem;
  text-align: center; }
  @media (max-width: 999px) {
    .FooterLogos {
      max-width: 640px;
      margin: 0 auto; } }
  @media (min-width: 1000px) {
    .FooterLogos {
      text-align: right; } }

.FooterLogos-item {
  display: inline-block;
  vertical-align: top;
  width: 140px;
  padding: 10px;
  font-size: .7rem; }
  .FooterLogos-item a {
    display: block; }
  .FooterLogos-item img {
    width: 100%;
    height: auto;
    vertical-align: middle;
    border-radius: 10px; }

.pswp {
  display: none;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  overflow: hidden;
  -ms-touch-action: none;
  touch-action: none;
  z-index: 1500;
  -webkit-text-size-adjust: 100%;
  /* create separate layer, to avoid paint on window.onscroll in webkit/blink */
  -webkit-backface-visibility: hidden;
  outline: none; }

.pswp * {
  box-sizing: border-box; }

.pswp img {
  max-width: none; }

/* style is added when JS option showHideOpacity is set to true */
.pswp--animate_opacity {
  /* 0.001, because opacity:0 doesn't trigger Paint action, which causes lag at start of transition */
  opacity: 0.001;
  will-change: opacity;
  /* for open/close transition */
  -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); }

.pswp--open {
  display: block; }

.pswp--zoom-allowed .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in; }

.pswp--zoomed-in .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: grab; }

.pswp--dragging .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: grabbing; }

/*
    Background is added as a separate element.
    As animating opacity is much faster than animating rgba() background-color.
*/
.pswp__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0;
  -webkit-backface-visibility: hidden;
  will-change: opacity; }

.pswp__scroll-wrap {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden; }

.pswp__container,
.pswp__zoom-wrap {
  -ms-touch-action: none;
  touch-action: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0; }

/* Prevent selection and tap highlights */
.pswp__container,
.pswp__img {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none; }

.pswp__zoom-wrap {
  position: absolute;
  width: 100%;
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  /* for open/close transition */
  -webkit-transition: -webkit-transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: -webkit-transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1), -webkit-transform 333ms cubic-bezier(0.4, 0, 0.22, 1); }

.pswp__bg {
  will-change: opacity;
  /* for open/close transition */
  -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); }

.pswp--animated-in .pswp__bg,
.pswp--animated-in .pswp__zoom-wrap {
  -webkit-transition: none;
  transition: none; }

.pswp__container,
.pswp__zoom-wrap {
  -webkit-backface-visibility: hidden;
  will-change: transform; }

.pswp__item {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  overflow: hidden; }

.pswp__img {
  position: absolute;
  width: auto;
  height: auto;
  top: 0;
  left: 0;
  -webkit-transition: opacity 0.15s;
  transition: opacity 0.15s; }

/*
    stretched thumbnail or div placeholder element (see below)
    style is added to avoid flickering in webkit/blink when layers overlap
*/
.pswp__img--placeholder {
  -webkit-backface-visibility: hidden; }

/*
    div element that matches size of large image
    large image loads on top of it
*/
.pswp__img--placeholder--blank {
  background: #222; }

.pswp--ie .pswp__img {
  width: 100% !important;
  height: auto !important;
  left: 0;
  top: 0; }

/*
    Error message appears when image is not loaded
    (JS option errorMsg controls markup)
*/
.pswp__error-msg {
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  text-align: center;
  font-size: 14px;
  line-height: 16px;
  margin-top: -8px;
  color: #CCC; }

.pswp__error-msg a {
  color: #CCC;
  text-decoration: underline; }

.pswp__button {
  width: 44px;
  height: 44px;
  position: relative;
  background: none;
  cursor: pointer;
  overflow: visible;
  -webkit-appearance: none;
  display: block;
  border: 0;
  padding: 0;
  margin: 0;
  float: right;
  opacity: 0.75;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  box-shadow: none; }

.pswp__button:focus,
.pswp__button:hover {
  opacity: 1; }

.pswp__button:active {
  outline: none;
  opacity: 0.9; }

.pswp__button::-moz-focus-inner {
  padding: 0;
  border: 0; }

/* pswp__ui--over-close class it added when mouse is over element that should close gallery */
.pswp__ui--over-close .pswp__button--close {
  opacity: 1; }

.pswp__button,
.pswp__button--arrow--left:before,
.pswp__button--arrow--right:before {
  background: url("/bundles/castermanstatic/images/fullgallery/default-skin.png?v1") 0 0 no-repeat;
  background-size: 264px 88px;
  width: 44px;
  height: 44px; }

@media (-webkit-min-device-pixel-ratio: 1.1), (-webkit-min-device-pixel-ratio: 1.09375), (min-resolution: 105dpi), (min-resolution: 1.1dppx) {
  /* Serve SVG sprite if browser supports SVG and resolution is more than 105dpi */
  .pswp--svg .pswp__button,
  .pswp--svg .pswp__button--arrow--left:before,
  .pswp--svg .pswp__button--arrow--right:before {
    background-image: url("/bundles/castermanstatic/images/fullgallery/default-skin.svg?v1"); }
  .pswp--svg .pswp__button--arrow--left,
  .pswp--svg .pswp__button--arrow--right {
    background: none; } }

.pswp__button--close {
  background-position: 0 -44px; }

.pswp__button--share {
  background-position: -44px -44px; }

.pswp__button--fs {
  display: none; }

.pswp--supports-fs .pswp__button--fs {
  display: block; }

.pswp--fs .pswp__button--fs {
  background-position: -44px 0; }

.pswp__button--zoom {
  display: none;
  background-position: -88px 0; }

.pswp--zoom-allowed .pswp__button--zoom {
  display: block; }

.pswp--zoomed-in .pswp__button--zoom {
  background-position: -132px 0; }

/* no arrows on touch screens */
.pswp--touch .pswp__button--arrow--left,
.pswp--touch .pswp__button--arrow--right {
  visibility: hidden; }

/*
    Arrow buttons hit area
    (icon is added to :before pseudo-element)
*/
.pswp__button--arrow--left,
.pswp__button--arrow--right {
  background: none;
  top: 50%;
  margin-top: -50px;
  width: 70px;
  height: 100px;
  position: absolute; }

.pswp__button--arrow--left {
  left: 0; }

.pswp__button--arrow--right {
  right: 0; }

.pswp__button--arrow--left:before,
.pswp__button--arrow--right:before {
  content: '';
  top: 35px;
  background-color: rgba(0, 0, 0, 0.3);
  height: 30px;
  width: 32px;
  position: absolute; }

.pswp__button--arrow--left:before {
  left: 6px;
  background-position: -138px -44px; }

.pswp__button--arrow--right:before {
  right: 6px;
  background-position: -94px -44px; }

/*

    2. Share modal/popup and links

 */
.pswp__counter,
.pswp__share-modal {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.pswp__share-modal {
  display: block;
  background: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  padding: 10px;
  position: absolute;
  z-index: 1600;
  opacity: 0;
  -webkit-transition: opacity 0.25s ease-out;
  transition: opacity 0.25s ease-out;
  -webkit-backface-visibility: hidden;
  will-change: opacity; }

.pswp__share-modal--hidden {
  display: none; }

.pswp__share-tooltip {
  z-index: 1620;
  position: absolute;
  background: #FFF;
  top: 56px;
  border-radius: 2px;
  display: block;
  width: auto;
  right: 44px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25);
  -webkit-transform: translateY(6px);
  -ms-transform: translateY(6px);
  transform: translateY(6px);
  -webkit-transition: -webkit-transform 0.25s;
  transition: -webkit-transform 0.25s;
  transition: transform 0.25s;
  transition: transform 0.25s, -webkit-transform 0.25s;
  -webkit-backface-visibility: hidden;
  will-change: transform; }

.pswp__share-tooltip a {
  display: block;
  padding: 8px 12px;
  color: #000;
  text-decoration: none;
  font-size: 14px;
  line-height: 18px; }

.pswp__share-tooltip a:hover {
  text-decoration: none;
  color: #000; }

.pswp__share-tooltip a:first-child {
  /* round corners on the first/last list item */
  border-radius: 2px 2px 0 0; }

.pswp__share-tooltip a:last-child {
  border-radius: 0 0 2px 2px; }

.pswp__share-modal--fade-in {
  opacity: 1; }

.pswp__share-modal--fade-in .pswp__share-tooltip {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0); }

/* increase size of share links on touch devices */
.pswp--touch .pswp__share-tooltip a {
  padding: 16px 12px; }

a.pswp__share--facebook:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  top: -12px;
  right: 15px;
  border: 6px solid transparent;
  border-bottom-color: #FFF;
  -webkit-pointer-events: none;
  -moz-pointer-events: none;
  pointer-events: none; }

a.pswp__share--facebook:hover {
  background: #3E5C9A;
  color: #FFF; }

a.pswp__share--facebook:hover:before {
  border-bottom-color: #3E5C9A; }

a.pswp__share--twitter:hover {
  background: #55ACEE;
  color: #FFF; }

a.pswp__share--pinterest:hover {
  background: #CCC;
  color: #CE272D; }

a.pswp__share--download:hover {
  background: #DDD; }

/*

    3. Index indicator ("1 of X" counter)

 */
.pswp__counter {
  position: absolute;
  left: 0;
  top: 0;
  height: 44px;
  font-size: 13px;
  line-height: 44px;
  color: #FFF;
  opacity: 0.75;
  padding: 0 10px; }

/*

    4. Caption

 */
.pswp__caption {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  min-height: 44px; }

.pswp__caption small {
  font-size: 11px;
  color: #BBB; }

.pswp__caption__center {
  text-align: left;
  max-width: 420px;
  margin: 0 auto;
  font-size: 13px;
  padding: 10px;
  line-height: 20px;
  color: #CCC; }

.pswp__caption--empty {
  display: none; }

/* Fake caption element, used to calculate height of next/prev image */
.pswp__caption--fake {
  visibility: hidden; }

/*

    5. Loading indicator (preloader)

    You can play with it here - http://codepen.io/dimsemenov/pen/yyBWoR

 */
.pswp__preloader {
  width: 44px;
  height: 44px;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -22px;
  opacity: 0;
  -webkit-transition: opacity 0.25s ease-out;
  transition: opacity 0.25s ease-out;
  will-change: opacity;
  direction: ltr; }

.pswp__preloader__icn {
  width: 20px;
  height: 20px;
  margin: 12px; }

.pswp__preloader--active {
  opacity: 1; }

.pswp__preloader--active .pswp__preloader__icn {
  /* We use .gif in browsers that don't support CSS animation */
  background: url("/bundles/castermanstatic/images/fullgallery/preloader.gif?v1") 0 0 no-repeat; }

.pswp--css_animation .pswp__preloader--active {
  opacity: 1; }

.pswp--css_animation .pswp__preloader--active .pswp__preloader__icn {
  -webkit-animation: clockwise 500ms linear infinite;
  animation: clockwise 500ms linear infinite; }

.pswp--css_animation .pswp__preloader--active .pswp__preloader__donut {
  -webkit-animation: donut-rotate 1000ms cubic-bezier(0.4, 0, 0.22, 1) infinite;
  animation: donut-rotate 1000ms cubic-bezier(0.4, 0, 0.22, 1) infinite; }

.pswp--css_animation .pswp__preloader__icn {
  background: none;
  opacity: 0.75;
  width: 14px;
  height: 14px;
  position: absolute;
  left: 15px;
  top: 15px;
  margin: 0; }

.pswp--css_animation .pswp__preloader__cut {
  /*
            The idea of animating inner circle is based on Polymer ("material") loading indicator
             by Keanu Lee https://blog.keanulee.com/2014/10/20/the-tale-of-three-spinners.html
        */
  position: relative;
  width: 7px;
  height: 14px;
  overflow: hidden; }

.pswp--css_animation .pswp__preloader__donut {
  box-sizing: border-box;
  width: 14px;
  height: 14px;
  border: 2px solid #FFF;
  border-radius: 50%;
  border-left-color: transparent;
  border-bottom-color: transparent;
  position: absolute;
  top: 0;
  left: 0;
  background: none;
  margin: 0; }

@media screen and (max-width: 1024px) {
  .pswp__preloader {
    position: relative;
    left: auto;
    top: auto;
    margin: 0;
    float: right; } }

@-webkit-keyframes clockwise {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

@keyframes clockwise {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

@-webkit-keyframes donut-rotate {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0); }
  50% {
    -webkit-transform: rotate(-140deg);
    transform: rotate(-140deg); }
  100% {
    -webkit-transform: rotate(0);
    transform: rotate(0); } }

@keyframes donut-rotate {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0); }
  50% {
    -webkit-transform: rotate(-140deg);
    transform: rotate(-140deg); }
  100% {
    -webkit-transform: rotate(0);
    transform: rotate(0); } }

/*

    6. Additional styles

 */
/* root element of UI */
.pswp__ui {
  -webkit-font-smoothing: auto;
  visibility: visible;
  opacity: 1;
  z-index: 1550; }

/* top black bar with buttons and "1 of X" indicator */
.pswp__top-bar {
  position: absolute;
  left: 0;
  top: 0;
  height: 44px;
  width: 100%; }

.pswp__caption,
.pswp__top-bar,
.pswp--has_mouse .pswp__button--arrow--left,
.pswp--has_mouse .pswp__button--arrow--right {
  -webkit-backface-visibility: hidden;
  will-change: opacity;
  -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); }

/* pswp--has_mouse class is added only when two subsequent mousemove events occur */
.pswp--has_mouse .pswp__button--arrow--left,
.pswp--has_mouse .pswp__button--arrow--right {
  visibility: visible; }

.pswp__top-bar,
.pswp__caption {
  background-color: rgba(0, 0, 0, 0.5); }

/* pswp__ui--fit class is added when main image "fits" between top bar and bottom bar (caption) */
.pswp__ui--fit .pswp__top-bar,
.pswp__ui--fit .pswp__caption {
  background-color: rgba(0, 0, 0, 0.3); }

/* pswp__ui--idle class is added when mouse isn't moving for several seconds (JS option timeToIdle) */
.pswp__ui--idle .pswp__top-bar {
  opacity: 0; }

.pswp__ui--idle .pswp__button--arrow--left,
.pswp__ui--idle .pswp__button--arrow--right {
  opacity: 0; }

/*
    pswp__ui--hidden class is added when controls are hidden
    e.g. when user taps to toggle visibility of controls
*/
.pswp__ui--hidden .pswp__top-bar,
.pswp__ui--hidden .pswp__caption,
.pswp__ui--hidden .pswp__button--arrow--left,
.pswp__ui--hidden .pswp__button--arrow--right {
  /* Force paint & create composition layer for controls. */
  opacity: 0.001; }

/* pswp__ui--one-slide class is added when there is just one item in gallery */
.pswp__ui--one-slide .pswp__button--arrow--left,
.pswp__ui--one-slide .pswp__button--arrow--right,
.pswp__ui--one-slide .pswp__counter {
  display: none; }

.pswp__element--disabled {
  display: none !important; }

.pswp--minimal--dark .pswp__top-bar {
  background: none; }

.FullGallery-counter {
  font-weight: 700;
  font-style: normal;
  font-size: 1.2rem;
  opacity: 1; }

.FullGallery-btn {
  border: 1px solid #000;
  opacity: 1;
  background-color: #fff;
  background-image: url("/bundles/castermanstatic/images/fullgallery/default-skin_dark.png?v1"); }

.FullGallery-btn--close {
  background-color: #1d8cd3;
  background-image: url("/bundles/castermanstatic/images/fullgallery/default-skin.png?v1");
  background-position: -2px -45px; }

.FullGallery-btn--toogle {
  background-position: -2px 0; }

.FullGallery-btn--arrow {
  width: 50px;
  height: 50px;
  margin-top: -22px;
  color: #1d1d1b;
  background-position: 50% 50%;
  background-repeat: no-repeat; }
  .FullGallery-btn--arrow:before {
    display: none; }

.FullGallery-btn--arrowLeft {
  left: 10px;
  background-image: url("/bundles/castermanstatic/images/fullgallery/arrow-left.svg?v1"); }

.FullGallery-btn--arrowRight {
  right: 10px;
  background-image: url("/bundles/castermanstatic/images/fullgallery/arrow-right.svg?v1"); }

@media (-webkit-min-device-pixel-ratio: 1.1), (-webkit-min-device-pixel-ratio: 1.09375), (min-resolution: 105dpi), (min-resolution: 1.1dppx) {
  .pswp--svg .FullGallery-btn {
    border: 1px solid #000;
    opacity: 1;
    background-color: #fff;
    background-image: url("/bundles/castermanstatic/images/fullgallery/default-skin_dark.png?v1"); }
  .pswp--svg .FullGallery-btn--close {
    background-color: #1d8cd3;
    background-image: url("/bundles/castermanstatic/images/fullgallery/default-skin.png?v1");
    background-position: -2px -45px; }
  .pswp--svg .FullGallery-btn--arrow {
    width: 50px;
    height: 50px;
    margin-top: -22px;
    color: #1d1d1b;
    background-position: 50% 50%;
    background-repeat: no-repeat; }
    .pswp--svg .FullGallery-btn--arrow:before {
      display: none; }
  .pswp--svg .FullGallery-btn--arrowLeft {
    left: 10px;
    background-image: url("/bundles/castermanstatic/images/fullgallery/arrow-left.svg?v1"); }
  .pswp--svg .FullGallery-btn--arrowRight {
    right: 10px;
    background-image: url("/bundles/castermanstatic/images/fullgallery/arrow-right.svg?v1"); } }

.FullGallery--youth .FullGallery-btn--close {
  background-color: #e64216; }

.FullGallery--youth .FullGallery-btn--arrow {
  border: none;
  border-radius: 50%; }

.GlobalTeaser {
  padding: 14px;
  font-size: 0rem;
  background-color: #fff; }
  .GlobalTeaser > * {
    vertical-align: top; }
  @media (max-width: 759px) {
    .GlobalTeaser {
      padding: 5px; } }

.GlobalTeaser-col {
  display: inline-block;
  vertical-align: top; }
  @media (min-width: 1000px) {
    .GlobalTeaser-col {
      min-height: 410px; } }

.GlobalTeaser-col--1-2 {
  width: 50%; }
  @media (max-width: 759px) {
    .GlobalTeaser-col--1-2 {
      width: 100%; } }

.GlobalTeaser-col--1-3 {
  width: 33.33%; }
  @media (max-width: 999px) {
    .GlobalTeaser-col--1-3 {
      width: 100%; } }

.GlobalTeaser-col--2-3 {
  width: 66.66%; }
  @media (max-width: 999px) {
    .GlobalTeaser-col--2-3 {
      width: 100%; } }

.GlobalTeaser-agenda {
  position: relative;
  overflow: hidden;
  min-height: 422px;
  margin: 6px;
  padding: 28px 50px;
  font-size: 0.9rem; }
  @media (max-width: 1279px) {
    .GlobalTeaser-agenda {
      padding-left: 35px;
      padding-right: 35px; } }
  @media (max-width: 999px) {
    .GlobalTeaser-agenda {
      font-size: 14px;
      min-height: initial;
      border: 1px solid #dfdfdf; } }
  .GlobalTeaser-agenda a {
    position: relative;
    z-index: 10; }
  .GlobalTeaser-agenda:after {
    content: '';
    position: absolute;
    z-index: 1;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    border: 1px solid #dfdfdf;
    pointer-events: none; }
    @media (max-width: 999px) {
      .GlobalTeaser-agenda:after {
        border: none; } }

.GlobalTeaser-title {
  font-weight: 800;
  font-style: normal;
  font-size: 48px;
  line-height: 1;
  text-transform: uppercase; }
  @media (max-width: 759px) {
    .GlobalTeaser-title {
      font-size: 1.5rem;
      margin-bottom: 10px; } }
  @media (min-width: 760px) and (max-width: 999px) {
    .GlobalTeaser-title {
      font-size: 2rem;
      margin-bottom: 10px; } }

.GlobalTeaser-titleMore {
  padding-left: 2px;
  color: #1d1d1b;
  font-size: 1.2rem;
  text-decoration: none; }
  .GlobalTeaser-titleMore:hover, .GlobalTeaser-titleMore:focus {
    color: #e3001a; }
  .GlobalTeaser-titleMore .Icon {
    position: absolute;
    left: -16px;
    top: 50%;
    margin-top: -7px; }

.GlobalTeaser-eventList {
  margin-top: 10px; }
  @media (max-width: 999px) {
    .GlobalTeaser-eventList {
      margin-top: 15px; } }

.GlobalTeaser-event {
  height: 86px; }
  @media (max-width: 999px) {
    .GlobalTeaser-event {
      height: auto;
      line-height: 1.4; } }
  .GlobalTeaser-event:first-child {
    height: 80px; }
    @media (max-width: 999px) {
      .GlobalTeaser-event:first-child {
        height: auto; } }
  * + .GlobalTeaser-event {
    padding-top: 5px;
    margin-top: 6px;
    border-top: 1px solid #dfdfdf; }
  .GlobalTeaser-event time {
    font-size: 0.8rem; }
    @media (max-width: 999px) {
      .GlobalTeaser-event time {
        font-size: 12px; } }
  .GlobalTeaser-event .GlobalTeaser-eventTitle {
    font-weight: 700;
    font-style: normal;
    overflow: hidden;
    display: block;
    height: 3.17em;
    line-height: 1;
    font-size: 0.8rem;
    text-decoration: none; }
    @media (max-width: 999px) {
      .GlobalTeaser-event .GlobalTeaser-eventTitle {
        font-size: 14px;
        height: auto; } }

.GlobalTeaser-item {
  display: inline-table;
  vertical-align: top;
  padding: 6px;
  background-clip: content-box;
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover; }

.GlobalTeaser-item--large {
  width: 100%;
  height: 434px;
  font-size: 1.3rem; }
  @media (max-width: 759px) {
    .GlobalTeaser-item--large {
      height: 262px; } }

.GlobalTeaser-item--medium {
  width: 100%;
  height: 262px;
  font-size: 1.3rem; }

.GlobalTeaser-item--small {
  width: 50%;
  height: 172px;
  font-size: 0.9rem; }

/*
@media ($mq-desktop-small) {
    .GlobalTeaser-item--small { width: 100%; }
    .GlobalTeaser-item--small + .GlobalTeaser-item--small { display: none; }
}
*/
.GlobalTeaser-itemIcon {
  display: block;
  margin: 5px 0 10px; }
  .GlobalTeaser-itemIcon .Icon {
    color: #000;
    fill: #fff;
    width: 36px;
    height: 36px; }

.GlobalTeaser-itemTitle {
  font-weight: 600;
  font-style: normal;
  display: table-cell;
  vertical-align: middle;
  padding: 10px 10%;
  line-height: 1.25;
  color: #fff;
  text-align: center;
  text-decoration: none;
  text-shadow: 0 0 20px rgba(0, 0, 0, 0.35);
  background-color: rgba(0, 0, 0, 0.35);
  -webkit-transition: 100ms background ease;
  transition: 100ms background ease; }
  .GlobalTeaser-itemTitle:hover, .GlobalTeaser-itemTitle:focus {
    background-color: rgba(0, 0, 0, 0.5); }

.GlobalTeaser-readM {
  width: 100%;
  padding-top: 10px;
  padding-right: 6px;
  padding-bottom: 10px;
  text-align: right;
  font-size: 0.9rem; }
  @media (max-width: 759px) {
    .GlobalTeaser-readM {
      text-align: left; } }

.GlobalTeaser-readMItem {
  display: inline-block;
  margin-bottom: 6px;
  margin-left: 4%; }
  @media (max-width: 999px) {
    .GlobalTeaser-readMItem {
      font-size: 12px; } }
  .GlobalTeaser-readMItem .Icon {
    width: 14px;
    height: 14px;
    vertical-align: -1px; }
  .GlobalTeaser-readMItem a {
    text-decoration: none; }
  .GlobalTeaser-readMItem a:hover, .GlobalTeaser-readMItem a:focus {
    color: #e3001a; }

.GlobalTeaser--youth .GlobalTeaser-agenda:after {
  border-color: transparent; }

.GlobalTeaser--youth .GlobalTeaser-title {
  font-weight: 300;
  font-style: normal;
  text-transform: none !important;
  color: #f3530b; }

.GlobalTeaser--youth .GlobalTeaser-titleMore:hover,
.GlobalTeaser--youth .GlobalTeaser-titleMore:focus,
.GlobalTeaser--youth .GlobalTeaser-readMItem a:hover,
.GlobalTeaser--youth .GlobalTeaser-readMItem a:focus {
  color: #e64216; }

.GoodiesInfo {
  display: block;
  max-width: 300px;
  margin-left: auto;
  margin-right: auto; }
  .GoodiesInfo a {
    color: inherit;
    text-decoration: none; }
  .GoodiesInfo a:hover, .GoodiesInfo a:focus, .GoodiesInfo a:active {
    text-decoration: underline; }

.GoodiesInfo-top {
  position: relative;
  padding: 5px 0; }
  .GoodiesInfo:first-child .GoodiesInfo-top .GoodiesInfo-label--new {
    position: absolute;
    left: 0;
    bottom: 5px; }

.GoodiesInfo-frame {
  position: relative;
  padding: 9px 9px 2px;
  border: solid 1px #d8d8d8;
  background-color: #fff; }
  .GoodiesInfo-frame a:hover, .GoodiesInfo-frame a:focus {
    text-decoration: none; }

.GoodiesInfo-label {
  display: inline-block;
  margin-right: 8px;
  padding: 6px;
  line-height: 1;
  font-size: .55rem;
  text-transform: uppercase;
  font-weight: 700;
  font-style: normal; }

.GoodiesInfo-label--new {
  color: #fff;
  background-color: #404040; }

.GoodiesInfo-cover {
  position: relative;
  z-index: 4;
  margin: -10px -10px 0; }
  .GoodiesInfo-cover img {
    display: block;
    width: 100%;
    height: auto; }
  .GoodiesInfo-cover::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border: solid rgba(0, 0, 0, 0.12);
    border-width: 1px 1px 0; }

.GoodiesInfo-block {
  font-weight: 700;
  font-style: normal;
  padding-top: 5px;
  padding-bottom: 5px;
  font-size: .6rem; }

.GoodiesInfo-block + .GoodiesInfo-block {
  margin-top: 2px;
  border-top: solid 1px #d8d8d8; }

.GoodiesInfo-block--format .Icon {
  margin-right: 5px;
  vertical-align: -4px; }

.GoodiesInfo-block--title {
  font-size: .8rem; }

.GoodiesInfo--youth .GoodiesInfo-label--new {
  background-color: #008d91; }

.HeaderMobile-top {
  background-color: #E3001A;
  border-bottom: 1px solid #ccc;
  height: 50px; }

.HeaderMobile-topItem {
  display: inline-block;
  height: 100%; }

.HeaderMobile-logo img {
  padding: 10px 0 7px 20px; }

.HeaderMobile-burger {
  border-left: 1px solid #ccc;
  float: right;
  height: 50px;
  color: white; }
  .HeaderMobile-burger .HeaderMobile-burgerIcon {
    display: block;
    padding: 7px 15px 0 15px; }

.HeaderMobile-burger.submenu-opened {
  background-color: white;
  color: black; }

.HeaderMobile-sub {
  background-color: white;
  padding-top: 10px; }

.HeaderMobile-subItems {
  margin: 20px; }
  .HeaderMobile-subItems .HeaderMobile-subItemTitle {
    text-transform: uppercase;
    font-weight: 700;
    margin: 20px 0 10px 0; }

.HeaderMobile-subItems a {
  text-decoration: none; }

.HeaderMobile-subItems--youth {
  color: #E3001A;
  border-top: 1px solid #E3001A; }

.HeaderMobile-subItems--teachers {
  color: white;
  background-color: black;
  font-weight: 700;
  font-size: 1.1rem;
  margin: 0;
  padding: 15px 20px; }

.HeaderMobile-top--youth {
  background-color: #C3E5E6; }

.HeaderMobile-burger--youth {
  color: #444; }

.HeroList {
  padding-left: 10px;
  padding-right: 10px;
  font-size: 0rem;
  text-align: center; }
  @media (max-width: 759px) {
    .HeroList {
      padding-top: 20px; } }

.HeroList-item {
  display: inline-block;
  vertical-align: top;
  width: 20%;
  padding: 35px 10px 20px; }
  .HeroList-item a {
    display: block;
    text-decoration: none; }
  .HeroList-item span {
    font-weight: 700;
    font-style: normal;
    display: block;
    padding-top: 5px;
    font-size: 19px;
    text-align: center; }

@media (max-width: 759px) {
  .HeroList-item {
    width: 45%;
    display: inline-block;
    padding: 0 15px 15px 15px; } }

@media (min-width: 750px) and (max-width: 999px) {
  .HeroList-item {
    width: auto; } }

.HeroList-img {
  max-width: 186px;
  width: 100%;
  border: 1px solid rgba(0, 0, 0, 0.05);
  border-radius: 35px 35px 0 35px; }

@media (max-width: 759px) {
  .HeroList-img {
    width: 100%; } }

@media (min-width: 750px) and (max-width: 999px) {
  .HeroList-img {
    width: auto; } }

.HomeImgLinks {
  overflow: hidden;
  padding: 60px 40px;
  background-color: #e6e6e6; }
  @media (max-width: 759px) {
    .HomeImgLinks {
      padding: 30px 20px; } }
  @media (max-width: 359px) {
    .HomeImgLinks {
      padding: 20px 10px; } }

.HomeImgLinks-inner {
  max-width: 612px;
  margin: 0 auto;
  font-size: 0rem;
  text-align: center; }
  @media (min-width: 1316px) {
    .HomeImgLinks-inner {
      white-space: nowrap;
      max-width: 1236px; } }
  @media (max-width: 999px) {
    .HomeImgLinks-inner {
      max-width: 460px; } }
  @media (max-width: 500px) {
    .HomeImgLinks-inner {
      max-width: 312px; } }

.HomeImgLinks-col {
  display: inline-block;
  vertical-align: top;
  padding: 6px;
  font-size: .7rem; }
  .HomeImgLinks-col a {
    display: block; }
  .HomeImgLinks-col img {
    display: block;
    width: 100%; }
  .HomeImgLinks-col--small {
    width: 50%; }
  .HomeImgLinks-col--large {
    width: 100%; }
  @media (min-width: 1316px) {
    .HomeImgLinks-col--small {
      width: 312px; }
    .HomeImgLinks-col--large {
      width: 612px; } }

.HomeMosaic-list {
  margin-left: -20px;
  padding-top: 10px;
  padding-bottom: 10px;
  font-size: 0rem; }
  @media (max-width: 759px) {
    .HomeMosaic-list {
      margin-left: -10px; } }

.HomeMosaic-listItem {
  display: inline-block;
  width: 11.11%;
  padding-left: 20px;
  font-size: .9rem; }
  @media (max-width: 759px) {
    .HomeMosaic-listItem {
      width: 33.3%;
      padding-left: 10px;
      font-size: .7rem; }
      .HomeMosaic-listItem:nth-child(n+4) {
        display: none; } }
  @media (min-width: 1201px) and (max-width: 1500px) {
    .HomeMosaic-listItem {
      width: 14.28%; }
      .HomeMosaic-listItem:nth-child(n+8) {
        display: none; } }
  @media (min-width: 761px) and (max-width: 1200px) {
    .HomeMosaic-listItem {
      width: 20%; }
    .HomeMosaic-listItem:nth-child(n+6) {
      display: none; } }

.HomeMosaic-img {
  position: relative;
  display: block;
  height: 314px;
  border: 1px solid rgba(0, 0, 0, 0.3);
  text-align: center;
  background-color: #000;
  background-origin: border-box;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover; }
  @media (max-width: 759px) {
    .HomeMosaic-img {
      height: 200px;
      height: 50vw; } }
  .HomeMosaic-img:hover, .HomeMosaic-img:focus {
    border-color: rgba(0, 0, 0, 0.6); }
    .HomeMosaic-img:hover::before, .HomeMosaic-img:focus::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      display: block;
      width: 100%;
      height: 100%;
      background-color: rgba(0, 0, 0, 0.6); }

.HomeMosaic-text {
  position: absolute;
  display: none;
  top: 50%;
  left: 0;
  right: 0;
  padding: 10px;
  color: #fff;
  text-align: center;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }
  .HomeMosaic-img:hover > .HomeMosaic-text,
  .HomeMosaic-img:focus > .HomeMosaic-text {
    display: block; }
  .HomeMosaic-text span {
    display: block; }

.HomeMosaic-book {
  font-weight: 700;
  font-style: normal; }

.HomeMosaic-more {
  padding-top: 10px;
  text-align: right; }
  @media (max-width: 759px) {
    .HomeMosaic-more {
      text-align: left; } }

.HomeMosaic-moreItem {
  display: inline-block;
  margin-left: 3%;
  margin-bottom: 10px;
  font-size: .9rem;
  line-height: 1;
  text-decoration: none; }
  @media (max-width: 759px) {
    .HomeMosaic-moreItem {
      font-size: 12px; } }
  .HomeMosaic-moreItem .Icon {
    width: 14px;
    height: 14px;
    vertical-align: -1px; }
  .HomeMosaic-moreItem:hover, .HomeMosaic-moreItem:focus {
    color: #e3001a; }

.HomeTabs {
  padding: 20px;
  background-color: #fff; }
  @media (max-width: 759px) {
    .HomeTabs {
      padding-left: 10px;
      padding-right: 10px; } }

.HomeTabs-head {
  max-width: 1260px;
  margin-left: auto;
  margin-right: auto;
  font-size: 0rem; }

.HomeTabs-btn {
  margin-right: 20px;
  margin-bottom: 10px;
  padding: 3px 20px 5px;
  border: 1px solid currentColor;
  font-size: 1.1rem;
  font-style: italic;
  text-transform: uppercase;
  text-decoration: none;
  color: #1d1d1b;
  background-color: #fff; }
  @media (max-width: 759px) {
    .HomeTabs-btn {
      display: block;
      width: 100%;
      font-size: 14px; } }
  @media (min-width: 760px) and (max-width: 999px) {
    .HomeTabs-btn {
      font-size: 0.9rem; } }
  .HomeTabs-btn:hover, .HomeTabs-btn:focus {
    color: #e3001a; }
    .HomeTabs--youth .HomeTabs-btn:hover, .HomeTabs--youth .HomeTabs-btn:focus {
      color: #e64216; }
  .HomeTabs-btn[data-state="active"] {
    color: #fff !important;
    border-color: #1d1d1b;
    background-color: #1d1d1b; }

.HomeTabs-tab[hidden] {
  display: none; }

.HomeTabs-list {
  max-width: 1260px;
  margin: 40px auto 80px;
  -webkit-column-width: 320px;
     -moz-column-width: 320px;
          column-width: 320px; }
  @media (max-width: 759px) {
    .HomeTabs-list {
      margin-top: 15px;
      margin-bottom: 30px; } }

.HomeTabs-listItem {
  font-weight: 300;
  font-style: normal;
  padding-right: 25px;
  font-size: 1.2rem;
  line-height: 1.25; }
  @media (max-width: 759px) {
    .HomeTabs-listItem {
      padding-right: 20px;
      font-size: 1rem; } }
  .HomeTabs-listItem a {
    position: relative;
    display: block;
    padding: 5px 0 5px 20px;
    text-decoration: none; }
  .HomeTabs-listItem a:hover, .HomeTabs-listItem a:focus {
    color: #e3001a; }
  .HomeTabs-listItem .Icon {
    position: absolute;
    left: 0;
    top: 17px;
    width: 10px;
    height: 10px; }

.InnerBlock {
  display: inline-block;
  width: 30%;
  box-sizing: border-box;
  margin-right: 20px;
  margin-bottom: 20px;
  border: 1px solid #ccc;
  padding: 10px; }
  @media (max-width: 759px) {
    .InnerBlock {
      width: 100%; } }
  @media (min-width: 400px) and (max-width: 759px) {
    .InnerBlock {
      width: 45%; } }
  .InnerBlock img {
    width: 100%; }

.InnerBlock-element {
  margin-bottom: 10px; }
  .InnerBlock-element:last-child {
    margin-bottom: 0; }

.Text .InnerBlock li {
  padding-left: 0;
  background-image: none; }

.LinkList {
  margin: 20px 0; }
  .LinkList li {
    font-size: .7rem; }
  .LinkList a {
    position: relative;
    display: block;
    padding: .3em 0 .3em 20px;
    text-decoration: none; }
  .LinkList .Icon {
    position: absolute;
    left: 0;
    top: .75em;
    width: .65em;
    height: .65em; }
  @media (min-width: 1000px) {
    .LinkList li {
      font-size: .8rem; } }

.LinkList--comic a:hover, .LinkList--comic a:focus {
  color: #e3001a; }

.LinkList--youth a {
  color: #e64216; }

.LinkList--youth a:hover, .LinkList--youth a:focus {
  color: #2aa3a7; }

@media (min-width: 760px) {
  .LinkList--zOrder {
    font-size: 0rem; }
    .LinkList--zOrder li {
      display: inline-block;
      vertical-align: top;
      width: 50%;
      padding-right: 20px; }
  .LinkList--nOrder {
    -webkit-column-count: 2;
       -moz-column-count: 2;
            column-count: 2;
    -webkit-column-gap: 0;
       -moz-column-gap: 0;
            column-gap: 0; }
    .LinkList--nOrder li {
      page-break-inside: avoid;
      -webkit-column-break-inside: avoid;
              break-inside: avoid;
      padding-right: 20px; } }

.ListSeries {
  margin-left: -20px;
  margin-right: -20px;
  font-size: 0rem; }

.ListSeries-content {
  vertical-align: top;
  display: inline-block;
  width: 25%;
  padding-right: 20px;
  padding-left: 20px;
  font-size: .8rem; }

.ListSeries-header {
  margin-top: 40px;
  margin-bottom: 30px;
  padding-left: 20px;
  font-size: 1.4rem;
  font-weight: 800;
  text-transform: uppercase; }

.ListSeries-title {
  font-weight: 700;
  font-style: normal;
  display: inline-block;
  width: 100%;
  height: 70px;
  padding: 10px;
  border: 1px solid #1d1d1b;
  font-size: .9rem;
  text-decoration: none; }
  .ListSeries-title:hover, .ListSeries-title:focus {
    box-shadow: 5px 5px 0 #e3001a; }

.ListSeries-item a {
  position: relative;
  display: inline-block;
  padding-left: 14px;
  text-decoration: none; }
  .ListSeries-item a:hover, .ListSeries-item a:focus {
    color: #e3001a; }
  .ListSeries-item a .Icon {
    position: absolute;
    top: 6px;
    left: 0;
    width: 10px;
    height: 10px; }

.ListSeries-content[data-state="collapsed"] .ListSeries-item:nth-child(n+4) {
  display: none; }

.ListSeries-btn[aria-hidden="true"] {
  display: none; }

.ListSeries-btn {
  font-weight: 700;
  font-style: normal;
  margin-top: .5rem;
  font-size: .7rem;
  line-height: 1;
  color: #e3001a; }
  .ListSeries-btn span {
    font-size: 1rem;
    line-height: .5; }

.ListSeries-content[data-state="collapsed"] .ListSeries-btn--more {
  display: inline-block; }

.ListSeries-content[data-state="collapsed"] .ListSeries-btn--less {
  display: none; }

.ListSeries-content[data-state="expanded"] .ListSeries-btn--more {
  display: none; }

.ListSeries-content[data-state="expanded"] .ListSeries-btn--less {
  display: inline-block; }

.ListSeries--youth .ListSeries-title {
  border-color: #e64216; }
  .ListSeries--youth .ListSeries-title:hover, .ListSeries--youth .ListSeries-title:focus {
    border-color: #2aa3a7;
    box-shadow: 5px 5px 0 #2aa3a7; }

.ListSeries--youth .ListSeries-item {
  color: #e64216; }
  .ListSeries--youth .ListSeries-item a:hover,
  .ListSeries--youth .ListSeries-item a:focus {
    color: #2aa3a7; }

.ListSeries--youth .ListSeries-readM {
  color: #e64216; }
  .ListSeries--youth .ListSeries-readM:hover, .ListSeries--youth .ListSeries-readM:focus {
    color: #2aa3a7; }

.ListSort {
  color: #1d1d1b;
  font-size: 15px; }
  @media (min-width: 760px) {
    .ListSort {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      border: solid #e9e9e9;
      border-width: 1px 0; } }

.ListSort-block {
  display: inline-block;
  -webkit-align-self: center;
      -ms-flex-item-align: center;
              -ms-grid-row-align: center;
          align-self: center;
  max-width: 100%;
  padding: 7px 5px; }
  .ListSort-block > * {
    display: inline-block;
    vertical-align: middle;
    margin: 5px; }
  @media (max-width: 759px) {
    .ListSort-block {
      display: block; } }

.ListSort-block--search {
  width: 300px;
  max-width: 100%;
  padding: 0 20px 0 0; }
  @media (min-width: 1280px) {
    .ListSort-block--search {
      width: 300px; } }
  @media (max-width: 759px) {
    .ListSort-block--search {
      width: 100%;
      padding-right: 0; } }
  .ListSort-block--search > * {
    margin: -1px 0; }

.ListSort-title {
  font-weight: 700;
  font-style: normal;
  display: inline-block;
  margin-right: 10px;
  font-size: 15px; }

.ListSort-select {
  font-weight: 400;
  font-style: normal;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: inline-block;
  padding: 4px 30px 5px 6px;
  border: 1px solid #c4c4c4;
  border-radius: 5px;
  font-size: 14px;
  background-color: #f6f7f8;
  background-image: url("/bundles/castermanstatic/images/layout/arrow-bottom@2x.png?v1");
  background-position: right 10px center;
  background-repeat: no-repeat;
  background-size: 13px 13px; }
  .ListSort-select::-ms-expand {
    display: none; }
  @media (min-width: 760px) {
    .ListSort-select {
      max-width: 300px; } }
  @media (max-width: 759px) {
    .ListSort-select {
      width: 100%;
      margin-left: 0;
      margin-right: 0; } }

.IE9 .ListSort-select {
  padding-right: 6px;
  background-image: none; }

.ListSort-types {
  display: inline;
  margin: 0; }

.ListSort-typeItem {
  display: inline-block;
  margin: 4px 2px;
  font-size: 14px; }
  .ListSort-typeItem:first-child {
    margin-left: 0; }

.ListSort-typeLink {
  display: inline-block;
  padding: 6px 12px 7px;
  border: 1px solid #c4c4c4;
  border-radius: 5px;
  color: #1d1d1b;
  text-decoration: none; }
  .ListSort-typeLink:hover {
    background-color: #f6f7f8; }
  .ListSort-typeItem--active > .ListSort-typeLink {
    color: #fff;
    border: none;
    background-color: #1d1d1b; }
  .ListSort-typeItem--active > .ListSort-typeLink:hover {
    background-color: #1d1d1b; }

.ListSort-result {
  font-weight: 400;
  font-style: italic; }
  .ListSort-result a {
    display: inline-block;
    padding-left: 20px; }
  .ListSort-result .Icon {
    width: 11px;
    height: 11px;
    vertical-align: -1px;
    margin-left: -20px;
    margin-right: 6px; }

.ListSort--youth .ListSort-select {
  background-image: url("/bundles/castermanstatic/images/layout/arrow-bottom-youth@2x.png?v1"); }

.ListSort--youth .ListSort-result .Icon {
  vertical-align: baseline;
  color: #e64216; }

.NewsInfo {
  display: table;
  table-layout: fixed;
  width: 100%;
  height: 100%;
  vertical-align: top;
  font-size: 13px;
  background-color: #fff; }

.NewsInfo-row {
  display: table-row; }

.NewsInfo-row--top {
  height: 5%; }

.NewsInfo--image .NewsInfo-row--top {
  height: 150px;
  height: 100%; }

.NewsInfo-top {
  display: table-cell;
  vertical-align: bottom;
  padding: 15px 15px 0;
  border: solid 1px rgba(0, 0, 0, 0.15);
  border-bottom: none; }

.NewsInfo--image .NewsInfo-top {
  padding-top: 80px;
  padding-bottom: 15px;
  background-repeat: no-repeat;
  background-origin: border-box;
  background-position: 50% 50%;
  background-size: cover; }
  [data-newsinfo-list="active"] .NewsInfo--image .NewsInfo-top {
    cursor: pointer; }
  @media (max-width: 479px) {
    .NewsInfo--image .NewsInfo-top {
      height: 180px; } }

.NewsInfo-type {
  display: inline-block;
  line-height: 16px;
  vertical-align: bottom;
  padding: 5px 10px 5px 8px;
  font-weight: 800;
  font-style: normal;
  text-transform: uppercase;
  background-color: #ccc;
  pointer-events: none; }
  .NewsInfo-type > .Icon {
    margin: -2px 5px -2px 0;
    vertical-align: -1px; }

.NewsInfo-content {
  position: relative;
  display: table-cell;
  vertical-align: top;
  padding: 15px 15px 35px;
  border: solid 1px rgba(0, 0, 0, 0.15);
  border-top: none; }

.NewsInfo-title {
  max-height: 6.25em;
  overflow: hidden;
  margin-bottom: 10px;
  line-height: 1.25;
  font-weight: 700;
  font-style: normal;
  font-size: 18px; }
  .NewsInfo-title a {
    display: inline-block;
    text-decoration: none; }
  .NewsInfo-title:hover, .NewsInfo-title a:focus {
    color: #e3001a; }

.NewsInfo-desc {
  overflow: hidden;
  max-height: 11.2em;
  line-height: 1.4; }
  .NewsInfo--image .NewsInfo-desc {
    max-height: 5.6em; }

.NewsInfo-link {
  position: absolute;
  bottom: 12px;
  right: 15px;
  color: #e3001a; }
  .NewsInfo-link :hover {
    color: #1d1d1b; }

.NewsInfo--comic .NewsInfo-type--news {
  background-color: #8db2d8; }

.NewsInfo--comic .NewsInfo-type--agenda {
  color: #fff;
  background-color: #f5c51d; }

.NewsInfo--comic .NewsInfo-type--interview {
  color: #fff;
  background-color: #e3001a; }

.NewsInfo-type--register {
  color: #fff;
  background-color: #e3001a; }

.NewsInfo--youth {
  border-radius: 0 0 15px 15px; }
  .NewsInfo--youth .NewsInfo-content {
    border-radius: 0 0 15px 15px; }
  .NewsInfo--youth .NewsInfo-type {
    border-radius: 4px;
    color: #fff; }
  .NewsInfo--youth .NewsInfo-type--news {
    background-color: #97c436; }
  .NewsInfo--youth .NewsInfo-type--agenda {
    background-color: #ab2ec2; }
  .NewsInfo--youth .NewsInfo-type--interview {
    background-color: #2aa3a7; }

.NewsGrid {
  margin-left: -6px;
  margin-right: -6px;
  padding-top: 40px;
  padding-bottom: 40px;
  font-size: 0rem; }

.NewsGrid-item {
  display: inline-block;
  height: 430px;
  overflow: hidden;
  padding: 6px;
  font-size: .8rem; }

@media (max-width: 479px) {
  .NewsGrid {
    padding-top: 20px;
    padding-bottom: 30px; }
  .NewsGrid-item {
    height: auto; } }

.NewsGrid-item--small {
  width: 246px; }

.NewsGrid-item--large {
  width: 492px; }

@media (min-width: 1200px) {
  .NewsGrid-item--small {
    width: 20%; }
  .NewsGrid-item--large {
    width: 40%; } }

@media (max-width: 1199px) and (min-width: 980px) {
  .NewsGrid-item--small {
    width: 25%; }
  .NewsGrid-item--large {
    width: 50%; } }

@media (max-width: 979px) and (min-width: 740px) {
  .NewsGrid-item--small {
    width: 33.3%; }
  .NewsGrid-item--large {
    width: 66.6%; } }

@media (max-width: 739px) and (min-width: 480px) {
  .NewsGrid-item--small {
    width: 50%; }
  .NewsGrid-item--large {
    width: 100%; } }

@media (max-width: 479px) {
  .NewsGrid-item--small {
    width: auto; }
  .NewsGrid-item--large {
    width: auto; } }

.Pagination {
  position: relative;
  width: 100%;
  padding-top: 35px;
  padding-bottom: 35px;
  padding-right: 140px; }

.Pagination-main {
  display: table;
  width: auto;
  margin: 0 auto; }
  .Pagination-main > * {
    display: table-cell;
    vertical-align: top; }
  .Pagination-main a, .Pagination-main span {
    display: inline-block;
    vertical-align: middle;
    padding: 5px 8px;
    font-size: 1rem;
    line-height: 1;
    text-decoration: none; }
    @media (min-width: 1000px) and (max-width: 1279px) {
      .Pagination-main a, .Pagination-main span {
        padding-left: 5px;
        padding-right: 5px; } }
  .Pagination-main a {
    color: #1d1d1b; }
  .Pagination-main span {
    color: #a9a9a9; }

.Pagination-items {
  white-space: nowrap; }

.Pagination-item {
  vertical-align: middle;
  margin: 0 -3px; }
  .Pagination-item .Icon {
    vertical-align: -2px;
    width: 18px;
    height: 18px; }

.Pagination-pageNumbers {
  padding-left: 10px;
  padding-right: 10px;
  text-align: center; }
  @media (min-width: 1280px) {
    .Pagination-pageNumbers {
      padding-left: 16px;
      padding-right: 16px; } }

.Pagination-pageNumber {
  display: inline-block;
  vertical-align: middle; }

.Pagination-pageNumber--blank span {
  padding-left: 4px;
  padding-right: 4px; }

.Pagination-search {
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -17px;
  font-size: .75rem; }
  .Pagination-search input {
    width: 42px;
    height: 34px;
    margin-left: 6px;
    border: 1px solid #ccc;
    border-radius: 5px;
    text-align: center; }

@media (max-width: 999px) {
  .Pagination {
    padding: 25px 0; }
  .Pagination-search {
    display: none; }
  .Pagination-pageNumber:not(.Pagination-pageNumber--current) {
    display: none; }
  .Pagination-pageNumber--current span {
    color: inherit; } }

.Picture {
  padding-top: 25px;
  padding-bottom: 10px; }

.Picture-img {
  overflow: hidden; }
  .Picture-img img {
    width: 100%;
    height: auto;
    vertical-align: top; }

.Picture figcaption,
.Picture-copyright {
  font-weight: 400;
  font-style: italic;
  margin-top: .6em;
  font-size: .55rem;
  text-align: right; }

.Picture--textimg {
  position: relative; }
  .Picture--textimg .Picture-img {
    margin-bottom: 10px; }
  .Picture--textimg .Picture-copyright {
    font-weight: 700;
    font-style: normal;
    position: absolute;
    top: 50%;
    right: 0;
    left: 0;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    color: #fff;
    font-size: 3rem;
    font-style: normal;
    text-align: center; }

.mfp-container {
  padding: 0 20px; }

.PopIn {
  position: relative;
  margin: 16px auto;
  padding: 20px 30px 25px;
  background-color: #fff; }

@media (max-width: 999px) {
  .mfp-container {
    padding: 0 10px; }
  .PopIn {
    margin: 8px auto;
    padding-left: 20px;
    padding-right: 20px; } }

@media (max-width: 399px) {
  .mfp-container {
    padding: 0 5px; }
  .PopIn {
    margin: 5px auto;
    padding-left: 15px;
    padding-right: 15px; } }

.PopIn-tools {
  padding: 10px 0 12px; }

.PopIn-mainAction a {
  text-decoration: none; }

.PopIn-mainAction a:hover, .PopIn-mainAction a:focus {
  color: #e3001a; }
  .PopIn--youth .PopIn-mainAction a:hover, .PopIn--youth .PopIn-mainAction a:focus {
    color: #e64216; }

.PopIn-mainAction .Icon {
  vertical-align: -1px;
  width: 13px;
  height: 13px; }

@media (min-width: 760px) {
  .PopIn-tools {
    overflow: hidden; }
  .PopIn-mainAction {
    float: left; } }

.PopIn-main {
  margin-top: 20px; }
  .PopIn-main img {
    max-width: 100%;
    height: auto; }
  .PopIn-main audio, .PopIn-main video, .PopIn-main iframe {
    max-width: 100%; }

.PopIn-side {
  margin-top: 20px;
  padding: 10px;
  border: 1px solid #dcdcdc; }

@media (min-width: 760px) {
  .PopIn-content {
    display: table;
    table-layout: fixed;
    width: 100%; }
  .PopIn-main {
    display: table-cell;
    vertical-align: middle;
    width: 65%;
    margin: 0;
    padding-right: 20px; }
  .PopIn-side {
    display: table-cell;
    vertical-align: top;
    width: 35%;
    margin: 0;
    padding: 15px; } }

@media (min-width: 1000px) {
  .PopIn-side {
    padding: 20px 30px; } }

.PopIn-preTitle {
  font-weight: 700;
  font-style: normal;
  font-size: .65rem; }
  .PopIn-preTitle .Icon {
    width: 14px;
    height: 14px;
    vertical-align: -2px; }

.PopIn-title {
  font-weight: 600;
  font-style: normal;
  margin-bottom: .75rem;
  font-size: 1.2rem; }

.PopIn-sideTitle {
  font-weight: 800;
  font-style: normal;
  margin-top: 15px;
  margin-bottom: 5px;
  font-size: .8rem; }

.PopIn-sideList {
  margin-bottom: 10px; }

.PopIn-sideItem {
  display: block;
  font-size: .65rem; }

.PopIn-img {
  width: 100%;
  margin-bottom: 12px;
  border: 1px solid #d0d0d0; }

.PopIn-preview {
  text-align: center; }
  .PopIn-preview img {
    max-width: 100%;
    max-height: 75vh;
    height: auto;
    vertical-align: top;
    outline: solid 1px rgba(0, 0, 0, 0.2);
    outline-offset: -1px; }

.PopIn-text {
  margin-top: 15px;
  font-size: .65rem; }

.PopIn-btn {
  text-align: right; }
  .PopIn-btn .Icon {
    margin-bottom: 2px; }

.mfp-close-btn-in .mfp-close {
  display: none; }

.PopIn-close {
  position: absolute;
  top: 0;
  right: 0;
  padding: 10px; }
  .PopIn-close:hover, .PopIn-close:focus {
    color: #e3001a; }
    .PopIn--youth .PopIn-close:hover, .PopIn--youth .PopIn-close:focus {
      color: #e64216; }
  .PopIn-close .Icon {
    width: 20px;
    height: 20px;
    vertical-align: top; }
    @media (min-width: 1000px) {
      .PopIn-close .Icon {
        width: 25px;
        height: 25px; } }

.PopIn--large {
  max-width: 950px; }

.PopIn--small {
  max-width: 600px; }

.PopIn--youth {
  border-radius: 15px; }
  .PopIn--youth .PopIn-close {
    color: #e64216; }

.PopIn-main--audio {
  vertical-align: middle;
  text-align: center; }

.Layout--comic .Popup--newsletter {
  text-align: center;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10000; }
  .Layout--comic .Popup--newsletter .Popup-background {
    height: 100%;
    background-color: rgba(11, 11, 11, 0.8); }
  .Layout--comic .Popup--newsletter .Popup-content {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    margin: auto;
    max-width: 530px;
    background-color: #fff; }
  .Layout--comic .Popup--newsletter .Popup-image {
    display: block; }
  .Layout--comic .Popup--newsletter .Popup-close {
    position: absolute;
    top: 0;
    right: 0;
    padding: 10px;
    z-index: 200; }
    .Layout--comic .Popup--newsletter .Popup-close svg {
      width: 25px;
      height: 25px;
      color: #1d1d1b; }
  .Layout--comic .Popup--newsletter .se_form {
    padding: 20px 30px 20px; }
  .Layout--comic .Popup--newsletter .formHeader {
    display: none; }
  .Layout--comic .Popup--newsletter .formTextLabel {
    display: none; }
  .Layout--comic .Popup--newsletter .formTextInput input {
    margin: 20px 0;
    background: #fff;
    color: #404040;
    border: solid 1px #ccc8c8;
    padding: 16px;
    width: 100%;
    box-sizing: border-box;
    font-size: 0.8rem; }
    .Layout--comic .Popup--newsletter .formTextInput input.formError {
      border: 1px solid #e3001a; }
  .Layout--comic .Popup--newsletter .formParagraph {
    font-style: italic; }
    .Layout--comic .Popup--newsletter .formParagraph a {
      color: #e3001a; }
  .Layout--comic .Popup--newsletter .formErrorMessage {
    margin-top: 10px;
    color: #e3001a; }
  .Layout--comic .Popup--newsletter .formPager {
    margin-top: 40px; }
    .Layout--comic .Popup--newsletter .formPager a {
      padding: 5px 22px;
      box-sizing: border-box;
      border: none;
      font-size: 0.8rem;
      background: #1d8cd3;
      color: #fff;
      cursor: pointer;
      font-family: "Open Sans", "Segoe UI", "Lucida Grande", Verdana, sans-serif;
      font-weight: 700;
      text-transform: uppercase;
      text-decoration: none; }

.Layout--comic .formCompleted {
  font-size: 0.8rem; }

.Layout--comic .formFooterContainer {
  display: none; }

.Layout--youth .Popup--newsletter {
  text-align: center;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10000; }
  .Layout--youth .Popup--newsletter .Popup-background {
    height: 100%;
    background-color: rgba(11, 11, 11, 0.8); }
  .Layout--youth .Popup--newsletter .Popup-content {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    margin: auto;
    max-width: 530px;
    background-color: #fff;
    border-radius: 15px; }
  .Layout--youth .Popup--newsletter .Popup-image {
    display: block; }
  .Layout--youth .Popup--newsletter .Popup-close {
    position: absolute;
    top: 0;
    right: 0;
    padding: 10px;
    z-index: 200; }
    .Layout--youth .Popup--newsletter .Popup-close svg {
      width: 25px;
      height: 25px;
      color: #1d1d1b; }
  .Layout--youth .Popup--newsletter .Popup-innerContainer img {
    -webkit-border-top-left-radius: 5px;
    -webkit-border-top-right-radius: 5px;
    -moz-border-radius-topleft: 5px;
    -moz-border-radius-topright: 5px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px; }
  .Layout--youth .Popup--newsletter .se_form {
    padding: 20px 30px 20px; }
  .Layout--youth .Popup--newsletter .formHeader {
    display: none; }
  .Layout--youth .Popup--newsletter .formTextLabel {
    display: none; }
  .Layout--youth .Popup--newsletter .formTextInput input {
    margin: 20px 0;
    background: #fff;
    color: #404040;
    border: solid 1px #ccc8c8;
    padding: 16px;
    width: 100%;
    box-sizing: border-box;
    font-size: 0.8rem; }
    .Layout--youth .Popup--newsletter .formTextInput input.formError {
      border: 1px solid #e3001a; }
  .Layout--youth .Popup--newsletter .formParagraph {
    font-style: italic; }
    .Layout--youth .Popup--newsletter .formParagraph a {
      color: #e3001a; }
  .Layout--youth .Popup--newsletter .formErrorMessage {
    margin-top: 10px;
    color: #e64216; }
  .Layout--youth .Popup--newsletter .formPager {
    margin-top: 40px; }
    .Layout--youth .Popup--newsletter .formPager a {
      padding: 5px 22px;
      box-sizing: border-box;
      border: none;
      font-size: 0.8rem;
      background: #e64216;
      color: #fff;
      cursor: pointer;
      font-family: "Open Sans", "Segoe UI", "Lucida Grande", Verdana, sans-serif;
      font-weight: 700;
      text-transform: uppercase;
      text-decoration: none; }

.Layout--youth .formCompleted {
  font-size: 0.8rem; }

.Layout--youth .formFooterContainer {
  display: none; }

.Popup {
  opacity: 0;
  display: none;
  visibility: hidden;
  z-index: -999999; }
  .Popup .formTitle {
    font-weight: 700; }

.ReadingList {
  padding: 0;
  max-width: 1380px;
  margin: 0 auto; }

.ReadingList-footer {
  padding: 10px 0 10px 70px;
  text-align: left;
  font-size: 0.9rem;
  line-height: 1; }
  .ReadingList-footer a {
    position: relative;
    text-decoration: none; }
    .ReadingList-footer a .Icon {
      position: absolute;
      left: -16px;
      top: 50%;
      width: 14px;
      height: 14px;
      margin-top: -7px; }
  .ReadingList-footer a:hover, .ReadingList-footer a:focus {
    color: #e3001a; }
    .ReadingList--youth .ReadingList-footer a:hover, .ReadingList--youth .ReadingList-footer a:focus {
      color: #e64216; }
  @media (min-width: 760px) and (max-width: 999px) {
    .ReadingList-footer {
      padding: 10px 0 10px 10px; } }
  @media (max-width: 759px) {
    .ReadingList-footer {
      text-align: left;
      padding: 10px 0 10px 25px;
      font-size: .7rem; } }

.ReadingList-content {
  padding: 40px 0;
  font-size: 0rem;
  text-align: right; }
  .ReadingList-content > * {
    display: inline-block;
    padding: 10px;
    font-size: 13px; }
  @media (max-width: 759px) {
    .ReadingList-content {
      padding: 20px 0; }
      .ReadingList-content > * {
        padding: 0; } }

.ReadingList-desc {
  vertical-align: middle;
  width: 20%;
  padding-left: 0;
  padding-right: 20px;
  text-align: left; }
  @media (max-width: 999px) {
    .ReadingList-desc {
      width: 100%; } }

.ReadingList-descTitle {
  font-weight: 700;
  font-style: normal;
  padding-bottom: 12px;
  font-size: 0.9rem;
  line-height: 1.2; }

.ReadingList-descText {
  overflow: hidden;
  line-height: 1.3; }

.ReadingList-list {
  vertical-align: bottom;
  width: 60%;
  font-size: 0rem;
  text-align: center; }
  @media (max-width: 759px) {
    .ReadingList-list {
      height: 110px;
      overflow: hidden;
      text-align: left;
      margin-top: 20px;
      width: 100%; } }
  @media (min-width: 760px) and (max-width: 999px) {
    .ReadingList-list {
      display: block;
      width: 100%; } }

.ReadingList-item {
  display: inline-block;
  width: 20%; }
  @media (min-width: 760px) and (max-width: 999px) {
    .ReadingList-item {
      padding: 5px; } }
  @media (max-width: 759px) {
    .ReadingList-item {
      width: 90px;
      padding: 0;
      text-align: left; } }
  .ReadingList-item a {
    display: block;
    max-width: 129px;
    padding: 0 2px;
    margin-left: auto;
    margin-right: auto; }
  .ReadingList-item img {
    width: 100%;
    max-width: 129px;
    margin: 0 4px;
    border: 1px solid rgba(0, 0, 0, 0.05); }

.ReadingList-readM {
  font-weight: 700;
  font-style: normal;
  vertical-align: middle;
  width: 20%;
  padding: 0;
  color: #e64216;
  font-size: .7rem;
  text-decoration: none; }
  @media (max-width: 759px) {
    .ReadingList-readM {
      display: block;
      width: 100%; } }
  .ReadingList-readM a {
    text-decoration: none; }
  .ReadingList-readM span {
    font-size: 1.5rem; }

.ReadingList--comic {
  position: relative;
  padding: 0; }
  .ReadingList--comic .ReadingList-content {
    display: table;
    table-layout: fixed;
    margin-left: calc(50% - 630px);
    padding: 10px 0; }
  .ReadingList--comic .ReadingList-desc {
    width: 20%;
    display: table-cell;
    padding-left: 0; }
    @media (max-width: 999px) {
      .ReadingList--comic .ReadingList-desc {
        display: block;
        width: 100%; } }
  .ReadingList--comic .ReadingList-descTitle {
    font-size: 1.3rem; }
  .ReadingList--comic .ReadingList-descText {
    font-size: .8rem; }
    @media (max-width: 759px) {
      .ReadingList--comic .ReadingList-descText {
        font-size: .7rem; } }
  .ReadingList--comic .ReadingList-list {
    display: table-cell; }
    @media (max-width: 759px) {
      .ReadingList--comic .ReadingList-list {
        display: block;
        width: 100%;
        text-align: left;
        height: 115px;
        overflow: hidden;
        padding: 10px 10px 10px 0; } }
  .ReadingList--comic .ReadingList-item {
    padding-left: 5px;
    padding-right: 5px; }
    @media (max-width: 759px) {
      .ReadingList--comic .ReadingList-item {
        display: inline-block;
        width: 85px;
        text-align: left;
        padding: 0;
        margin-right: 5px; } }
    .ReadingList--comic .ReadingList-item a {
      max-width: 170px;
      margin: 0 auto; }
  .ReadingList--comic .ReadingList-img {
    max-width: 170px; }
  .ReadingList--comic .ReadingList-readM {
    width: 20%;
    display: table-cell;
    color: #1d1d1b;
    font-size: .8rem;
    text-align: center; }
    @media (max-width: 759px) {
      .ReadingList--comic .ReadingList-readM {
        display: block;
        width: 100%;
        text-align: right;
        font-size: 14px; } }
  @media (max-width: 1299px) {
    .ReadingList--comic .ReadingList-content {
      display: block;
      margin-left: 0; } }

.RwdMedia {
  position: relative;
  box-sizing: border-box;
  min-width: 280px;
  min-height: 140px;
  padding-bottom: 56.25%; }

.RwdMedia > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.RwdMedia--1\:1 {
  padding-bottom: 100%; }

.RwdMedia--4\:3 {
  padding-bottom: 75%; }

.RwdMedia--16\:9 {
  padding-bottom: 56.25%; }

.RwdMedia--2\:1 {
  padding-bottom: 50%; }

/*  ========================================
    # Component => SearchField
    ========================================  */
.SearchField {
  position: relative;
  height: 60px;
  width: 100%;
  border: 1px solid #e9e9e9;
  white-space: nowrap;
  background-color: #fff; }

.SearchField-icon {
  position: absolute;
  top: 50%;
  left: 5px;
  margin-top: -8px;
  pointer-events: none; }
  .SearchField-icon > .Icon {
    display: block;
    width: 16px;
    height: 16px; }

.SearchField-icon--big {
  left: 10px; }
  .SearchField-icon--big + .SearchField-input {
    padding-left: 36px; }

.SearchField-input {
  display: block;
  height: 100%;
  width: 100%;
  padding: 14px 75px 15px 30px;
  border: none;
  font-size: 16px;
  line-height: 20px;
  background-color: transparent;
  font-weight: 400;
  font-style: normal; }
  .SearchField-input::-webkit-input-placeholder {
    font-weight: 400;
    font-style: italic;
    opacity: 1;
    color: #404040; }
  .SearchField-input::-moz-placeholder {
    font-weight: 400;
    font-style: italic;
    opacity: 1;
    color: #404040; }
  .SearchField-input:-ms-input-placeholder {
    font-weight: 400;
    font-style: italic;
    opacity: 1;
    color: #404040; }
  .SearchField-input:placeholder-shown {
    font-weight: 400;
    font-style: italic;
    opacity: 1;
    color: #404040; }
  .SearchField-input:focus {
    outline: solid 1px;
    outline-color: #1d1d1b;
    outline-offset: 0; }

.SearchField-button {
  position: absolute;
  top: 0;
  right: -1px;
  width: 66px;
  height: 100%;
  padding: 8px 10px 10px 12px;
  line-height: 1;
  color: #fff;
  background-color: #1d1d1b;
  background-image: url("/bundles/castermanstatic/images/layout/search-arrow@2x.png?v1");
  background-repeat: no-repeat;
  background-position: 0 50%;
  background-size: 7px 13px; }
  .SearchField-button .Icon {
    width: 24px;
    height: 24px; }

.SearchField--comic .SearchField-input:focus {
  outline-color: #1d1d1b; }

.SearchField--comic .SearchField-button {
  background-color: #1d1d1b; }

.SearchField--youth .SearchField-input:focus {
  outline-color: #e64216; }

.SearchField--youth .SearchField-button {
  background-color: #e64216; }

/*  ========================================
    # Components => Home Search
    ======================================== */
.SearchSuggest {
  position: absolute;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.15); }
  .SearchSuggest:empty {
    display: none; }
  .SearchSuggest[aria-hidden="true"] {
    display: none !important; }
  @media (max-width: 759px) {
    .SearchSuggest {
      left: 0;
      width: 100%;
      margin-top: 8px; } }
  @media (min-width: 760px) {
    .SearchSuggest {
      left: 40px;
      margin-top: -1px; } }
  .SearchSuggest::before, .SearchSuggest::after {
    content: '';
    position: absolute;
    left: 1px;
    right: 1px;
    z-index: 1;
    display: inline-block;
    height: 4px;
    background-color: #fff; }
  .SearchSuggest::before {
    top: 1px; }
  .SearchSuggest::after {
    bottom: 1px; }

.SearchSuggest-content {
  overflow: auto;
  padding: 4px;
  border: 1px solid #d3d3d3;
  background-color: #fff; }
  @media (min-width: 1000px) {
    .SearchSuggest-content {
      max-width: 650px;
      min-width: 550px;
      max-height: 595px; } }

.SearchSuggest-iconArrow {
  position: absolute;
  top: -10px;
  left: 50px;
  width: 20px;
  height: 11px; }
  @media (max-width: 759px) {
    .SearchSuggest-iconArrow {
      left: 40px; } }
  .SearchSuggest-iconArrow::before, .SearchSuggest-iconArrow::after {
    content: '';
    position: absolute;
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid; }
  .SearchSuggest-iconArrow::before {
    top: 0;
    left: 0;
    border-color: transparent transparent #d3d3d3;
    border-width: 0 10px 12px; }
  .SearchSuggest-iconArrow:after {
    top: 1px;
    left: 1px;
    border-color: transparent transparent #fff;
    border-width: 0 9px 11px; }

.SearchSuggest-header {
  font-weight: 800;
  font-style: normal;
  position: relative;
  padding: 10px 20px;
  font-size: 1rem;
  text-transform: uppercase; }
  .SearchSuggest-header span {
    display: block;
    padding: 5px 0; }

.SearchSuggest-header--comic {
  color: #fff;
  background-color: #404040; }

.SearchSuggest-header--youth {
  color: #e64216;
  background-color: #c2e4e5; }

.SearchSuggest-button {
  font-weight: 400;
  font-style: normal;
  display: inline-block;
  padding: 4px 15px;
  color: #1d1d1b;
  font-size: .7rem;
  line-height: 1;
  font-style: italic;
  text-transform: initial;
  background-color: #fff;
  border-radius: 20px; }
  @media (min-width: 760px) {
    .SearchSuggest-button {
      position: absolute;
      top: 50%;
      right: 20px;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      font-size: .75rem; } }
  @media (max-width: 759px) {
    .SearchSuggest-button {
      margin: 2px 0 8px; } }
  .SearchSuggest-button .Icon {
    margin-bottom: 2px;
    color: #e64216;
    width: 12px;
    height: 12px; }

.SearchSuggest-item {
  font-size: .8rem;
  font-style: italic;
  border-bottom: 1px dashed #828282; }
  @media (max-width: 759px) {
    .SearchSuggest-item {
      font-size: .75rem; } }
  .SearchSuggest-item:last-child {
    border-bottom: none; }
  .SearchSuggest-item a {
    display: block;
    padding: 10px 20px; }

.SearchSuggest-item--article {
  font-size: .7rem;
  font-style: italic; }
  .SearchSuggest-item--article a {
    position: relative;
    padding-left: 46px;
    border-top: solid 1px #fff;
    background-color: #eee; }
  .SearchSuggest-item--article .Icon {
    position: absolute;
    margin-left: -26px;
    margin-top: 2px;
    width: 16px;
    height: 16px; }
  @media (max-width: 759px) {
    .SearchSuggest-item--article a {
      padding-left: 40px; }
    .SearchSuggest-item--article .Icon {
      margin-left: -20px;
      width: 14px;
      height: 14px; } }

.SearchSuggest-footer {
  padding: 12px 8px 16px;
  background-color: #eee; }
  .SearchSuggest-footer a, .SearchSuggest-footer button {
    font-weight: 400;
    font-style: normal;
    padding: 3px 15px;
    color: #1d1d1b;
    font-size: .7rem;
    font-style: italic;
    text-transform: initial;
    background-color: #fff;
    border-radius: 20px; }
  .SearchSuggest-footer .Icon {
    width: 12px;
    height: 12px;
    margin-bottom: 2px;
    color: #1d1d1b; }

.SearchSuggest--sideblock {
  left: auto;
  right: 0; }
  .SearchSuggest--sideblock .SearchSuggest-iconArrow:before {
    left: auto;
    right: 50px; }
  .SearchSuggest--sideblock .SearchSuggest-iconArrow:after {
    left: auto;
    right: 52px; }

/*  -----------------------------
    # Component - Share List
    -----------------------------  */
@media (max-width: 999px) {
  .ShareList {
    display: none; } }

.ShareList {
  padding-top: 7px;
  font-size: 0rem; }

.ShareList-item {
  display: inline-block;
  vertical-align: top;
  height: 16px;
  font-size: .7rem; }
  * + .ShareList-item {
    border-left: 1px solid #ccc; }
  .ShareList-item a {
    display: block;
    width: 38px;
    height: 30px;
    margin-top: -7px;
    background-image: url("/bundles/castermanstatic/images/share/sprite@1x.png?v1");
    background-repeat: no-repeat;
    background-size: 30px auto; }
    @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
      .ShareList-item a {
        background-image: url("/bundles/castermanstatic/images/share/sprite@2x.png?v1"); } }

.ShareList-item--printer a {
  background-position: center 0; }

.ShareList-item--email a {
  background-position: center -30px; }

.ShareList-item--facebook a {
  background-position: center -60px; }

.ShareList-item--twitter a {
  background-position: center -90px; }

.ShareList-item--pinterest a {
  background-position: center -120px; }

.ShareList-item--instagram a {
  background-position: center -150px; }

.ShareList--page {
  position: absolute;
  top: 14px;
  right: 15px; }

.ShareList--popin {
  margin-right: -5px;
  text-align: right; }

/*  ========================================
    # Components => Sideblock
    ======================================== */
.SideBlock {
  padding: 15px 30px; }
  @media (min-width: 1000px) and (max-width: 1179px) {
    .SideBlock {
      padding-left: 20px;
      padding-right: 20px; } }

.Layout-col--side > .SideBlock:first-child {
  margin-top: 15px; }

.SideBlock--heading {
  padding-top: 40px; }
  .SideBlock--heading h2 {
    font-weight: 800;
    font-style: normal;
    font-size: 1.4rem;
    text-transform: uppercase; }

.SideBlock-title {
  font-weight: 800;
  font-style: normal;
  margin-bottom: 15px;
  font-size: 0.8rem;
  line-height: 1.2;
  text-transform: uppercase; }
  .SideBlock-title .Icon {
    width: 32px;
    height: 32px; }
  .SideBlock-title + .SideBlock-list {
    margin-top: -4px; }

.SideBlock-buyonline {
  padding: 20px 40px;
  margin: 0 -20px;
  background-color: #f4f4f4; }
  @media (min-width: 1000px) {
    .SideBlock-buyonline {
      display: none; } }

.SideBlock-details {
  font-weight: 800;
  font-style: normal;
  margin-bottom: 10px;
  text-transform: uppercase;
  font-weight: 700;
  font-style: normal;
  font-size: 12px; }

.SideBlock-title--full {
  position: relative;
  margin-bottom: 0;
  padding: 25px 30px;
  background-color: #e7e7e7; }

.SideBlock-title--icon {
  position: relative;
  padding-left: 36px; }
  .SideBlock-title--icon .Icon {
    position: absolute;
    top: 0;
    left: -4px; }

.SideBlock-subtitle {
  display: block;
  margin-bottom: 14px;
  font-weight: 600;
  font-size: 11px;
  text-transform: lowercase; }

.SideBlock-total {
  font-weight: 400;
  font-style: normal; }

.SideBlock-title2 {
  margin-bottom: 6px;
  padding-left: 10px;
  font-size: 14px;
  font-weight: 700; }
  .SideBlock-list .SideBlock-title2 {
    padding-left: 0; }
  .SideBlock-title2 .Icon {
    width: 14px;
    height: 14px;
    vertical-align: -2px; }

.SideBlock-title3 {
  margin-bottom: 6px;
  margin-top: 6px;
  font-size: 12px;
  font-weight: 700; }
  .SideBlock-list .SideBlock-title3 {
    padding-left: 0; }
  .SideBlock-title3 .Icon {
    width: 14px;
    height: 14px;
    vertical-align: -2px; }
  .SideBlock-title3 + .SideBlock-formatLink {
    font-size: 12px;
    text-decoration: none;
    display: inline;
    padding: 0; }
    .SideBlock-title3 + .SideBlock-formatLink .SideBlock-formatPrice {
      display: inline; }
  .SideBlock-title3 + .SideBlock-formatList li {
    margin-top: 6px;
    margin-bottom: 0; }
    .SideBlock-title3 + .SideBlock-formatList li .SideBlock-formatPrice {
      display: inline; }

.SideBlock-moreNews {
  padding-left: 7px;
  text-decoration: none;
  font-size: .8rem; }
  .SideBlock-moreNews .Icon {
    width: 14px;
    height: 14px; }

.SideBlock-seeMore {
  padding-left: 7px;
  text-decoration: none;
  font-size: .8rem;
  cursor: pointer; }
  .SideBlock-seeMore .Icon {
    width: 14px;
    height: 14px; }

.SideBlock-list {
  padding-left: 10px; }

.SideBlock-sublist {
  padding-left: 20px; }

.SideBlock-item {
  margin-bottom: 2px;
  margin-left: -2px; }
  .SideBlock-item a {
    font-size: .7rem;
    text-decoration: none; }
  .SideBlock-item .Icon {
    width: 10px;
    height: 10px;
    color: #616f70; }

.SideBlock-item--red {
  color: #e3001a; }

.SideBlock-item--blue {
  color: #1d8cd3; }

.SideBlock-item--hidden {
  display: none; }

.SideBlock-itemDetail {
  font-weight: 400;
  font-style: normal;
  margin-bottom: 5px;
  font-size: .6rem; }

.SideBlock-itemAward {
  font-size: .65rem; }
  .SideBlock-itemAward span {
    font-weight: 600;
    font-style: normal; }

.SideBlock-game {
  display: block;
  max-width: 283px;
  text-align: center; }
  .SideBlock-game img {
    width: 100%; }

.SideBlock.SideBlock--agenda {
  margin-bottom: 15px;
  padding: 0;
  border-bottom: none; }

.SideBlock--suggestions {
  margin-bottom: 30px;
  padding: 0;
  border-bottom: none; }
  .SideBlock--suggestions .ListSort-select {
    width: 100%;
    margin-top: 20px;
    background-color: #fff; }
  .SideBlock--suggestions .SideBlock-list {
    padding-top: 20px;
    padding-left: 30px;
    padding-right: 30px; }
  .SideBlock--suggestions .SideBlock-item {
    margin-bottom: 8px;
    line-height: 1.2; }
    .SideBlock--suggestions .SideBlock-item a {
      font-size: .65rem; }
    .SideBlock--suggestions .SideBlock-item a:hover,
    .SideBlock--suggestions .SideBlock-item a:focus,
    .SideBlock--suggestions .SideBlock-item a:active {
      color: #1d8cd3; }

.SideBlock--youth + .SideBlock--youth {
  border-top: 3px solid #fff; }
  .RwdSection .SideBlock--youth + .SideBlock--youth {
    border: none; }

.SideBlock--youth.SideBlock--heading {
  border-bottom: none; }

.SideBlock--youth:last-child {
  border-bottom: none; }

.SideBlock--youth .SideBlock-title {
  font-weight: 400;
  font-style: normal; }

.SideBlock--youth .SideBlock-moreNews {
  color: #e64216; }

.SideBlock--youth .SideBlock-item--red {
  color: #e64216; }

.SideBlock--youth .SideBlock-item--blue {
  color: #2aa3a7; }

.SideBlock--youth.SideBlock--suggestions .SideBlock-title--full {
  padding-bottom: 10px;
  background-color: transparent; }

.SideBlock--youth.SideBlock--suggestions .SideBlock-item a:hover,
.SideBlock--youth.SideBlock--suggestions .SideBlock-item a:focus,
.SideBlock--youth.SideBlock--suggestions .SideBlock-item a:active {
  color: #e64216; }

.SideBlock-agenda {
  position: relative; }
  .SideBlock-agenda:after, .SideBlock-agenda:before {
    content: '';
    z-index: 10;
    display: inline-block;
    position: absolute;
    left: 0px;
    right: 30px;
    height: 15px;
    background-color: #eeeeee; }
  .SideBlock-agenda:before {
    top: 0; }
  .SideBlock-agenda:after {
    bottom: 0; }

.SideBlock-agendaContent {
  overflow: auto;
  max-height: 640px;
  padding-left: 20px;
  padding-right: 40px;
  background-color: #eeeeee; }
  .RwdSection .SideBlock-agendaContent {
    overflow: visible;
    max-height: none; }

.SideBlock-event {
  padding: 20px 0; }
  .SideBlock-event + .SideBlock-event {
    border-top: 1px solid #e5e5e5; }

.RwdSection .SideBlock--agenda .SideBlock-title {
  display: none; }

.SideBlock-agenda .SideBlock-title2 {
  padding-left: 0; }

.SideBlock-titleNbr {
  font-weight: 800;
  font-style: normal;
  position: absolute;
  right: 30px;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  display: inline-block;
  height: 34px;
  width: 34px;
  padding: 7px;
  text-align: center;
  color: #fff;
  background-color: #1d1d1b;
  border-radius: 5px; }

.SideBlock-accroche {
  font-size: .6rem;
  padding-top: 4px; }

.SideBlock-agenda .SideBlock-date {
  margin-top: 0;
  margin-bottom: 0; }

.SideBlock-address {
  position: relative;
  padding-left: 25px;
  font-size: .6rem;
  font-style: inherit; }

.SideBlock-iconGeo {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1; }

.SideBlock-place {
  display: block;
  text-transform: uppercase; }

.SideBlock--youth .SideBlock-titleNbr {
  background-color: #e64216; }

.SideBlock--youth .SideBlock-iconGeo {
  fill: #2aa3a7; }

/*  -------------------------------
    #Component - Side Block Article
    -------------------------------  */
.SideBlock-itemArticle {
  margin-bottom: 30px; }
  .SideBlock-itemArticle:last-child {
    margin-bottom: 0; }
  .SideBlock-itemArticle:only-child {
    margin-bottom: 15px; }

.SideBlock-title2 a {
  text-decoration: none; }

.SideBlock-list .SideBlock-title2--interview {
  position: relative;
  margin-bottom: 10px; }
  .SideBlock-list .SideBlock-title2--interview .Icon {
    margin-right: 2px; }

.SideBlock-date {
  font-weight: 600;
  font-style: normal;
  display: block;
  margin-bottom: 8px;
  margin-top: -4px;
  font-size: .65rem; }

.SideBlock-imgArticle {
  max-width: 260px; }
  .SideBlock-imgArticle img {
    width: 100%; }

.SideBlock-articleText,
.Sideblock-articleText {
  font-weight: 600;
  font-style: normal;
  font-size: 12px; }
  .SideBlock-articleText a,
  .Sideblock-articleText a {
    display: inline-block;
    color: #e3001a;
    white-space: nowrap; }
    .SideBlock--youth .SideBlock-articleText a, .SideBlock--youth
    .Sideblock-articleText a {
      color: #e64216; }

.SideBlock--youth .border {
  margin-bottom: 20px;
  padding-bottom: 9px;
  border-bottom: 1px solid #e5e5e5; }

/*  ========================================
    # Components => Side block excerpt
    ======================================== */
.SideBlock-excerpt {
  position: relative;
  padding: 10px 10px 10px 42px;
  margin-bottom: 10px;
  border: 1px solid #e5e5e5;
  border-radius: 10px;
  background-color: #fff; }
  .SideBlock-excerpt .Icon {
    position: absolute;
    top: 10px;
    left: 10px;
    width: 24px;
    height: 24px;
    color: #1d1d1b; }

.SideBlock-excerptText {
  font-weight: 400;
  font-style: normal;
  font-size: .6rem;
  font-style: italic; }

.SideBlock-source {
  font-weight: 700;
  font-style: normal;
  padding-top: 5px;
  font-style: normal;
  text-transform: uppercase; }

.SideBlock-author {
  font-weight: 400;
  font-style: normal;
  text-transform: none; }

/*  =============================
    #Component - Sideblock Format
    =============================  */
.SideBlock-format {
  margin-bottom: 10px;
  padding: 10px 10px 0;
  border: 1px solid #e5e5e5;
  background-color: #f6f7f8; }
  .SideBlock-format .SideBlock-title2 {
    font-weight: 800;
    font-style: normal;
    margin-bottom: 15px; }
  .SideBlock-format .SideBlock-title2 .Icon {
    margin-right: 3px; }

.SideBlock-formatList {
  padding-left: 10px; }
  .SideBlock-formatList .SideBlock-item {
    margin-bottom: 20px;
    margin-left: 0; }
    .SideBlock-formatList .SideBlock-item a {
      font-size: .65rem; }

.SideBlock-formatLink {
  position: relative;
  display: block;
  padding-left: 16px; }
  .SideBlock-formatLink .Icon {
    position: absolute;
    top: 4px;
    left: 0px; }

.SideBlock-formatImage {
  min-height: 36px;
  padding-left: 48px; }
  .SideBlock-formatImage img {
    position: absolute;
    top: 0;
    left: 1px; }
  .SideBlock-formatImage .Icon {
    left: 32px; }

.SideBlock-formatPrice {
  font-weight: 700;
  font-style: normal;
  display: block; }

.SideBlock--youth .SideBlock-format {
  border-radius: 10px;
  background-color: #fff; }

/*  ========================================
    # Components => Newsletter
    ======================================== */
.SideBlock--newsletter {
  padding-right: 30px;
  background-color: #f6f7f8; }
  .RwdSection--top .SideBlock--newsletter {
    padding: 15px;
    background-color: transparent; }

.SideBlock-newsField {
  position: relative;
  height: 40px; }

.SideBlock-input {
  display: block;
  width: 100%;
  height: 100%;
  padding-top: 7px;
  padding-bottom: 9px;
  padding-left: 12px;
  border: 1px solid #d0d0d0;
  border-radius: 6px;
  font-size: 14px; }

.SideBlock-submit {
  position: absolute;
  top: 0;
  right: 0;
  width: 50px;
  height: 40px;
  border-radius: 0 5px 5px 0;
  color: #fff;
  background-color: #1d8cd3; }
  .SideBlock-submit .Icon {
    vertical-align: top;
    -webkit-transform: rotate(20deg);
        -ms-transform: rotate(20deg);
            transform: rotate(20deg);
    width: 22px;
    height: 22px; }

.SideBlock--youth .SideBlock-submit {
  background-color: #e64216; }

.SideBlock--comic.SideBlock--newsletter {
  background-color: #f6f7f8; }

/*  =============================
    #Component - Sideblock Slider
    =============================  */
.SideBlock-slider {
  position: relative;
  max-width: 260px;
  margin-left: 10px;
  margin-bottom: 8px; }

.SideBlock-slides {
  height: 175px; }

.SideBlock-slide {
  max-width: 260px;
  height: 175px;
  font-size: 0rem;
  line-height: 155px;
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover; }

.SideBlock-slider:not(.flexslider) .SideBlock-slide:nth-child(n+2) {
  display: none; }

.SideBlock-linkSlide {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0; }

.SideBlock-slideTeaser {
  font-weight: 600;
  font-style: normal;
  position: absolute;
  bottom: 9px;
  left: 9px;
  display: inline-block;
  max-width: calc(100% - 18px);
  padding: 6px;
  font-size: .5rem;
  line-height: 1.3;
  background-color: #fff; }

.SideBlock-sliderNavItem {
  position: absolute;
  top: 50%;
  z-index: 10;
  width: 25px;
  height: 29px;
  background-color: #fff;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }
  .SideBlock-sliderNavItem .Icon {
    width: 15px;
    height: 15px; }

.SideBlock-sliderNavItem--next {
  right: -5px;
  box-shadow: 2px -1px 0 0 #d6d6d6; }

.SideBlock-sliderNavItem--prec {
  left: -5px;
  box-shadow: -2px -1px 0 0 #d6d6d6; }

.SiteMap a {
  color: inherit;
  text-decoration: none; }

.SiteMap a:hover, .SiteMap a:focus {
  color: #e3001a; }

.SiteMap-title {
  font-weight: 800;
  font-style: normal;
  margin-top: 40px;
  margin-bottom: 15px;
  font-size: 1.4rem;
  text-decoration: none;
  text-transform: uppercase; }

.SiteMap-list--2 {
  margin-left: 20px; }
  .SiteMap-list--2 a {
    position: relative;
    display: inline-block;
    padding: 4px 10px 4px 20px; }
  .SiteMap-list--2 .Icon {
    position: absolute;
    top: 50%;
    left: 0;
    width: 14px;
    height: 14px;
    margin-top: -6px; }

/*  ===========================
    # Components => SocialEmbed
    =========================== */
.SocialEmbed {
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
  text-align: left; }

.SocialEmbed-header {
  display: table;
  width: 100%; }

.SocialEmbed-title {
  font-weight: 700;
  font-style: normal;
  display: table-cell;
  vertical-align: middle;
  padding-right: 20px;
  font-size: .85rem;
  line-height: 1.3; }
  .SocialEmbed-title:last-child {
    padding-left: 20px;
    padding-right: 0; }
  .SocialEmbed-title a {
    text-decoration: none; }
  @media (max-width: 759px) {
    .SocialEmbed-title {
      font-size: .7rem; } }

.SocialEmbed-icons {
  display: table-cell;
  vertical-align: middle;
  width: 10%;
  white-space: nowrap;
  font-size: 0rem; }

.SocialEmbed-icon {
  display: inline-block;
  width: 40px;
  height: 40px;
  padding: 6px;
  border-radius: 50%;
  text-align: center;
  font-size: .7rem;
  color: #1d1d1b;
  background-color: #fff; }
  .SocialEmbed-icon + .SocialEmbed-icon {
    margin-left: 10px; }
  .SocialEmbed-icon .Icon {
    width: 28px;
    height: 28px; }

.SocialEmbed-main {
  overflow: hidden;
  margin-top: 10px; }
  @media (max-width: 699px) {
    .SocialEmbed-main {
      display: none; } }

.SocialEmbed--youth .SocialEmbed-title {
  color: #e64216; }

.SocialEmbed--youth .SocialEmbed-icon {
  color: #fff;
  background-color: #e64216; }

.SocialFooter--global .SocialFooter-col:nth-child(2) .SocialEmbed-icon {
  color: #fff;
  background-color: #e64216; }

/*  ==========================
    # Component - SocialFooter
    ==========================  */
.SocialFooter {
  padding: 5px 0;
  color: #fff;
  background-color: #1d1d1b; }

.SocialFooter-col {
  padding: 20px; }
  @media (max-width: 759px) {
    .SocialFooter-col {
      padding-left: 15px;
      padding-right: 15px; } }

@media (min-width: 1000px) {
  .SocialFooter {
    padding: 0; }
  .SocialFooter-content {
    display: table;
    table-layout: fixed;
    width: 1230px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
  .SocialFooter-col {
    display: table-cell;
    vertical-align: top;
    padding-top: 60px;
    padding-bottom: 60px; } }

.SocialFooter-col--icons {
  padding-left: 10px;
  padding-right: 10px; }
  @media (min-width: 1000px) {
    .SocialFooter-col--icons {
      width: 300px;
      padding-top: 100px; } }

@media (min-width: 1000px) {
  .SocialFooter--global .SocialFooter-col + .SocialFooter-col {
    border-left: 1px solid #fff; } }

.SocialFooter--comic {
  border-top: 1px solid #000; }

.SocialFooter--youth {
  color: inherit;
  background-color: #c2e4e5;
  border-top: solid 1px #fff; }

.Icon--X-1, .Icon--instagram {
  padding: 3px; }

.RespRatio {
  position: relative;
  min-width: 280px;
  min-height: 140px; }

.RespRatio-dummy {
  display: block;
  width: 100%;
  height: auto; }

.RespRatio-content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.RwdHead {
  display: table;
  background-color: #efefef;
  padding: 10px 15px 12px;
  width: 100%;
  border-top: 1px solid transparent;
  height: 55px; }
  @media (min-width: 760px) {
    .RwdHead {
      display: none !important; } }

.RwdHead-title,
.RwdHead-side {
  display: table-cell;
  vertical-align: middle; }

.RwdHead-title {
  font-weight: 700;
  font-style: normal;
  width: auto;
  text-align: left;
  font-size: .9rem;
  line-height: 1.1; }

.RwdHead-side {
  width: 42%;
  text-align: right;
  font-size: .65rem;
  line-height: 1.3;
  padding-left: 6%; }
  @media (max-width: 359px) {
    .RwdHead-side {
      font-size: .6rem; } }

.RwdHead--global {
  border-color: rgba(255, 255, 255, 0.4);
  color: #fff;
  background-color: #e3001a; }

.RwdHead--comic {
  border-color: #000;
  color: #fff;
  background-color: #1d1d1b; }
  .RwdHead--comic .RwdHead-side {
    color: rgba(255, 255, 255, 0.8); }

.RwdHead--youth {
  border-color: #fff;
  color: #3d4b4b;
  background-color: #c2e4e5; }
  .RwdHead--youth .RwdHead-side {
    color: #616f70; }

.ThemeHeader {
  font-weight: 800;
  font-style: normal;
  padding: 20px;
  background-color: #fff; }
  .ThemeHeader--comic {
    border-top: solid 8px #000;
    background-color: #f4f4f4; }
  .ThemeHeader--youth {
    background-color: #c2e4e5; }

.ThemeHeader-title {
  padding: 50px 50px;
  font-size: 68px;
  line-height: 1;
  text-transform: uppercase;
  color: #1d1d1b; }
  .ThemeHeader--youth .ThemeHeader-title {
    color: #e64216; }
  @media (min-width: 1000px) and (min-height: 700px) {
    .ThemeHeader-title {
      padding-top: 60px;
      padding-bottom: 60px; } }
  @media (max-width: 999px) {
    .ThemeHeader-title {
      font-size: 54px;
      padding: 35px 30px; } }
  .ThemeHeader-title a {
    text-decoration: none; }
  .ThemeHeader-title > span,
  .ThemeHeader-title > a {
    position: relative; }
  .ThemeHeader-title .Icon {
    position: absolute;
    left: -28px;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 24px;
    height: 24px; }

.TopSlider {
  position: relative;
  width: 100%; }

.TopSlider-slides {
  height: 800px;
  overflow: hidden; }

.TopSlider-slide {
  height: 800px;
  padding: 86px 25px 12px;
  line-height: 620px; }

.TopSlider:not(.TopSlider--active) .TopSlider-slide + .TopSlider-slide {
  display: none; }

.TopSlider-background {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  height: 100%;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover; }

.TopSlider-teaser {
  vertical-align: middle;
  z-index: 5;
  display: inline-block;
  width: 30%;
  min-width: 400px;
  max-width: 500px;
  padding: 20px;
  line-height: 1;
  border: 1px solid #ccc;
  background-color: #fff; }

.TopSlider-title {
  margin-bottom: 20px;
  font-size: 37px;
  line-height: 1;
  text-transform: uppercase; }

.TopSlider-description {
  overflow: hidden;
  margin-bottom: 20px;
  font-size: 14px;
  line-height: 1.3;
  max-height: 5.2em; }

.TopSlider-button {
  display: inline-block;
  padding: 7px 14px;
  color: #fff;
  font-size: 14px;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  background-color: #777; }

.TopSlider-nav {
  position: absolute;
  bottom: 30px;
  left: 0;
  right: 0;
  z-index: 10;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  white-space: nowrap;
  opacity: 0;
  -webkit-transition: opacity 650ms ease-in-out;
  transition: opacity 650ms ease-in-out; }
  .TopSlider--active .TopSlider-nav {
    opacity: 1; }
  .TopSlider-nav button:focus {
    outline: none; }

.TopSlider-navItem {
  display: inline-block;
  vertical-align: middle;
  padding: 12px;
  line-height: 10px;
  border-radius: 50%;
  background-color: #fff; }
  .TopSlider-navItem:active {
    -webkit-transform: translateY(2px);
        -ms-transform: translateY(2px);
            transform: translateY(2px); }
  .TopSlider-navItem .Icon {
    position: relative;
    vertical-align: top;
    width: 32px;
    height: 32px; }
  .TopSlider-navItem--prev .Icon {
    left: -1px; }
  .TopSlider-navItem--next .Icon {
    right: -1px; }

.TopSlider-items {
  display: inline-block;
  vertical-align: middle;
  margin-left: 25px;
  margin-right: 25px; }

.TopSlider-item {
  display: inline-block;
  vertical-align: middle;
  border: 3px solid transparent; }
  .TopSlider-item + .TopSlider-item {
    margin-left: 50px; }
  .TopSlider-item.flex-active {
    border-color: #fff; }
    .TopSlider-item.flex-active .TopSlider-itemBackground {
      opacity: 1; }

.TopSlider-itemHover {
  display: block;
  border: 1px solid #fff;
  background-color: #000; }

.TopSlider-itemBackground {
  display: block;
  width: 200px;
  height: 100px;
  opacity: 0.5;
  background-origin: border-box;
  background-repeat: no-repeat;
  background-size: cover; }

@media (min-width: 1000px) and (max-width: 1279px) {
  .TopSlider-slides {
    height: 700px; }
  .TopSlider-slide {
    height: 700px;
    padding: 12px;
    line-height: 700px; }
  .TopSlider-title {
    font-size: 32px; }
  .TopSlider-items {
    margin-left: 15px;
    margin-right: 15px; }
  .TopSlider-item + .TopSlider-item {
    margin-left: 30px; }
  .TopSlider-itemBackground {
    width: 160px;
    height: 80px; } }

@media (max-width: 999px) {
  .TopSlider-slide {
    position: relative;
    padding: 0;
    line-height: 1; }
  .TopSlider-description {
    display: none; }
  .TopSlider-nav {
    top: 0;
    bottom: auto; }
  .TopSlider-navItem {
    position: absolute; }
  .TopSlider-items {
    display: none; } }

@media (min-width: 760px) and (max-width: 999px) {
  .TopSlider-slides,
  .TopSlider-slide {
    height: 450px; }
  .TopSlider-teaser {
    position: absolute;
    left: 15px;
    bottom: 10px; }
  .TopSlider-title {
    font-size: 24px; }
  .TopSlider-navItem {
    top: 195px;
    padding: 10px; }
    .TopSlider-navItem .Icon {
      width: 28px;
      height: 28px; }
  .TopSlider-navItem--prev {
    left: 15px; }
  .TopSlider-navItem--next {
    right: 15px; } }

@media (max-width: 759px) {
  .TopSlider-slides,
  .TopSlider-slide {
    height: auto; }
  .TopSlider-background {
    position: static;
    height: 50vw;
    min-height: 160px; }
  .TopSlider-teaser {
    position: static;
    display: table;
    width: 100%;
    height: 50px;
    min-width: 0;
    max-width: none;
    padding: 0;
    border: none; }
  .TopSlider-title {
    display: table-cell;
    vertical-align: middle;
    width: auto;
    margin: 0;
    padding: 10px;
    border: solid #DFDFDF;
    border-width: 1px 0;
    line-height: 1;
    font-size: 14px; } }
  @media (max-width: 759px) and (min-width: 400px) {
    .TopSlider-title {
      padding-left: 15px;
      padding-right: 15px; } }

@media (max-width: 759px) {
  .TopSlider-button {
    display: table-cell;
    vertical-align: middle;
    width: 30%;
    min-width: 120px;
    padding: 10px;
    line-height: 1.2; }
  .TopSlider-slides {
    overflow: hidden; }
  .TopSlider-navItem {
    top: 90px;
    top: 25vw;
    margin-top: -18px;
    padding: 10px; }
    .TopSlider-navItem .Icon {
      width: 16px;
      height: 16px; }
  .TopSlider-navItem--next {
    right: 10px; }
  .TopSlider-navItem--prev {
    left: 10px; } }

.TopSlider--global .TopSlider-title,
.TopSlider--comic .TopSlider-title {
  font-weight: 800;
  font-style: normal; }

.TopSlider--global .TopSlider-button {
  background-color: #e3001a; }

.TopSlider--comic .TopSlider-button {
  background-color: #1d8cd3; }

.TopSlider--youth .TopSlider-title {
  font-weight: 400;
  font-style: normal; }

.TopSlider--youth .TopSlider-button {
  background-color: #2aa3a7; }

.TopSlider--youth .TopSlider-itemHover {
  background-color: #fff; }

@media print {
  h1, h2, h3, h4, h5, h6, p, li {
    page-break-inside: avoid; }
  .Header-inner {
    position: static !important;
    padding: 0 !important; }
  .Header-top {
    border: none !important; }
  .Header-item {
    display: none !important; }
  .Header-item--logo {
    display: block !important;
    padding: 0 !important; }
  .Header-item--logo > * {
    line-height: auto !important; }
  .Header-nav, .Header-search {
    display: none !important; }
  .Layout-col {
    display: block !important;
    width: 100% !important; }
  .Footer,
  .SocialFooter,
  .Layout-cover,
  .Layout-top,
  .Pagination {
    display: none !important; } }

.Filterblock-li {
  padding: 10px 50px 1px 0; }

.Filterblock-selectbtn {
  border: solid 1px #d0d0d0 !important;
  background-color: #fff !important; }
  .Filterblock-selectbtn:active {
    border-color: #e3001a !important;
    background-color: #e3001a !important; }

.Filterblock-btn {
  border-color: #e3001a !important;
  background-color: #e3001a !important; }

.Search {
  padding-bottom: 0; }
  .Search .Search-catchphrase {
    margin: 10px 0; }
    @media (min-width: 1000px) {
      .Search .Search-catchphrase {
        margin-top: 0;
        margin-bottom: 30px; } }

@media (max-width: 759px) {
  .Search-scrolling {
    display: block;
    margin-bottom: 15px;
    overflow-x: scroll;
    overflow-y: hidden;
    white-space: nowrap; } }

.Search-scrolling .Search-itm {
  display: inline-block; }

.Search-scrolling .Search-tab {
  font-weight: 700;
  font-style: normal;
  display: inline-block;
  min-width: 140px;
  padding: 8px 12px 9px;
  border: solid 1px #1d1d1b;
  font-size: .6rem;
  line-height: 1;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none;
  color: #1d1d1b; }
  .Search-scrolling .Search-tab:hover, .Search-scrolling .Search-tab:focus, .Search-scrolling .Search-tab:active, .Search-scrolling .Search-tab[data-state="active"] {
    border: solid 1px #e3001a;
    color: #fff;
    background-color: #e3001a; }

#register_optInNewsletter {
  width: 22px;
  height: 22px; }

.Register-error {
  color: #e3001a; }

.TopSlider--TeacherHome .TopSlider-slide {
  padding: 12px 25px;
  height: auto;
  line-height: normal;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover; }
  @media (min-width: 1000px) {
    .TopSlider--TeacherHome .TopSlider-slide {
      margin-top: -100px;
      padding-top: 185px; } }
  @media (min-width: 760px) and (max-width: 999px) {
    .TopSlider--TeacherHome .TopSlider-slide {
      margin-top: -35px;
      padding-top: 97px; } }

.TopSlider--TeacherHome .TopSlider-teaser {
  position: relative !important;
  width: 100%;
  margin: 25px 0;
  border: 1px solid #ccc8c8;
  left: auto;
  bottom: auto;
  font-size: 14px;
  line-height: 1.4; }
  @media (max-width: 759px) {
    .TopSlider--TeacherHome .TopSlider-teaser {
      padding: 20px; } }
  .TopSlider--TeacherHome .TopSlider-teaser > *:not(:last-child) {
    margin-bottom: 20px; }
  .TopSlider--TeacherHome .TopSlider-teaser h2 {
    font-size: 1.8rem;
    font-style: normal;
    font-weight: 800;
    line-height: 1;
    text-transform: uppercase; }
    @media (max-width: 759px) {
      .TopSlider--TeacherHome .TopSlider-teaser h2 {
        font-size: 1.4rem; } }
  .TopSlider--TeacherHome .TopSlider-teaser ul {
    padding-top: 5px;
    padding-left: 20px; }
  .TopSlider--TeacherHome .TopSlider-teaser ul > li {
    display: list-item;
    list-style-type: disc;
    padding-bottom: 10px; }

@media (max-width: 759px) {
  .TopSlider--TeacherHome .TopSlider-button {
    display: inline-block;
    width: auto; } }

.EducationalOffer-block {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  @media (min-width: 1280px) {
    .EducationalOffer-block {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; } }

.EducationalOffer-text {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1; }
  @media (min-width: 1000px) {
    .EducationalOffer-text {
      margin-right: 30px; } }

.EducationalOffer-cycles {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 2;
  -webkit-flex: 2;
      -ms-flex: 2;
          flex: 2;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  @media (min-width: 1000px) {
    .EducationalOffer-cycles {
      min-width: 500px; } }
  @media (max-width: 999px) {
    .EducationalOffer-cycles {
      width: 100%;
      margin-top: 50px; } }
  @media (max-width: 759px) {
    .EducationalOffer-cycles {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; } }

.EducationalOffer-cycleCard {
  display: block;
  max-width: 185px;
  width: 100%;
  margin-top: 15px; }
  @media (max-width: 759px) {
    .EducationalOffer-cycleCard {
      margin-bottom: 15px; } }
  .EducationalOffer-cycleCard:hover .EducationalOffer-cycleTitle, .EducationalOffer-cycleCard:focus .EducationalOffer-cycleTitle {
    color: #e3001a; }
  .EducationalOffer-cycleCard a {
    text-decoration: none; }
  .EducationalOffer-cycleCard img {
    display: block;
    margin: 0 auto;
    padding: 0 15px; }

.EducationalOffer-cycleTitle {
  color: #1d1d1b;
  font-size: .8rem;
  font-weight: 800;
  line-height: 1.4;
  text-align: center; }

.HomeRow--teacher .Resume-title {
  font-weight: 700;
  font-style: normal;
  margin-bottom: 10px;
  font-size: .8rem; }

.HomeRow--teacher .Resume-book {
  margin-bottom: 20px; }

.HomeRow--teacher .Resume-book > * {
  font-size: .7rem; }

.HomeRow--teacher .TopSlider-button {
  background-color: #e3001a !important; }

.se_formEnseignant {
  width: 100%;
  max-width: 880px; }

.se_formEnseignant .formHeader,
.se_formEnseignant .formTextLabel,
.se_formEnseignant .formFooterContainer {
  display: none; }

.se_formEnseignant .formText,
.se_formEnseignant .formParagraph,
.se_formEnseignant .formSelectionMultiple,
.se_formEnseignant .formSelectionSingle {
  margin-bottom: 15px; }

.se_formEnseignant .formTitle {
  font-weight: 600;
  font-size: 1.2rem;
  margin-top: 40px;
  margin-bottom: 20px;
  color: #1d1d1b;
  text-transform: lowercase; }

.se_formEnseignant .formTitle:first-letter {
  text-transform: uppercase; }

.se_formEnseignant.formSubmit {
  text-align: center; }

.se_formEnseignant .formSubmit {
  margin-bottom: 20px; }
  .se_formEnseignant .formSubmit a {
    display: inline-block;
    padding: 8px 20px;
    background: #1d1d1b;
    color: #fff;
    cursor: pointer;
    font-family: "Open Sans", "Segoe UI", "Lucida Grande", Verdana, sans-serif;
    font-size: 0.8rem;
    border-radius: 5px;
    text-decoration: none;
    text-transform: lowercase; }
  .se_formEnseignant .formSubmit a:first-letter {
    text-transform: uppercase; }

.se_formEnseignant .formSubmit input {
  background: #1d1d1b;
  color: #fff;
  margin: 40px 0 0 0;
  cursor: pointer;
  display: inline-block;
  font-size: 1rem;
  line-height: 1rem;
  padding: 5px 10px;
  text-transform: lowercase; }

.se_formEnseignant .formSubmit a:first-letter {
  text-transform: uppercase; }

.se_formEnseignant .formSubmit a:hover,
.se_formEnseignant .formSubmit a:focus,
.se_formEnseignant .formSubmit input:hover,
.se_formEnseignant .formSubmit input:focus {
  background: #1d1d1b;
  color: #fff;
  text-decoration: none; }

.se_formEnseignant .formTextInput input,
.se_formEnseignant .formSelectionSingleValues select {
  background: #fff;
  color: #404040;
  border: solid 1px #ccc8c8;
  padding: 16px;
  width: 100%;
  box-sizing: border-box;
  font-size: 0.8rem; }

.se_formEnseignant select[name="formItem-mbsingle-36"],
.se_formEnseignant select[name="formItem-mbsingle-34"] {
  background-image: url("/bundles/castermanstatic/images/layout/arrow-bottom@2x.png?v1");
  background-position: right 20px center;
  background-repeat: no-repeat;
  background-size: 13px 13px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

.se_formEnseignant .formTextInput input.formError,
.se_formEnseignant .formSelectionSingleValues select.formError {
  border: solid 1px #ff0000; }

.se_formEnseignant .formSelectionSingleLabel.formError,
.se_formEnseignant .formError label {
  color: #ff0000; }

@media (min-width: 760px) {
  .se_formEnseignant .formTextInput,
  .se_formEnseignant .formSelectionSingleValues {
    width: 67%; } }

.se_formEnseignant .formTextInput {
  margin-bottom: 40px; }

.se_formEnseignant .formSelectionSingle .formSelectionSingleLabel label,
.se_formEnseignant .formSelectionSingle .formTextLabel label {
  font-weight: 700;
  font-style: normal;
  display: block;
  margin-right: 10px;
  margin-bottom: 5px;
  font-size: .75rem; }

.se_formEnseignant .formTextLabel label {
  margin-bottom: 5px;
  display: block;
  font-weight: 600;
  font-size: 0.75rem; }

.se_formEnseignant .formSelectionMultipleLabel {
  padding: 10px 0 5px 0;
  font-weight: bold;
  display: block; }

.se_formEnseignant .formSelectionSingleValueForSingleLine {
  float: left;
  margin: 20px 20px 40px 0; }
  @media (max-width: 759px) {
    .se_formEnseignant .formSelectionSingleValueForSingleLine {
      float: none;
      margin: 0px 20px 20px 0; } }
  .se_formEnseignant .formSelectionSingleValueForSingleLine label {
    font-weight: 600;
    font-size: 0.75rem; }

.se_formEnseignant .formSelectionSingleValueForSingleLine label input {
  margin-right: 10px; }

.se_formEnseignant .formSelectionMultipleValueForMultipleLines {
  margin: 0 0 3px 0; }

.se_formEnseignant.formSelectionSingleValues:after,
.se_formEnseignant.formSubmit:after {
  content: '';
  display: block;
  clear: both; }

.se_formEnseignant .formErrorMessage {
  margin-bottom: 10px;
  color: #ff0000; }

.se_formEnseignant .customCheckbox {
  margin: 3px 6px 3px 3px; }

.se_formEnseignant .TeachingClassValues .TeachingClassValuesContainer {
  border-left: solid 1px #c4c4c4;
  margin: 5px 0 10px 10px;
  padding: 0 0 0 5px;
  font-size: 14px; }

.se_formEnseignant label {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.se_formEnseignant .clearfix:after {
  content: "";
  clear: both;
  display: table; }

.se_formEnseignant .LegalNotice {
  margin-top: 40px;
  font-style: italic; }
  .se_formEnseignant .LegalNotice a {
    font-style: italic; }

#customCountry {
  margin-bottom: 10px; }

.se_formEnseignant .customCountryLabel {
  display: inline-block;
  margin: 0px 20px 20px 0;
  font-weight: 600; }
  @media (max-width: 759px) {
    .se_formEnseignant .customCountryLabel {
      margin: 0px 20px 20px 0; } }

.se_formEnseignant .customCountryLabel input {
  margin-right: 5px; }

.se_formEnseignant input:disabled,
.se_formEnseignant select:disabled {
  color: #777;
  border: solid 1px #d4d4d4;
  background: #f8f8f8; }

#searchSchoolValue {
  width: 100%; }

#searchSchoolButton {
  margin-top: 5px;
  padding: 8px 20px;
  box-sizing: border-box;
  border: none;
  font-size: 0.8rem;
  background: #1d1d1b;
  color: #fff;
  cursor: pointer;
  font-family: "Open Sans", "Segoe UI", "Lucida Grande", Verdana, sans-serif;
  border-radius: 5px; }

#searchSchoolResults {
  margin-top: 15px; }

.se_loader {
  border: 4px solid #f3f3f3;
  border-top: 4px solid #666;
  border-radius: 50%;
  width: 30px;
  height: 30px;
  -webkit-animation: se_spin .7s linear infinite;
          animation: se_spin .7s linear infinite;
  margin: 20px auto; }

#customErrorMessage {
  color: #ff0000;
  margin-top: 30px;
  text-align: center; }

#searchSchoolResultsValues {
  margin-bottom: 5px; }

#searchSchoolResultSelected {
  display: block;
  margin-top: 30px;
  background: #e8e8e8;
  padding: 20px; }

#searchSchoolResultNotFound {
  font-size: 12px;
  text-align: left;
  cursor: pointer;
  margin-top: 5px; }
  #searchSchoolResultNotFound label {
    font-size: 0.8rem; }

.se_form.se_modalbox {
  position: fixed;
  background: rgba(0, 0, 0, 0.7);
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 20000;
  max-width: 100%; }

.se_form.se_modalbox > div {
  position: relative;
  max-width: 1000px;
  width: 80%;
  padding: 10px 30px;
  height: 80%;
  top: 5%;
  margin: 0 auto;
  overflow: auto;
  background: #fff; }

.se_form .DateOfBirth .formTextLabel {
  display: block; }

.se_form .Profession label {
  display: none !important; }

@-webkit-keyframes se_spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes se_spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

.Teacher-space {
  /*
    // when user is log-in
    */ }
  .Teacher-space[data-state="active"] .Teacher-login, .Teacher-space[data-state="active"] .Teacher-logout {
    display: block; }
  .Teacher-space .Teacher-arrowbottom {
    position: relative;
    top: 2px;
    left: 5px;
    display: inline-block;
    padding: 0.5rem;
    -webkit-transform: rotate(150deg);
        -ms-transform: rotate(150deg);
            transform: rotate(150deg); }
    .Teacher-space .Teacher-arrowbottom .icon {
      width: 8px;
      height: 8px; }
  .Teacher-space .Teacher-link {
    position: absolute;
    right: 85px;
    top: 12px;
    background-color: #D80827; }
    .Teacher-space .Teacher-link a {
      color: white;
      margin-right: 10px; }
  .Teacher-space .Teacher-button {
    position: absolute;
    width: 76px;
    height: 74px;
    top: 12px;
    right: 10px;
    cursor: pointer;
    background-color: #D80827; }
    .Teacher-space .Teacher-button:focus, .Teacher-space .Teacher-button:active {
      background-color: #C50724; }
    .Teacher-space .Teacher-button .Teacher-icon {
      position: absolute;
      display: inline-block;
      right: 17px;
      top: 28px;
      padding: 0 .7rem;
      border-left: 1px solid white; }
      .Teacher-space .Teacher-button .Teacher-icon .Icon {
        width: 20px;
        height: 19px; }
  .Teacher-space .Teacher-firstname {
    position: relative;
    display: block;
    top: 12px;
    right: 2px;
    font-size: 0.6em;
    font-weight: 400; }
  .Teacher-space .Teacher-arrow {
    position: absolute;
    display: inline-block;
    top: 29px;
    right: 15px;
    -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
            transform: rotate(90deg); }
    .Teacher-space .Teacher-arrow .Icon {
      height: 10px;
      width: 8px; }
  .Teacher-space .Teacher-login, .Teacher-space .Teacher-logout {
    position: absolute;
    display: none;
    width: 15%;
    height: 140px;
    top: 86px;
    right: 10px;
    padding-left: 25px;
    text-align: left;
    font-size: 0.8rem;
    font-weight: 500;
    font-style: normal;
    background-color: white;
    z-index: 20; }
  .Teacher-space .Teacher-signin, .Teacher-space .Teacher-signup {
    display: block;
    margin-top: 15px;
    font-style: italic; }
    .Teacher-space .Teacher-signin a, .Teacher-space .Teacher-signup a {
      color: #1d1d1b; }
  .Teacher-space .Teacher-signin {
    margin-bottom: 20px; }
  .Teacher-space .Teacher-linebottom {
    display: block;
    width: 80%;
    border-bottom: 1px solid #d9dadb; }
  .Teacher-space .Teacher-btn {
    display: block;
    width: 80%;
    height: 30px;
    margin-top: 8px;
    font-size: 0.7rem !important;
    font-style: normal;
    font-weight: 600;
    text-align: center;
    background-color: #1d1d1b;
    color: #ccc8c8; }
    .Teacher-space .Teacher-btn a {
      line-height: 1.5; }
  .Teacher-space .Teacher-button--logged {
    background-color: unset; }
    .Teacher-space .Teacher-button--logged .Teacher-icon {
      position: absolute;
      right: 15px;
      top: 18px;
      border-left: none; }
      .Teacher-space .Teacher-button--logged .Teacher-icon .Icon {
        width: 25px;
        height: 16px; }
    .Teacher-space .Teacher-button--logged .Teacher-arrow {
      top: 13px;
      right: 20px; }
      .Teacher-space .Teacher-button--logged .Teacher-arrow .Icon {
        height: 6px;
        width: 6px; }
  .Teacher-space .Teacher-logout .Teacher-address a {
    display: block;
    margin-top: 15px;
    margin-bottom: 15px;
    margin-left: 20px;
    color: #1d1d1b; }
  .Teacher-space .Teacher-logout .Teacher-btn {
    margin-top: 10px; }

.TeachingTools {
  position: relative;
  padding: 25px 85px 25px 35px;
  overflow: hidden; }
  @media (max-width: 759px) {
    .TeachingTools {
      padding: 25px 75px 25px 25px; } }
  .TeachingTools[data-state="active"] .TeachingTools-btn {
    top: 20px;
    right: 25px;
    width: 35px;
    height: 35px; }
    @media (max-width: 759px) {
      .TeachingTools[data-state="active"] .TeachingTools-btn {
        right: 15px; } }
    .TeachingTools[data-state="active"] .TeachingTools-btn .Icon--plus {
      display: none; }
  .TeachingTools[data-state="inactive"] .TeachingTools-btn {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%; }
    .TeachingTools[data-state="inactive"] .TeachingTools-btn .Icon {
      position: absolute;
      top: 20px;
      right: 25px; }
      @media (max-width: 759px) {
        .TeachingTools[data-state="inactive"] .TeachingTools-btn .Icon {
          right: 15px; } }
    .TeachingTools[data-state="inactive"] .TeachingTools-btn .Icon--minus {
      display: none; }
  .TeachingTools[data-state="inactive"] .TeachingTools-content {
    display: none; }

.TeachingTools-btn {
  position: absolute;
  cursor: pointer; }
  .TeachingTools-btn .Icon {
    width: 35px;
    height: 35px;
    color: #fff;
    border-radius: 50%; }

.TeachingTools-label {
  font-size: .8rem;
  line-height: 1.2; }
  @media (max-width: 759px) {
    .TeachingTools-label {
      font-size: .7rem;
      line-height: 1.4; } }

.TeachingTools-content {
  margin-top: 25px; }
  .TeachingTools-content > *:not(.TeachingTools-link) {
    margin-bottom: 2em; }

.TeachingTools-resume {
  line-height: 1.4; }

.TeachingTools-audience li:not(:last-child) {
  margin-bottom: .2em; }

.TeachingTools-audience li {
  font-size: .7rem;
  line-height: 1.3; }

.TeachingTools-cards li:not(:last-child) {
  margin-bottom: .7em; }

.TeachingTools-cards li {
  display: block; }

.TeachingTools-card {
  position: relative;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 2px;
  padding-right: 10px;
  background-color: #F4F4F4;
  border-radius: 3px; }
  .TeachingTools-card:hover {
    color: #fff;
    background-color: #e3001a; }
  .TeachingTools-card a {
    font-size: .7rem;
    font-weight: 600;
    line-height: 1.4;
    text-transform: uppercase;
    text-decoration: none; }
    .TeachingTools-card a::after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0; }

.TeachingTools-icon {
  position: relative;
  display: inline-block;
  width: 34px;
  height: 34px;
  margin-right: 2px;
  border-radius: 50%; }
  .TeachingTools-icon .Icon {
    position: absolute;
    width: 34px;
    height: 34px;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }

a.TeachingTools-link {
  display: inline-block;
  font-size: .7rem; }

.Layout--comic .TeachingTools {
  border: 1px solid #e3001a; }

.Layout--comic .TeachingTools-btn .Icon {
  background-color: #e3001a; }

.Layout--comic .TeachingTools-label {
  color: #e3001a; }

.Layout--comic .TeachingTools-card:hover {
  background-color: #e3001a; }

.Layout--comic a.TeachingTools-link {
  color: #e3001a; }

.Layout--youth .TeachingTools {
  border: 1px solid #e64216; }

.Layout--youth .TeachingTools-btn .Icon {
  background-color: #e64216; }

.Layout--youth .TeachingTools-label {
  color: #e64216; }

.Layout--youth .TeachingTools-card:hover {
  background-color: #e64216; }

.Layout--youth a.TeachingTools-link {
  color: #e64216; }

.EducationalOffer {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-bottom: 40px; }
  .EducationalOffer:not(:first-child) {
    margin-top: 50px; }
  @media (max-width: 759px) {
    .EducationalOffer {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; } }
  .EducationalOffer .BookInfo-top {
    -webkit-box-flex: 1;
    -webkit-flex: 1 100%;
        -ms-flex: 1 100%;
            flex: 1 100%; }
  .EducationalOffer .BookInfo-cover {
    max-width: 260px;
    width: 100%;
    padding-right: 25px;
    padding-bottom: 25px;
    margin: 0; }
    .EducationalOffer .BookInfo-cover:after {
      content: none; }
    .EducationalOffer .BookInfo-cover img {
      border: 1px solid #d7d7d7; }
  .EducationalOffer .BookInfo-resume {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1; }

.EducationalOffer .TeachingTools-cards,
.EducationalOffer .BookSheet-info {
  margin-bottom: .6rem; }

.EducationalOffer .BookSheet-authors {
  font-size: .7rem; }

.EducationalOffer .BookSheet-title {
  font-size: .9rem; }

.EducationalOffer .BookList-resume {
  line-height: 1.4; }

.EducationalOffer .TeachingTools-audience {
  display: inline-block;
  padding: 5px 7px;
  margin-top: 20px;
  margin-bottom: 25px;
  border: 1px solid #dcdcdc;
  border-radius: 4px; }

.EducationalOffer .BookSheet-meta {
  margin: 0;
  font-weight: 400; }

.EducationalOffer .BookSheet-price {
  margin-top: 0;
  margin-bottom: 5px;
  font-size: 1rem; }

.EducationalOffer .TeachingTools-cards li:not(:last-child) {
  margin-bottom: .4rem; }

.EducationalOffer .TeachingTools-link {
  padding: 2px;
  margin-top: .4rem;
  text-decoration: none; }
  .EducationalOffer .TeachingTools-link:hover, .EducationalOffer .TeachingTools-link:focus {
    text-decoration: underline; }

/*# sourceMappingURL=main.css.map */

/* Fixes to be added or merged with main styles */

