:root         { --dark-gray:  #767676; --medium-gray:  #B5B5B5; --light-gray : #F5F5F5; }
.red-theme    { --dark-color: #E72508; --medium-color: #FC8B70; --light-color: #FFEFEB; }
.orange-theme { --dark-color: #AE650B; --medium-color: #FAB856; --light-color: #FFF7EB; }
.yellow-theme { --dark-color: #8F7400; --medium-color: #FFE63D; --light-color: #FFFCEB; }
.green-theme  { --dark-color: #508423; --medium-color: #95EC5C; --light-color: #F3FFEB; }
.cyan-theme   { --dark-color: #04857F; --medium-color: #3CFAFC; --light-color: #EBFFFF; }
.blue-theme   { --dark-color: #0161FF; --medium-color: #81B0FF; --light-color: #EBF3FF; }
.purple-theme { --dark-color: #A901FF; --medium-color: #D481FF; --light-color: #F8EBFF; }

@font-face {
 font-family: "PT Sans Narrow";
 src: url("../fonts/PTN57F.woff2") format("woff2");
}

@font-face {
 font-family: "Lavi";
 src: url("../fonts/Lavi.woff2") format("woff2");
}

@font-face {
 font-family: "PT Sans Narrow";
 src: url("../fonts/PTN77F.woff2") format("woff2");
 font-weight: bold;
}

@font-face {
 font-family: "Tovari Sans";
 src: url("../fonts/TovariSans.woff2") format("woff2");
}

@font-face {
 font-family: "UnPilgi";
 src: url("../fonts/UnPilgiBold.woff2") format("woff2");
}

html {
    scroll-behavior: smooth;
}


body {
    margin: 0px;
    font-family: sans-serif;
}

a {
    color: var(--dark-color);
    text-decoration: underline dotted;
    transition: 0.2s;
}

a:hover:not(.active) {
    color: var(--medium-color);
}

a img {
    transition: 0.2s;
}

a:hover img {
    filter: brightness(125%);
}

ul {
    list-style: square;
}

#mobile-header {
    display: flex;
    align-items: center;
    border-bottom: 1px solid #BFBFBF;
    position: fixed;
    left: 0;
    height: 50px;
    width: 100%;
    z-index: 1;
    background-color: #FFFFFF;
    transition: top 0.2s;
    font-family: "Tovari Sans", sans-serif;
    font-weight: normal;
}

#mobile-header a {
    font-size: 25px;
    margin-left: 13px;
    margin-right: 13px;
    flex: 0 1 auto;
    text-align: center;
}

#mobile-header .logo {
    font-size: 25px;
    flex: 1 0 auto;
    text-align: right;
    padding-top: 5px;
}

#mobile-header img {
    transition: 0.2s;
}

#mobile-header .catch-phrase {
    flex: 1 0 auto;
    font-family: "Tovari Sans", sans-serif;
    font-weight: normal;
    font-size: 30px;
    margin-left: 10px;
    text-align: left;
    padding-top: 5px;
}

.mobile-header-opened {
    top: -51px;
}

.mobile-header-closed {
    top: -51px;
}

#mobile-overlay {
    background: #000000;
    z-index: 1;
    top: 0;
    left: 0;
    position: fixed;
    width: 100%;
    height: 100%;
    transition: 0.2s;
}

.mobile-overlay-opened {
    opacity: 0;
    pointer-events: none;
}

.mobile-overlay-closed {
    opacity: 0;
    pointer-events: none;
}

.mobile-info-opened {
    opacity: 0;
    pointer-events: none;
}

.mobile-info-closed {
    opacity: 0;
    pointer-events: none;
}

.close-nav {
    display: none;
    font-size: 25px;
    margin-left: 13px;
}

aside {
    height: 100vh;
    overflow-x: hidden;
    overflow-y: auto;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 3;
    background: #FFFFFF;
    scrollbar-color: transparent transparent;
    scrollbar-width: thin;
}

aside:hover {
    scrollbar-color: auto;
}

.sidebar-opened {
    width: 276px;
}

.sidebar-closed {
    width: 276px;
}

aside header {
    width: 276px;
}

aside header img {
    margin: 10px auto;
    display: block;
    transition: 0.2s;
}

aside header .desktop-intro {
    font-family: "PT Sans Narrow", sans-serif;
    text-align: center;
    font-style: italic;
    font-size: 23px;
    margin-left: 10px;
    margin-right: 10px;
    margin-bottom: 0;
}

aside header .desktop-intro em {
    font-style: normal;
}

aside header .catch-phrase {
    font-family: "Tovari Sans", sans-serif;
    font-weight: normal;
    text-align: center;
    font-size: 35px;
    transform: rotate(-2deg);
    margin-top: 0;
    margin-bottom: 0;
}

aside nav {
    width: 266px;
    padding-left: 10px;
}

aside nav h2 {
    font-family: "PT Sans Narrow", sans-serif;
    font-size: 27px;
    margin-bottom: 0;
    margin-top: 30px;
}

.menu ul {
    list-style: none;
    font-family: "Tovari Sans", sans-serif;
    font-weight: normal;
    font-size: 30px;
    padding-left: 9px;
    margin-bottom: 0;
    margin-top: 0;
}

.menu ul a {
    display: flex;
    align-items: baseline;
    height: 40px;
    margin-top: 9px;
    margin-bottom: 9px;
    flex-direction: columns;
    transition: 0.2s;
}

.menu ul a {
    text-decoration: none;
    color: var(--dark-gray);
}

.menu ul a:hover:not(.active) {
    color: var(--dark-color);
}

.nav-square {
    background-color: #FFFFFF;
    border-radius: 9px;
    font-size: 22px;
    width: 40px;
    height: 40px;
    text-align: center;
    margin-right: 9px;
    transition: 0.2s;
}

.article-nav .nav-square {
    font-size: 18px;
    width: 32px;
    height: 32px;
    border-radius: 16px;
    margin-right: auto;
    margin-left: auto;
}

a:hover:not(.active) .nav-square {
    background-color: var(--medium-color);
}

.nav-square i {
    margin-top: 9px;
}


.menu ul a.page-selected  {
    color: black;
}

.page-selected .nav-square {
    background-color: var(--medium-gray);
    color: black;
}


.article-nav .nav-square i {
    margin-top: 7px;
}

.menu .article-nav {
    font-size: 1.2rem;
    width: 256px;
    padding-left: 0;
}

.menu .article-nav a {
    flex: 1 0 auto;
    color: var(--dark-gray);
}

.menu .article-nav a:hover:not(.active) {
    color: var(--dark-color);
}

.nav-and-lang {
    display: flex;
}

.nav-and-lang h2 {
    flex: 1 0 fit-content;
}

.nav-and-lang a {
    margin-top: 25px;
    flex: 0 1 fit-content;
}

.nav-and-lang i::after {
    display: inline-block;
    margin-left: 10px;
    margin-top: 10px;
    content: "";
    border-top: .3em solid;
    border-right: .3em solid transparent;
    border-bottom: 0;
    border-left: .3em solid transparent;
}

.external {
    font-size: 15px;
    margin-left: 10px;
}

a.lang-closed {
    color: var(--dark-gray);
}

a.lang-opened {
    color: var(--dark-color);
}

.nav-and-lang a:hover:not(.active) {
    color: var(--dark-color);
}

.nav-and-lang .nav-square {
    width: 70px;
    font-size: 25px;
}

.lang-opened .nav-square {
    width: 70px;
    font-size: 25px;
    background-color: var(--medium-color);
}


#language-selection {
    position: absolute;
    right: 0;
    transform: translate3d(0px, 65px, 0px);
    padding-top: 10px;
    padding-left: 10px;
    padding-bottom: 0px;
}

.language-selection-closed {
    opacity: 0;
    pointer-events: none;
}

.language-selection-opened {
    opacity: 1;
    pointer-events: auto;
}

#language-selection ul a {
    height: auto;
}

.content {
    display: block;
    margin: auto;
    padding-top: 10px;
    padding-left: 286px;
    padding-right: 10px;
    max-width: 1514px;
    transition: 0.2s;
}

.alignleft {
    float: left;
}

#announce {
    background: var(--light-color);
    border: 1px solid var(--dark-color);
    color: var(--dark-color);
    font-size: 1.5rem;
    font-style: italic;
    max-width: 880px;
    margin-left: auto;
    margin-right: auto;
}


.columns {
    display: flex;
    gap: 10px;
    justify-content: space-around;
    align-items: flex-start;
}

.column {
    margin-bottom: auto;
    position: sticky;
    top: 10px;
}

.center-column {
    width: 880px;
    flex-shrink: 0;
}

.right-column {
    width: 624px;
}

.block {
    border: 1px solid #BFBFBF;
    border-radius: 15px;
    padding: 10px;
    margin-bottom: 10px;
    font-size: 1.12rem;
    line-height: 1.5;
}

.block h1 {
    font-family: "Tovari Sans", sans-serif;
    font-weight: normal;
    text-transform: uppercase;
    line-height: 1;
    font-size: 2rem;
    margin-top: 0;
    margin-bottom: 0.5rem;
}

.block h2 {
    font-family: "Tovari Sans", sans-serif;
    font-weight: normal;
    text-transform: uppercase;
    line-height: 1;
    font-size: 1.67rem;
    margin-top: 2rem;
    margin-bottom: 0.7rem;
}

.block h3 {
    font-family: "Tovari Sans", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 1.6rem;
}

.block blockquote {
    font-style: italic;
}
.block blockquote em {
    font-style: normal;
}


.main h1 {
    font-size: 2.5em !important;
    text-align: center;
    border-bottom: 3px solid var(--medium-color);
}

.latest-type {
    text-align: center;
    width: 100%;
    font-family: "Tovari Sans", sans-serif;
    font-weight: normal;
    text-transform: uppercase;
    line-height: 1;
    font-size: 1.67rem;
    color: var(--dark-color);
}

.latest-comic a img {
    max-width: min(100%, 400px);
}

.latest-misc a img {
    max-width: min(100%, 400px);
}

.stream-preview {
    position: relative;
    width: 100%;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.stream-preview img {
    border-radius: 35px;
}

.stream-preview-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0.67;
    transition: 0.2s;
}

.stream-preview:hover .stream-preview-overlay {
    opacity: 1.00;
}

.suite {
    text-align: center;
    width: 100%;
    font-family: "Tovari Sans", sans-serif;
    font-weight: normal;
    font-style: italic;
    font-size: 1.8rem;
}

.article-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    text-align: center;
    font-family: "Tovari Sans", sans-serif;
    font-weight: normal;
    text-transform: uppercase;
}

.article-nav-bottom {
    border-top: 3px solid var(--medium-color);
    padding-top: 10px;
}

.article-nav a {
    flex: 0 1 auto;
    text-decoration: none;
    margin-left: 5px;
    margin-right: 5px;
    min-width: 0;
}

.article-nav .nav-series {
    flex: 1 0 min-content;
    line-height: 1;
    font-size: 1.67rem;
}

.article-nav .nav-series-mobile {
    display: none;
    line-height: 1;
    font-size: 1.67rem;
}

.block p {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}

.block .datepubli {
    font-size: 0.9rem;
    color: #595959;
    text-align: right;
    font-style: italic;
    margin-bottom: 1rem;
}

.block .datepubli .gee {
    text-transform: uppercase;
}

.block .datepubli i {
    font-size: 20px;
    color: var(--dark-color);
}

.block img {
    display: block;
    padding: 10px;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
    box-sizing: border-box;
}

.block .img-caption {
    display: block;
    padding-top: 0px;
    margin-top: -20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 80%;
    text-align: center;
    font-style: italic;
}

.block .several-images {
    text-align: center;
}

.block .several-images img {
    display: inline-block;
}

.block .paypal {
    display: block;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
}

.block video {
    display: block;
    margin-left: auto;
    margin-right: auto;
    padding-top: 10px;
    padding-bottom: 10px;
    max-width: 100%;
}

.block audio {
    display: block;
    width: 100%;
}

.block iframe {
    display: block;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
}

.block hr {
    clear: both;
    border: 1px solid var(--medium-color);
    width: 67%;
}

.block .footnote ol {
    font-size: 0.9rem;
    padding-right: 2rem;
}

.block .clear {
    clear: both;
}

.block .warning {
    border: 3px solid #732a1f;
    border-radius: 10px;
    background: #fff2ea;
    color: #732a1f;
    margin: 25px;
    padding: 5px;
}

.block .legend {
    font-size: 11px;
    text-align: center;
    font-style: italic;
}

pre {
    padding-top: 0;
    margin-top: 0;
}

.block::after {
    content: "";
    clear: both;
    display: table
}

.button {
    border: transparent;
    border-radius: 15px;
    padding: 10px;
    margin-bottom: 10px;
    font-size: 1.12rem;
    line-height: 1.5;
    text-transform: uppercase;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    font-size: 25px;
    font-family: "Tovari Sans", sans-serif;
    font-weight: normal;
    background-color: var(--dark-color);
    transition: 0.2s;
    padding: 5px 15px;
}

.button a {
    display: flex;
    align-items: center;
    gap: 10px;
    color: white;
    text-decoration: none;
}

.button a i {
    font-size: 35px;
    padding-bottom: 2px;
}

.button:hover:not(.active) {
    background-color: var(--medium-color);
}

.button a:hover:not(.active) {
    color: white;
}

.button span {
    margin-top: 5px;
}

/**** DEBUT BD ***/

.BD {
    font-family: "Lavi", sans-serif;
    font-size: 25px;
    line-height: normal;
    color:#000;
}

.BD h2 {
    font-family: "Lavi", sans-serif;
    text-transform: none;
    font-weight: normal;
    font-size: 70px;
    margin-bottom: 15px;
    margin-left: 20px;
    margin-right: 20px;
    overflow-wrap: break-word;
}

.BD .nostyle {
    display: none
}

.BD .gbbu::after {
  content: url('../img/bd_gbbu.png');
  content: url('../img/bd_gbbu.png') / "Grease Boy Bullshitgraphic Universe";
  alt: "Grease Boy Bullshitgraphic Universe";
  float: right;
  margin-left: 0px;
  margin-right: 0px;
  margin-top: 0px;
  width: 115px;
  height: 97px;
}

.BD .alignright {
    margin-left: 80%;
}

.BD br {
    margin-top: 20px;
    display: block;
}


.BD code {
    font-size: 20px;
    font-weight: bold;
    font-family: monospace;
}

.BD strike {
    text-decoration-thickness: 3px;
}

.BD .neutral {
    margin: 20px 20px 20px 20px;
    text-align: justify;
}

.BD .large {
    margin: 30px 20% 30px 20%;
    text-align: center;
    font-size: 33px;
}

.BD .medium {
    margin: 30px 20% 30px 20%;
    text-align: center;
}

.BD .small {
    margin: 30px 20% 30px 20%;
    text-align: center;
    font-size: 20px;
}

.BD .cursive {
    font-family: "UnPilgi", sans-serif;
    font-size: 35px;
    text-align: justify;
    margin: 0px 20px 0px 20px;
}

.BD .footnote {
    text-align: justify;
    padding: 8px 8px 8px 8px;
    margin-left: 20px;
    margin-right: 20px;
    font-size: 20px;
}

.BD .footnote code {
    font-size: 15px;
    font-weight: bold;
    font-family: monospace;
}

.BD .footnote:before {
    content: "✷ ";
}

.BD .footnote2:before {
    content: "✷✷ ";
}

.BD .box {
    text-align: justify;
    padding: 8px 8px 8px 8px;
    margin: 0px 30px 0px 30px;
    border-radius: 15px;
    display: inline-block;
}

.BD .info {
    background-color: #EAF2FB;
    border: 3px solid #1F4673;
    color: #1F4673;
}

.BD .info::before {
  background: url('../img/bd_info.png') no-repeat;
  content: ' ';
  float: left;
  margin-left: -20px;
  margin-right: 5px;
  margin-top: -20px;
  width: 46px;
  height: 41px;
}

.BD .warning {
    background-color: #ffefeb;
    border: 3px solid #781607;
    color: #781607;
}

.BD .warning::before {
  background: url('../img/bd_warning.png') no-repeat;
  content: ' ';
  float: left;
  margin-left: -23px;
  margin-right: 5px;
  margin-top: -28px;
  width: 51px;
  height: 47px;
}

.BD .okay {
    background-color: #F3FFEB;
    border: 3px solid #508423;
    color: #508423;
}

.BD .okay::before {
  background: url('../img/bd_okay.png') no-repeat;
  content: ' ';
  float: left;
  margin-left: -20px;
  margin-right: 5px;
  margin-top: -20px;
  width: 45px;
  height: 40px;
}

.BD .centered {
    display: flex;
    align-items: center;
    justify-content: center;
}

.BD .important {
    text-align: center;
    font-size: 33px;
    background-color: #E2E2E2;
    border: 3px solid #434242;
    color: #434242;
}

.BD .citation {
    background-color: #fff7eb;
    border: 3px solid #ae650b;
    color: #ae650b;
    margin: 0px 90px 0px 90px;
    padding: 15px 8px 0px 8px;
}

.BD .citation::before {
  background: url('../img/bd_citation_gauche.png') no-repeat;
  content: ' ';
  float: left;
  margin-left: -80px;
  margin-right: 5px;
  margin-top: 0px;
  width: 61px;
  height: 37px;
}

.BD .citation::after {
  background: url('../img/bd_citation_droite.png') no-repeat;
  content: ' ';
  float: right;
  margin-left: -5px;
  margin-right: -80px;
  margin-top: 0px;
  width: 61px;
  height: 37px;
}


.BD .url {
    text-align: center;
    font-size: 30px;
    font-weight: bold;
    font-family: monospace;
}

.BD .disappearing-0 { font-size: 23px; }
.BD .disappearing-1 { font-size: 20px; }
.BD .disappearing-2 { font-size: 18px; }
.BD .disappearing-3 { font-size: 16px; }
.BD .disappearing-4 { font-size: 14px; }
.BD .disappearing-5 { font-size: 12px; }
.BD .disappearing-6 { font-size:  9px; }
.BD .disappearing-7 { font-size:  7px; }
.BD .disappearing-8 { font-size:  5px; }
.BD .disappearing-9 { font-size:  3px; }


.lcm {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    flex-direction: row;
}

.lcm-image {
    margin: 0.5%;
    padding: 0.5%;
    width: 48%;
}

.lcm-image img {
    max-width: 100%;
    padding: 0;
}


/**** FIN BD ***/


#mobile-series-info {
    display: none;
}

#mobile-series-info img {
    max-width: 100%;
}

#series-info {
    display: block;
}

#series-info img {
    padding-left: 0px;
    padding-right: 0px;
}

.series-index-item {
    margin-bottom: 30px;
}

.series-index-item img {
    padding-left: 0px;
    padding-right: 0px;
    margin-left: 0;
}

a.series-link {
    transition: 0.2s;
}

.episodes a {
    display: flex;
    flex-direction: row;
    text-decoration: none;
    gap: 5px;
    margin-bottom: 5px;
    align-items: center;
}

.episode-date {
    flex: 0 0 20%;
}

.episode-name {
    flex: 0 0 50%;
    font-weight: bold;
}

.episode-nb {
    flex: 0 0 30%;
    font-style: italic;
}

.mecenes {
    font-family: "PT Sans Narrow", sans-serif;
    line-height: 1;
    text-align: center;
}

.mecenes-big {
    font-size: 2rem;
}

.mecenes-medium {
    font-size: 1.5rem;
}

.mecenes-small {
    font-size: 1rem;
}

.img-left {
    display: flex;
    width: 100%;
    gap: 5px;
    align-items: center;
}

#in-book .img-left a {
    flex: 0 0 20%;
}

#no-ai .img-left a {
    flex: 0 0 33%;
}

#author .img-left img {
    max-width: min(150px, 25%);
}

#cc .img-left img {
    max-width: 80px;
}

#soutien img {
    padding-left: 0;
    padding-right: 0;
}




.progress-bar-wrapper {
    position: relative;
    height: 15px;
    background: var(--light-gray);
    border-radius: 15px;
    overflow: hidden;
    margin-bottom: 1em;
}

.progress-bar-fill {
    height: 100%;
    width: 0%;
    background: linear-gradient(to right, var(--dark-color), var(--medium-color));
    border-radius: 15px;
    position: absolute;
    top: 0;
    left: 0;
    transition: width 10ms ease-out;
    z-index: 1;
}

.milestone {
    position: absolute;
    top: 40%;
    transform: translateX(-50%) translateY(-50%);
    font-size: 20px;
    color: var(--dark-gray);
    transition: transform 0.3s;
    z-index: 2;
    user-select: none;
}

.milestone.reached {
    color: white;
    animation: bounce 0.4s ease forwards;
}

@keyframes bounce {
    0%   { transform: translateX(-50%) translateY(-50%) scale(1); }
    50%  { transform: translateX(-50%) translateY(-40%) scale(1.5); }
    100% { transform: translateX(-50%) translateY(-50%) scale(1); }
}

.paliers {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
    gap: 10px;
}

.palier {
    background-color: var(--light-gray);
    border: 2px solid var(--dark-gray);
    border-radius: 6px;
    width: calc(33.3333% - 7px);
    padding: 10px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
}

.palier.palier-checked {
    background-color: var(--light-color);
    border: 2px solid var(--dark-color);
}

.palier-header {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}

.palier-header h3 {
    font-family: "Tovari Sans", sans-serif;
    font-weight: normal;
    font-size: 25px;
    flex: 1 0 auto;
    margin-top: 0;
    margin-bottom: 0;
}

.palier-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-grow: 1;
}

.palier-content .palier-description {
    flex: 1;
    margin-right: 3px;
}

.palier-content img {
    width: 80px;
    height: 80px;
    objec-fit: cover;
    flex-shrink: 0;
    border-radius: 40px;
    border: 2px solid var(--dark-gray);
    padding: 0;
    filter: grayscale(100%) opacity(67%);
}

.palier-checked .palier-content img {
    border: 2px solid var(--dark-color);
    filter: revert;
}

.palier-header input[type="checkbox"] {
    pointer-events: none;
    transform: scale(1.5);
    margin-top: -5px;
    accent-color: var(--dark-color);
}

.palier-precedent {
    display: block;
    margin-bottom: 3px;
}

.palier-precedent .palier-header {
    margin-bottom: 0;
}

.palier-precedent h3 {
    display: inline-block;
    flex: auto;
    line-height: 1;
    font-size: 1.4rem;
}

.palier-missed h3 {
    color: var(--dark-gray);
    text-decoration: line-through;
}

.palier-precedent h3 span {
    font-family: sans-serif;
    font-size: 1rem;
    font-style: italic;
}

#notification {
    opacity: 0;
    text-align: center;
    font-family: "PT Sans Narrow", sans-serif;
    font-size: 1.75rem;
    pointer-events: none;
    padding-left: 20px;
    padding-top: 10px;
    padding-bottom: 10px;
    position: fixed;
    top: 50%;
    left: 50%;
    max-height: calc(100% - 150px);
    max-width: calc(100% - 60px);
    transform: translate(-50%, -50%);
    background-color: #444444;
    color: #FFFFFF;
    border: 0px;
}

#general-footer {
    font-size: 0.9rem;
    color: #555555;
    text-align: center;
    font-style: italic;
    margin-top: 50px;
    margin-bottom: 30px;
    border-top: 1px solid #BFBFBF;
}

#general-footer img {
    max-width: 120px;
}

.mobile-popup {
    border: 1px solid #BFBFBF;
    border-radius: 15px;
    background-color: #FFFFFF;
    z-index: 2;
    padding-right: 20px;
    transition: 0.2s;
}

#mobile-info {
    font-family: "PT Sans Narrow", sans-serif;
    font-size: 23px;
    position: fixed;
    top: 50%;
    left: 50%;
    width: 350px;
    padding-left: 20px;
    max-height: calc(100% - 150px);
    max-width: calc(100% - 60px);
    transform: translate(-50%, -50%);
    overflow-y: auto;
    scrollbar-color: transparent transparent;
    scrollbar-width: thin;
}

#mobile-follow {
    position: fixed;
    bottom: 70px;
    left: 10px;
    max-height: calc(100% - 80px);
    overflow-y: auto;
    scrollbar-color: transparent transparent;
    scrollbar-width: thin;
}

#mobile-follow ul {
    margin-bottom: 0;
}

.mobile-follow-closed {
    opacity: 0;
    pointer-events: none;
}

.mobile-follow-opened {
    opacity: 0;
    pointer-events: none;
}


#mobile-footer {
    border-top: 1px solid #BFBFBF;
    position: fixed;
    bottom: -60px;
    left: 0;
    height: 60px;
    width: 100%;
    display: flex;
    justify-content: space-around;
    background-color: #FFFFFF;
    transition: bottom 0.2s;
    align-items: center;
    z-index: 2;
}

.mobile-footer-item {
    flex: 1 1 0%;
    text-align: center;
    font-family: "PT Sans Narrow";
    font-size: 20px;
}

.mobile-footer-item a {
    text-decoration: none;
}

.mobile-footer-item i {
    display: block;
    font-size: 25px;
}

.mobile-footer-item span {
    display: block;
    margin-top: -5px;
    font-weight: bold;
}

/* Medium-screen */
@media screen and (max-width: 1542px) {
    .mobile-header-opened {
        top: 0px;
    }

    .mobile-header-closed {
        top: -51px;
    }

    #mobile-info .close-nav {
        margin-top: 20px;
        display: inline-block;
        float: right;
    }

    aside .close-nav {
        display: inline-block;
        float: left;
    }

    aside header img {
        margin-left: 50px;
        display: block;
    }
    
    aside header .desktop-intro {
        display: none;
    }
    

    .desktop-logo img {
        display: none;
    }
    
    aside {
        width: 0px;
        transition: 0.2s;
    }
    .content {
        padding-left: 10px;
        padding-top: 60px;
    }

    .sidebar-opened {
        width: 276px;
    }

    .sidebar-closed {
        width: 0px;
    }

    .mobile-info-opened {
        opacity: 1;
        pointer-events: auto;
    }

    .mobile-info-closed {
        opacity: 0;
        pointer-events: none;
    }

    .mobile-follow-closed {
        opacity: 0;
        pointer-events: none;
    }

    .mobile-follow-opened {
        opacity: 1;
        pointer-events: auto;
    }

    .mobile-overlay-opened {
        opacity: 0.33;
        pointer-events: auto;
    }
    
    .mobile-overlay-closed {
        opacity: 0;
        pointer-events: none;
    }
}

/* Small screens */
@media screen and (max-width: 1275px) {

    .content {
        max-width: 880px;
        padding-left: 0px;
        padding-right: 0px;
    }
    
    .share-button {
        display: none;
    }
    
    .columns {
        display: block;
        margin: auto;
    }

    .column {
        position: relative;
        top: auto;
    }
    
    .right-column {
        width: 880px;
    }

    #mobile-series-info {
        display: block;
    }

    #series-info {
        display: none;
    }

    #mobile-footer {
        bottom: 0px;
    }
 
    #general-footer {
        margin-bottom: 90px;
    }

    .BD .box { margin: 0px 25px 0px 25px; }
    .BD .citation { margin: 0px 80px 0px 80px; }
    .BD .neutral { margin: 30px 15% 30px 15%; }
    .BD .large { margin: 30px 15% 30px 15%; }
    .BD .medium { margin: 30px 15% 30px 15%; }
    .BD .small { margin: 30px 15% 30px 15%; }
    .BD .cursive { margin: 0px 15% 0px 15%; }
    .BD .footnote { margin-left: 15%;  margin-right: 15%; }

}

/* Very small screens */
@media screen and (max-width: 900px) {

    .content {
        max-width: 100%;
    }
    
    .center-column {
        width: 100%;
    }
    
    .right-column {
        width: 100%;
    }
    
    .block img {
        display: block;
        padding-left: 0;
        padding-right: 0;
        margin-left: auto;
        margin-right: auto;
        max-width: 100%;
    }
    
    .series-index-item img {
        margin-left: 0;
    }
    
    .block {
        border: 0;
        border-radius: 0;
        border-bottom: 2px solid #BFBFBF;
    }
    .BD h2 { font-size: 56px; }
    .BD .box { margin: 0px 10px 0px 10px; }
    .BD .citation { margin: 0px 65px 0px 65px; }
    .BD .neutral { margin: 30px 5% 30px 5%; }
    .BD .large { margin: 30px 5% 30px 5%; font-size: 26px; }
    .BD .medium { margin: 30px 5% 30px 5%; }
    .BD .small { margin: 30px 5% 30px 5%; font-size: 16px; }
    .BD .cursive { margin: 0px 5% 0px 5%; }
    .BD .footnote { margin-left: 5%;  margin-right: 5%; }
    .BD .alignright { margin-left: 70%; }
    .BD code { font-size: 15px; }
}

/* Just for crowdfunding */
@media screen and (max-width: 800px) {
    .palier {
        width: calc(50% - 5px);
    }
}


/* Smartphone screens */
@media screen and (max-width: 600px) {

    #mobile-header .logo { text-align: center; }
    #mobile-header .catch-phrase { display: none; }
    
    .article-nav-bottom .nav-series { display: none; }
    .article-nav-bottom .nav-series-mobile { display: block; }
    .article-nav-bottom a { flex: 1 0 auto; }

    .stream-preview img {
        border-radius: 5.83vw;
    }
    
    .block {
        padding-left: 5px;
        padding-right: 5px;
    }

    .main h1 { font-size: 2em !important; }
    
    .BD h2 { font-size: 45px; }
    .BD .box {
        margin: 0px 5px 0px 5px;
    }
    .BD .alignright { margin-left: 50%; }
    .BD .neutral { margin: 30px 5px 30px 5px; }
    .BD .large { margin: 30px 5% 30px 5%; }
    .BD .medium { margin: 30px 5% 30px 5%; }
    .BD .small { margin: 30px 5% 30px 5%; }
    
    .BD .citation {
        margin: 0px 40px 0px 40px;
    }

    .BD .citation::before {
        background: url('../img/bd_citation_gauche_small.png') no-repeat;
        content: ' ';
        float: left;
        margin-left: -55px;
        margin-right: 3px;
        margin-top: 0px;
        width: 42px;
        height: 26px;
    }

    .BD .citation::after {
        background: url('../img/bd_citation_droite_small.png') no-repeat;
        content: ' ';
        float: right;
        margin-left: -3px;
        margin-right: -55px;
        margin-top: 0px;
        width: 42px;
        height: 26px;
    }

    .palier {
        width: 100%;
    }
    
    .lcm-image { width: 99%; }

    .episodes a { display: block; line-height: 1; margin-bottom: 1.15rem; }
    .episode-date { display: inline-block; }
    .episode-name { display: inline-block; }
    .episode-name:before { content: " – "; }
    .episode-name:after { content: " – "; }
    .episode-nb { display: inline-block; }
}
