html{
    box-sizing: border-box;
    background-color: #111;
}

*,*:before,*:after{
    box-sizing:inherit
}

body{
    margin:0px;
    height: 100%;
    width: 100%;
}
.spacer {
	flex:auto;
}
.top-menu {
    position: fixed;
    top: 0px;
    left: 0px;
    height: 68px;
    width: 100%;
    border:0px;
    margin:0px;
    padding:0px;
    
    display: -webkit-flex;
    display: flex;
    
    background-color: rgba(50,50,50,1.0);
    
    -webkit-align-items: stretch;
    align-items: stretch;
    -webkit-flex-wrap: nowrap;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-content: stretch;
    align-content: stretch;
    
    z-index: 2;
}
#home, #contact {
    background-color: rgba(165,165,165,0.0);
    transition: 0.4s cubic-bezier(0,0,0.58,1);
}
#home:hover, #contact:hover {
    background-color: rgba(255,255,255,0.3);
    cursor:pointer;
}
#home > img, #contact > img {
	height: 100%;
	padding: 20px;
	aspect-ratio:1;
}
.top-menu > a {

    letter-spacing: 2px;
    color: white;
    font-family: DejaVu Sans, Verdana, Geneva, sans-serif;
    
    display: -webkit-flex;
    display: flex;
    flex-wrap: nowrap;
    background-color: rgba(165,165,165,0.0);
    
    -webkit-align-items: stretch;
    align-items: stretch;
    -webkit-flex-wrap: nowrap;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-content: stretch;
    align-content: stretch;
}

.top-menu > a {
    text-decoration: none;
    user-select: none; 
}
.menu-item {
    background-color: rgba(255,255,255,0);
    flex: 1;
    width: 15vw;
    min-width: 100px;
    color: #CCCCCC;
    font-size: 1.2em;
    letter-spacing: 0.2em;
    line-height: 68px;
    text-align:center;
    transition: 0.4s cubic-bezier(0,0,0.58,1);
}
.konami {
  background-image: url(../pictures/misc/yannick_fond.png);
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size:248px 253px;
  background-position: bottom right;
  position: fixed;
  bottom: 0px;
  right: 0px;
  width: 248px;
  height: 253px;
  z-index: 30;
}
.konami > img {
  position: fixed;
  width: 58px;
  height: 22px;
  bottom: 181px;
  right: 74px;
  z-index: 30;
}
@media all and (orientation: portrait), all and (max-width: 1280px)
{
  .top-menu {
    height: 34px;
  }
  .menu-item {
    font-size: 10px;
    line-height: 34px;
  }
  #home img, #contact img{
      padding: 5px;
  }
}


.menu-item:hover, .menu-item:active {
    background-color: rgba(255,255,255,0.3);
    cursor:pointer;
}

.bottom {


    position: fixed;
    bottom: 0px;
    width: 100%;
    padding-bottom: 0.5em;
    
    font-size: 3em;
    letter-spacing: 0.25em;
    color: #c7b299;
    font-family: DejaVu Sans, Verdana, Geneva, sans-serif;
    text-align: center;
    
    display: -webkit-flex;
    display: flex;
    
    -webkit-justify-content: left;
    justify-content: left;
    -webkit-align-content: bottom;
    align-content: bottom;
    -webkit-align-items: stretch;
    align-items: stretch;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    
    z-index:3;
}

.crossfade {
    z-index:1;
    position: fixed;
    top: 0px;
    left: 0px;
    height: 100%;
    width: 100%;
}

.crossfade li span { 
    display: block;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0px;
    left: 0px;
    color: transparent;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    opacity: 0.0;
    z-index: 0;
    -webkit-backface-visibility: hidden;

    
    animation: fadeIntro 40s linear infinite 0s;
    -webkit-animation: fadeIntro 40s linear infinite 0s;
    -moz-animation: fadeIntro 40s linear infinite 0s;
    -ms-animation: fadeIntro 40s linear infinite 0s;
    -o-animation: fadeIntro 40s linear infinite 0s;  
}

.crossfade li:nth-child(1) span { background-image: url(../pictures/intro_2025/l_oracle.jpg)}

.crossfade li:nth-child(2) span {
  animation-delay: 5s;
  -webkit-animation-delay: 5s;
  background-image: url(../pictures/intro_2025/la_base.jpg);
}

.crossfade li:nth-child(3) span {
  animation-delay: 10s;
  -webkit-animation-delay: 10s;
  background-image: url(../pictures/intro_2025/la_boudeuse_II.jpg);
}

.crossfade li:nth-child(4) span {
  animation-delay: 15s;
  -webkit-animation-delay: 15s;
  background-image: url(../pictures/intro_2025/les_docks.jpg);
}

.crossfade li:nth-child(5) span {
  animation-delay: 20s;
  -webkit-animation-delay: 20s;
  background-image: url(../pictures/intro_2025/les_veilleurs.jpg);
}

.crossfade li:nth-child(6) span {
  animation-delay: 25s;
  -webkit-animation-delay: 25s;
  background-image: url(../pictures/intro_2025/premier_bain.jpg);
}

.crossfade li:nth-child(7) span {
  animation-delay: 30s;
  -webkit-animation-delay: 30s;
  background-image: url(../pictures/intro_2025/priere_a_la_mer_iv.jpg);
}

.crossfade li:nth-child(8) span {
  animation-delay: 35s;
  -webkit-animation-delay: 35s;
  background-image: url(../pictures/intro_2025/sous_le_soleil_exactement_ii.jpg);
}

@keyframes 
fadeIntro {
  0% { opacity: 0.0;}
  1.875% { opacity: 1.0;}
  12.5% { opacity: 1.0;}
  14.375% { opacity: 0.0;}
}

.bottom > div {
    width: 100%;
    display: none;
  }

@media all and (orientation: portrait), all and (max-width: 1280px)
{
  .bottom {
    height: 45px;
    width: 100%;
    padding-left: 0px;
    font-size: 27px;
    letter-spacing: 5px;
    text-align: center;
  }
  .bottom > div {
    width: 100%;
  }
}.crossfade {
	opacity:0.4;
}
.series-content {
  border:0px;
  margin:0px;
  padding:0px;
  width:100%;
  letter-spacing: 0.1em;
  color: white;
  font-family: Verdana, Geneva, sans-serif;
  
  display: -webkit-flex;
  display: flex;
  
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  
  -webkit-align-content: center;
  align-content: center;
  
  -webkit-align-items: center;
  align-items: center;
  
  -webkit-justify-content: center;
  justify-content: center;
  
  z-index: 100;
  
}
.head {
  position: fixed;
  left: 0px;
  bottom: 0px;
  top: 68px;
  width: 100%;
  overflow: auto;
  
  display: -webkit-flex;
  display: flex;
  flex-basis: auto;
  -webkit-flex-direction: column;
  flex-direction: column;
  
  -webkit-align-items: stretch;
  align-items: stretch;
  
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  z-index: 100;
  
}
.filler {
  flex:1;
  width:100%;
}
.year-list, .serie-vignette {
  width: min(9vmax, 180px);
  height: min(32vmax, 640px);
  border-radius: 1em;
}

.year-list {
  display: -webkit-flex;
  display: flex;
  
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-align-content: stretch;
  align-content: stretch;
}

.year-list > a {
  flex: 1;
  
  display: -webkit-flex;
  display: flex;
  
  width: 100%;
  text-transform: uppercase;
  text-decoration: none;
  user-select: none; 
  font-family: Arial, Georgia, "Times New Roman", Times, serif;
  text-shadow: 0px 0px 5px #000;
  font-size: min(0.8vmax, 1rem);#0.8vmax;
  text-align: center;
  color: white;
  background-color: rgba(255,255,255,0.4);
  
  -webkit-align-content: center;
  align-content: center;
  -webkit-align-items: center;
  align-items: center;
  transition: 0.4s cubic-bezier(0,0,0.58,1);
}

.year-list > a:hover {
  background-color: rgba(255,255,255,0.6);
  cursor:pointer;
}

.year-list > a > span{
  flex: 1;
}

.serie-vignette {
  background-align: center center;
  background-size: cover;
  background-repeat: no-repeat;
  background-color: rgba(255,150,0,0.2);
  position: relative;
}

.zoom-in {
  &::after {
    content: "";
    position: absolute;
    right: 0;
    left: 0;
    top: 0;
    bottom: 0;
    background: inherit;
    background-size: cover;
    transform-origin: center;
    transition: transform 0.4s cubic-bezier(0,0,0.58,1);
    box-shadow: inset 0px 0px 15px 0px rgba(0, 0, 0, 1);
    z-index: 1;
    transform: scale(1.15);
  }
}

.zoom-in {
  &:focus,
  &:hover {
    &::after {
      transform: scale(1.01);
    }
  }
}

.series-content > div, .series-content > a {
    text-transform: uppercase;
    text-decoration: none;
    user-select: none; 
    
    margin: min(0.5vmax, 0.5rem);
    
    font-family: Arial, Georgia, "Times New Roman", Times, serif;
    text-shadow: 0px 0px 5px #000;
    font-size: min(0.8vmax, 1rem);#0.8vmax;
    text-align: center;
    color: white;
    
    overflow: hidden;
    opacity: 1.0;
    
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-end;
    align-items: flex-end;
}

.series-content a:hover {
  opacity: 1.0;
}

.series-content > a > div{
  flex: 1;
  width: 100%;
  height: min(4vmax, 5em);
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  transition: 0.4s cubic-bezier(0,0,0.58,1);
  z-index: 2;
}
.series-content > a:hover > div{
  background-color:rgba(30,30,30,1);

  box-shadow: 0px 10px 21px 10px rgba(0, 0, 0, 1);

}

.series-content > a > div > span{
  flex: 1;
}

@media all and (orientation: portrait), all and (max-width: 1280px)
{
  .head {
    top: 34px;
  }
}