/*
*  html5resetcss
*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}
body{line-height:1}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}
nav ul{list-style:none}
blockquote,q{quotes:none}
blockquote:before,blockquote:after,q:before,q:after{content:none}
a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}
ins{background-color:#ff9;color:#000;text-decoration:none}
mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold}
del{text-decoration:line-through}
abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}
table{border-collapse:collapse;border-spacing:0}
hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}
input,select{vertical-align:middle}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}


/* My CSS code */

html {
    scroll-behavior: smooth;
}

#header {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 2rem;
    background: transparent;
    position: fixed;
    z-index: 10;
}

#header .left {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 12px;
}

#header .left img {
    width: 32.75px;
    height: 38px;
    flex-shrink: 0;
}

#header .left h1 {
    font-family: KoHo, sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: normal;
}

#header .right {
    font-family: KoHo;
    font-size: 16px;
    font-weight: 400;
    line-height: normal;
    text-decoration: none;
}

#header .right nav {
    position: relative;
    text-decoration: none;
}

#header .right nav a {
    text-decoration: none;
    margin: 15px;
}

#wrapper {
    min-height: 100vh;
    width: 100%;
    font-family: sans-serif;
}

#wrapper .fixed-text {
    position: fixed;
    width: 545px;
    height: auto;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding-left: 55px;
    padding-top: 620px;
    gap: 25px;
    z-index: 20;
}

hr.ligne-noire {
    border: none;
    border-left: 2px solid black;
    height: 130px;
    margin: 20px 0;
}

hr.ligne-noire.theme-dark {
    border-left-color: white;
}

hr.ligne-noire.theme-light {
    border-left-color: black;
}

#wrapper .fixed-text .rightbox {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    height: 130px; /* même hauteur que la ligne */
    width: 400px;
    text-align: left;
}

#wrapper .fixed-text .rightbox p,
#wrapper .fixed-text .rightbox h2,
#wrapper .fixed-text .rightbox h3 {
    margin: 0;
    padding: 0;
}

#wrapper .fixed-text .rightbox p {
    font-size: 16px;
    font-weight: 200;
    font-family: KoHo, sans-serif;
}

#wrapper .fixed-text .rightbox h2 {
    font-size: 36px;
    font-weight: 400;
    font-family: KoHo, sans-serif;
    margin-top: auto;
    line-height: 1.1;
}

#wrapper .fixed-text .rightbox h3 {
    font-size: 16px;
    font-weight: 300;
    font-family: KoHo, sans-serif;
    line-height: 1.4;
}



.image-stack {
    position: relative;
}

/* Nouvelle structure : chaque image dans une section de 200vh */
.image-wrapper {
    height: 200vh;
}

/* L'image elle-même reste collée à l'écran sur 100vh */
.image-layer {
    position: sticky;
    top: 0;
    height: 100vh;
    width: 100%;
    background-size: cover;
    background-position: center;
    z-index: 1;
    pointer-events: none;
}

.image-layer::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: inherit;
    z-index: -1;
}


.theme-dark {
    color: white;
}

.theme-dark .ligne-noire {
    background-color: white;
}

.theme-light {
    color: black;
}

.theme-light .ligne-noire {
    background-color: black;
}

#header.theme-dark,
#header.theme-dark nav a,
#header.theme-dark h1 {
    color: white;
}

#header.theme-light,
#header.theme-light nav a,
#header.theme-light h1 {
    color: black;
}

#header,
#header nav a,
#header h1 {
    transition: color 0.2s ease;
}

#header nav a:visited {
    color: inherit;
}

