/* Tarifs et espace éducatif : composants isolés des anciennes grilles.
   Aucun style d'accueil, de contact, de cours ou d'espace privé. */
body:not(.session-started) #sessionCard :is(#vitrinePlateforme,#vitrineTarifs) {
 --rf-ink:#432653;--rf-purple:#63377e;--rf-text:#6d5a77;--rf-line:#e7deeb;
 width:100%!important;max-width:none!important;margin:0!important;padding:0!important;scroll-margin-top:120px;
 background:#fff!important;border-radius:0!important;box-shadow:none!important;color:var(--rf-ink)!important;text-align:left!important;
}
body:not(.session-started) #sessionCard :is(#vitrinePlateforme,#vitrineTarifs) .rfc-page-wrap {
 box-sizing:border-box;width:min(1120px,calc(100% - 80px));margin:0 auto;padding:48px 0 64px;
}
body:not(.session-started) #sessionCard :is(#vitrinePlateforme,#vitrineTarifs) :is(.rfc-section-label,.rfc-offer-category,.rfc-project-category) {
 display:block!important;margin:0 0 12px!important;padding:0!important;min-height:0!important;
 background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;
 color:#79538e!important;font-size:11px!important;line-height:1.5!important;letter-spacing:.09em!important;
 font-weight:700!important;text-transform:uppercase!important;
}
body:not(.session-started) #sessionCard :is(#vitrinePlateforme,#vitrineTarifs) .rfc-intro-text {
 max-width:560px!important;margin:20px 0 0!important;font-size:16px!important;line-height:1.8!important;
 font-weight:400!important;color:var(--rf-text)!important;
}
body:not(.session-started) #sessionCard :is(#vitrinePlateforme,#vitrineTarifs) .rfc-page-actions {display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:26px;}
body:not(.session-started) #sessionCard :is(#vitrinePlateforme,#vitrineTarifs) .rfc-solid-link {
 box-sizing:border-box;display:inline-flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;
 width:fit-content!important;min-height:46px!important;margin:0!important;padding:12px 18px!important;
 border:1px solid var(--rf-purple)!important;border-radius:9px!important;background:var(--rf-purple)!important;
 color:#fff!important;box-shadow:none!important;font-size:14px!important;line-height:1.5!important;font-weight:650!important;
 text-decoration:none!important;transform:none!important;white-space:normal!important;
}
body:not(.session-started) #sessionCard :is(#vitrinePlateforme,#vitrineTarifs) .rfc-solid-link:hover {background:#4e2865!important;}
body:not(.session-started) #sessionCard :is(#vitrinePlateforme,#vitrineTarifs) .rfc-text-link {
 display:inline-block!important;width:fit-content!important;min-height:44px!important;align-content:center;
 padding:9px 0!important;background:none!important;border:0!important;box-shadow:none!important;
 color:var(--rf-purple)!important;font-size:14px!important;line-height:1.7!important;font-weight:600!important;
 text-decoration:underline!important;text-underline-offset:5px!important;
}
body:not(.session-started) #sessionCard :is(#vitrinePlateforme,#vitrineTarifs) a:focus-visible {outline:3px solid #b495c6!important;outline-offset:4px!important;}
body:not(.session-started) #sessionCard :is(#vitrinePlateforme,#vitrineTarifs) .rfc-section-heading {display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:24px;}
body:not(.session-started) #sessionCard :is(#vitrinePlateforme,#vitrineTarifs) .rfc-section-heading h2 {
 margin:0!important;color:var(--rf-ink)!important;font-size:clamp(26px,2.8vw,34px)!important;
 line-height:1.2!important;letter-spacing:-.035em!important;font-weight:650!important;
}
body:not(.session-started) #sessionCard :is(#vitrinePlateforme,#vitrineTarifs) .rfc-section-heading > p {max-width:380px;margin:0;color:var(--rf-text);font-size:14px;line-height:1.8;font-weight:400;}

/* Trois offres comparables : image, contenu, conditions, action. */
body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offers-intro {max-width:720px;margin:0 0 36px;padding:0;background:none;}
body:not(.session-started) #sessionCard #vitrineTarifs #pricingPageTitle {
 max-width:720px!important;margin:0!important;color:var(--rf-ink)!important;font-size:clamp(32px,4vw,48px)!important;
 font-weight:700!important;line-height:1.1!important;letter-spacing:-.04em!important;text-shadow:none!important;
}
body:not(.session-started) #sessionCard #vitrineTarifs #pricingPageTitle span {color:#946aa9!important;}
body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch;}
body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-card {display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid var(--rf-line);border-radius:16px;background:#fff;box-shadow:0 5px 18px #43265306;}
body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-photo {position:static;display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:50% 30%;border-radius:0;}
body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-copy {display:flex;flex:1;flex-direction:column;padding:24px;min-width:0;}
body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-copy h3 {margin:0 0 12px!important;color:var(--rf-ink)!important;font-size:24px!important;line-height:1.2!important;letter-spacing:-.025em!important;font-weight:650!important;}
body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-copy > p:not(.rfc-offer-category) {margin:0 0 18px!important;color:var(--rf-text)!important;font-size:14px!important;line-height:1.8!important;font-weight:400!important;}
body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-copy ul {display:grid;gap:8px;margin:0 0 24px;padding:0;list-style:none;}
body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-copy li {position:relative;margin:0;padding:0 0 0 15px;color:var(--rf-text);font-size:13px;line-height:1.6;font-weight:450;}
body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-copy li::before {content:"";position:absolute;left:0;top:.6em;width:5px;height:5px;border-radius:50%;background:#b79bc7;}
body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-terms {display:flex;flex-direction:column;gap:5px;min-height:74px;margin-top:auto;margin-bottom:18px;padding-top:18px;border-top:1px solid var(--rf-line);}
body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-terms strong {color:var(--rf-ink);font-size:15px;line-height:1.5;font-weight:650;}
body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-terms span {color:var(--rf-text);font-size:12px;line-height:1.7;font-weight:400;}
body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-copy .rfc-solid-link {width:100%!important;}
body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-practical {display:grid;grid-template-columns:1fr 1.25fr;gap:40px;margin:36px 0;padding:28px 30px;border-radius:14px;background:#f7f3f9;}
body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-practical h3 {max-width:310px;margin:0!important;font-size:24px!important;color:var(--rf-ink)!important;line-height:1.25!important;font-weight:650!important;}
body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-practical p:not(.rfc-section-label) {margin:0 0 12px;font-size:14px;line-height:1.8;font-weight:400;color:var(--rf-text);}

/* Espace éducatif : montrer les projets, puis expliquer l'accompagnement. */
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-education-hero {display:grid;grid-template-columns:1fr 1.05fr;align-items:center;gap:40px;margin-bottom:58px;padding:0;background:none;}
body:not(.session-started) #sessionCard #vitrinePlateforme #rfcEducationTitle {margin:0!important;color:var(--rf-ink)!important;font-size:clamp(34px,4.3vw,52px)!important;line-height:1.1!important;letter-spacing:-.045em!important;font-weight:700!important;text-shadow:none!important;}
body:not(.session-started) #sessionCard #vitrinePlateforme #rfcEducationTitle span {color:#946aa9!important;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-education-caption {margin:22px 0 0!important;color:var(--rf-text)!important;font-size:12px!important;font-weight:400!important;line-height:1.7!important;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-education-cover {margin:0;min-width:0;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-education-cover img {display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:18px;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-education-cover figcaption {padding:12px 4px 0;font-size:12px;line-height:1.7;color:var(--rf-text);}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-project-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-project-card {min-width:0;overflow:hidden;border:1px solid var(--rf-line);border-radius:16px;background:#fff;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-project-card > img {display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-project-card > div {padding:22px;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-project-card h3 {margin:0 0 10px!important;color:var(--rf-ink)!important;font-size:22px!important;line-height:1.25!important;font-weight:650!important;letter-spacing:-.025em!important;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-project-card p:not(.rfc-project-category) {margin:0;font-size:14px;line-height:1.8;font-weight:400;color:var(--rf-text);}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-education-guides {display:grid;grid-template-columns:1.2fr 1fr;align-items:stretch;gap:22px;margin:40px 0;padding:0;border:0;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-human-guide,
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-digital-guide {display:flex;align-items:start;gap:18px;min-width:0;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-human-guide {padding:26px;background:#fffcf7;border:1px solid #eee4d6;border-radius:18px;align-items:center;gap:22px;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-human-guide > img {width:112px;height:128px;flex:0 0 112px;border-radius:24px;object-fit:cover;object-position:center 22%;box-shadow:0 0 0 4px #fff0b5;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-human-guide h2 {margin:0!important;font-size:26px!important;line-height:1.2!important;color:var(--rf-ink)!important;font-weight:650!important;letter-spacing:-.025em!important;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-digital-guide {padding:26px;border:1px solid #e9e0ee;border-radius:18px;background:#f6f1fa;align-items:center;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-digital-guide > img {width:112px;height:128px;flex:0 0 112px;object-fit:cover;object-position:center;border-radius:24px;box-shadow:0 0 0 4px #fff0b5;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-milo-ask {display:inline-flex;align-items:center;min-height:44px;margin:16px 0 0;padding:10px 14px;border:1px solid #edc54e;border-radius:10px;background:#ffd34e;color:#432653;font-size:13px;line-height:1.5;font-weight:650;white-space:normal;text-align:left;cursor:pointer;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-milo-ask:hover {background:#ffe18a;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-milo-ask:focus-visible {outline:3px solid #79538e;outline-offset:4px;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-digital-guide h3 {margin:0!important;color:var(--rf-ink)!important;font-size:20px!important;line-height:1.3!important;font-weight:650!important;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-education-guides p:not(.rfc-section-label) {margin:12px 0 0;font-size:14px;line-height:1.8;color:var(--rf-text);font-weight:400;}
/* Un seul encart de bienvenue, trois étapes reliées : pas de grandes cartes vides. */
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-education-start {box-sizing:border-box;margin:0 0 32px;padding:30px;border:1px solid #e9e0ee;border-radius:20px;background:linear-gradient(120deg,#faf7fc,#f4eef8);}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-education-start .rfc-section-heading {align-items:center;margin-bottom:28px;gap:20px;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-education-start .rfc-section-label {margin-bottom:6px!important;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-education-start h2 {font-size:28px!important;line-height:1.2!important;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-education-start .rfc-text-link {flex-shrink:0;padding:10px 15px!important;border:1px solid #ecd78e!important;border-radius:10px!important;background:#fff4cd!important;text-decoration:none!important;font-size:13px!important;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-education-start .rfc-text-link:hover {border-color:#edc54e!important;background:#ffe8a0!important;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-start-steps {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:0;padding:0;list-style:none;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-start-steps li {position:relative;display:flex;flex-direction:column;align-items:start;gap:16px;min-width:0;margin:0;padding:0;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-start-steps li:not(:last-child)::after {content:"";position:absolute;top:20px;left:56px;right:0;height:1px;background:#dbcee4;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-start-steps li > span {box-sizing:border-box;display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border:1px solid #dfd0e8;border-radius:50%;background:#fff;color:#79538e;font-size:12px;font-weight:700;box-shadow:0 3px 8px #63377e08;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-start-steps li:first-child > span {border-color:#edc54e;background:#ffd34e;color:var(--rf-ink);}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-start-steps h3 {margin:0 0 6px!important;font-size:18px!important;line-height:1.4!important;font-weight:650!important;color:var(--rf-ink)!important;}
body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-start-steps p {max-width:270px;margin:0;font-size:14px;line-height:1.7;font-weight:400;color:var(--rf-text);}
body:not(.session-started) #sessionCard :is(#vitrinePlateforme,#vitrineTarifs) .rfc-page-closing {display:flex;align-items:center;justify-content:space-between;gap:32px;padding:28px 30px;background:#f7f3f9;border:1px solid #eee5f3;border-radius:14px;}
body:not(.session-started) #sessionCard :is(#vitrinePlateforme,#vitrineTarifs) .rfc-page-closing :is(h2,h3) {max-width:620px!important;margin:0!important;font-size:26px!important;line-height:1.3!important;color:var(--rf-ink)!important;font-weight:650!important;letter-spacing:-.025em!important;}
body:not(.session-started) #sessionCard :is(#vitrinePlateforme,#vitrineTarifs) .rfc-page-closing p:not(.rfc-section-label) {margin:12px 0 0;color:var(--rf-text);font-size:14px;line-height:1.8;font-weight:400;}
body:not(.session-started) #sessionCard :is(#vitrinePlateforme,#vitrineTarifs) .rfc-page-closing .rfc-page-actions {margin:0;flex-shrink:0;flex-direction:column;align-items:start;gap:6px;}
body:not(.session-started) #sessionCard :is(#vitrinePlateforme,#vitrineTarifs) section[id] {scroll-margin-top:124px;}
@media(max-width:1000px){
 body:not(.session-started) #sessionCard :is(#vitrinePlateforme,#vitrineTarifs) .rfc-page-wrap {width:calc(100% - 48px);padding-top:32px;}
 body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-grid {gap:16px;}
 body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-copy {padding:19px;}
 body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-copy h3 {font-size:21px!important;}
 body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-education-hero {gap:28px;}
 body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-project-grid {gap:16px;}
 body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-project-card > div {padding:18px;}
 body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-education-guides {grid-template-columns:minmax(0,1fr);gap:24px;}
 body:not(.session-started) #sessionCard :is(#vitrinePlateforme,#vitrineTarifs) .rfc-section-heading {align-items:start;flex-direction:column;gap:16px;}
 body:not(.session-started) #sessionCard :is(#vitrinePlateforme,#vitrineTarifs) .rfc-page-closing {align-items:start;flex-direction:column;gap:24px;}
}
@media(max-width:760px){
 body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-education-start {padding:24px 20px;border-radius:16px;}
 body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-education-start .rfc-section-heading {align-items:start;flex-direction:column;gap:16px;}
 body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-start-steps li {flex-direction:row;gap:16px;}
 body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-start-steps li:not(:last-child)::after {top:50px;bottom:-14px;left:20px;right:auto;width:1px;height:auto;}
 body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-start-steps p {max-width:none;}
 body:not(.session-started) #sessionCard :is(#vitrinePlateforme,#vitrineTarifs) .rfc-page-wrap {width:calc(100% - 32px);padding:28px 0 42px;}
 body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-grid,
 body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-project-grid,
 body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-start-steps {grid-template-columns:minmax(0,1fr);gap:22px;}
 body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-photo {aspect-ratio:16/9;}
 body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-copy {padding:24px;}
 body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-terms {min-height:0;}
 body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-practical {grid-template-columns:minmax(0,1fr);gap:20px;padding:24px;}
 body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-education-hero {grid-template-columns:minmax(0,1fr);gap:28px;margin-bottom:40px;}
 body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-education-cover img {aspect-ratio:3/2;}
 body:not(.session-started) #sessionCard :is(#vitrinePlateforme,#vitrineTarifs) .rfc-page-closing {padding:24px;}
}
@media(min-width:761px) and (max-width:1000px){
 body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-grid {grid-template-columns:minmax(0,1fr);}
 body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-card {display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);}
 body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-photo {height:100%;aspect-ratio:auto;}
 body:not(.session-started) #sessionCard #vitrineTarifs .rfc-offer-copy {padding:24px;}
}
@media(max-width:400px){
 body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-digital-guide {flex-direction:column;align-items:start;}
 body:not(.session-started) #sessionCard #vitrinePlateforme .rfc-human-guide {flex-direction:column;}
 body:not(.session-started) #sessionCard :is(#vitrinePlateforme,#vitrineTarifs) .rfc-page-actions {align-items:stretch;flex-direction:column;gap:10px;}
 body:not(.session-started) #sessionCard :is(#vitrinePlateforme,#vitrineTarifs) .rfc-solid-link {width:100%!important;}
}
