/* V24 — mise en page contrôlée, sans superposition des éléments */
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
body.tdb-v20{font-family:Manrope,Inter,'Segoe UI',Arial,sans-serif!important;--purple:#6927f5;--ink:#101935}
body.tdb-v20 :is(.intro,.subtitle,.course-top p,.card-photo p){font-family:inherit!important;font-weight:500!important;letter-spacing:-.018em!important}
body.tdb-v20 :is(.stat strong,.stat b){font-weight:800!important}
body.tdb-v20 :is(.stat small,.stat span){font-family:inherit!important}
body.page-courses .screen{background:#f8f8ff!important;background-image:url('assets/v24-hero.svg')!important;background-position:center top!important;background-size:100% 45%!important;background-repeat:no-repeat!important}
body.page-courses .topo,body.page-courses .lavender{opacity:0!important}
body.page-courses .courses-hero .scenery{background:none!important;opacity:0!important}
body.page-courses .courses-hero{height:183px!important;display:flex;flex-direction:column;justify-content:center}
body.page-courses .courses-hero h1{line-height:1.04!important;letter-spacing:-.055em!important;margin:9px 0 11px!important;font-weight:800!important}
body.page-courses .courses-hero .intro{font-size:clamp(12px,.9vw,15px)!important;line-height:1.45!important;max-width:900px!important}
body.page-courses .course-card{border-radius:23px!important;border:1px solid rgba(93,68,163,.10)!important;box-shadow:0 18px 48px rgba(43,32,108,.10)!important}
body.page-courses .course-top{height:35%!important;min-height:150px!important}
body.page-courses .course-top:after{background:linear-gradient(180deg,transparent 0%,rgba(0,8,24,.15) 100%)!important}
body.page-courses .course-card.green .course-top,body.page-results .course-card.green .card-photo{background-image:url('assets/v24-green.svg')!important;background-size:cover!important}
body.page-courses .course-card.blue .course-top,body.page-results .course-card.blue .card-photo{background-image:url('assets/v24-blue.svg')!important;background-size:cover!important}
body.page-courses .course-card.pink .course-top,body.page-results .course-card.pink .card-photo{background-image:url('assets/v24-pink.svg')!important;background-size:cover!important}
body.page-courses .course-top .toptext{inset:13px 17px!important;display:flex!important;flex-direction:column!important;justify-content:flex-start!important}
body.page-courses .course-top h2{margin:13px 0 4px!important;font-size:clamp(19px,1.6vw,28px)!important;line-height:1.13!important}
body.page-courses .course-top p{font-size:clamp(11px,.83vw,13px)!important;line-height:1.32!important;max-width:98%!important;margin:0!important}
body.page-courses .tagrow{width:100%;display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:nowrap!important;min-height:35px!important}
body.page-courses .tagrow>.smalltag:last-child{margin-left:auto!important;white-space:nowrap!important}
body.page-courses .challenge-sub{display:none!important}
body.page-courses .challenge{margin-left:0!important;white-space:nowrap!important}
body.page-courses .km{font-size:clamp(15px,1.2vw,19px)!important;white-space:nowrap!important}
body.page-courses .smalltag{font-size:clamp(8px,.62vw,10px)!important}
body.page-courses .course-bottom{padding:13px 14px 14px!important}
body.page-courses .stat{min-width:0!important;gap:7px!important}
body.page-courses .stat span{min-width:0!important}
body.page-courses .stat strong{font-size:clamp(11px,.85vw,14px)!important}
body.page-courses .stat small{font-size:clamp(9px,.68vw,11px)!important}
body.page-courses .footfacts{margin-top:12px!important;min-height:64px!important;background:rgba(255,255,255,.86)!important;border:1px solid #e7e2f7!important;border-radius:18px!important;box-shadow:0 9px 28px rgba(59,36,122,.07)!important;overflow:hidden}
body.page-courses .footfacts>div{font-size:clamp(10px,.75vw,12px)!important;gap:12px!important;padding:10px 14px!important}
body.page-courses .footfacts i{font-size:24px!important}
body.page-results .results-page{background:#f9f8ff!important;background-image:url('assets/v24-hero.svg')!important;background-repeat:no-repeat!important;background-size:100% 45%!important}
body.page-results .scenery{background:none!important;opacity:0!important}
body.page-results .results-page:before{opacity:0!important}
body.page-results .card-photo{justify-content:flex-end!important;padding:17px 20px!important}
body.page-results .card-photo h2{margin-top:10px!important;margin-bottom:3px!important;font-size:clamp(20px,1.75vw,28px)!important}
body.page-results .card-photo p{display:none!important}
body.page-results .subtitle{font-size:clamp(14px,1.12vw,19px)!important;line-height:1.5!important;max-width:780px!important}
body.page-results .course-card{border-radius:23px!important;box-shadow:0 14px 36px rgba(39,30,91,.10)!important}
@media(max-height:820px) and (min-width:901px){body.page-courses .courses-hero{height:145px!important}body.page-courses .course-top{min-height:123px!important}body.page-courses .course-top h2{margin-top:8px!important}body.page-courses .course-top p{font-size:11px!important}body.page-courses .footfacts{min-height:52px!important;margin-top:7px!important}}
@media(max-width:1100px) and (min-width:901px){body.page-courses .course-top p{font-size:10px!important}body.page-courses .smalltag{font-size:8px!important;padding:6px!important}body.page-courses .course-top h2{font-size:20px!important}}
@media(max-width:900px){body.page-courses .courses-hero{height:auto!important;padding:18px 0 25px!important}body.page-courses .course-top{min-height:180px!important;height:180px!important}body.page-courses .course-top p{font-size:12px!important}body.page-courses .footfacts{grid-template-columns:repeat(2,minmax(0,1fr))!important}body.page-courses .course-card{min-height:430px!important}}
@media(max-width:530px){body.page-courses .footfacts{grid-template-columns:1fr!important}body.page-courses .footfacts>div{border-right:0!important;border-bottom:1px solid #eee9fa!important}body.page-courses .tagrow{gap:5px!important}body.page-courses .smalltag{padding:6px!important;font-size:8px!important}}
