
strong{font-weight:bold;}
html{scroll-behavior:smooth;}

body{
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    background:#fff;color:#333;line-height:1.7;
}

/* Largeur max du site */
.site-wrapper{max-width:1620px;margin:0 auto;}

/* HERO */
.hero{position:relative;height:100vh;min-height:650px;overflow:hidden;}
.hero img{width:100%;height:100%;object-fit:cover;object-position:center center;display:block;}
/* voile sombre léger */
.hero::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,0.25);}

/* CONTENU CENTRAL */
.hero-content{
	position:absolute;inset:0;z-index:2;
	display:flex;flex-direction:column;justify-content:center;align-items:center;
	text-align:center;color:white;padding:20px;
}
.hero-content h1{font-size:clamp(3rem,7vw,6rem);font-weight:700;text-shadow:0 3px 20px rgba(0,0,0,.7);margin-bottom:20px;}
.hero-content p{font-size:clamp(1rem,2vw,1.5rem);text-shadow:0 2px 10px rgba(0,0,0,.7);}
/* flèche scroll */
.scroll-indicator{
    position:absolute;bottom:40px;left:50%;transform:translateX(-50%);z-index:3;
    color:white;font-size:2rem;
    animation:bounce 2s infinite;
}
@keyframes bounce{
	0%,20%,50%,80%,100%{ transform:translateX(-50%) translateY(0); }
	40%{ transform:translateX(-50%) translateY(-10px); }
	60%{ transform:translateX(-50%) translateY(-5px); }
}

/* CONTENU */
.sticky {position: fixed;top: 0; }

a.link {color:#32628A;padding-left: 2px;text-decoration:underline;font-weight:bold;}
a.link:hover{color:blue;text-decoration:none;}
a.link:visited{text-decoration:none;color:#32628A;}/*E49203*/

a[alt="note"] {color: blue;padding-left: 2px;text-decoration: none;}

.lien-interne {color: blue;padding-left: 2px;text-decoration: underline;font-weight:bold;}
.lien-interne :hover {color: blue;padding-left: 2px;text-decoration: none;font-weight:bold;}

.info{margin:0 auto 30px; padding:20px;}
.bordure{border:0.1em solid #7b7b7b;border-radius:5px;}
.txtcenter {text-align: center;}

.content{background:white;padding:100px 8%}
.content-inner{max-width:1000px;margin:0 auto;}
.content h2{font-size:2.5rem;margin-bottom:30px;}
.content h2 span{font-size:1.5rem;}
.content h3{font-size:1.6rem;margin-bottom:20px;}
.content p{margin-bottom:25px;font-size:1.1rem;}

.article, .bibliographie{ max-width:800px;margin:0 auto;}

.content .bibliographie .reference{
    margin-bottom:0;
    padding-left:2em;
    text-indent:-2em;
    line-height:1.35;
    font-size:1rem; /* ou inherit si tu préfères */
}

.reference + .reference{
    margin-top:.15em;
}

.reference a{
    word-break:break-word;
}

/* petit effet d'apparition */
.fade-in{opacity:0;transform:translateY(40px);transition:all .8s ease;}
.fade-in.visible{opacity:1;transform:translateY(0);}

/*back To Top*/
#backToTop {
    position: fixed;
    right: 40px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1000;

    padding: 10px 14px;
    font-size: 42px;
    font-weight: bold;

    border-radius: 50%;
    /*background-color: #333;*/
    color: #32628A;
    text-decoration: none;

    opacity: 0.7;
    transition: opacity 0.2s ease, background-color 0.2s ease;
}

#backToTop:hover {
    opacity: 1; color:blue;
}



/* RESPONSIVE */
@media(max-width:960px){
	#backToTop {right: 20px;}
}

@media(max-width:768px){
	.hero{
		min-height:500px;
	}
	.content{
		padding:60px 30px;
	}
	.content h2{
		font-size:2rem;
	}
	#backToTop {right: 10px;}
}
