@charset "UTF-8";
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, blockquote, pre,
a, abbr, acronym, address, code,
del, dfn, img, q, dl, dt, dd,
fieldset, form, label, legend {
	margin: 0;
	padding: 0;
	border: 0;
	font-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	font-family: inherit;
	vertical-align: baseline;
}

html{
	/* Réserve toujours la place de la scrollbar verticale, sinon #main
	   (centré à la marge:auto) se décale de quelques pixels selon que la
	   page est assez longue pour scroller ou non. */
	overflow-y:scroll;
}

body {
	background-color:#FFFFFF;
	font-size:16px;
	color:#58595B;
	font-family: Georgia,Times New Roman, Times, serif;
	margin:0px;
	padding:0px;
}

a {
	color:#003399;
	text-decoration: none;
}

a:hover{
	color:#000000;
}

/**************************************************************

	ID

**************************************************************/

#top{
	overflow:hidden;
	margin:auto;
	padding-top:28px;
	width:800px;
}

#titre_site{
	border-bottom:1px solid #000000;
	width:800px;
}

#menu{
	clear:both;
	display:flex;
	font-family:verdana, arial, helvetica, sans-serif;
	font-size:9px;
	font-weight:bold;
	text-align:center;
	position:relative;
}

#menu_slider{
	position:absolute;
	top:0;
	left:0;
	width:0;
	height:30px;
	background-color:transparent;
	transition:left 0.35s ease-in-out, top 0.35s ease-in-out, width 0.35s ease-in-out, height 0.35s ease-in-out, background-color 0.35s ease-in-out;
	pointer-events:none;
	z-index:1;
}

#menu_no_pointerff{
	float:left;
	width:89px;
}

#menu_off{
	flex:1;
	min-width:0;
	display:flex;
	align-items:center;
	justify-content:center;
	text-align:center;
	height:30px;
	line-height:1.2;
	padding:0 4px;
	cursor:pointer;
	position:relative;
	z-index:2;
	transition:color 0.15s ease-in-out;
	transition-delay:0s;
}

#menu_on{
	flex:1;
	min-width:0;
	display:flex;
	align-items:center;
	justify-content:center;
	text-align:center;
	height:30px;
	line-height:1.2;
	padding:0 4px;
	position:relative;
	z-index:2;
	transition:color 0.15s ease-in-out;
	transition-delay:0s;
}

.menu-highlighted{
	color:#FFFFFF;
	transition-delay:0.25s;
}

#menu_last_off{
	float:left;
	width:88px;
	cursor:pointer;
}

#menu_last_on{
	float:left;
	width:88px;
	color:#FFFFFF;
	background-color:#00B0B4;
}

#main{
	overflow:hidden;
	margin:auto;
	margin-top:25px;
	width:800px;
}

#tophome{
	overflow:hidden;
	margin:auto;
	padding-top:28px;
	width:800px;
	cursor:pointer;
}

#content{
	float:left;
	width:540px;
}

#right_colonne{
	float:right;
	width:220px;
}

#bloc_actu{
	overflow:hidden;
	margin-top:10px;
	width:220px;
	height:220px;
	background-color:#EC7990;
	cursor:pointer;
}

#bloc_lecture{
	overflow:hidden;
	margin-top:10px;
	width:220px;
	height:105px;
	background-color:#C7D981;
}

#bloc_image{
	overflow:hidden;
	margin-top:10px;
	margin-bottom:10px;
	width:220px;
	font-family:verdana, arial, helvetica, sans-serif;
	font-size:14px;
	font-weight:bold;
	color:#000000;
	cursor:pointer;
}

#bloc_echos{
	overflow:hidden;
	width:220px;
	height:105px;
	background-color:#D1D3D5;
	cursor:pointer;
}

#separateur{
	height:25px;
}

#ligne{
	clear:both;
	margin-bottom:5px;
	margin-top:5px;
	width:100%;
}

#bloc_journal{
	clear:both;
	overflow:hidden;
	border-top:1px solid #000000;
	padding-top:15px;
	padding-bottom:15px;
}

#ligne_separation{
	clear:both;
	margin-top:15px;
	margin-bottom:15px;
	background-color:#000000;
	height:1px;
}

#ligne_separation_annee{
	clear:both;
	margin-top:10px;
	margin-bottom:10px;
	background-color:#000000;
	height:1px;
}

#img_journal{
	float:left;
	width:150px;
	padding-right:15px;
}

#txt_journal{
	float:left;
}

#titre_journal{
	line-height:30px;
	padding-bottom:15px;
}

#infos_journal{
	width:375px;
}

#bloc_article_titre_journal{
	clear:both;
	border-top:1px solid #000000;
	padding-top:15px;
}

#bloc_article{
	clear:both;
	overflow:hidden;
}

#img_article{
	float:left;
	width:100px;
	padding-right:15px;
}

#txt_article{
	float:left;
	width:425px;
}

#titre_article{
	line-height:30px;
	padding-bottom:15px;
}

#infos_article{
	width:425px;
	padding-bottom:5px;
}

#auteurs_article{
	font-family:verdana, arial, helvetica, sans-serif;
	font-size:12px;
	font-weight:bold;
}

#bloc_menu_auteurs{
	clear:both;
	overflow:hidden;
	padding-top:15px;
	padding-bottom:15px;
	margin-bottom:15px;
	border-top:1px solid #000000;
	border-bottom:1px solid #000000;
}

#menu_auteurs_titre{
	font-weight:bold;
}

#menu_auteurs_alphabet{
	clear:both;
	overflow:hidden;
}

#menu_auteurs_lettre_on, #menu_auteurs_lettre_off{
	float:left;
	width:20px;
	color:#CCCCCC;
}

#menu_auteurs_lettre_on{
	font-weight:bold;
	color:#000000;
	text-decoration:underline;
}

#menu_auteurs_lettre_off{
	float:left;
	width:20px;
}

#bloc_auteur{
	clear:both;
	overflow:hidden;
}

#img_auteur{
	float:left;
	width:100px;
	padding-right:15px;
}

#txt_auteur{
	float:left;
	width:425px;
}

#titre_auteur{
	line-height:30px;
	padding-bottom:15px;
}

#infos_auteur{
	width:425px;
	padding-bottom:5px;
}

#articles_auteur{
	font-family:verdana, arial, helvetica, sans-serif;
	font-size:12px;
	font-weight:bold;
}

#echo2011, #echo2012{
	display:block;
}

#auteurs_mobile_controls{
	display:none;
}

/**************************************************************

	Class
	
**************************************************************/

.menuuneligne{
	line-height:30px;
	height:30px;
}

.menudeuxligne{
	padding-top:4px;
	line-height:11px;
	height:26px;
}

.titre1{
	font-size:37px;
}

.titre2{
	font-size:24px;
}

/* Unité insécable : un prénom-nom (ou tout groupe de mots) ne se coupe
   jamais en fin de ligne, quelle que soit la largeur de l'écran. */
.nowrap{
	white-space:nowrap;
}

.titre2italic{
	font-size:24px;
	font-style:italic;
}

.titre_echos, .titre_actu, .titre_lecture{
	font-family:verdana, arial, helvetica, sans-serif;
	font-size:18px;
	font-weight:bold;
}

.titre_echos{
	color:#FFFFFF;
}

.titre_actu{
	color:#FFFFFF;
}

.titre_lecture{
	color:#000000;
}

.titreannee{
	font-size:18px;
	cursor:pointer;
}

/**************************************************************

	Form
	
**************************************************************/

#form_souscription table{
	width: 600px;
}
  
.labelcell, .labelcellright{
	float:left;
	margin-right: 0px;
	padding-right: 0px;
	width:150px;
}

.labelcellright{
	text-align:right;
}

.smalllabelcell{
	margin-right: 0px;
	padding-right: 0px;
	white-space:nowrap;
	width:145px;
}

.fieldcell {
	float:left;
	margin-right: 0px;
	padding-right: 0px;
	width:300px;
}

.bigfieldcell {
	margin-right: 0px;
	padding-right: 0px;
	width:390px;
}

.smallfieldcell {
	text-align: right;
}

.fieldcell input {
	width: 180px;
	font: 14px Georgia,Times New Roman;
	border: 1px solid #000000;
	margin-right: 0px;
}    
   
.bigfieldcell input {
	width:450px;
	font: 14px Georgia,Times New Roman;
	border: 1px solid #000000;
}    
   
.bigfieldcell textarea {
	width: 450px;
	font: 14px Georgia,Times New Roman;
	border: 1px solid #000000;
}

.button {
	font: 14px Georgia,Times New Roman;
	background-color: #FFFFFF;
	border: 1px solid #000000;
	cursor:pointer;
}

/**************************************************************

	PDF lightbox

**************************************************************/

#pdf-lightbox-overlay{
	display:none;
	position:fixed;
	inset:0;
	z-index:1000;
	background-color:#FFFFFF;
	opacity:0;
	transition:opacity 200ms ease;
}

#pdf-lightbox-overlay.is-open{
	opacity:1;
}

#pdf-lightbox-panel{
	position:relative;
	width:100%;
	height:100%;
	background-color:#FFFFFF;
}

#pdf-lightbox-panel iframe{
	width:100%;
	height:100%;
	border:0;
}

#pdf-lightbox-close{
	position:absolute;
	top:48px;
	right:20px;
	background-color:#FFFFFF;
	border:1px solid #000000;
	padding:4px 10px;
	color:#000000;
	font-family:verdana, arial, helvetica, sans-serif;
	font-size:12px;
	font-weight:bold;
	cursor:pointer;
}

/**************************************************************

	Hamburger (masqué sur desktop, affiché en dessous de 800px)

**************************************************************/

#menu_hamburger{
	display:none;
	position:absolute;
	top:0;
	right:0;
	width:30px;
	height:24px;
	background:none;
	border:0;
	padding:0;
	cursor:pointer;
}

#menu_hamburger span{
	display:block;
	position:absolute;
	left:0;
	width:100%;
	height:2px;
	background-color:#000000;
	transition:transform 0.25s ease-in-out, opacity 0.25s ease-in-out, top 0.25s ease-in-out;
}

#menu_hamburger span:nth-child(1){ top:0; }
#menu_hamburger span:nth-child(2){ top:11px; }
#menu_hamburger span:nth-child(3){ top:22px; }

#menu_hamburger.is-open span:nth-child(1){
	top:11px;
	transform:rotate(45deg);
}

#menu_hamburger.is-open span:nth-child(2){
	opacity:0;
}

#menu_hamburger.is-open span:nth-child(3){
	top:11px;
	transform:rotate(-45deg);
}

/**************************************************************

	Responsive (< 800px)

**************************************************************/

@media (max-width: 800px){

	#top, #main, #tophome{
		width:100%;
		max-width:800px;
		box-sizing:border-box;
		padding-left:20px;
		padding-right:20px;
	}

	#titre_site{
		width:100%;
		position:sticky;
		top:0;
		z-index:950;
		background-color:#FFFFFF;
		padding-right:40px;
		padding-top:8px;
		padding-bottom:8px;
		box-sizing:border-box;
	}

	/* Menu plein écran ouvert : le body est verrouillé en position:fixed
	   (voir menu-hover.js) pour empêcher le rebond de défilement iOS derrière
	   le menu. "sticky" n'a alors plus de scroll auquel se coller, donc on
	   repasse explicitement le bandeau logo en position:fixed pour qu'il
	   reste ancré en haut du vrai viewport, synchronisé avec le menu. */
	body.menu-scroll-locked #titre_site{
		position:fixed;
		left:20px;
		right:20px;
		top:0;
		width:auto;
	}

	#titre_site svg{
		max-width:85%;
		height:auto;
	}

	#menu_hamburger{
		display:block;
		top:7px;
	}

	#menu{
		display:none;
		opacity:0;
		flex-direction:column;
		align-items:stretch;
		justify-content:center;
		position:fixed;
		inset:0;
		z-index:900;
		background-color:#FFFFFF;
		padding:0 20px;
		box-sizing:border-box;
		text-align:center;
		transition:opacity 0.3s ease-in-out;
		overflow-y:auto;
		-webkit-overflow-scrolling:touch;
		overscroll-behavior:contain;
	}

	#menu.menu-open{
		display:flex;
	}

	#menu.menu-visible{
		opacity:1;
	}

	#menu_off, #menu_on{
		flex:none;
		width:100%;
		height:auto;
		min-height:52px;
		padding:10px 4px;
		font-size:16px;
		box-sizing:border-box;
	}

	#menu_slider{
		left:20px !important;
		right:20px !important;
		width:auto !important;
	}

	#content, #right_colonne{
		float:none;
		width:100%;
	}

	img{
		max-width:100%;
		height:auto;
	}

	.titre1{
		font-size:28px;
	}

	.titre2, .titre2italic{
		font-size:19px;
	}

	#img_journal, #img_article, #img_auteur{
		float:none;
		width:100%;
		padding-right:0;
		margin-bottom:10px;
	}

	#txt_journal, #txt_article, #txt_auteur{
		float:none;
		width:100%;
	}

	#infos_journal, #infos_article, #infos_auteur{
		width:100%;
		box-sizing:border-box;
	}

	#menu_auteurs_alphabet{
		overflow-x:auto;
		white-space:nowrap;
	}

	#menu_auteurs_lettre_on, #menu_auteurs_lettre_off{
		float:none;
		display:inline-block;
	}

	#form_souscription table{
		width:100%;
	}

	.labelcell, .labelcellright, .fieldcell, .bigfieldcell, .smalllabelcell{
		float:none;
		width:100%;
		box-sizing:border-box;
		margin-bottom:4px;
	}

	.labelcellright{
		text-align:left;
	}

	.fieldcell input, .bigfieldcell input, .bigfieldcell textarea{
		width:100%;
		box-sizing:border-box;
	}

	#pdf-lightbox-close{
		top:14px;
		right:14px;
	}

	#bloc_menu_auteurs{
		display:none;
	}

	#auteurs_mobile_controls{
		display:block;
		margin-bottom:15px;
	}

	#auteurs_type_toggle{
		display:flex;
		gap:10px;
		margin-bottom:10px;
	}

	#auteurs_type_toggle a{
		flex:1;
		display:block;
		text-align:center;
		font-family:verdana, arial, helvetica, sans-serif;
		font-size:11px;
		font-weight:bold;
		color:#58595B;
		border:1px solid #d4d4d4;
		border-radius:0;
		padding:10px 6px;
		box-sizing:border-box;
	}

	#auteurs_type_toggle a svg{
		display:block;
		margin:0 auto 4px;
	}

	#auteurs_type_toggle a.is-active{
		color:#000000;
		border-color:#ffc700;
		border-width:1px 1px 3px 1px;
	}

	#auteurs_lettre_picker{
		border:1px solid #d4d4d4;
	}

	#auteurs_lettre_toggle{
		display:block;
		width:100%;
		cursor:pointer;
		background:none;
		border:0;
		text-align:left;
		padding:10px 12px;
		font-family:verdana, arial, helvetica, sans-serif;
		font-size:12px;
		font-weight:bold;
		color:#58595B;
	}

	#auteurs_lettre_toggle::after{
		content:" \25BE";
		float:right;
		transition:transform 0.25s ease-in-out;
	}

	#auteurs_lettre_picker.is-open #auteurs_lettre_toggle::after{
		transform:rotate(-180deg);
	}

	#auteurs_lettre_grid{
		display:grid;
		grid-template-columns:repeat(6, 1fr);
		gap:1px;
		background-color:#d4d4d4;
		max-height:0;
		overflow:hidden;
		transition:max-height 0.3s ease-in-out;
	}

	#auteurs_lettre_picker.is-open #auteurs_lettre_grid{
		max-height:300px;
		border-top:1px solid #d4d4d4;
	}

	#auteurs_lettre_grid a, #auteurs_lettre_grid span{
		display:flex;
		align-items:center;
		justify-content:center;
		height:40px;
		background-color:#FFFFFF;
		font-family:verdana, arial, helvetica, sans-serif;
		font-size:13px;
		font-weight:bold;
		opacity:0;
		transform:translateY(-6px);
		transition:opacity 0.25s ease-out, transform 0.25s ease-out;
	}

	#auteurs_lettre_picker.is-open #auteurs_lettre_grid a,
	#auteurs_lettre_picker.is-open #auteurs_lettre_grid span{
		opacity:1;
		transform:translateY(0);
	}

	#auteurs_lettre_grid a:nth-child(6n+1), #auteurs_lettre_grid span:nth-child(6n+1){ transition-delay:0ms; }
	#auteurs_lettre_grid a:nth-child(6n+2), #auteurs_lettre_grid span:nth-child(6n+2){ transition-delay:30ms; }
	#auteurs_lettre_grid a:nth-child(6n+3), #auteurs_lettre_grid span:nth-child(6n+3){ transition-delay:60ms; }
	#auteurs_lettre_grid a:nth-child(6n+4), #auteurs_lettre_grid span:nth-child(6n+4){ transition-delay:90ms; }
	#auteurs_lettre_grid a:nth-child(6n+5), #auteurs_lettre_grid span:nth-child(6n+5){ transition-delay:120ms; }
	#auteurs_lettre_grid a:nth-child(6n+6), #auteurs_lettre_grid span:nth-child(6n+6){ transition-delay:150ms; }

	#auteurs_lettre_grid span{
		color:#CCCCCC;
	}

	#auteurs_lettre_grid a{
		color:#58595B;
	}

	#auteurs_lettre_grid a.is-active{
		background-color:#ffc700;
		color:#000000;
	}
}