/* Fiche produit FORMATION — scopé .cafeo-formation-single (habillage dédié,
   distinct des cafés). Le hero cf-pagehero est géré par le chrome. */
.cafeo-formation-single{--cream:#fcf3e5;--charcoal:#2c3235;--gold:#ffd17c;--gold-h:#dfa63e;--brown:#42240c;--brown-d:#482b13;--rose:#9a7862;font-family:'Onest',sans-serif;color:var(--charcoal);background:var(--cream);}
.cafeo-formation-single *,.cafeo-formation-single *::before,.cafeo-formation-single *::after{box-sizing:border-box;}

/* Chapô + badges (sous le hero) */
.cafeo-formation-single .cfo-intro{padding:44px max(72px, calc(50vw - 640px)) 0;}
.cafeo-formation-single .cfo-deck{font-size:19px;line-height:1.7;color:var(--brown-d);max-width:760px;margin:0 0 20px;border-left:3px solid var(--gold);padding-left:22px;}
.cafeo-formation-single .cfo-badges{display:flex;flex-wrap:wrap;gap:10px;}
.cafeo-formation-single .cfo-badge{font-size:14px;background:#fff;color:var(--brown);border:1px solid rgba(74,45,31,.14);padding:7px 16px;border-radius:20px;}

/* Corps : programme (gauche) + carte infos pratiques (droite) */
.cafeo-formation-single .cfo-body{display:grid;grid-template-columns:1fr 320px;gap:56px;align-items:start;padding:48px max(72px, calc(50vw - 640px)) 90px;}
.cafeo-formation-single .cfo-main{min-width:0;}
.cafeo-formation-single .cfo-eyebrow{font-size:14px;letter-spacing:2px;text-transform:uppercase;color:var(--rose);margin:0 0 10px;}
.cafeo-formation-single .cfo-h2{font-size:26px;font-weight:400;color:var(--brown);letter-spacing:.5px;margin:0 0 28px;padding-bottom:14px;position:relative;}
.cafeo-formation-single .cfo-h2::after{content:"";position:absolute;left:0;bottom:0;width:44px;height:3px;background:var(--gold);border-radius:2px;}

/* Étapes du programme (ACF repeater) */
.cafeo-formation-single .cfo-steps{display:flex;flex-direction:column;gap:22px;margin-bottom:40px;}
.cafeo-formation-single .cfo-step{display:flex;gap:18px;}
.cafeo-formation-single .cfo-num{flex:0 0 40px;height:40px;border-radius:50%;background:var(--gold);color:var(--brown);font-size:15px;font-weight:500;display:flex;align-items:center;justify-content:center;}
.cafeo-formation-single .cfo-step__title{font-size:17px;font-weight:500;color:var(--brown);margin:6px 0 6px;}
.cafeo-formation-single .cfo-step__text{font-size:15px;color:var(--charcoal);line-height:1.7;margin:0;}

/* Description longue (fallback / complément) */
.cafeo-formation-single .cfo-prose{font-size:16px;line-height:1.85;color:var(--charcoal);}
.cafeo-formation-single .cfo-prose :where(p){margin:0 0 20px;}
/* Titres de section (Objectifs, Pour qui, Résultats…) : accent doré sous le titre. */
.cafeo-formation-single .cfo-prose :where(h2,h3){color:var(--brown);font-weight:500;font-size:20px;letter-spacing:.3px;margin:40px 0 18px;padding-bottom:11px;position:relative;}
.cafeo-formation-single .cfo-prose :where(h2,h3)::after{content:"";position:absolute;left:0;bottom:0;width:36px;height:3px;background:var(--gold);border-radius:2px;}
.cafeo-formation-single .cfo-prose :where(a){color:var(--brown-d);text-decoration:underline;text-underline-offset:3px;}
.cafeo-formation-single .cfo-prose :where(ul,ol){margin:0 0 20px;padding-left:22px;}
.cafeo-formation-single .cfo-prose :where(li){margin:0 0 8px;}

/* Carte « infos pratiques » (conversion) */
.cafeo-formation-single .cfo-aside{position:sticky;top:120px;}
.cafeo-formation-single .cfo-card{background:#fff;border:1px solid rgba(74,45,31,.12);border-radius:14px;padding:24px;}
.cafeo-formation-single .cfo-price{font-size:30px;font-weight:500;color:var(--brown);margin:0 0 4px;}
.cafeo-formation-single .cfo-price small{font-size:13px;color:var(--rose);font-weight:400;}
.cafeo-formation-single .cfo-price .amount{font-size:inherit;}
.cafeo-formation-single .cfo-cta{display:block;text-align:center;background:var(--gold);color:var(--brown);font-size:14px;letter-spacing:1.5px;text-transform:uppercase;font-weight:500;padding:15px;border-radius:28px;margin:18px 0 8px;text-decoration:none;transition:background .2s;}
.cafeo-formation-single .cfo-cta:hover{background:var(--gold-h);}
.cafeo-formation-single .cfo-cta:active{background:#c8932e;}
.cafeo-formation-single .cfo-dl{display:block;text-align:center;font-size:14px;color:var(--brown-d);text-decoration:underline;text-underline-offset:3px;padding:8px;}
.cafeo-formation-single .cfo-info{border-top:1px solid rgba(74,45,31,.1);margin:14px 0 0;padding:6px 0 0;}
.cafeo-formation-single .cfo-row{display:flex;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid rgba(74,45,31,.06);}
.cafeo-formation-single .cfo-row:last-child{border-bottom:0;}
.cafeo-formation-single .cfo-row dt{font-size:14px;color:var(--rose);margin:0;}
.cafeo-formation-single .cfo-row dd{margin:0 0 0 auto;font-size:14px;font-weight:500;color:var(--brown);text-align:right;}

@media(max-width:980px){
	.cafeo-formation-single .cfo-intro{padding:36px 40px 0;}
	.cafeo-formation-single .cfo-body{grid-template-columns:1fr;gap:36px;padding:36px 40px 72px;}
	.cafeo-formation-single .cfo-aside{position:static;}
}
@media(max-width:600px){
	.cafeo-formation-single .cfo-intro{padding:28px 22px 0;}
	.cafeo-formation-single .cfo-body{padding:28px 22px 56px;}
	.cafeo-formation-single .cfo-deck{font-size:17px;}
	.cafeo-formation-single .cfo-h2{font-size:22px;}
}

/* Brochure + calendrier sous la description, dans un encadré annoncé.
   Deux liens soulignés de 14px y passaient inaperçus. */
.cafeo-formation-single .cfo-docs{
	margin:32px 0 0;padding:22px 26px;
	background:#fcf3e5;border:1px solid #efe2cc;border-left:4px solid var(--gold);border-radius:12px;
	display:flex;flex-direction:column;gap:10px;
}
.cafeo-formation-single .cfo-docs__titre{
	margin:0 0 4px;font-size:13px;letter-spacing:2px;text-transform:uppercase;color:#938655;
}
.cafeo-formation-single .cfo-docs .cfo-dl{
	display:inline-flex;align-items:center;gap:10px;width:fit-content;
	padding:0;text-align:left;font-size:16px;font-weight:500;color:var(--brown-d);
	text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;
}
.cafeo-formation-single .cfo-docs .cfo-dl:hover{color:#8a5a2b;}
.cafeo-formation-single .cfo-docs .cfo-dl small{font-weight:400;color:#938655;}
.cafeo-formation-single .cfo-doc__icone{flex:0 0 auto;}
@media(max-width:600px){
	.cafeo-formation-single .cfo-docs{padding:18px 18px;}
	.cafeo-formation-single .cfo-docs .cfo-dl{font-size:15px;}
}
