/* Reusable Edrio editorial sections for the Formations builder pages. */
body.formations-page{background:#fff;color:#211a29}
body.formations-page #ed-header{position:absolute;top:0;left:0;width:100%;z-index:50}
body.formations-page .formations-main{overflow:hidden}
body.formations-page .formations-main a:focus-visible{outline:3px solid #e9f76e;outline-offset:4px}
.formations-hero{position:relative;background:#2b183e;color:#fff;isolation:isolate}
.formations-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 12% 88%,rgba(231,107,153,.22),transparent 40%);z-index:-1}
.formations-hero-grid{min-height:650px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);gap:7%;align-items:center;padding-top:155px;padding-bottom:90px}
.formations-hero-copy{position:relative;z-index:2;padding-bottom:10px}
.formations-eyebrow{display:flex;align-items:center;gap:14px;color:#e9f76e;font-size:13px;font-weight:800;letter-spacing:.17em;text-transform:uppercase;margin:0 0 30px}
.formations-eyebrow-line{display:inline-block;width:34px;height:2px;background:currentColor}
.formations-hero h1{color:#fff;font-size:clamp(48px,6.2vw,91px);line-height:1.02;letter-spacing:-.045em;font-weight:800;max-width:860px;margin:0 0 30px;overflow-wrap:anywhere}
.formations-hero-lead{color:rgba(255,255,255,.88);font-size:clamp(17px,1.45vw,21px);line-height:1.6;max-width:650px;margin:0 0 34px}
.formations-breadcrumb{display:flex;flex-wrap:wrap;gap:9px;align-items:center;color:rgba(255,255,255,.68);font-size:13px;line-height:1.5}
.formations-breadcrumb a{color:inherit;text-decoration:underline;text-underline-offset:4px}
.formations-breadcrumb a:hover{color:#e9f76e}
.formations-breadcrumb span[aria-current]{color:#fff}
.formations-hero-visual{height:455px;width:100%;margin:0;position:relative;box-shadow:26px 26px 0 rgba(233,247,110,.16)}
.formations-hero-visual:before{content:"";position:absolute;left:-19px;top:-19px;width:83px;height:83px;background:#e9f76e;z-index:-1}
.formations-hero-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.formations-hero-decoration{position:absolute;right:0;bottom:0;width:13vw;height:13vw;border:1px solid rgba(255,255,255,.12);border-right:0;border-bottom:0;pointer-events:none}
.formations-rich-text{font-size:17px;line-height:1.78;color:#39333e;overflow-wrap:anywhere}
.formations-rich-text p,.formations-rich-text ul,.formations-rich-text ol,.formations-rich-text blockquote,.formations-rich-text table{margin:0 0 25px}
.formations-rich-text h2,.formations-rich-text h3,.formations-rich-text h4,.formations-rich-text h5{color:#392047;font-weight:800;line-height:1.25;letter-spacing:-.02em;margin:38px 0 16px}
.formations-rich-text h2{font-size:29px}.formations-rich-text h3{font-size:24px}.formations-rich-text h4,.formations-rich-text h5{font-size:20px}
.formations-rich-text h2:first-child,.formations-rich-text h3:first-child,.formations-rich-text h4:first-child,.formations-rich-text h5:first-child{margin-top:0}
.formations-rich-text ul,.formations-rich-text ol{padding-left:26px}
.formations-rich-text li{padding-left:4px;margin-bottom:9px}
.formations-rich-text li::marker{color:#7b4d95}
.formations-rich-text strong{font-weight:800;color:#2d2035}
.formations-rich-text a{color:#552377;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.formations-rich-text a:hover{color:#9b336e}
.formations-rich-text img{display:block;max-width:100%;width:auto;height:auto;margin:25px 0;object-fit:contain}
.formations-rich-text figure{margin:26px 0}
.formations-rich-text figure img{margin:0}
.formations-rich-text figcaption{font-size:13px;color:#7d727e;margin-top:8px}
.formations-rich-text blockquote{background:#f6f2f7;border-left:4px solid #755185;padding:20px 26px;font-size:20px;font-weight:600}
.formations-rich-text table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;font-size:15px;line-height:1.5}
.formations-rich-text th,.formations-rich-text td{padding:11px 14px;border:1px solid #e6dfe8;vertical-align:top;min-width:110px}
.formations-rich-text th{background:#f6f2f7;color:#382043}
.formations-rich-text hr{border:0;border-top:1px solid #e5dfe6;margin:38px 0}
/* Edrio about.html composition, with source photography and copy. */
.formations-about-feature{padding:96px 0 82px;background:#fff}
.formations-about-feature .ed-about-content{display:grid!important;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:8%;align-items:center}
.formations-about-feature .ed-ab-img1{width:100%;max-width:none;position:relative;margin-left:0;transform:none!important}
.formations-about-feature .ed-ab-img1:before{content:"";position:absolute;inset:20px -20px -20px 20px;border:2px solid #e9f76e;z-index:0}
.formations-about-feature .ed-ab-img1 img{width:100%;height:500px;object-fit:cover;display:block;position:relative;z-index:1}
.formations-about-feature .ed-ab-text1{width:100%;max-width:none}
.formations-about-feature .rate-slug{display:inline-flex;align-items:center;gap:10px;background:#e9f76e;padding:9px 14px;color:#251631;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:24px}
.formations-about-feature .sec_title{font-size:clamp(32px,4vw,57px);line-height:1.11;color:#2c173c;font-weight:800;letter-spacing:-.035em;margin:0 0 25px}
.formations-about-feature p{color:#514956;font-size:19px;line-height:1.7;margin:0 0 28px}
.formations-about-feature .ed-btn-1 a{display:inline-flex;align-items:center;gap:20px;background:#391e4e;color:#fff;padding:17px 25px;font-weight:750}
.formations-about-feature .ed-btn-1 a:hover{color:#e9f76e}
.formations-index-hero{padding:210px 0 110px;background:#2b183e;color:#fff}
.formations-index-hero h1{color:#fff;font-size:clamp(50px,6vw,84px);line-height:1.05;font-weight:800;letter-spacing:-.04em;max-width:900px;margin:0 0 24px}
.formations-index-hero p:not(.formations-eyebrow){font-size:20px;line-height:1.6;max-width:780px;color:rgba(255,255,255,.82);margin:0}
.formations-index-groups{padding-top:90px;padding-bottom:120px}
.formations-index-group{margin-bottom:95px}
.formations-index-heading{display:flex;align-items:center;gap:18px;margin-bottom:30px}
.formations-index-heading>span{display:grid;place-items:center;width:45px;height:45px;background:#e9f76e;color:#251631;font-size:13px;font-weight:800}
.formations-index-heading h2{color:#2b173b;font-size:clamp(30px,3.5vw,48px);font-weight:800;line-height:1.1;margin:0}
.formations-index-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.formations-index-card{display:block;min-width:0;border:1px solid #e7e1e8;color:#2d1d38;text-decoration:none;transition:transform .25s ease,border-color .25s ease}
.formations-index-card:hover{transform:translateY(-4px);border-color:#725281;color:#2d1d38}
.formations-index-card-image{display:block;aspect-ratio:1.7;overflow:hidden;background:#f2eef3}
.formations-index-card-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.formations-index-card:hover img{transform:scale(1.05)}
.formations-index-card-body{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:22px 24px;min-height:90px}
.formations-index-card-body strong{font-size:19px;line-height:1.3;font-weight:800}
.formations-index-card-body>span{font-size:20px;color:#6e4f7e}
@media(max-width:1199px){.formations-hero-grid{gap:5%;min-height:590px}.formations-hero-visual{height:390px}.formations-index-cards{gap:20px}}
@media(max-width:991px){.formations-hero-grid{grid-template-columns:1fr;gap:35px;padding-top:155px;padding-bottom:65px}.formations-hero-visual{height:340px;max-width:700px}.formations-about-feature .ed-about-content{gap:35px}.formations-about-feature .ed-ab-img1 img{height:380px}.formations-index-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.formations-hero-grid{padding-top:135px}.formations-hero h1{font-size:clamp(44px,10vw,66px)}.formations-hero-visual{height:270px;box-shadow:14px 14px 0 rgba(233,247,110,.16)}.formations-rich-text{font-size:16px}.formations-about-feature{padding:60px 0}.formations-about-feature .ed-about-content{grid-template-columns:1fr!important}.formations-about-feature .ed-ab-img1 img{height:300px}.formations-index-hero{padding:155px 0 65px}.formations-index-groups{padding-top:60px}.formations-index-cards{grid-template-columns:1fr}.formations-index-card-image{aspect-ratio:1.9}}
@media(prefers-reduced-motion:reduce){.formations-index-card,.formations-index-card img{transition:none}}

/* Full-width editorial components adapted from the Edrio inner pages. */
.formations-content{display:block}
.formations-source-group{padding-bottom:28px}
.formations-source-group:nth-child(even){background:#faf8fb}
.formations-source-heading{padding-top:82px;padding-bottom:18px}
.formations-source-heading .ed-sec-title-5 .subtitle{display:inline-block;margin-bottom:17px;color:#765784;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.formations-source-heading .ed-sec-title-5 .sec_title{max-width:970px;margin:0;color:#2b173b;font-size:clamp(35px,4.4vw,62px);line-height:1.08;letter-spacing:-.035em}
.formations-story-section{padding:76px 0;background:#f5f1f7}
.formations-story-section:nth-child(even){background:#fff}
.formations-story-section .ed-about-content{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);align-items:center;gap:8%}
.formations-story-section.formations-split-reverse .ed-ab-img1{grid-column:1;grid-row:1}
.formations-story-section.formations-split-reverse .ed-ab-text1{grid-column:2;grid-row:1}
.formations-story-section .ed-ab-text1,.formations-story-section .ed-ab-img1{width:100%;max-width:none;margin:0;transform:none!important}
.formations-story-section .ed-ab-img1 img{display:block;width:100%;height:430px;object-fit:cover}
.formations-story-section .rate-slug{display:inline-block;background:#e9f76e;color:#2d173c;padding:8px 12px;margin-bottom:22px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.formations-story-section .sec_title,.formations-detail-section .sec_title,.formations-team-section .sec_title,.formations-gallery-section .sec_title,.formations-sponsor-section .sec_title{color:#2d173c;font-size:clamp(30px,3.3vw,48px);line-height:1.14;letter-spacing:-.025em;font-weight:800;margin:0 0 10px}
.formations-story-section .formations-rich-text{font-size:17px;line-height:1.72}
.formations-card-section{padding:30px 0 85px;background:transparent!important;margin:0!important;border-radius:0!important;overflow:visible!important}
.formations-card-section .ed-feature5-wrap{background:transparent!important}
.formations-card-section .row{row-gap:24px}
.formations-card-section .row>div{display:flex}
.formations-card-section .formations-editorial-card{width:100%;max-width:none;height:100%;margin:0;padding:28px 30px 32px;background:#fff;border:1px solid #e7dfeb;box-shadow:0 14px 35px rgba(47,22,61,.05)}
.formations-card-section.ed-feature5-sec .formations-editorial-card{border-top:3px solid #dce783}
.formations-card-section.ed-course5-sec .formations-editorial-card{border-top:4px solid #a2ba3e}
.formations-card-section .formations-editorial-card .item-icon{width:100%;padding:0 0 15px;margin:0 0 22px;color:#633b75;font-size:24px;border-bottom:1px solid #d7cddc}
.formations-card-section .formations-editorial-card .item-icon:before{display:none}
.formations-card-section .formations-editorial-card .item-text h3{padding:0;margin:0 0 14px;color:#2d173c;font-size:clamp(21px,1.8vw,26px);line-height:1.22;font-weight:800}
.formations-card-section .formations-editorial-card .item-text h3 a{color:inherit;text-decoration:underline;text-decoration-color:#b7c852;text-underline-offset:5px}
.formations-card-section .formations-editorial-card .formations-rich-text{font-size:15px;line-height:1.65}
.formations-card-section .formations-editorial-card .formations-rich-text p{max-width:none;margin:0 0 14px;font-size:inherit;line-height:inherit}
.formations-card-section .formations-editorial-card .formations-rich-text p:last-child{margin-bottom:0}
.formations-card-section .formations-title-card{min-height:170px;background:#f4f0f6}
.formations-card-section .formations-title-card .item-text h3{margin-bottom:0}
.formations-card-section .formations-editorial-card figure{margin:18px 0 0}
.formations-card-section .formations-editorial-card figure img{max-height:160px;max-width:100%;width:auto;margin:0;object-fit:contain}
.formations-about-highlights{padding-top:90px;padding-bottom:105px}
.formations-about-highlights-title{max-width:900px;margin-bottom:38px}
.formations-about-highlights-title .subtitle{display:inline-block;color:#765784;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin-bottom:17px}
.formations-about-highlights-title .sec_title{color:#2d173c;font-size:clamp(35px,4.3vw,58px);line-height:1.1;letter-spacing:-.035em;font-weight:800;margin:0}
.formations-about-highlights .formations-editorial-card{min-height:100%}
.formations-detail-section{padding:70px 0;background:#fff;border-top:1px solid #ebe4ed}
.formations-detail-section .formations-rich-text{max-width:1050px;columns:1}
.formations-detail-section .formations-rich-text>ul{columns:2;column-gap:55px}
.formations-salary-scroll{max-width:1050px;overflow-x:auto;border:1px solid #e5dce8;background:#fff}
.formations-salary-scroll:focus-visible{outline:3px solid #a2ba3e;outline-offset:4px}
.formations-salary-table{width:100%;min-width:680px;border-collapse:collapse;text-align:left;color:#33283b}
.formations-salary-table caption{caption-side:top;padding:18px 22px;color:#66566e;font-size:14px;font-weight:700;text-align:left}
.formations-salary-table th,.formations-salary-table td{padding:19px 21px;border-top:1px solid #e5dce8;font-size:16px;line-height:1.45;vertical-align:middle}
.formations-salary-table thead th{background:#302040;color:#fff;font-weight:800;border-top:0}
.formations-salary-table tbody th{font-weight:800;color:#302040;background:#f4f0f6}
.formations-salary-table tbody tr:nth-child(even) td{background:#faf8fb}
.formations-salary-table tbody td:last-child{font-weight:800;color:#302040}
.formations-salary-note{max-width:1050px;margin:18px 0 0;color:#62566a;font-size:15px;line-height:1.6}
.formations-salary-meta{margin:0 0 26px;color:#6b5a72;font-size:15px;line-height:1.5}
.formations-salary-info{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(250px,.6fr);gap:34px;max-width:1050px;margin-top:27px;padding:30px 34px;background:#f7f4f8}
.formations-salary-info h3{margin:0 0 10px;color:#2d173c;font-size:24px;font-weight:800;line-height:1.2}
.formations-salary-info p{margin:0;color:#493d51;font-size:16px;line-height:1.6}
.formations-salary-info-contact{padding-left:32px;border-left:1px solid #dfd6e4}
.formations-salary-info-contact p{margin-bottom:9px;font-size:14px}
.formations-salary-info-contact a{display:block;width:max-content;max-width:100%;color:#552377;font-size:16px;font-weight:800;line-height:1.6;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.formations-salary-section .ed-sec-title-5,.formations-salary-section .formations-salary-scroll,.formations-salary-section .formations-salary-note,.formations-salary-section .formations-salary-info{max-width:100%;margin-left:0;margin-right:0}
.formations-contract-section{padding:95px 0 90px;margin:0!important;border-radius:0!important;background:#f4f0f6!important}
.formations-contract-heading{max-width:940px;margin-bottom:42px}
.formations-contract-heading .subtitle{display:inline-block;width:auto;max-width:100%;margin-bottom:17px;color:#765784;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.formations-contract-heading .sec_title{margin:0;color:#2d173c;font-size:clamp(36px,4.2vw,60px);line-height:1.1;letter-spacing:-.035em;font-weight:800}
.formations-contract-intro{max-width:780px;margin:0 0 34px;color:#55465d;font-size:18px;line-height:1.6}
.formations-contract-section .row{row-gap:25px}
.formations-contract-section .row>div{display:flex}
.formations-contract-card{display:flex;flex-direction:column;width:100%;height:100%;margin:0!important;border-radius:0!important;overflow:hidden;box-shadow:0 18px 38px rgba(45,23,60,.09)}
.formations-contract-card:hover{box-shadow:0 18px 38px rgba(45,23,60,.09)}
.formations-contract-card-top{height:155px;overflow:hidden;background:#352047;color:#fff;position:relative}
.formations-contract-card-top:after{content:"";position:absolute;width:240px;height:240px;border:1px solid rgba(255,255,255,.23);border-radius:50%;top:-120px;right:-48px}
.formations-contract-card-alt .formations-contract-card-top{background:#ddeb69;color:#2d173c}
.formations-contract-card-alt .formations-contract-card-top:after{border-color:rgba(45,23,60,.2)}
.formations-contract-number{position:absolute;left:30px;bottom:-27px;font-size:130px;font-weight:800;line-height:1;letter-spacing:-.08em;opacity:.4}
.formations-contract-card .item-img-cate .inner-cate{left:auto;right:28px;top:26px;padding:7px 14px;background:#fff;color:#352047;border-radius:0;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.formations-contract-card .item-text{display:flex;flex-direction:column;flex:1;padding:38px 38px 40px}
.formations-contract-card .item-text h3{margin:0 0 26px;padding:0;border:0;color:#2d173c;font-size:clamp(30px,2.7vw,39px);line-height:1.13;font-weight:800}
.formations-contract-facts{margin:0 0 29px}
.formations-contract-facts>div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:18px;padding:16px 0;border-top:1px solid #e7e0e9}
.formations-contract-facts dt{color:#6d5c76;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.formations-contract-facts dd{margin:0;color:#342839;font-size:16px;line-height:1.45}
.formations-contract-facts dd strong{color:#3b2150;font-size:20px;font-weight:800}
.formations-contract-link{align-self:flex-start;margin-top:auto;padding:14px 0;border-bottom:2px solid #a5ba4b;color:#382044;font-size:15px;font-weight:800;text-decoration:none}
.formations-contract-link:hover{color:#75488d}
#source-contratapprentissage,#source-contratprofessionnalisation{scroll-margin-top:90px}
.formations-audience-section{padding:28px 0 42px;background:#fff}
.formations-audience-layout{display:grid;grid-template-columns:minmax(225px,.36fr) minmax(0,1fr);border:1px solid #e6dfe9;background:#faf8fb}
.formations-audience-heading{padding:36px;background:#342047;color:#fff}
.formations-audience-heading span{display:block;margin-bottom:16px;color:#dce783;font-size:12px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.formations-audience-heading h2{margin:0;color:#fff;font-size:clamp(28px,2.6vw,38px);line-height:1.13;font-weight:800}
.formations-audience-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 26px;align-content:center;list-style:none;margin:0;padding:17px 34px}
.formations-audience-list li{position:relative;min-width:0;padding:15px 0 15px 20px;border-bottom:1px solid #e6dfe9;color:#3f3445;font-size:16px;line-height:1.45}
.formations-audience-list li:before{content:"";position:absolute;top:23px;left:0;width:7px;height:7px;background:#a6bc48}
.formations-audience-list li:last-child:nth-child(odd){grid-column:1/-1}
.formations-audience-list strong{color:#302040;font-weight:800}
.formations-faq-section{padding:0 0 22px;background:#fff}
.formations-faq-section .ed-faq-content{max-width:1000px;margin:0 auto}
.formations-faq-section .accordion-item{border:1px solid #e5dce9;background:#f7f4f8;border-radius:0}
.formations-faq-section .accordion-button{width:100%;padding:22px 28px;color:#2d173c;background:#f7f4f8;box-shadow:none;font-weight:800;font-size:20px;line-height:1.3}
.formations-faq-section .accordion-button:not(.collapsed){color:#2d173c;background:#eef3ce;box-shadow:none}
.formations-faq-section .accordion-button:focus-visible{outline:3px solid #a2ba3e;outline-offset:2px}
.formations-faq-section .accordion-body{padding:24px 28px 25px}
.formations-team-section{padding:60px 0 78px}
.formations-team-section:nth-child(even){background:#f7f3f8}
.formations-team-section .row{row-gap:35px}
.formations-team-section .ed-team-item-1{max-width:none;height:100%}
.formations-team-section .ed-team-item-1 .item-img{height:265px;border:0;box-shadow:none;background:#eee8f0}
.formations-team-section .ed-team-item-1 .item-text h3{color:#2d173c;font-size:21px;line-height:1.2;margin:0 0 8px}
.formations-team-section .ed-team-item-1 .item-text span{display:block;color:#5e5465;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.formations-gallery-section{padding:65px 0}
.formations-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.formations-gallery-grid .ed-gallery-item{background:#f4f0f5;min-height:230px;display:grid;place-items:center;padding:18px}
.formations-gallery-grid img{max-height:230px;max-width:100%;width:auto;height:auto;object-fit:contain}
.formations-gallery-grid figcaption{font-size:13px;color:#6d6170;margin-top:8px}
.formations-sponsor-section{padding:90px 0}
.formations-sponsor-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.formations-sponsor-intro{grid-column:1/-1;color:#5c5062;font-size:18px}
.formations-sponsor-grid .ed-sp5-img{border:1px solid #e6deea;padding:18px;background:#fff;min-width:0;display:grid;place-items:center;text-align:center}
.formations-sponsor-grid .ed-sp5-img img{display:block;width:auto;max-width:100%;height:90px;object-fit:contain;margin:0 auto 10px}
.formations-sponsor-grid figcaption{font-size:13px;font-weight:700;color:#4d4054}
@media(max-width:991px){.formations-story-section .ed-about-content{grid-template-columns:1fr;gap:32px}.formations-story-section.formations-split-reverse .ed-ab-img1,.formations-story-section.formations-split-reverse .ed-ab-text1{grid-column:1;grid-row:auto}.formations-story-section .ed-ab-img1{order:-1}.formations-sponsor-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:767px){.formations-source-heading{padding-top:58px}.formations-story-section{padding:55px 0}.formations-story-section .ed-ab-img1 img{height:280px}.formations-card-section{padding-bottom:55px}.formations-detail-section{padding:50px 0}.formations-detail-section .formations-rich-text>ul{columns:1}.formations-team-section{padding:45px 0}.formations-gallery-grid{grid-template-columns:1fr 1fr}.formations-sponsor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.formations-contract-section{padding:65px 0}.formations-contract-card-top{height:125px}.formations-contract-number{font-size:105px;bottom:-20px}.formations-contract-card .item-text{padding:30px 25px 32px}.formations-contract-facts>div{grid-template-columns:1fr;gap:6px}}
@media(max-width:767px){.formations-audience-layout{grid-template-columns:1fr}.formations-audience-heading{padding:27px}.formations-audience-list{grid-template-columns:1fr;padding:15px 25px}.formations-audience-list li:last-child:nth-child(odd){grid-column:auto}}

/* Introductory text, benefit groups and two-step guidance. */
.formations-story-section.formations-benefits-section{background:#f5f1f7}
.formations-intro-section{padding:66px 0 64px;background:#fff}
.formations-intro-section-grid{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(0,1.25fr);gap:8%;align-items:start}
.formations-intro-section .subtitle{display:inline-block;width:auto;margin-bottom:18px;color:#765784;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.formations-intro-section .sec_title{margin:0;color:#2d173c;font-size:clamp(32px,3.6vw,52px);line-height:1.1;letter-spacing:-.03em;font-weight:800}
.formations-intro-section-text p{margin:0 0 16px;color:#493d51;font-size:18px;line-height:1.65}
.formations-intro-section-text strong{color:#2d173c;font-weight:800}
.formations-intro-section-text a{display:inline-block;margin-top:5px;padding-bottom:5px;border-bottom:2px solid #a9bd4e;color:#3a214a;font-size:15px;font-weight:800;text-decoration:none}
.formations-intro-section-text a:hover{color:#75488d}
.formations-benefits-section .ed-about-content{align-items:stretch}
.formations-benefits-section .ed-ab-text1{align-self:center}
.formations-benefits-section .ed-ab-img1 img{height:100%;min-height:590px}
.formations-benefit-panels{display:grid;gap:15px}
.formations-benefit-panel{background:#fff;padding:19px 22px 20px}
.formations-benefit-panel h3{margin:0 0 11px;color:#2d173c;font-size:19px;font-weight:800;line-height:1.2}
.formations-benefit-panel ul{list-style:none;margin:0;padding:0}
.formations-benefit-panel li{position:relative;margin:0;padding:7px 0 7px 19px;color:#4b4051;font-size:15px;line-height:1.45}
.formations-benefit-panel li:before{content:"";position:absolute;top:15px;left:0;width:7px;height:7px;background:#a9bd4e}
.formations-benefit-panel strong{color:#2d173c;font-weight:800}
.formations-steps-section{padding:78px 0 86px;background:#fff}
.formations-steps-heading{max-width:900px;margin-bottom:36px}
.formations-steps-heading .subtitle{display:inline-block;width:auto;max-width:100%;margin-bottom:17px;color:#765784;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.formations-steps-heading .sec_title{margin:0;color:#2d173c;font-size:clamp(32px,3.6vw,52px);line-height:1.13;letter-spacing:-.025em;font-weight:800}
.formations-steps-section .row{row-gap:24px}
.formations-steps-section .row>div{display:flex}
.formations-steps-section .formations-step-card{position:relative;display:block;width:100%;height:100%;max-width:none;margin:0;padding:35px 37px 38px;background:#f7f4f8;box-shadow:none}
.formations-steps-section .formations-step-card .item-text{padding:0}
.formations-step-number{display:block;margin-bottom:14px;color:#775689;font-size:15px;font-weight:800;letter-spacing:.14em}
.formations-step-card .item-text h3{margin:0 0 20px;color:#2d173c;font-size:clamp(24px,2vw,31px);line-height:1.2;font-weight:800}
.formations-step-card ol{list-style:none;counter-reset:step;margin:0;padding:0}
.formations-step-card li{counter-increment:step;position:relative;margin:0;padding:14px 0 14px 37px;border-top:1px solid #e1dae5;color:#4b4051;font-size:16px;line-height:1.5}
.formations-step-card li:before{content:counter(step,decimal-leading-zero);position:absolute;left:0;top:15px;color:#755185;font-size:12px;font-weight:800}
.formations-step-card strong{color:#2d173c;font-weight:800}
@media(max-width:991px){.formations-benefits-section .ed-ab-img1 img{height:330px;min-height:0}}
@media(max-width:991px){.formations-intro-section-grid{grid-template-columns:1fr;gap:22px}.formations-salary-info{grid-template-columns:1fr;gap:18px}.formations-salary-info-contact{padding:18px 0 0;border-left:0;border-top:1px solid #dfd6e4}}
@media(max-width:767px){.formations-steps-section{padding:57px 0 62px}.formations-steps-section .formations-step-card{padding:28px 25px 30px}.formations-benefit-panel{padding:18px 19px}.formations-benefit-panel li{font-size:14px}}
@media(max-width:767px){.formations-intro-section{padding:50px 0}.formations-intro-section-text p{font-size:16px}.formations-salary-info{padding:24px 22px}.formations-contract-intro{font-size:16px}}

/* Edrio CTA adapted as a closing section for the Alternance page. */
.formations-final-cta{background:#2b183e;color:#fff}
.formations-final-cta .formations-final-cta-content{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);align-items:center;gap:7%;padding:84px 0 90px}
.formations-final-cta-copy{min-width:0}
.formations-final-cta .ed-sec-title-3{margin:0 0 28px}
.formations-final-cta-kicker{display:block;margin-bottom:19px;color:#e9f76e;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.formations-final-cta .ed-sec-title-3 .sec_title{max-width:900px;margin:0 0 20px;color:#fff;font-size:clamp(36px,4.4vw,62px);line-height:1.1;letter-spacing:-.035em;font-weight:800}
.formations-final-cta .ed-sec-title-3 p{max-width:770px;margin:0;color:rgba(255,255,255,.84);font-size:18px;line-height:1.65}
.formations-final-cta-link{display:inline-flex;align-items:center;min-height:54px;padding:14px 26px;background:#e9f76e;color:#29183a;font-size:16px;font-weight:800;text-decoration:none}
.formations-final-cta-link:hover,.formations-final-cta-link:focus-visible{background:#fff;color:#29183a}
.formations-final-cta-visual{width:100%;height:430px;margin:0;box-shadow:18px 18px 0 rgba(233,247,110,.15)}
.formations-final-cta-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
@media(max-width:991px){.formations-final-cta .formations-final-cta-content{grid-template-columns:1fr;gap:40px}.formations-final-cta-visual{height:340px;max-width:700px}}
@media(max-width:767px){.formations-final-cta .formations-final-cta-content{padding:62px 0 68px}.formations-final-cta .ed-sec-title-3 p{font-size:16px}.formations-final-cta-visual{height:260px;box-shadow:12px 12px 0 rgba(233,247,110,.15)}}

/* Keep the shared footer contact legible on all formations detail pages. */
#ed-footer5 .iae-footer-contact,#ed-footer5 .iae-footer-contact p,#ed-footer5 .iae-footer-contact a{color:#fff}
#ed-footer5 .iae-footer-contact a{text-decoration:underline;text-underline-offset:5px}

/* Explicit section tones keep the same rhythm when components are used independently. */
.formations-tone-light{background:#fff!important}
.formations-tone-muted{background:#f4f0f6!important}

/* Reusable service contact panel for formation pages. */
.formations-contact-service{padding:78px 0 88px}
.formations-contact-service-heading{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:7%;align-items:end;margin-bottom:34px}
.formations-contact-service-heading .subtitle{display:inline-block;margin-bottom:16px;color:#765784;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.formations-contact-service-heading .sec_title{margin:0;color:#2d173c;font-size:clamp(32px,3.6vw,52px);line-height:1.1;letter-spacing:-.03em;font-weight:800}
.formations-contact-service-heading>p{margin:0;color:#493d51;font-size:18px;line-height:1.65}
.formations-contact-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.formations-contact-service-grid>div{padding:32px 36px;background:#fff;border:1px solid #e7dfeb}
.formations-contact-service-grid h3{margin:0 0 18px;color:#2d173c;font-size:clamp(23px,2vw,30px);line-height:1.25;font-weight:800}
.formations-contact-service-grid p{margin:0 0 22px;color:#493d51;font-size:16px;line-height:1.7}
.formations-contact-service-grid a{display:block;width:fit-content;max-width:100%;margin-top:10px;color:#552377;font-size:16px;font-weight:800;line-height:1.5;text-decoration:underline;text-decoration-color:#a9bd4e;text-decoration-thickness:2px;text-underline-offset:5px;overflow-wrap:anywhere}
.formations-contact-service-grid a:hover{color:#75488d}
@media(max-width:991px){.formations-contact-service-heading{grid-template-columns:1fr;gap:20px}}
@media(max-width:767px){.formations-contact-service{padding:58px 0 64px}.formations-contact-service-heading>p{font-size:16px}.formations-contact-service-grid{grid-template-columns:1fr}.formations-contact-service-grid>div{padding:26px 24px}}
