/* =============================================
   PROGRAMME ALGO — CSS additionnel
   Coller dans : Apparence → Personnaliser → CSS additionnel
   ============================================= */
.algo-wrap {
	font-family: 'Merriweather', Georgia, serif;
	font-size: 15px;
	font-weight: 300;
	line-height: 1.8;
	color: #404040;
	max-width: 656px;
	margin: 0 auto;
}

.algo-wrap p {
	margin: 0 0 1.4em;
}

.algo-wrap strong {
	font-weight: 700;
	color: #333;
}

.algo-wrap a {
	color: #333;
	text-decoration: underline;
}

.algo-wrap a:hover {
	color: #1F4E79;
}

.algo-wrap hr {
	border: none;
	border-top: 1px solid #d8d8d8;
	margin: 2.5em 0;
}

.algo-wrap ul {
	margin: 0 0 1.4em 1.6em;
	padding: 0;
}

.algo-wrap ul li {
	margin-bottom: .6em;
	font-size: 15px;
}

.algo-section-title {
	font-family: 'Merriweather Sans', sans-serif;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #999;
	margin: 2.5em 0 1em;
	padding-bottom: .5em;
	border-bottom: 1px solid #d8d8d8;
}

.algo-wrap h2 {
	font-family: 'Merriweather', Georgia, serif;
	font-size: 1.15em;
	font-weight: 700;
	color: #333;
	margin: 2em 0 .8em;
	line-height: 1.4;
}

.algo-signature {
	border-left: 2px solid #404040;
	padding: .8em 1.2em;
	margin: 1.8em 0;
	background: #f0f5fa;
}

.algo-signature .ligne1 {
	display: block;
	font-style: italic;
	font-weight: 300;
	color: #555;
	font-size: .97em;
	margin-bottom: .25em;
}

.algo-signature .ligne2 {
	display: block;
	font-weight: 700;
	color: #1F4E79;
	font-size: 1.05em;
}

.algo-piliers {
	list-style: none;
	margin: 1.2em 0 1.5em;
	padding: 0;
}

.algo-piliers li {
	display: flex;
	gap: 1em;
	align-items: flex-start;
	padding: 1em 0;
	border-bottom: 1px solid #e8e8e8;
}

.algo-piliers li:first-child {
	border-top: 1px solid #e8e8e8;
}

.algo-pilier-num {
	flex-shrink: 0;
	font-family: 'Merriweather Sans', sans-serif;
	font-size: 11px;
	font-weight: 700;
	color: #fff;
	background: #1F4E79;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 2px;
}

.algo-piliers li.pilier-1 .algo-pilier-num {
	background: #C55A11;
}

.algo-pilier-titre {
	display: block;
	font-family: 'Merriweather', serif;
	font-weight: 700;
	font-size: .95em;
	color: #333;
	margin-bottom: .3em;
}

.algo-piliers li.pilier-1 .algo-pilier-titre {
	color: #1F4E79;
}

.algo-pilier-desc {
	font-size: .9em;
	font-weight: 300;
	color: #555;
	line-height: 1.7;
}

.algo-pilier-outils {
	display: flex;
	flex-wrap: wrap;
	gap: .35em;
	margin-top: .5em;
}

.algo-outil {
	font-family: 'Merriweather Sans', sans-serif;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
	background: #e4edf5;
	color: #1F4E79;
	padding: 3px 8px;
	border-radius: 2px;
}

.algo-piliers-note {
	font-family: 'Merriweather Sans', sans-serif;
	font-size: 12px;
	color: #555;
	border-left: 2px solid #41719F;
	padding: .5em .9em;
	background: #f0f5fa;
	margin-top: .5em;
}

.algo-comportements ul {
	list-style: none;
	margin-left: 0;
	padding: 0;
}

.algo-comportements ul li {
	padding: .6em 0 .6em 1.2em;
	position: relative;
	border-bottom: 1px solid #eee;
	font-size: .93em;
}

.algo-comportements ul li:first-child {
	border-top: 1px solid #eee;
}

.algo-comportements ul li::before {
	content: "›";
	position: absolute;
	left: 0;
	color: #C55A11;
	font-size: 1.1em;
	line-height: 1.6;
}

.algo-etapes {
	list-style: none;
	margin: 1.2em 0 1.5em;
	padding: 0;
}

.algo-etapes li {
	display: flex;
	gap: 1em;
	align-items: flex-start;
	padding: .9em 0;
	border-bottom: 1px solid #e8e8e8;
}

.algo-etapes li:first-child {
	border-top: 1px solid #e8e8e8;
}

.algo-etape-num {
	flex-shrink: 0;
	font-family: 'Merriweather Sans', sans-serif;
	font-size: 10px;
	font-weight: 700;
	color: #fff;
	background: #41719F;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 2px;
}

.algo-etape-titre {
	display: block;
	font-family: 'Merriweather', serif;
	font-weight: 700;
	font-size: .93em;
	color: #333;
	margin-bottom: .2em;
}

.algo-etape-desc {
	font-size: .88em;
	font-weight: 300;
	color: #555;
	line-height: 1.7;
}

.algo-encadre {
	border-top: 2px solid #1F4E79;
	border-bottom: 2px solid #1F4E79;
	padding: 1.3em 0;
	margin: 2em 0;
}

.algo-encadre p {
	font-size: .93em;
	font-weight: 300;
	color: #404040;
	margin: 0 0 .8em;
}

.algo-encadre p:last-child {
	margin-bottom: 0;
}

.algo-liens-pdf {
	list-style: none;
	margin: .5em 0 1.5em;
	padding: 0;
}

.algo-liens-pdf li {
	padding: .4em 0;
	border-bottom: 1px solid #eee;
	font-size: .93em;
}

.algo-liens-pdf li:first-child {
	border-top: 1px solid #eee;
}

.algo-liens-pdf a {
	color: #333;
	text-decoration: none;
	font-weight: 400;
}

.algo-liens-pdf a:hover {
	color: #1F4E79;
	text-decoration: underline;
}

.algo-liens-pdf a::before {
	content: "↓ ";
	color: #C55A11;
	font-weight: 700;
}

.algo-cta {
	text-align: center;
	padding: 1.5em 0;
}

.algo-cta a {
	font-family: 'Merriweather Sans', sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: #fff;
	background: #1F4E79;
	text-decoration: none;
	padding: .7em 1.8em;
	display: inline-block;
}

.algo-cta a:hover {
	background: #C55A11;
	color: #fff;
}

.algo-contact {
	font-family: 'Merriweather Sans', sans-serif;
	font-size: 13px;
	color: #555;
	line-height: 2;
}

.algo-contact a {
	color: #333;
	text-decoration: none;
}

.algo-contact a:hover {
	text-decoration: underline;
	color: #1F4E79;
}