* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }
  @font-face {
    font-family: 'typewriter';
    src: url('../../general/fonts/dehinted-AmericanTypewriter.woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'franklin gothic heavy';
    src: url('../../general/fonts/FRAHV.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'rockwell';
    src: url('../../general/fonts/ROCK.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'frankin gothic condensed';
    src: url('../../general/fonts/Franklin\ Gothic\ Condensed.woff2');
    font-weight: normal;
    font-display: swap;
}
body{
    background-color: #ea5239;
   height: 100vh;
   display: flex;
    justify-content: right;
    align-items: center;
    width: 100vw;
    overflow: hidden;
}
.imglien{
    position: absolute;
    top: 2vh;
    left: 3vw;
    height: 10vh;
    z-index: 500;
}

#bord{
    border: 2.5px solid black;
    padding: 1px 8px 1px 8px;
    color: rgb(0, 0, 0);
}
#title{
    font-family: 'frankin gothic condensed';

}

.barrenav{
    display: flex;
    align-items: center;
    flex-direction: row;
    justify-content: end;
    gap: 40px;
    position: absolute;
    right: 1vw;
    top: 1vh;
    z-index: 1000;
}
.langswitch{
    background-color: transparent;
    display: flex;
    flex-direction: column;
    gap: 0;
    font-family: 'rockwell';
    font-size: clamp( 0.1rem, 1vw, 2rem);
}
.langswitch a.active {
  font-weight: bold;
  pointer-events: none;
}
.langswitch a:hover:not(.active) {
text-decoration: underline;
}

h2{
    color: black;
    font-size: clamp( 0.1rem, 2vw, 3rem);
    font-family: 'rockwell';
    margin: 0;
}
h3{
    color: black;
    font-size: clamp( 0.1rem, 2vw, 3rem);
    font-family: 'rockwell';
}
a{
    text-decoration: none;  /* Enlève le soulignement */
    color: inherit;         /* Utilise la couleur du texte parent (comme un texte normal) */
    cursor: pointer;       /* Garder la main au survol (si tu veux que ce soit cliquable) */
  }
a:focus {
    outline: none;          /* Enlève le contour de focus */
}  
a:hover {
    color: inherit;         /* Garde la même couleur au survol */
    text-decoration: none;  /* Pas de soulignement au survol */
}
body{
    display: flex;
    flex-direction: row;
    justify-content: left;
    
}
.maincontainer{
    margin-left: 0vh;
    display: flex;
  flex-direction: column;
    height: 98vh;
  width: 53.5vw;
  overflow-y: scroll;
  scroll-snap-type: y mandatory;
  scroll-behavior: smooth;
  background-color: #ea5239;
  overflow: auto;                  /* active le scroll */
  -ms-overflow-style: none;       /* IE et Edge */
  scrollbar-width: none;          
}
  .maincontainer :-webkit-scrollbar {
    display: none; 
}
.image{
    scroll-snap-align: start;
    flex: 0 0 100vh;
    width: 100%;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}
.image img {
    height: auto;
    max-height: 95vh;
    width: 53.5vw;
    object-fit: contain;
    object-position: center;
    display: block;
}
.maintext{
    display: flex;
    background-color: #ea5239;
    margin-top: 7vh;
    height: 80vh;
    width: 25vw;
    margin-left: 2vw;
    max-width: 250px;
    flex-direction: column;
    overflow: auto;                  /* active le scroll */
    -ms-overflow-style: none;       /* IE et Edge */
    scrollbar-width: none; 
    justify-content: flex-start;
    gap: 0;
    
}
.titlearticle{
    font-family: 'franklin gothic heavy' !important;
    font-size: x-large !important;
    margin-top: 0;
    margin-bottom: 0;
    gap: 0;
}

.subtitlearticle{
    font-family: 'frankin gothic condensed';
    font-size: medium;
    margin-top: 0;
    margin-bottom: 5vh;
    gap: 0;
}

.bodyarticle{
    font-family: 'typewriter';
    margin-top: 0;
    margin-bottom: 0;
    gap: 0;
    text-align: justify;
}
.nextproject{
    position: fixed;
    right: 0px;
    top: 50%;
    transform: translateY(-50%);
    writing-mode: vertical-rl;
    font-size: 2.5vh;
    font-family: 'rockwell' ;
    z-index: 1000;
}
.previousproject {
  position: fixed;
  left: 0;
  top: 50%;                    /* on prend la moitié de la hauteur de la fenêtre */
  transform-origin: center center;  
  transform: translateY(-50%)   /* on remonte de la moitié de sa hauteur */ 
             rotate(180deg);    /* puis on retourne */
  writing-mode: vertical-rl;
  white-space: nowrap;          /* pas de retour à la ligne */
  font-size: 2.5vh;
  font-family: 'rockwell';
  z-index: 1000;
}


.plusinfos{
    background-color: transparent;
    position: relative;
    margin: 15px;
    top: -25.5vh;
    width: 10vw;
}
#plus{
    font-family: 'rockwell';
    font-size: 14px;
    color: black;
}
#plus:hover{
    text-decoration: underline;
}
.inf{
    position: absolute;
    font-family: 'typewriter';
    font-size: 12px;
    color: rgb(0, 0, 0);
    margin-left: 22px;

}
#infosection {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.2s ease, opacity 0.2s ease;
}

#infosection.visible {
    max-height: 300px; /* assez grand pour contenir le contenu */

}
#plus img{
    width: 1.2vw;
    height: 1.2vh;
    transition: transform 0.2s ease; /* animation fluide */
}
#custom-cursor {
  position: fixed;
  width: 40px;
  height: 40px;
  pointer-events: none;
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 9999;
  display: none;
}
#bord,
.barrenav h2,
.barrenav h3 {
  position: relative;
  display: inline-block;
  color: black;
  font-family: 'rockwell';
  transition: color 0.05s ease;
  z-index: 1;
}
#bord::after,
.barrenav h2::after,
.barrenav h3::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  height: 100%;
  width: 0;
  background-color: black;
  z-index: -1;
  transition: width 0.05s ease;
}
#bord:hover,
.barrenav h2:hover,
.barrenav h3:hover {
  color: #ea5239; /* Orange */
}
#bord:hover::after,
.barrenav h2:hover::after,
.barrenav h3:hover::after {
  width: 100%;
}

.inf {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
}
.inf.visible {
  max-height: 300px; /* ou la hauteur nécessaire */
}

img[id^="plusicon-"] {
  transition: transform 0.3s ease;
}
#plus-2 img{
    width: 1.2vw;
    height: 1.2vh;
    transition: transform 0.2s ease; /* animation fluide */
}
#plus-1 img{
    width: 1.2vw;
    height: 1.2vh;
    transition: transform 0.2s ease; /* animation fluide */
}
#plus-1:hover,
#plus-2:hover {
  text-decoration: underline;
}

.pull-next-indicator {
display: none !important;
}
.plusinfos{
    background-color: transparent;
    position: relative;
    margin: 15px;
    top: -25.5vh;
    width: 10vw;
}
#plus{
    font-family: 'rockwell';
    font-size: 14px;
    color: black;
}
#plus:hover{
    text-decoration: underline;
}
.inf{
    position: absolute;
    font-family: 'typewriter';
    font-size: 12px;
    color: rgb(0, 0, 0);
    margin-left: 22px;

}
#infosection {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.2s ease, opacity 0.2s ease;
}

#infosection.visible {
    max-height: 300px; /* assez grand pour contenir le contenu */

}
