:root{--paper:#f7f5ef;--white:#fffefa;--ink:#193d38;--muted:#607169;--line:#d8ded4;--sage:#e5ece2;--rust:#a5482c;--gold:#d9b47b;--sans:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--serif:Georgia,"Times New Roman",serif;--radius:5px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.7 var(--sans)}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:4px}a:hover{color:var(--rust)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:default}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4,p,ul,ol,figure{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400;line-height:1.08;letter-spacing:-.035em}h1{font-size:clamp(43px,5.3vw,78px);margin-bottom:25px}h2{font-size:clamp(31px,3.2vw,46px);margin-bottom:25px}h3{font-size:22px;line-height:1.3;letter-spacing:-.02em}h4{font-size:18px}p{margin-bottom:22px}li{margin-bottom:10px}ul,ol{padding-left:24px}strong{font-weight:650}::selection{background:#e4be9d;color:var(--ink)}:focus-visible{outline:3px solid var(--rust);outline-offset:4px}.skip{position:fixed;top:-80px;left:10px;padding:12px;background:white;z-index:100}.skip:focus{top:5px}.topbar{position:sticky;top:0;background:rgba(247,245,239,.97);border-bottom:1px solid var(--line);z-index:20}.header-inner{max-width:1450px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:19px 36px;gap:25px}.brand{display:flex;gap:12px;align-items:center;text-decoration:none}.brand svg{width:38px;height:38px;flex:none}.brand strong{display:block;font-size:18px;line-height:1.2}.brand small{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin-top:6px}.mainnav{display:flex;gap:25px;align-items:center;font-size:14px;font-weight:550}.mainnav a{text-decoration:none;white-space:nowrap}.mainnav a[aria-current=page]{color:var(--rust)}.icon-button,.menu-button{border:1px solid var(--line);background:transparent;border-radius:var(--radius);padding:7px 13px;font-size:14px;color:var(--ink)}.menu-button{display:none}.wrap{max-width:1280px;margin:auto;padding:0 36px}.eyebrow{font:600 11px/1.6 var(--sans);letter-spacing:.17em;text-transform:uppercase;color:var(--rust);display:block;margin-bottom:18px}.eyebrow.light{color:#e6c7a6}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:13px 23px;background:var(--ink);color:white;border:1px solid var(--ink);border-radius:var(--radius);text-decoration:none;font-size:14px;font-weight:600;line-height:1.45}.btn:hover{background:#2b544b;color:white}.btn.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.btn.secondary:hover{background:var(--sage)}.button-row{display:flex;gap:12px;flex-wrap:wrap}.hero{background:var(--ink);color:var(--white);position:relative;overflow:hidden}.home-hero{min-height:655px;display:grid;grid-template-columns:1.05fr 1fr}.hero-copy{padding:70px max(36px,calc((100vw - 1280px)/2 + 36px));padding-right:45px;position:relative;z-index:1}.hero-copy h1{font-size:clamp(48px,5.1vw,77px);max-width:610px}.hero-copy p{max-width:490px;color:#d4dfd5;font-size:18px;line-height:1.7}.hero-copy .btn{background:var(--paper);color:var(--ink);border-color:var(--paper)}.hero-copy .btn.secondary{background:transparent;color:white;border-color:#7c9284}.hero-photo{margin:0;position:relative;min-height:420px}.hero-photo img{width:100%;height:100%;object-fit:cover}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(25,61,56,.12),transparent)}.hero-photo figcaption{position:absolute;bottom:15px;left:20px;right:20px;color:white;font-size:11px;z-index:2;background:#193d38d9;padding:8px 12px}.hero-meta{display:flex;gap:25px;margin-top:40px;padding-top:25px;border-top:1px solid #607569;font-size:13px;color:#d4dfd5}.hero-meta strong{font-size:27px;display:block;font-family:var(--serif);font-weight:400;color:white}.status{border-bottom:1px solid var(--line);background:var(--sage);padding:17px 36px;text-align:center;font-size:13px;line-height:1.6}.status strong{color:var(--rust)}.section{padding-top:80px;padding-bottom:80px}.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:35px}.section-top h2{max-width:630px;margin-bottom:0}.section-top p{max-width:365px;color:var(--muted);font-size:15px;margin-bottom:0}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.intro-grid .big-number{font:100px/1 var(--serif);color:var(--rust);margin:0}.intro-grid p{color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:45px}.step{border-top:2px solid var(--line);padding-top:18px}.step span{font-family:var(--serif);font-size:32px;color:var(--rust)}.step h3{font-size:19px;margin:5px 0}.step p{font-size:14px;line-height:1.7;color:var(--muted)}.soft{background:#ecefe7}.lesson-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.lesson-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;text-decoration:none;transition:transform .18s,border-color .18s}.lesson-card:hover{transform:translateY(-4px);border-color:var(--rust);color:var(--ink)}.card-image{height:170px;overflow:hidden;background:#e5ece2}.card-image img{width:100%;height:100%;object-fit:cover}.card-image.is-diagram img{object-fit:contain}.card-body{padding:23px 21px;display:flex;flex-direction:column;flex:1}.card-month{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--rust);margin-bottom:10px}.card-body h3{font-family:var(--serif);font-size:25px;font-weight:400;margin-bottom:12px}.card-body p{font-size:13px;color:var(--muted);line-height:1.65;margin-bottom:22px}.card-footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:13px;margin-top:auto;font-size:12px;color:var(--muted)}.card-read{color:var(--rust);font-weight:600}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.resource-tile{border-top:1px solid var(--line);padding:23px 0;text-decoration:none}.resource-tile h3{font-family:var(--serif);font-weight:400;font-size:28px;margin:10px 0}.resource-tile p{font-size:14px;color:var(--muted)}.exhibit{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.exhibit img{border-radius:var(--radius)}.progress-note{font-size:13px;color:var(--muted);margin:18px 0}.progress-track{height:4px;background:var(--line);border-radius:3px;max-width:420px}.progress-track span{display:block;height:4px;background:var(--rust);width:0}.page-head{padding-top:55px;padding-bottom:50px;max-width:1000px}.breadcrumb{display:flex;gap:9px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-bottom:35px}.page-head p,.course-hero p{color:var(--muted);max-width:760px;font-size:18px}.course-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:55px;align-items:center;padding-top:48px;padding-bottom:40px}.course-hero h1{font-size:clamp(43px,4.5vw,67px)}.course-hero .breadcrumb{grid-column:1/-1;margin-bottom:-20px}.course-hero figure{margin:0}.course-hero img{aspect-ratio:1.5;object-fit:cover;border-radius:var(--radius)}.course-hero .hero-diagram{background:var(--sage);object-fit:contain}.course-hero figcaption{font-size:10px;color:var(--muted);line-height:1.6;margin-top:10px}.tags{display:flex;flex-wrap:wrap;gap:8px}.tag{padding:5px 12px;border:1px solid var(--line);border-radius:30px;font-size:12px}.course-facts{display:grid;grid-template-columns:1fr 1fr;gap:45px;padding:30px 0 40px;border-bottom:1px solid var(--line)}.course-facts h2{font:600 13px/1.4 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--rust);margin-bottom:14px}.course-facts ul{font-size:14px;line-height:1.65;margin-bottom:0}.course-shell{display:grid;grid-template-columns:minmax(0,840px) 230px;gap:60px;align-items:start;padding-top:55px;padding-bottom:75px}.article section{margin-bottom:65px;scroll-margin-top:120px}.article h2{font-size:36px;padding-top:8px}.article h3{margin-top:28px;margin-bottom:15px}.article p,.article li{font-size:16px;line-height:1.85}.article section>p:first-of-type{font-size:17px}.toc{position:sticky;top:108px;border-left:1px solid var(--line);padding-left:22px}.toc h2{font:600 11px var(--sans);letter-spacing:.13em;text-transform:uppercase;margin-bottom:20px}.toc a{display:block;text-decoration:none;font-size:12px;line-height:1.55;margin-bottom:15px;color:var(--muted)}.toc a:hover{color:var(--rust)}.toc .print-btn{margin-top:25px}.diagram{margin:30px 0;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:10px}.diagram img{width:100%}.diagram figcaption,figure figcaption{color:var(--muted);font-size:12px;line-height:1.65;padding:12px 6px 3px}.photo{width:100%;border-radius:var(--radius)}.callout{padding:24px 28px;background:var(--sage);border-left:3px solid var(--ink);margin:28px 0}.callout h3{font-size:18px;margin:0 0 10px}.callout p{font-size:14px;margin-bottom:0}.callout.alert{background:#f2e5d7;border-color:var(--rust)}.table-scroll{overflow-x:auto;margin:25px 0 30px;border:1px solid var(--line)}table{width:100%;border-collapse:collapse;font-size:14px;text-align:left;line-height:1.65}th{background:var(--sage);font-size:12px;font-weight:650;vertical-align:top}td,th{padding:16px 17px;border-bottom:1px solid var(--line)}td{vertical-align:top;background:var(--white)}tr:last-child td{border-bottom:0}td:first-child{font-weight:550;min-width:120px}.source-note{font-size:12px!important;color:var(--muted);border-top:1px solid var(--line);padding-top:12px}.exercise{background:var(--white);border:1px solid var(--line);padding:30px;margin:30px 0}.exercise h3{margin-top:0}.exercise .result{padding-top:17px;margin-bottom:0;border-top:1px solid var(--line);font-size:14px}.schedule{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;font-size:14px;margin:20px 0}.schedule div{border-top:2px solid var(--rust);padding-top:12px}.schedule strong{display:block;font:30px var(--serif);margin-bottom:6px}.schedule span{color:var(--muted);display:block;font-size:12px}.checklist{list-style:none;padding:0!important}.checklist label{display:flex;align-items:flex-start;gap:12px;background:var(--white);border-bottom:1px solid var(--line);padding:14px;cursor:pointer;font-size:14px}.checklist input{width:18px;height:18px;margin-top:5px;accent-color:var(--ink);flex:none}details{border-top:1px solid var(--line);padding:16px 0}summary{cursor:pointer;font-size:15px;font-weight:550}details p{padding:17px 0 0;margin-bottom:0}.lesson-end{padding:28px;background:var(--sage);margin-top:30px}.lesson-end p{font-size:13px;margin:15px 0 0}.lesson-next{display:grid;grid-template-columns:1fr 1fr;gap:25px;padding:35px 0;border-top:1px solid var(--line)}.lesson-next a{font-size:18px;text-decoration:none}.lesson-next a:last-child{text-align:right}.lesson-next small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--rust)}footer{background:var(--ink);color:#d4dfd5;padding:50px 0 25px;font-size:12px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:55px}.footer-grid strong{font:28px var(--serif);color:white;display:block;margin-bottom:15px}.footer-grid h3{font-size:12px;color:white;letter-spacing:.08em;text-transform:uppercase;margin-bottom:16px}.footer-grid a{display:block;text-decoration:none;margin-bottom:9px}.footer-bottom{border-top:1px solid #587167;margin-top:30px;padding-top:22px;font-size:10px;color:#c1d0c6}.filter{padding:13px 18px;border:1px solid var(--line);background:var(--white);color:var(--ink);border-radius:var(--radius);width:100%;max-width:450px;margin-bottom:25px}.count{font-size:12px;color:var(--muted)}.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}.tool{padding:30px;background:var(--white);border:1px solid var(--line);scroll-margin-top:110px}.tool h2{font-size:31px}.tool p{font-size:14px;color:var(--muted)}.tool .controls{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field label{font-size:12px;display:block;margin-bottom:6px;font-weight:600}.field input,.field select{width:100%;padding:9px 10px;border:1px solid var(--line);border-radius:3px;background:var(--paper);color:var(--ink);min-width:0}.output{padding:18px;background:var(--sage);margin-top:22px;border-radius:3px;min-height:85px;font-size:14px}.output strong{display:block;font:28px var(--serif);color:var(--ink);line-height:1.2;margin-bottom:9px}.tool .formula{font-family:monospace;font-size:12px;overflow-wrap:anywhere}.tool .fineprint{font-size:11px;line-height:1.7;margin-top:16px;margin-bottom:0}.glossary{display:grid;grid-template-columns:1fr 1fr;gap:0 60px}.glossary section{border-top:1px solid var(--line);padding:22px 0}.glossary h2{font:600 19px/1.4 var(--sans);letter-spacing:0;margin-bottom:10px}.glossary p{font-size:14px;margin-bottom:0;color:var(--muted)}.source-list{max-width:930px}.source-list section{border-top:1px solid var(--line);padding:25px 0}.source-list h2{font:500 23px/1.4 var(--serif);letter-spacing:0;margin-bottom:10px}.source-list p{font-size:14px;color:var(--muted);margin-bottom:0}.search-modal{max-width:760px;width:calc(100% - 32px);max-height:85vh;border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:30px;border-radius:8px}.search-modal::backdrop{background:#15312dcc}.search-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.search-top h2{font-size:33px;margin-bottom:20px}.search-input{width:100%;border:1px solid var(--line);padding:15px;background:var(--white);color:var(--ink)}.search-results{list-style:none;padding:0;margin:22px 0 0;max-height:45vh;overflow:auto}.search-results li{border-top:1px solid var(--line);margin:0}.search-results a{display:block;padding:16px 5px;text-decoration:none}.search-results strong{font-size:16px;display:block}.search-results small{font-size:12px;color:var(--muted);display:block}.only-js{display:none}.js .only-js{display:inline-flex}[hidden]{display:none!important}.noscript{background:#f2e5d7;padding:10px 36px;font-size:13px}.print-btn{font-size:12px}.download-panel{display:flex;justify-content:space-between;gap:25px;align-items:center;background:var(--sage);padding:30px;margin:40px 0}.download-panel p{font-size:14px;margin-bottom:0}.download-panel h3{margin-bottom:8px}.wide-article{max-width:930px}.small{font-size:13px;color:var(--muted)}.not-found{padding:100px 0}.reset-local{background:none;border:0;padding:0;color:inherit;text-decoration:underline;font-size:11px}.gallery-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.gallery-row img{aspect-ratio:1.5;object-fit:cover}.gallery-row figcaption{font-size:11px}.screen-reader{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1500px){.hero-copy{padding-left:calc((100vw - 1280px)/2 + 36px)}}
@media(max-width:1100px){.mainnav{gap:16px;font-size:12px}.brand strong{font-size:16px}.header-inner{padding:16px 25px}.wrap{padding:0 25px}.lesson-grid{grid-template-columns:repeat(2,1fr)}.card-image{height:210px}.hero-copy{padding:60px 30px}.home-hero{min-height:580px}.hero-meta{gap:18px}.course-shell{grid-template-columns:minmax(0,1fr) 190px;gap:35px}.course-hero{gap:30px}.intro-grid{gap:50px}.tool{padding:25px}}
@media(max-width:760px){body{font-size:16px}.header-inner{flex-wrap:wrap;gap:12px;padding:15px 20px}.brand{flex:1}.brand small{font-size:9px}.menu-button{display:block}.mainnav{display:none;width:100%;flex-wrap:wrap;gap:13px 22px;padding-top:13px;border-top:1px solid var(--line)}.mainnav.is-open{display:flex}.mainnav a{font-size:14px}.wrap{padding:0 20px}.home-hero{grid-template-columns:1fr}.hero-copy{padding:45px 22px}.hero-copy h1{max-width:550px;font-size:54px}.hero-photo{min-height:300px;height:330px}.hero-meta{margin-top:30px;gap:30px}.hero-photo figcaption{font-size:9px}.status{padding:15px 20px;text-align:left}.section{padding-top:50px;padding-bottom:50px}.intro-grid{grid-template-columns:1fr;gap:25px}.intro-grid .big-number{font-size:72px}.steps{grid-template-columns:1fr 1fr;gap:15px;margin-top:30px}.section-top{display:block}.section-top p{margin-top:20px;max-width:100%}.lesson-grid{gap:15px}.card-body{padding:20px 15px}.card-body h3{font-size:23px}.card-image{height:155px}.resource-grid{grid-template-columns:1fr}.resource-tile{padding:18px 0}.exhibit{grid-template-columns:1fr;gap:25px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}.course-hero{grid-template-columns:1fr;padding-top:30px;gap:25px}.course-hero .breadcrumb{margin-bottom:0}.course-hero h1{font-size:46px}.course-hero figure{max-width:600px}.course-facts{grid-template-columns:1fr;gap:25px}.course-shell{display:flex;flex-direction:column;gap:30px;padding-top:30px}.toc{position:static;border-left:0;border-bottom:1px solid var(--line);padding:0 0 15px;order:-1;width:100%}.toc nav{display:flex;flex-wrap:wrap;gap:10px 16px}.toc a{font-size:11px;margin-bottom:0}.toc .print-btn{margin-top:16px}.article{width:100%;min-width:0}.article h2{font-size:31px}.article p,.article li{font-size:15px}.article section{margin-bottom:45px}.schedule{grid-template-columns:1fr 1fr}.table-scroll{font-size:12px}td,th{padding:13px 12px}.tool-grid{grid-template-columns:1fr}.glossary{grid-template-columns:1fr}.page-head{padding-top:35px;padding-bottom:30px}.download-panel{display:block;padding:25px}.download-panel .btn{margin-top:20px}.lesson-next a{font-size:16px}.gallery-row{grid-template-columns:1fr}.exercise{padding:22px}.callout{padding:20px}.search-modal{padding:20px}}
@media(max-width:420px){.hero-copy h1{font-size:46px}.lesson-grid{grid-template-columns:1fr}.card-image{height:200px}.tool .controls{grid-template-columns:1fr}.hero-meta{gap:20px}.brand svg{width:30px}.brand strong{font-size:15px}}
@media(max-width:760px){.mainnav{display:flex}.menu-button{display:none}.js .mainnav{display:none}.js .mainnav.is-open{display:flex}.js .menu-button{display:block}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.lesson-card{transition:none}.lesson-card:hover{transform:none}}
@media print{body{font:11pt/1.5 Arial,sans-serif;background:white;color:black}.topbar,footer,.toc,.lesson-next,.button-row,.lesson-end,.only-js,.skip,.noscript,.search-modal,.progress-note,.progress-track,.status{display:none!important}.wrap{max-width:none;padding:0}.course-hero,.course-facts,.course-shell,.intro-grid,.tool-grid{display:block;padding:0}.course-hero figure{max-width:12cm;margin:0 0 20px}.course-hero .breadcrumb{display:none}.course-hero h1{font-size:28pt}.article h2{font-size:19pt}h2,h3{break-after:avoid}.article section{margin-bottom:25px}.article p,.article li{font-size:10pt;line-height:1.55}figure,.callout,.exercise{break-inside:avoid}.diagram{max-width:16cm}.table-scroll{overflow:visible}table{font-size:9pt}.photo{max-height:10cm;object-fit:contain}.lesson-grid{grid-template-columns:repeat(2,1fr)}.section{padding:20px 0}.home-hero{display:block;background:white;color:black}.hero-copy{padding:0}.hero-copy h1,.hero-copy p{color:black}.hero-photo{height:8cm}.hero-meta{display:none}.hero-photo figcaption{color:black;background:white}.glossary{display:block}a{color:black;text-decoration:none}th,td{padding:8px}.output{background:#eee}.footer-bottom{display:none}.tool{break-inside:avoid;margin-bottom:20px}}

/* Disponibilité annuelle des supports */
.cycle-banner{margin:28px 0;padding:22px 26px;border-left:4px solid #247c72;background:#edf5f2;color:#193d38;border-radius:0 12px 12px 0}.cycle-banner strong{display:block;font-size:1.1rem}.cycle-banner p{margin:8px 0 0;max-width:85ch;font-size:.95rem}.cycle-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0}.cycle-overview>div{padding:22px;border:1px solid #dce7e2;border-radius:12px;background:#fff}.cycle-overview strong{font-size:1.1rem;color:#193d38}.cycle-overview p{font-size:.94rem;line-height:1.65;margin:10px 0 0}.lesson-card.is-locked .card-read{color:#84570e}.lesson-card.is-locked .card-image{filter:saturate(.7)}.card-footer{gap:10px}.card-read{font-size:.82rem;text-align:right}.access-label{font-size:.86rem}.locked-support{max-width:780px;margin:30px auto 70px;padding:42px;background:#f7f4eb;border:1px solid #e3dbc8;border-radius:16px}.locked-support h2{margin-top:8px}.locked-support .access-symbol{font-size:2.8rem;color:#247c72;display:block}.locked-support .button-row{margin-top:28px}.access-open{margin:24px 0}.annual-cycle>p{max-width:85ch}@media(max-width:900px){.cycle-overview{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:550px){.cycle-overview{grid-template-columns:1fr}.locked-support{padding:25px}.cycle-banner{padding:18px 20px}}@media print{.cycle-banner,.access-open{display:none}.cycle-overview{grid-template-columns:repeat(2,1fr)}}
