/* ETHOS - Styles specialites transport integres */
/* ETHOS Transport : pages spécialisées, prolongement du design du hub */
.ect-detail .ect-crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:32px;color:#deedf0;font-size:.92rem}.ect-detail .ect-crumbs a{color:inherit;text-decoration:underline;text-underline-offset:4px}.ect-detail .ect-detail-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.85fr);gap:clamp(22px,4vw,65px);align-items:start}.ect-detail .ect-check-list{padding:0;list-style:none;display:grid;gap:13px}.ect-detail .ect-check-list li{background:#fff;padding:18px 21px 18px 50px;border:1px solid #d9e6e8;border-radius:13px;position:relative;color:#24465d;line-height:1.65}.ect-detail .ect-check-list li:before{content:'✓';position:absolute;left:20px;color:#b27a20;font-weight:900}.ect-detail .ect-side-card{padding:30px;background:#fff;border:1px solid #d1e2e5;border-top:4px solid #d0a052;border-radius:18px;box-shadow:0 14px 38px #102d4408}.ect-detail .ect-side-card h3{font-size:1.65rem;margin:0 0 12px}.ect-detail .ect-side-card p{color:#466277;line-height:1.8}.ect-detail .ect-detail-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.ect-detail .ect-step,.ect-detail .ect-topic{border:1px solid #d3e4e6;background:white;border-radius:17px;padding:26px;box-shadow:0 9px 26px #12395608}.ect-detail .ect-step span,.ect-detail .ect-topic-no{color:#b78228;font-weight:900;letter-spacing:.13em}.ect-detail .ect-step p{line-height:1.7;color:#3c586a}.ect-detail .ect-topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.ect-detail .ect-topic h3{font-size:1.35rem;margin-bottom:0;line-height:1.3}.ect-detail .ect-official-source{margin-top:24px;color:#456071;line-height:1.7;font-size:.92rem}.ect-detail .ect-official-source a{color:#0a597e}.ect-detail .ect-related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.ect-detail .ect-related-card{color:#153e57;text-decoration:none!important;background:#f3f8f8;border:1px solid #d8e5e7;border-radius:15px;padding:25px;transition:transform .2s,border-color .2s}.ect-detail .ect-related-card:hover{transform:translateY(-3px);border-color:#bc8c3a}.ect-detail .ect-related-card span{color:#af7721;font-weight:800}.ect-detail .ect-related-card h3{font-size:1.3rem;margin:12px 0}.ect-detail .ect-related-card small{color:#0c5874;font-weight:750}.ect-detail .ect-back-hub{margin-top:30px}.ect-detail .ect-back-hub a{color:#0d5878;font-weight:750}.ect-detail a:focus-visible{outline:3px solid #d4a34c;outline-offset:4px}@media(max-width:760px){.ect-detail .ect-detail-grid,.ect-detail .ect-detail-steps,.ect-detail .ect-topic-grid,.ect-detail .ect-related-grid{grid-template-columns:1fr}.ect-detail .ect-side-card{padding:24px}.ect-detail .ect-crumbs{font-size:.8rem}}

/* ETHOS - Styles hygiene integres */
/* ETHOS — hygiène alimentaire 14h — page dédiée */
.ethh{color:#103755;overflow:clip}.ethh *{box-sizing:border-box}.ethh .ethh-container{width:min(1120px,calc(100% - 40px));margin-inline:auto}.ethh .ethh-hero{background:linear-gradient(118deg,#082e50,#104c6a 70%,#0a364c);color:white;padding:clamp(64px,8vw,110px) 0}.ethh .ethh-crumb{display:inline-block;color:#cfe5e9;margin-bottom:28px;text-decoration:underline;text-underline-offset:4px}.ethh .ethh-kicker{display:block;color:#b77a13;font-weight:800;letter-spacing:.13em;text-transform:uppercase;font-size:.78rem;margin-bottom:16px}.ethh .ethh-hero .ethh-kicker,.ethh .ethh-contact .ethh-kicker{color:#f7c46e}.ethh h1,.ethh h2{font-family:Georgia,serif;letter-spacing:-.025em;line-height:1.13}.ethh h1{font-size:clamp(2.5rem,5.5vw,4.7rem);max-width:870px;margin:0 0 25px}.ethh h2{font-size:clamp(1.85rem,3.3vw,2.8rem);margin:0 0 24px;max-width:920px}.ethh h3{font-size:1.25rem;margin:0 0 12px}.ethh p,.ethh li{line-height:1.75}.ethh .ethh-hero p{max-width:780px;color:#e7f0f5}.ethh .ethh-lead{font-size:clamp(1.14rem,1.8vw,1.42rem);font-weight:600}.ethh .ethh-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}.ethh .ethh-btn{background:#e3a536;color:#112f42!important;display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:14px 23px;border-radius:999px;text-decoration:none!important;font-weight:800}.ethh .ethh-btn-outline{color:white!important;background:transparent;border:1px solid #ffffffa0}.ethh a:focus-visible,.ethh summary:focus-visible{outline:3px solid #dbaa49;outline-offset:3px}.ethh .ethh-facts{display:flex;gap:12px;flex-wrap:wrap;margin-top:36px}.ethh .ethh-facts span{border:1px solid #ffffff50;background:#ffffff10;border-radius:12px;padding:11px 16px;font-weight:600}.ethh .ethh-section{padding:clamp(58px,7vw,92px) 0}.ethh .ethh-tint{background:#f1f7f8}.ethh .ethh-prose{max-width:1030px}.ethh .ethh-prose p{max-width:910px}.ethh .ethh-prose a{color:#205e77;font-weight:700;text-decoration:underline;text-underline-offset:4px}.ethh .ethh-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:32px 0}.ethh .ethh-card{background:white;border:1px solid #d6e6e7;box-shadow:0 12px 34px #0b35500b;border-radius:17px;padding:26px}.ethh .ethh-card p{margin-bottom:0}.ethh .ethh-session{display:flex;gap:24px;align-items:center;justify-content:space-between;background:#e8f3f4;border:1px solid #bfd9dc;border-radius:20px;padding:28px;margin:24px 0}.ethh .ethh-session h3{font-family:Georgia,serif;font-size:1.8rem}.ethh .ethh-session strong{font-size:2rem;color:#99631b}.ethh .ethh-session small{display:block;color:#53697b}.ethh .ethh-faq{max-width:1000px}.ethh .ethh-faq details{background:white;border:1px solid #d6e6e7;border-radius:14px;margin:11px 0;overflow:hidden}.ethh .ethh-faq summary{cursor:pointer;list-style:none;padding:20px 24px;font-weight:750;display:flex;align-items:center;justify-content:space-between;gap:18px}.ethh .ethh-faq summary::-webkit-details-marker{display:none}.ethh .ethh-faq summary:after{content:'+';color:#a46d18;font-size:1.5rem}.ethh .ethh-faq details[open] summary:after{content:'−'}.ethh .ethh-answer{padding:0 24px 22px;color:#53697b}.ethh .ethh-answer p{margin-top:0}.ethh .ethh-contact{background:#082e50;color:white;text-align:center}.ethh .ethh-contact h2,.ethh .ethh-contact p{margin-left:auto;margin-right:auto}.ethh .ethh-contact p{color:#e7f0f5;max-width:780px;margin-bottom:27px}@media(max-width:760px){.ethh .ethh-container{width:calc(100% - 32px)}.ethh .ethh-grid{grid-template-columns:1fr}.ethh .ethh-actions{display:grid}.ethh .ethh-btn{width:100%}.ethh .ethh-session{display:block}.ethh .ethh-session>div+div{margin-top:18px}.ethh .ethh-hero{padding:55px 0 70px}.ethh .ethh-card{padding:22px}.ethh .ethh-faq summary{padding:18px}.ethh .ethh-answer{padding:0 18px 20px}}@media(prefers-reduced-motion:no-preference){.ethh .ethh-btn{transition:transform .2s,box-shadow .2s}.ethh .ethh-btn:hover{transform:translateY(-2px);box-shadow:0 8px 26px #0b22352b}}


/* ETHOS HYGIENE BENEFITS V2 */
.ethh .ethh-benefits-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    margin-top:32px;
}
.ethh .ethh-benefit-card{
    position:relative;
    padding:28px;
    background:#fff;
    border:1px solid #d6e6e7;
    border-radius:18px;
    box-shadow:0 12px 34px rgba(11,53,80,.045);
}
.ethh .ethh-benefit-card:last-child:nth-child(odd){
    grid-column:1 / -1;
}
.ethh .ethh-benefit-number{
    display:inline-block;
    margin-bottom:17px;
    font-size:.8rem;
    font-weight:800;
    letter-spacing:.13em;
    color:#b77a13;
}
.ethh .ethh-benefit-card h3{
    font-family:Georgia,serif;
    color:#103755;
    font-size:1.33rem;
    line-height:1.3;
    margin:0 0 12px;
}
.ethh .ethh-benefit-card p{
    color:#53697b;
    margin:0;
    line-height:1.7;
}
.ethh #inscription .ethh-session h3{
    max-width:520px;
    line-height:1.25;
}
@media(max-width:760px){
    .ethh .ethh-benefits-grid{
        grid-template-columns:1fr;
        gap:14px;
    }
    .ethh .ethh-benefit-card:last-child:nth-child(odd){
        grid-column:auto;
    }
    .ethh .ethh-benefit-card{
        padding:23px;
    }
}

/* ETHOS - Styles linguistiques integres */
/* ETHOS Linguistique SEO V2 - isolated, responsive */
.lingseo{--navy:#103955;--teal:#16746e;--gold:#c49a50;color:#294657;overflow:hidden}.lingseo *{box-sizing:border-box}.lingseo-wrap{width:min(1120px,calc(100% - 40px));margin:auto}.lingseo h1,.lingseo h2,.lingseo h3{letter-spacing:-.025em}.lingseo h2{font-size:clamp(1.9rem,3vw,2.65rem);color:var(--navy);line-height:1.2;margin:8px 0 22px}.lingseo h3{color:var(--navy)}.lingseo p{line-height:1.75}.lingseo a:focus-visible,.lingseo summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.lingseo-hero{background:linear-gradient(120deg,#0c304d,#145e6e 66%,#1b827a);color:#fff;padding:clamp(60px,8vw,108px) 0}.lingseo-back{color:#dcebe9;text-decoration:none;font-weight:700}.lingseo-eyebrow,.lingseo-kicker{font-size:.77rem;letter-spacing:.13em;text-transform:uppercase;font-weight:800;color:var(--teal)}.lingseo-eyebrow{color:#e2c58d;margin-top:32px}.lingseo-hero h1{color:#fff;font-size:clamp(2.3rem,5vw,4rem);line-height:1.13;max-width:930px;margin:12px 0 20px}.lingseo-lead{font-size:clamp(1.13rem,2vw,1.38rem);max-width:790px;color:#e5f0f1}.lingseo-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.lingseo-btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 22px;border-radius:12px;background:#fff;color:#103955;text-decoration:none;font-weight:800}.lingseo-outline{background:transparent;border:1px solid #ffffff70;color:#fff}.lingseo-btn:hover{background:#f2e7d3;color:#103955}.lingseo-tags{display:flex;gap:9px;flex-wrap:wrap;margin-top:28px}.lingseo-tags span{border:1px solid #ffffff50;border-radius:50px;padding:8px 13px;font-size:.79rem;color:#f0f5f5}.lingseo-section{padding:clamp(62px,7vw,95px) 0}.lingseo-tint{background:#f2f7f6}.lingseo-columns{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(30px,6vw,80px);align-items:start}.lingseo-aside{padding:30px;border:1px solid #dce9e5;border-radius:20px;background:#f5f9f7}.lingseo-aside h3{margin-top:0}.lingseo-sub{max-width:800px}.lingseo-goals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.lingseo-goals article{display:flex;align-items:start;gap:14px;background:#fff;padding:20px;border:1px solid #dce9e6;border-radius:14px}.lingseo-goals article span{color:var(--teal);font-weight:900}.lingseo-goals p{margin:0}.lingseo-modules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;margin-top:30px}.lingseo-modules article{display:flex;gap:18px;padding:26px;border:1px solid #dce8e6;border-radius:18px;background:#fff}.lingseo-num{font-weight:800;color:var(--gold);font-size:1.15rem}.lingseo-modules h3{font-size:1.15rem;margin:0 0 9px}.lingseo-modules p{margin:0}.lingseo-situations{display:flex;flex-wrap:wrap;gap:10px}.lingseo-situations span{border-radius:12px;background:#fff;border:1px solid #dce8e6;padding:13px 16px;color:#126b65;font-weight:700}.lingseo-cert{display:grid;grid-template-columns:1.25fr .75fr;gap:60px;align-items:center}.lingseo-cert aside{border-radius:20px;background:#103955;color:#fff;padding:40px;display:flex;flex-direction:column;gap:14px}.lingseo-cert aside strong{font-size:1.4rem}.lingseo-cert aside span{font-size:2.5rem;color:#e0c18c;font-weight:850}.lingseo-cert aside small{color:#d6e6e8}.lingseo-cert a{color:#126c66;font-weight:750}.lingseo-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.lingseo-three article{padding:25px;border-radius:16px;border:1px solid #dce9e5}.lingseo-three h3{margin-top:0}.lingseo-note{margin-top:30px;background:#f3f7f5;padding:20px;border-radius:14px;font-size:.94rem}.lingseo-faq{border-top:1px solid #d4e4df}.lingseo-faq details{border-bottom:1px solid #d4e4df;padding:18px 2px}.lingseo-faq summary{cursor:pointer;font-weight:800;color:#103955}.lingseo-faq p{max-width:920px;margin-bottom:0}.lingseo-related{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.lingseo-related a{border:1px solid #dce9e5;border-radius:15px;padding:22px;text-decoration:none;color:#103955;display:flex;flex-direction:column;gap:14px}.lingseo-related a:hover{background:#eef7f4}.lingseo-related a span{color:#16746e;font-weight:750}.lingseo-final{text-align:center;padding:clamp(65px,8vw,100px) 0;background:linear-gradient(120deg,#103955,#166d70);color:#fff}.lingseo-final h2{color:#fff}.lingseo-final p{max-width:750px;margin:0 auto 30px}.lingseo-final .lingseo-kicker{color:#e2c58d}.ling-detail-cta{margin:13px 0 20px!important}.ling-detail-cta a{font-weight:800;color:#16746e;text-decoration:none}.ling-detail-cta a:hover{text-decoration:underline}.ethos-ling-active-v2{text-decoration:none;color:inherit}.ethos-ling-active-v2:hover{background:#edf7f4}.ethos-ling-active-v2:focus-visible{outline:3px solid #c49a50;outline-offset:3px}
@media(max-width:900px){.lingseo-columns,.lingseo-cert{grid-template-columns:1fr;gap:28px}.lingseo-three,.lingseo-related{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.lingseo-wrap{width:calc(100% - 30px)}.lingseo-goals,.lingseo-modules,.lingseo-three,.lingseo-related{grid-template-columns:1fr}.lingseo-actions{flex-direction:column}.lingseo-hero{padding:55px 0}.lingseo-section{padding:60px 0}.lingseo-modules article{padding:20px}}

/* ETHOS - Styles historiques ethp integres */
/* ETHOS Permis — pages autonomes v1.0 */
main.ethp.ethos-formation{--ink:#103755;--gold:#b77a13;--muted:#53697b;--soft:#f0f7f7;color:var(--ink);overflow:clip}
main.ethp.ethos-formation *{box-sizing:border-box}main.ethp.ethos-formation a{color:inherit}main.ethp.ethos-formation .wrap{width:min(1160px,calc(100% - 40px));margin:auto}
main.ethp.ethos-formation .hero{background:linear-gradient(125deg,#082e50 0%,#104c6a 72%,#0a364c 100%);color:#fff;padding:clamp(60px,8vw,108px) 0}
main.ethp.ethos-formation .crumb{display:inline-block;font-size:.88rem;color:#cfe5e9;text-underline-offset:4px;margin-bottom:25px}
main.ethp.ethos-formation .eyebrow{color:#f7c46e;letter-spacing:.15em;font-weight:750;text-transform:uppercase;font-size:.8rem}
main.ethp.ethos-formation h1,main.ethp.ethos-formation h2,main.ethp.ethos-formation h3{line-height:1.12;letter-spacing:-.026em}main.ethp.ethos-formation h1{font:700 clamp(2.4rem,5.8vw,4.7rem)/1.1 Georgia,serif;max-width:850px;margin:20px 0}main.ethp.ethos-formation h2{font:700 clamp(2rem,3.4vw,3rem)/1.18 Georgia,serif;margin:0 0 22px}main.ethp.ethos-formation h3{font-size:1.22rem;margin:0 0 12px}main.ethp.ethos-formation p{line-height:1.75}main.ethp.ethos-formation .intro{font-size:clamp(1.1rem,1.9vw,1.35rem);color:#e7f0f5;max-width:800px}
main.ethp.ethos-formation .hero-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:32px}main.ethp.ethos-formation .btn{background:#e3a536;color:#112f42;text-decoration:none;border-radius:999px;padding:15px 23px;display:inline-flex;gap:10px;align-items:center;font-weight:800;min-height:48px}main.ethp.ethos-formation .btn.secondary{background:transparent;border:1px solid #ffffff9e;color:white}main.ethp.ethos-formation .btn:focus-visible,main.ethp.ethos-formation a:focus-visible,main.ethp.ethos-formation summary:focus-visible{outline:3px solid #dcaa49;outline-offset:4px}
main.ethp.ethos-formation .stats{display:flex;flex-wrap:wrap;gap:12px;margin:37px 0 0}main.ethp.ethos-formation .stats span{border:1px solid #ffffff50;border-radius:12px;padding:11px 16px;background:#ffffff0e;font-weight:600}
main.ethp.ethos-formation .section{padding:clamp(58px,7vw,92px) 0}main.ethp.ethos-formation .section.tint{background:#f1f7f8}main.ethp.ethos-formation .lead{color:var(--muted);font-size:1.11rem;max-width:780px;margin:0 0 32px}main.ethp.ethos-formation .grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}main.ethp.ethos-formation .grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}main.ethp.ethos-formation .card{background:white;border:1px solid #d6e6e7;box-shadow:0 15px 35px #0c35500b;border-radius:20px;padding:28px}main.ethp.ethos-formation .card strong{color:#a46d18}main.ethp.ethos-formation .card p{margin:0;color:#4b6575}main.ethp.ethos-formation ul{line-height:1.8;padding-left:1.3em}main.ethp.ethos-formation .step{font-weight:800;color:#b47810;letter-spacing:.08em;display:block;margin-bottom:12px}main.ethp.ethos-formation .note{border-left:4px solid #dfa63f;background:#fff9ec;padding:20px 25px;border-radius:0 12px 12px 0;margin:30px 0}main.ethp.ethos-formation .faq details{background:#fff;border:1px solid #d6e6e7;border-radius:13px;margin:10px 0;overflow:hidden}main.ethp.ethos-formation .faq summary{cursor:pointer;padding:19px 25px;font-weight:750;list-style:none;display:flex;justify-content:space-between;gap:20px;align-items:center}main.ethp.ethos-formation .faq summary::-webkit-details-marker{display:none}main.ethp.ethos-formation .faq summary::after{content:'+';font-size:1.5rem;color:#a46d18}main.ethp.ethos-formation .faq details[open] summary::after{content:'−'}main.ethp.ethos-formation .faq details p{margin:0;padding:0 25px 22px;color:var(--muted)}main.ethp.ethos-formation .contact{background:#082e50;color:#fff;text-align:center}main.ethp.ethos-formation .contact p{color:#e1eef2;max-width:700px;margin:0 auto 27px}main.ethp.ethos-formation .contact .btn{justify-content:center}main.ethp.ethos-formation .related{font-weight:650;color:#236a76;text-decoration:underline;text-underline-offset:5px}main.ethp.ethos-formation .small{font-size:.9rem;color:#5c7380}main.ethp.ethos-formation .contact .small{color:#e1eef2}
@media(max-width:760px){main.ethp.ethos-formation .wrap{width:min(100% - 32px,1160px)}main.ethp.ethos-formation .grid,main.ethp.ethos-formation .grid.three{grid-template-columns:1fr}main.ethp.ethos-formation .hero{padding:52px 0 64px}main.ethp.ethos-formation .btn{width:100%;justify-content:center}main.ethp.ethos-formation .hero-row{align-items:stretch}main.ethp.ethos-formation .card{padding:23px}main.ethp.ethos-formation .faq summary{padding:17px}main.ethp.ethos-formation .faq details p{padding:0 17px 19px}main.ethp.ethos-formation .stats span{flex:1 1 130px;text-align:center}}
@media(prefers-reduced-motion:no-preference){main.ethp.ethos-formation .btn{transition:transform .2s,box-shadow .2s}main.ethp.ethos-formation .btn:hover{transform:translateY(-2px);box-shadow:0 8px 26px #0b22352b}}

/* ETHOS — harmonisation transversale des fiches formation (phase 1)
   Reference visuelle: permis-pages.css. Charger APRES le CSS de la filiere.
   Les styles historiques restent presents pour les mises en page propres a chaque offre.
   Page internationale exclue. */
main.ethos-formation {
  --ef-ink:#103755;
  --ef-muted:#53697b;
  --ef-gold:#e3a536;
  --ef-border:#d6e6e7;
  color:var(--ef-ink);
}
main.ethos-formation *,main.ethos-formation *::before,main.ethos-formation *::after {box-sizing:border-box}
/* Conteneurs, marges et titres coherents entre familles. */
main.ethos-formation :is(.wrap,.lingseo-wrap,.ect-container,.ethh-container) {width:min(1160px,calc(100% - 40px));margin-left:auto;margin-right:auto}
main.ethos-formation :is(h1,h2,h3) {letter-spacing:-.026em;line-height:1.14}
main.ethos-formation h1 {font-family:Georgia,serif;font-size:clamp(2.4rem,5.8vw,4.7rem);font-weight:700;line-height:1.1;max-width:850px}
main.ethos-formation h2 {font-family:Georgia,serif;font-size:clamp(2rem,3.4vw,3rem);font-weight:700;line-height:1.18}
main.ethos-formation :is(p,li) {line-height:1.75}
/* En-tetes de fiche : meme fond, echelle et rythme. */
main.ethos-formation :is(.hero,.lingseo-hero,.ect-hero,.ethh-hero) {background:linear-gradient(125deg,#082e50 0%,#104c6a 72%,#0a364c 100%);color:#fff;padding:clamp(60px,8vw,108px) 0}
main.ethos-formation :is(.hero,.lingseo-hero,.ect-hero,.ethh-hero) h1 {color:#fff;margin:20px 0}
main.ethos-formation :is(.crumb,.lingseo-back,.ect-crumbs,.ethh-crumb) {font-size:.88rem;color:#cfe5e9;text-underline-offset:4px}
main.ethos-formation :is(.eyebrow,.lingseo-eyebrow,.ect-hero .ect-kicker,.ethh-hero .ethh-kicker) {color:#f7c46e;font-size:.8rem;font-weight:750;letter-spacing:.15em;text-transform:uppercase}
main.ethos-formation :is(.intro,.lingseo-hero .lingseo-lead,.ect-hero .ect-lead,.ethh-hero .ethh-lead) {font-size:clamp(1.1rem,1.9vw,1.35rem);color:#e7f0f5;max-width:800px;line-height:1.75}
/* Appels a l'action. Les variations 'outline' restent contrastées. */
main.ethos-formation :is(.btn,.lingseo-btn,.ect-button,.ethh-btn) {background:#e3a536;color:#112f42!important;text-decoration:none;border-radius:999px;padding:15px 23px;display:inline-flex;gap:10px;align-items:center;justify-content:center;font-weight:800;min-height:48px;line-height:1.4;border:1px solid transparent}
main.ethos-formation :is(.btn.secondary,.lingseo-btn.lingseo-outline,.ect-button.ect-button-outline,.ethh-btn.ethh-btn-outline) {background:transparent;border:1px solid #ffffff9e;color:#fff!important}
main.ethos-formation :is(.btn,.lingseo-btn,.ect-button,.ethh-btn):focus-visible,main.ethos-formation a:focus-visible,main.ethos-formation summary:focus-visible {outline:3px solid #dcaa49;outline-offset:4px}
/* Donnees rapides sous les heros. */
main.ethos-formation :is(.stats,.lingseo-tags,.ect-hero-facts,.ethh-facts) {display:flex;flex-wrap:wrap;gap:12px;margin-top:37px}
main.ethos-formation :is(.stats,.lingseo-tags,.ect-hero-facts,.ethh-facts) span {border:1px solid #ffffff50;border-radius:12px;padding:11px 16px;background:#ffffff0e;color:#fff;font-weight:600;font-size:.9rem}
/* Sections et composants visuels partages. */
main.ethos-formation :is(.section,.lingseo-section,.ect-section,.ethh-section) {padding:clamp(58px,7vw,92px) 0}
main.ethos-formation :is(.section.tint,.lingseo-section.lingseo-tint,.ect-section.ect-tint,.ethh-section.ethh-tint) {background:#f1f7f8}
main.ethos-formation :is(.card,.lingseo-aside,.lingseo-goals article,.lingseo-modules article,.ect-side-card,.ect-related-card,.ethh-card,.ethh-benefit-card) {background:#fff;border:1px solid #d6e6e7;border-radius:20px;box-shadow:0 15px 35px #0c35500b;padding:28px}
/* Questions reponses ouvertes au clavier et sur mobile. */
main.ethos-formation :is(.faq,.lingseo-faq,.ect-faq,.ethh-faq) details {background:#fff;border:1px solid #d6e6e7;border-radius:13px;margin:10px 0;overflow:hidden}
main.ethos-formation :is(.faq,.lingseo-faq,.ect-faq,.ethh-faq) summary {cursor:pointer;padding:19px 25px;font-weight:750}
/* Zones finales. */
main.ethos-formation :is(.contact,.lingseo-final,.ect-bottom,.ethh-contact) {background:#082e50;color:#fff}
@media(max-width:760px){
  main.ethos-formation :is(.wrap,.lingseo-wrap,.ect-container,.ethh-container) {width:min(100% - 32px,1160px)}
  main.ethos-formation :is(.hero,.lingseo-hero,.ect-hero,.ethh-hero) {padding:52px 0 64px}
  main.ethos-formation :is(.hero-row,.lingseo-actions,.ect-hero-actions,.ethh-actions) {align-items:stretch}
  main.ethos-formation :is(.hero-row,.lingseo-actions,.ect-hero-actions,.ethh-actions) :is(.btn,.lingseo-btn,.ect-button,.ethh-btn) {width:100%}
  main.ethos-formation :is(.card,.lingseo-aside,.lingseo-goals article,.lingseo-modules article,.ect-side-card,.ect-related-card,.ethh-card,.ethh-benefit-card) {padding:23px}
}
@media(prefers-reduced-motion:no-preference){
  main.ethos-formation :is(.btn,.lingseo-btn,.ect-button,.ethh-btn) {transition:transform .2s,box-shadow .2s}
  main.ethos-formation :is(.btn,.lingseo-btn,.ect-button,.ethh-btn):hover {transform:translateY(-2px);box-shadow:0 8px 26px #0b22352b}
}

/* ============================================
   ETHOS - STYLES UNIFIES FILIERES
   Anciens composants .ethos-ling / .ling-*
   ============================================ */


/* ETHOS — Linguistique & Communication professionnelle V1 */
.ethos-ling{--ln-navy:#103955;--ln-teal:#16746e;--ln-gold:#c49a50;--ln-text:#294657;color:var(--ln-text);overflow:hidden}
.ethos-ling *{box-sizing:border-box}
.ethos-ling .ling-wrap{width:min(1140px,calc(100% - 44px));margin:auto}
.ethos-ling h1,.ethos-ling h2,.ethos-ling h3{letter-spacing:-.025em}
.ethos-ling h2{color:var(--ln-navy);font-size:clamp(1.85rem,3vw,2.75rem);line-height:1.17;margin:8px 0 24px}
.ethos-ling p{line-height:1.75}
.ethos-ling a:focus-visible,.ethos-ling summary:focus-visible{outline:3px solid var(--ln-gold);outline-offset:4px}
.ethos-ling .ling-hero{background:linear-gradient(118deg,#0c304d 0%,#15566a 62%,#1d827a 100%);color:#fff;padding:clamp(55px,7vw,110px) 0;position:relative}
.ethos-ling .ling-hero:after{content:"";position:absolute;right:-140px;top:-170px;width:490px;height:490px;border:1px solid #ffffff24;border-radius:50%;pointer-events:none}
.ethos-ling .ling-back{color:#e5f1ef;text-decoration:none;display:inline-block;margin-bottom:34px;font-weight:650}
.ethos-ling .ling-eyebrow,.ethos-ling .ling-kicker{font-size:.77rem;letter-spacing:.13em;text-transform:uppercase;font-weight:800;color:var(--ln-teal)}
.ethos-ling .ling-hero .ling-eyebrow{color:#dfc48b}
.ethos-ling .ling-hero h1{color:#fff;max-width:890px;font-size:clamp(2.3rem,5vw,4.3rem);line-height:1.1;margin:15px 0 24px}
.ethos-ling .ling-hero p{max-width:800px;color:#e2edf0;font-size:1.04rem}
.ethos-ling .ling-hero .ling-hero-lead{font-size:clamp(1.15rem,2vw,1.4rem);font-weight:650;color:#fff}
.ethos-ling .ling-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.ethos-ling .ling-button{display:inline-flex;align-items:center;gap:22px;justify-content:space-between;background:#fff;color:var(--ln-navy);padding:15px 23px;border-radius:11px;font-weight:800;text-decoration:none;transition:transform .2s,background .2s}
.ethos-ling .ling-button:hover{transform:translateY(-2px);background:#f6ebd7}
.ethos-ling .ling-button-ghost{background:transparent;border:1px solid #ffffff65;color:#fff}
.ethos-ling .ling-button-ghost:hover{background:#ffffff20}
.ethos-ling .ling-tags{display:flex;gap:9px;flex-wrap:wrap;margin-top:33px}
.ethos-ling .ling-tags span{font-size:.78rem;border:1px solid #ffffff40;background:#ffffff12;border-radius:100px;padding:8px 14px}
.ethos-ling .ling-section{padding:clamp(62px,7vw,100px) 0}
.ethos-ling .ling-soft{background:#f3f7f6}
.ethos-ling .ling-intro-grid{display:grid;grid-template-columns:1fr 1.12fr;gap:70px;align-items:start}
.ethos-ling .ling-prose p:first-child{margin-top:0}
.ethos-ling .ling-section-lead{font-size:1.07rem;max-width:780px;margin-bottom:30px}
.ethos-ling .ling-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:30px}
.ethos-ling .ling-card{background:#fff;border:1px solid #dde9e8;border-radius:20px;padding:clamp(25px,3vw,38px);box-shadow:0 12px 38px #123d4c0b}
.ethos-ling .ling-card-top{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:.75rem;font-weight:800;color:var(--ln-teal);letter-spacing:.08em}
.ethos-ling .ling-pill{color:#926f30;background:#f9f2e5;border-radius:50px;padding:7px 10px;letter-spacing:0;white-space:nowrap}
.ethos-ling .ling-card h3{color:var(--ln-navy);font-size:clamp(1.35rem,2vw,1.7rem);line-height:1.22;margin:23px 0 14px}
.ethos-ling .ling-card h4{color:var(--ln-navy);font-size:.91rem;margin:24px 0 8px}
.ethos-ling .ling-card p{margin:0}
.ethos-ling .ling-card ul{padding-left:20px;line-height:1.65}
.ethos-ling .ling-card li{margin:7px 0}
.ethos-ling .ling-card .ling-card-note{border-top:1px solid #e4edeb;margin-top:24px;padding-top:18px;color:#236d68;font-size:.88rem;font-weight:650}
.ethos-ling .ling-split{display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(35px,6vw,85px);align-items:start}
.ethos-ling .ling-cert-box{background:var(--ln-navy);color:#fff;padding:clamp(25px,4vw,42px);border-radius:20px}
.ethos-ling .ling-cert-label{font-size:.73rem;letter-spacing:.13em;color:#e1c38b;font-weight:800}
.ethos-ling .ling-cert-item{display:flex;gap:18px;border-bottom:1px solid #ffffff30;padding:25px 0}
.ethos-ling .ling-cert-item>span{color:#e1c38b;font-weight:800}
.ethos-ling .ling-cert-item strong,.ethos-ling .ling-cert-item small{display:block}
.ethos-ling .ling-cert-item small{margin-top:6px;color:#c6d9df}
.ethos-ling .ling-cert-box p{color:#d9e8ea;font-size:.91rem;margin-top:25px}
.ethos-ling .ling-cert-box a{color:#f1dba9;font-weight:800}
.ethos-ling .ling-text-link{color:var(--ln-teal);font-weight:800}
.ethos-ling .ling-benefits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:30px}
.ethos-ling .ling-benefits article{background:#fff;border:1px solid #e0eae8;border-radius:17px;padding:24px}
.ethos-ling .ling-benefits article>span{font-weight:800;color:var(--ln-gold)}
.ethos-ling .ling-benefits h3{font-size:1.15rem;color:var(--ln-navy);margin:22px 0 10px}
.ethos-ling .ling-benefits p{font-size:.92rem;margin:0}
.ethos-ling .ling-sector-box{display:flex;flex-wrap:wrap;gap:10px}
.ethos-ling .ling-sector-box span{padding:13px 17px;background:#eef5f3;border:1px solid #d9e7e3;border-radius:12px;font-weight:700;color:#246761}
.ethos-ling .ling-faq-list{margin-top:35px;border-top:1px solid #d5e3e1}
.ethos-ling .ling-faq-item{border-bottom:1px solid #d5e3e1;padding:0 4px}
.ethos-ling .ling-faq-item summary{cursor:pointer;display:flex;justify-content:space-between;gap:22px;align-items:center;padding:21px 0;font-weight:750;color:var(--ln-navy);list-style:none}
.ethos-ling .ling-faq-item summary::-webkit-details-marker{display:none}
.ethos-ling .ling-faq-item summary span{color:var(--ln-teal);font-size:1.5rem}
.ethos-ling .ling-faq-item[open] summary span{transform:rotate(45deg)}
.ethos-ling .ling-faq-item p{margin:0 0 23px;max-width:900px}
.ethos-ling .ling-final{background:linear-gradient(120deg,#103955,#156d70);padding:clamp(60px,7vw,100px) 0;text-align:center;color:#fff}
.ethos-ling .ling-final h2{color:#fff;font-size:clamp(2rem,4vw,3.2rem)}
.ethos-ling .ling-final .ling-kicker{color:#dfc48b}
.ethos-ling .ling-final p{max-width:720px;margin:0 auto 27px;color:#e3eff0}
.ethos-ling .ling-final .ling-disclaimer{font-size:.79rem;margin:24px auto 0;color:#c4dadd}
@media(max-width:900px){.ethos-ling .ling-intro-grid,.ethos-ling .ling-split{grid-template-columns:1fr;gap:28px}.ethos-ling .ling-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.ethos-ling .ling-wrap{width:min(100% - 30px,1140px)}.ethos-ling .ling-hero{padding:55px 0}.ethos-ling .ling-grid,.ethos-ling .ling-benefits{grid-template-columns:1fr}.ethos-ling .ling-card{padding:24px}.ethos-ling .ling-card-top{flex-wrap:wrap}.ethos-ling .ling-actions{flex-direction:column;align-items:stretch}.ethos-ling .ling-button{justify-content:center}.ethos-ling .ling-section{padding:60px 0}}

/* ETHOS - Liens des domaines de la page montee en competences */
.ethos-ling .ling-detail-cta {
    margin-top: 1.25rem;
}

.ethos-ling .ling-detail-cta a {
    color: #146c62;
    font-weight: 650;
    text-decoration: underline;
    text-underline-offset: 4px;
    text-decoration-thickness: 1.5px;
    line-height: 1.5;
}

.ethos-ling .ling-detail-cta a:hover,
.ethos-ling .ling-detail-cta a:focus-visible {
    text-decoration: underline;
    text-underline-offset: 4px;
}

/* ETHOS - BANDEAU FINAL FORMATIONS UNIFIE */
main.ethos-formation .lingseo-final-links {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 14px;
  margin: 0 auto 25px;
}
main.ethos-formation .lingseo-final .lingseo-final-note {
  max-width: 750px;
  margin: 0 auto;
  font-size: 13px;
  line-height: 1.6;
  opacity: .82;
}
@media (max-width: 640px) {
  main.ethos-formation .lingseo-final-links {
    flex-direction: column;
  }
  main.ethos-formation .lingseo-final-links .lingseo-btn {
    width: min(100%, 340px);
  }
}


/* ETHOS - Cartes de maillage interne des formations */
.ethos-related-v1 {
    padding: 72px 0;
    background: #f7faf8;
}
.ethos-related-v1__wrap {
    width: min(100% - 36px, 1140px);
    margin: 0 auto;
}
.ethos-related-v1__eyebrow {
    color: #16746e;
    font-size: .82rem;
    font-weight: 800;
    letter-spacing: .09em;
    text-transform: uppercase;
}
.ethos-related-v1 h2 {
    margin: 12px 0 28px;
}
.ethos-related-v1__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}
.ethos-related-v1__card {
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 30px;
    border: 1px solid #dce9e4;
    border-radius: 18px;
    background: #fff;
}
.ethos-related-v1__card h3 {
    margin: 0;
    color: #163d3b;
    font-size: 1.2rem;
}
.ethos-related-v1__card p {
    margin: 0;
    line-height: 1.7;
}
.ethos-related-v1__link {
    display: inline-block;
    align-self: flex-start;
    margin-top: auto;
    padding-top: 8px;
    color: #16746e;
    font-weight: 800;
    text-decoration: underline;
    text-underline-offset: 4px;
}
.ethos-related-v1__link:hover,
.ethos-related-v1__link:focus-visible {
    color: #105a55;
}
@media (max-width: 700px) {
    .ethos-related-v1 { padding: 54px 0; }
    .ethos-related-v1__grid { grid-template-columns: 1fr; }
    .ethos-related-v1__card { padding: 24px; }
}


/* ETHOS PREMIUM PILOTE 221 - DEBUT */

/* Page pilote : montee en competences uniquement */
#montee-competences .ling-hero {
  background: linear-gradient(
    115deg,
    #0a304e 0%,
    #0d3b59 55%,
    #124b64 100%
  );
}

#montee-competences .ling-hero::after {
  display: none;
}

#montee-competences .ling-hero h1 {
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(2.7rem, 5.1vw, 4.8rem);
  font-weight: 700;
  line-height: 1.03;
  letter-spacing: -0.035em;
  max-width: 960px;
  color: #ffffff;
}

#montee-competences .ling-hero .ling-eyebrow {
  color: #f1bd61;
  font-weight: 750;
  letter-spacing: 0.16em;
}

#montee-competences .ling-hero .ling-hero-lead {
  font-size: clamp(1.18rem, 1.7vw, 1.45rem);
  font-weight: 400;
  line-height: 1.65;
  max-width: 850px;
}

#montee-competences .ling-hero .ling-button {
  background: #e5aa34;
  color: #102e45;
  border: 1px solid #e5aa34;
  border-radius: 999px;
  padding: 15px 24px;
  font-weight: 750;
  justify-content: center;
  gap: 12px;
}

#montee-competences .ling-hero .ling-button:hover {
  background: #f1bc54;
  border-color: #f1bc54;
}

#montee-competences .ling-hero .ling-button-ghost {
  background: transparent;
  border: 1px solid rgba(255,255,255,0.48);
  color: #ffffff;
}

#montee-competences .ling-hero .ling-button-ghost:hover {
  background: rgba(255,255,255,0.10);
  border-color: #ffffff;
}

#montee-competences .ling-hero .ling-tags span {
  background: rgba(255,255,255,0.09);
  border: 1px solid rgba(255,255,255,0.25);
  border-radius: 11px;
  padding: 10px 15px;
  font-size: 0.84rem;
  font-weight: 600;
}

@media (max-width: 680px) {
  #montee-competences .ling-hero h1 {
    font-size: clamp(2.45rem, 9vw, 3.5rem);
    line-height: 1.08;
  }

  #montee-competences .ling-hero .ling-button {
    width: 100%;
  }
}

/* ETHOS PREMIUM PILOTE 221 - FIN */


/* ETHOS PREMIUM FICHES 224 - DEBUT */

/*
 * Design premium commun aux cinq fiches lingseo.
 * Ne concerne pas la page pilote #montee-competences.
 */

main.lingseo.ethos-formation .lingseo-hero {
  background: linear-gradient(
    115deg,
    #0a304e 0%,
    #0d3b59 55%,
    #124b64 100%
  );
  color: #ffffff;
}

main.lingseo.ethos-formation .lingseo-hero::after {
  display: none;
}

main.lingseo.ethos-formation .lingseo-hero h1 {
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(2.7rem, 5.1vw, 4.8rem);
  font-weight: 700;
  line-height: 1.07;
  letter-spacing: -0.035em;
  max-width: 960px;
  color: #ffffff;
}

main.lingseo.ethos-formation .lingseo-hero .lingseo-eyebrow {
  color: #f1bd61;
  font-weight: 750;
  letter-spacing: 0.16em;
}

main.lingseo.ethos-formation .lingseo-hero .lingseo-lead {
  color: #ffffff;
  font-size: clamp(1.18rem, 1.7vw, 1.45rem);
  line-height: 1.65;
  font-weight: 400;
  max-width: 850px;
}

main.lingseo.ethos-formation .lingseo-hero .lingseo-back {
  color: #e5f1ef;
}

main.lingseo.ethos-formation .lingseo-hero .lingseo-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 15px 24px;
  background: #e5aa34;
  color: #102e45;
  border: 1px solid #e5aa34;
  border-radius: 999px;
  font-weight: 750;
  text-decoration: none;
}

main.lingseo.ethos-formation .lingseo-hero .lingseo-btn:hover {
  background: #f1bc54;
  border-color: #f1bc54;
}

main.lingseo.ethos-formation .lingseo-hero .lingseo-btn.lingseo-outline {
  background: transparent;
  color: #ffffff;
  border: 1px solid rgba(255,255,255,0.48);
}

main.lingseo.ethos-formation .lingseo-hero .lingseo-btn.lingseo-outline:hover {
  background: rgba(255,255,255,0.10);
  border-color: #ffffff;
}

main.lingseo.ethos-formation .lingseo-hero .lingseo-tags span {
  display: inline-flex;
  align-items: center;
  background: rgba(255,255,255,0.09);
  border: 1px solid rgba(255,255,255,0.25);
  border-radius: 11px;
  padding: 10px 15px;
  color: #ffffff;
  font-size: 0.84rem;
  font-weight: 600;
}

@media (max-width: 680px) {
  main.lingseo.ethos-formation .lingseo-hero h1 {
    font-size: clamp(2.45rem, 9vw, 3.5rem);
    line-height: 1.08;
  }

  main.lingseo.ethos-formation .lingseo-hero .lingseo-btn {
    width: 100%;
  }
}

/* ETHOS PREMIUM FICHES 224 - FIN */

