/*
 * Accueil — proposition graphique 01 (FormaSkills, design-handoff du 15/09/2026).
 * Généré depuis reference/styles.css de la maquette puis adapté au système de design du dépôt :
 * classes préfixées p01- (aucune collision avec app.css / public.css), couleurs par jetons --fs-p01-* (tokens.css),
 * propriétés logiques (RTL), rayons en rem, flou par jeton, points de rupture de l’échelle (1100 / 900 / 640 px).
 * Les très petites tailles en em concernent uniquement les illustrations décoratives (aria-hidden).
 */
.p01-play-icon{width:28px;height:28px;display:inline-grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.12)}
.p01-play-icon svg{width:16px;fill:none;stroke:currentColor;stroke-width:1.8}
.p01-hero{position:relative;min-height:832px;overflow:hidden;color:#fff;background:linear-gradient(128deg, var(--fs-p01-c-050a1d) 0%, var(--fs-p01-c-07142f) 48%, var(--fs-p01-c-101947) 100%)}
.p01-hero::before{content:"";position:absolute;inset:0;opacity:.24;background-image:linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom, transparent 3%, #000 30%, transparent 92%)}
.p01-hero::after{content:"";position:absolute;bottom:-1px;inset-inline-start:0;inset-inline-end:0;height:90px;background:linear-gradient(175deg, transparent 49%, #fff 50%)}
.p01-hero__glow{position:absolute;border-radius:50%;filter:blur(85px);pointer-events:none;opacity:.33}
.p01-hero__glow--cyan{width:430px;height:430px;top:160px;inset-inline-start:-250px;background:var(--fs-p01-c-02e8ff)}
.p01-hero__glow--violet{width:570px;height:570px;top:70px;inset-inline-end:-260px;background:var(--fs-p01-c-8e29ff)}
.p01-hero__grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:64px;padding-top:176px;padding-bottom:40px}
.p01-hero__content{position:relative;z-index:4}
.p01-eyebrow{width:fit-content;display:inline-flex;align-items:center;gap:9px;margin-bottom:20px;padding:7px 13px 7px 8px;border:1px solid rgba(128,202,255,.18);border-radius:62.4375rem;color:var(--fs-p01-c-b9d7ff);background:rgba(63,114,210,.09);font-size:.76rem;font-weight:750;letter-spacing:.04em;text-transform:uppercase}
.p01-eyebrow__icon{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(135deg, var(--fs-p01-cyan), var(--fs-p01-violet), var(--fs-p01-pink));box-shadow:0 0 18px rgba(62,124,255,.55);font-size:.83rem}
.p01-slide__title{margin:0 0 18px;max-width:660px;font-size:clamp(2.25rem, 3.4vw, 3.6rem);font-weight:800;line-height:1.04;letter-spacing:-.045em}
.p01-slide__title span,.p01-section-heading h2 span,.p01-platform h2 span,.p01-faq h2 span{color:transparent;background:var(--fs-p01-gradient);-webkit-background-clip:text;background-clip:text}
.p01-hero__lead{max-width:560px;margin:0 0 26px;color:var(--fs-p01-c-b9c7e4);font-size:.98rem;line-height:1.75}
.p01-hero__actions{display:flex;align-items:center;flex-wrap:wrap;gap:13px}
.p01-hero__proof{display:flex;flex-wrap:wrap;gap:21px;margin-top:30px;color:var(--fs-p01-c-cbd7ec);font-size:.82rem;font-weight:650}
.p01-hero__proof > li{display:flex;align-items:center;gap:8px}
.p01-proof-icon{width:21px;height:21px;display:grid;place-items:center;border-radius:0.4375rem}
.p01-proof-icon svg{width:13px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}
.p01-proof-icon--cyan{color:var(--fs-p01-c-6ff5ff);background:rgba(9,216,245,.12)}
.p01-proof-icon--violet{color:var(--fs-p01-c-bca1ff);background:rgba(124,60,255,.14)}
.p01-proof-icon--pink{color:var(--fs-p01-c-ff8bf4);background:rgba(238,32,220,.12)}
.p01-hero__visual{position:relative;min-width:0;perspective:1200px}
.p01-learning-window{position:relative;z-index:3;width:650px;max-width:100%;margin-inline-start:auto;overflow:hidden;border:1px solid rgba(152,182,255,.26);border-radius:1.4375rem;background:rgba(242,247,255,.97);box-shadow:0 55px 110px rgba(0,0,0,.43), 0 0 0 8px rgba(255,255,255,.025), inset 0 1px rgba(255,255,255,.8);transform:rotateY(-6deg) rotateX(2deg);transform-origin:center left}
.p01-window-topbar{height:42px;display:grid;grid-template-columns:1fr 2.5fr 1fr;align-items:center;padding:0 13px;background:rgba(255,255,255,.92);border-bottom:1px solid var(--fs-p01-c-dce4f2)}
.p01-window-dots{display:flex;gap:5px}
.p01-window-dots span{width:7px;height:7px;border-radius:50%;background:var(--fs-p01-c-c7d1e2)}
.p01-window-dots span:first-child{background:var(--fs-p01-c-ff6681)}
.p01-window-dots span:nth-child(2){background:var(--fs-p01-c-ffc95f)}
.p01-window-dots span:last-child{background:var(--fs-p01-c-4cdfa1)}
.p01-window-address{justify-self:center;width:190px;padding:4px 12px;border-radius:0.375rem;color:var(--fs-p01-c-8290aa);background:var(--fs-p01-c-f2f5fa);text-align:center;font-size:0.55em}
.p01-window-avatar{justify-self:end;width:23px;height:23px;display:grid;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(135deg, var(--fs-p01-c-17cde8), var(--fs-p01-c-6b48ff));font-size:0.48em;font-weight:800}
.p01-learning-layout{min-height:425px;display:grid;grid-template-columns:52px 1fr;color:var(--fs-p01-ink)}
.p01-demo-sidebar{display:flex;flex-direction:column;align-items:center;gap:16px;padding:15px 8px;background:var(--fs-p01-c-0a1635)}
.p01-demo-mark{width:29px;height:29px;display:grid;place-items:center;margin-bottom:8px;border-radius:0.5625rem;color:#fff;background:var(--fs-p01-gradient);font-size:.82rem;font-weight:900}
.p01-demo-side-item{width:30px;height:30px;display:grid;place-items:center;border-radius:0.5rem;color:var(--fs-p01-c-7890bd)}
.p01-demo-side-item.active{color:var(--fs-p01-c-5decff);background:rgba(52,208,255,.13)}
.p01-demo-side-item svg{width:15px;fill:none;stroke:currentColor;stroke-width:1.55}
.p01-demo-main{padding:17px 19px 18px;background:var(--fs-p01-c-f5f7fc)}
.p01-demo-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}
.p01-demo-heading > div{display:flex;flex-direction:column}
.p01-demo-heading small{color:var(--fs-p01-c-8d98ad);font-size:0.55em}
.p01-demo-heading strong{color:var(--fs-p01-c-15213e);font-size:.8rem}
.p01-demo-bell{position:relative;width:28px;height:28px;display:grid;place-items:center;border:1px solid var(--fs-p01-c-dbe2ef);border-radius:0.5rem;color:var(--fs-p01-c-78869f);background:#fff}
.p01-demo-bell svg{width:14px;fill:none;stroke:currentColor;stroke-width:1.6}
.p01-demo-bell>span{position:absolute;top:4px;inset-inline-end:5px;width:5px;height:5px;border:1px solid #fff;border-radius:50%;background:var(--fs-p01-c-ef2bd9)}
.p01-lesson-card{overflow:hidden;border:1px solid var(--fs-p01-c-e0e6f1);border-radius:0.875rem;background:#fff;box-shadow:0 12px 30px rgba(25,46,89,.07)}
.p01-lesson-card__top{display:flex;align-items:center;justify-content:space-between;padding:9px 12px 3px}
.p01-lesson-label{color:var(--fs-p01-c-5670a5);font-size:0.46em;font-weight:850;letter-spacing:.12em}
.p01-lesson-time{display:inline-flex;align-items:center;gap:4px;color:var(--fs-p01-c-8090ab);font-size:0.5em}
.p01-lesson-time svg{width:10px;fill:none;stroke:currentColor;stroke-width:1.7}
.p01-lesson-card__body{display:grid;grid-template-columns:38% 62%;gap:13px;padding:6px 12px 10px}
.p01-lesson-art{position:relative;min-height:133px;display:grid;place-items:center;overflow:hidden;border-radius:0.625rem;background:radial-gradient(circle at 30% 25%, rgba(16,232,255,.52), transparent 28%), radial-gradient(circle at 75% 70%, rgba(237,36,221,.48), transparent 28%), linear-gradient(145deg, var(--fs-p01-c-0a1541), var(--fs-p01-c-15288c) 56%, var(--fs-p01-c-511371))}
.p01-lesson-art::before{content:"";position:absolute;width:145px;height:145px;border:1px solid rgba(136,230,255,.25);border-radius:50%;box-shadow:0 0 0 15px rgba(111,76,255,.07), 0 0 0 34px rgba(23,195,255,.035)}
.p01-ai-orb{position:relative;z-index:2;width:66px;height:66px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.7);border-radius:1.375rem;color:#fff;background:linear-gradient(145deg, var(--fs-p01-c-1ae7f3), var(--fs-p01-c-336cff) 48%, var(--fs-p01-c-db28ef));box-shadow:0 12px 30px rgba(5,13,62,.45), inset 0 1px 8px rgba(255,255,255,.55);font-size:1.1rem;font-weight:900;transform:rotate(-6deg)}
.p01-spark{position:absolute;color:#fff;text-shadow:0 0 11px #fff}
.p01-spark--a{top:17px;inset-inline-end:26px;font-size:1rem}
.p01-spark--b{bottom:20px;inset-inline-start:24px;color:var(--fs-p01-c-85f7ff);font-size:0.6em}
.p01-lesson-copy{padding:5px 7px 0 0}
.p01-lesson-copy > span{color:var(--fs-p01-c-5d78e9);font-size:0.52em;font-weight:800}
.p01-lesson-copy__title{display:block;margin:3px 0 5px;color:var(--fs-p01-c-172442);font-size:1rem;line-height:1.2;letter-spacing:-.025em}
.p01-lesson-copy p{margin:0 0 15px;color:var(--fs-p01-c-8290a8);font-size:0.55em}
.p01-progress-line{height:5px;overflow:hidden;border-radius:0.625rem;background:var(--fs-p01-c-e9edf5)}
.p01-progress-line span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg, var(--fs-p01-c-11dff3), var(--fs-p01-c-6247ff), var(--fs-p01-c-dd2be4))}
.p01-progress-meta{display:flex;justify-content:space-between;margin-top:5px;color:var(--fs-p01-c-8491a7);font-size:0.48em}
.p01-progress-meta strong{color:var(--fs-p01-c-4d62d8)}
.p01-lesson-card__cta{height:34px;display:flex;align-items:center;justify-content:center;gap:6px;color:#fff;background:linear-gradient(90deg, var(--fs-p01-c-286eff), var(--fs-p01-c-713cff));font-size:0.57em;font-weight:800}
.p01-lesson-card__cta svg{width:11px;fill:none;stroke:currentColor;stroke-width:2}
.p01-demo-bottom{display:grid;grid-template-columns:.9fr 1.1fr;gap:11px;margin-top:11px}
.p01-live-card,.p01-score-card{min-height:94px;position:relative;padding:12px;overflow:hidden;border:1px solid var(--fs-p01-c-e1e6f0);border-radius:0.75rem;background:#fff}
.p01-live-card{display:flex;flex-direction:column}
.p01-live-badge{width:fit-content;display:flex;align-items:center;gap:4px;padding:2px 5px;border-radius:0.25rem;color:var(--fs-p01-c-e92790);background:var(--fs-p01-c-fff0f7);font-size:0.43em;font-weight:900}
.p01-live-badge i{width:4px;height:4px;border-radius:50%;background:var(--fs-p01-c-ef2e84);box-shadow:0 0 0 3px rgba(239,46,132,.13)}
.p01-live-card strong{margin-top:5px;color:var(--fs-p01-c-192541);font-size:0.67em}
.p01-live-card small{color:var(--fs-p01-c-8a97ac);font-size:0.48em}
.p01-avatars{position:absolute;inset-inline-end:10px;bottom:10px;display:flex}
.p01-avatars span{width:20px;height:20px;display:grid;place-items:center;margin-inline-start:-5px;border:2px solid #fff;border-radius:50%;color:#fff;background:var(--fs-p01-c-536be6);font-size:0.38em;font-weight:800}
.p01-avatars span:nth-child(2){background:var(--fs-p01-c-d24ccc)}
.p01-avatars span:nth-child(3){background:var(--fs-p01-c-253357)}
.p01-score-card{display:flex;align-items:center;gap:10px}
.p01-score-ring{width:54px;height:54px;flex:0 0 auto;display:grid;place-items:center;border-radius:50%;background:conic-gradient(var(--fs-p01-c-25d9e8) 0 86%, var(--fs-p01-c-e8edf4) 86%)}
.p01-score-ring::before{content:"";position:absolute;width:42px;height:42px;border-radius:50%;background:#fff}
.p01-score-ring span{position:relative;z-index:1;color:var(--fs-p01-c-2f5378);font-size:0.62em;font-weight:900}
.p01-score-card > div:last-child{display:flex;flex-direction:column}
.p01-score-card small{color:var(--fs-p01-c-8592a9);font-size:0.46em}
.p01-score-card strong{color:var(--fs-p01-c-182541);font-size:0.69em}
.p01-score-card > div:last-child span{color:var(--fs-p01-c-6252db);font-size:0.45em;font-weight:700}
.p01-orbit{position:absolute;z-index:1;border:1px solid rgba(97,221,255,.16);border-radius:50%}
.p01-orbit--one{width:530px;height:530px;top:-70px;inset-inline-end:-80px}
.p01-orbit--two{width:380px;height:380px;top:18px;inset-inline-end:-5px;border-color:rgba(224,59,238,.16)}
.p01-floating-card{position:absolute;z-index:6;display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid rgba(255,255,255,.6);border-radius:0.8125rem;color:var(--fs-p01-c-1a2744);background:rgba(255,255,255,.95);box-shadow:0 19px 45px rgba(0,0,0,.24);-webkit-backdrop-filter:var(--fs-blur-glass);backdrop-filter:var(--fs-blur-glass)}
.p01-floating-card--certificate{inset-inline-end:-25px;bottom:-24px}
.p01-floating-card--community{inset-inline-start:-34px;top:88px}
.p01-floating-card > div{display:flex;flex-direction:column}
.p01-floating-card strong{font-size:0.65em}
.p01-floating-card small{color:var(--fs-p01-c-8290a7);font-size:0.46em}
.p01-floating-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:0.5625rem;color:#fff;background:linear-gradient(135deg, var(--fs-p01-c-1dd8ec), var(--fs-p01-c-6d44ff))}
.p01-floating-icon svg{width:17px;fill:none;stroke:currentColor;stroke-width:1.65}
.p01-floating-card .p01-check{width:18px;height:18px;display:grid;place-items:center;margin-inline-start:4px;border-radius:50%;color:#fff;background:var(--fs-p01-c-39cf95);font-size:0.58em;font-weight:900}
.p01-mini-avatars{display:flex !important;flex-direction:row !important}
.p01-mini-avatars span{width:27px;height:27px;display:grid;place-items:center;margin-inline-start:-6px;border:2px solid #fff;border-radius:50%;color:#fff;background:var(--fs-p01-c-15bcd8);font-size:0.44em;font-weight:800}
.p01-mini-avatars span:first-child{margin-inline-start:0}
.p01-mini-avatars span:nth-child(2){background:var(--fs-p01-c-7951f0)}
.p01-mini-avatars span:nth-child(3){background:var(--fs-p01-c-ed45c7)}
.p01-experience-strip{position:relative;z-index:8;padding:26px 0 33px;background:#fff}
.p01-experience-strip__grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:20px}
.p01-experience-item{display:flex;align-items:center;gap:13px;padding-inline-end:15px;border-inline-end:1px solid var(--fs-p01-c-e4e9f2)}
.p01-experience-item:last-child{border-inline-end:0}
.p01-experience-item > span{width:42px;height:42px;flex:0 0 auto;display:grid;place-items:center;border-radius:0.75rem;color:var(--fs-p01-c-2b80f5);background:var(--fs-p01-c-eef5ff)}
.p01-experience-item:nth-child(2) > span{color:var(--fs-p01-c-7150ed);background:var(--fs-p01-c-f2efff)}
.p01-experience-item:nth-child(3) > span{color:var(--fs-p01-c-e839be);background:var(--fs-p01-c-fff0fb)}
.p01-experience-item:nth-child(4) > span{color:var(--fs-p01-c-07aeca);background:var(--fs-p01-c-eafafc)}
.p01-experience-item svg{width:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.p01-experience-item div{display:flex;flex-direction:column}
.p01-experience-item strong{color:var(--fs-p01-c-17213c);font-size:.88rem;line-height:1.25}
.p01-experience-item small{color:var(--fs-p01-c-5a6985);font-size:.75rem}
.p01-section{padding:84px 0}
.p01-section-kicker{display:inline-block;margin-bottom:11px;color:var(--fs-p01-c-5269cc);font-size:.78rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase}
.p01-section-kicker--light{color:var(--fs-p01-c-68eafa)}
.p01-section-heading{margin-bottom:34px}
.p01-section-heading--split{display:flex;justify-content:space-between;align-items:end;gap:28px}
.p01-section-heading h2,.p01-platform h2,.p01-faq h2{max-width:720px;margin:0;font-size:clamp(1.7rem, 2.6vw, 2.5rem);line-height:1.12;letter-spacing:-.035em}
.p01-section-heading--center{max-width:760px;margin:0 auto 48px;text-align:center}
.p01-section-heading--center h2{margin-inline:auto}
.p01-section-heading--center p{max-width:610px;margin:16px auto 0;color:var(--fs-p01-muted)}
.p01-text-link{display:inline-flex;align-items:center;gap:8px;color:var(--fs-p01-c-4d59cf);font-size:.9rem;font-weight:800;white-space:nowrap}
.p01-text-link:hover svg{transform:translateX(3px)}
.p01-text-link svg{transition:transform .2s ease}
.p01-catalogue{background:linear-gradient(180deg, #fff 0%, var(--fs-p01-c-f7f9fe) 100%)}
.p01-filter-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}
.p01-filter-button{min-height:44px;padding:0 18px;border:1px solid var(--fs-p01-c-dce4f0);border-radius:62.4375rem;color:var(--fs-p01-c-5a6985);background:#fff;cursor:pointer;font-size:.82rem;font-weight:750;transition:.2s ease}
.p01-filter-button:hover{color:var(--fs-p01-c-4d47c8);border-color:var(--fs-p01-c-aaa6ff)}
.p01-filter-button.active{color:#fff;border-color:transparent;background:linear-gradient(118deg, var(--fs-p01-c-1aa4f7), var(--fs-p01-c-6346ec) 72%, var(--fs-p01-c-bd2dcc));box-shadow:0 8px 20px rgba(75,73,218,.24)}
.p01-course-grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:21px}
.p01-course-card{overflow:hidden;border:1px solid var(--fs-p01-c-e0e6f0);border-radius:1.1875rem;background:#fff;box-shadow:0 10px 35px rgba(28,47,90,.065);transition:transform .24s ease, box-shadow .24s ease, opacity .2s ease}
.p01-course-card:hover{transform:translateY(-6px);box-shadow:0 22px 48px rgba(26,42,82,.13)}
.p01-course-card[hidden]{display:none}
.p01-course-cover{position:relative;min-height:177px;display:grid;place-items:center;overflow:hidden;color:#fff}
.p01-course-cover::before,.p01-course-cover::after{content:"";position:absolute;border-radius:50%}
.p01-course-cover::before{width:170px;height:170px;top:-83px;inset-inline-end:-48px;border:1px solid rgba(255,255,255,.25);box-shadow:0 0 0 22px rgba(255,255,255,.045)}
.p01-course-cover::after{width:120px;height:120px;bottom:-60px;inset-inline-start:-45px;background:rgba(255,255,255,.07)}
.p01-course-cover--ai{background:linear-gradient(145deg, var(--fs-p01-c-071a4c), var(--fs-p01-c-2253e3) 53%, var(--fs-p01-c-9b25d5))}
.p01-course-cover--business{background:linear-gradient(145deg, var(--fs-p01-c-082c51), var(--fs-p01-c-057bb6) 48%, var(--fs-p01-c-09d3cd))}
.p01-course-cover--design{background:linear-gradient(145deg, var(--fs-p01-c-421263), var(--fs-p01-c-9c29c2) 50%, var(--fs-p01-c-ef3fa7))}
.p01-course-cover--language{background:linear-gradient(145deg, var(--fs-p01-c-18315a), var(--fs-p01-c-5b47d8) 50%, var(--fs-p01-c-2b9fea))}
.p01-course-pill{position:absolute;top:12px;inset-inline-start:12px;z-index:2;padding:4px 8px;border:1px solid rgba(255,255,255,.27);border-radius:62.4375rem;background:rgba(3,12,38,.22);-webkit-backdrop-filter:var(--fs-blur-glass);backdrop-filter:var(--fs-blur-glass);font-size:.75rem;font-weight:850;letter-spacing:.03em}
.p01-course-level{position:absolute;inset-inline-end:12px;bottom:11px;z-index:2;font-size:.75rem;font-weight:700;opacity:.9}
.p01-course-symbol{position:relative;z-index:1;width:78px;height:78px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.35);border-radius:1.5625rem;background:rgba(255,255,255,.12);box-shadow:0 18px 32px rgba(4,9,38,.28), inset 0 1px rgba(255,255,255,.28);-webkit-backdrop-filter:var(--fs-blur-glass);backdrop-filter:var(--fs-blur-glass);transform:rotate(-4deg)}
.p01-course-card:nth-child(even) .p01-course-symbol{transform:rotate(4deg)}
.p01-course-symbol svg{width:46px;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.p01-course-body{padding:20px 18px 17px}
.p01-course-body h3{min-height:49px;margin:0 0 8px;color:var(--fs-p01-c-16203a);font-size:.95rem;line-height:1.4;letter-spacing:-.018em}
.p01-course-body > p{min-height:58px;margin:0 0 15px;color:var(--fs-p01-c-5a6985);font-size:.79rem;line-height:1.55}
.p01-course-meta{display:flex;flex-wrap:wrap;gap:11px;padding-bottom:15px;color:var(--fs-p01-c-5a6985);font-size:.75rem}
.p01-course-meta span{display:inline-flex;align-items:center;gap:4px}
.p01-course-meta svg{width:13px;fill:none;stroke:var(--fs-p01-c-6477cb);stroke-width:1.7}
.p01-course-footer{display:flex;align-items:center;gap:8px;padding-top:13px;border-top:1px solid var(--fs-p01-c-edf0f5)}
.p01-trainer-avatar{width:28px;height:28px;flex:0 0 auto;display:grid;place-items:center;border-radius:0.5625rem;color:#fff;background:var(--fs-p01-c-5269dd);font-size:.75rem;font-weight:850}
.p01-trainer-avatar--one{background:linear-gradient(135deg, var(--fs-p01-c-08bfdc), var(--fs-p01-c-4666df))}
.p01-trainer-avatar--two{background:linear-gradient(135deg, var(--fs-p01-c-7646df), var(--fs-p01-c-da3bbb))}
.p01-trainer-avatar--three{background:linear-gradient(135deg, var(--fs-p01-c-ef518f), var(--fs-p01-c-8b4de7))}
.p01-trainer-avatar--four{background:linear-gradient(135deg, var(--fs-p01-c-248bdc), var(--fs-p01-c-27c5bb))}
.p01-course-footer > span:not(.p01-trainer-avatar):not(.p01-course-go){color:var(--fs-p01-c-55647e);font-size:.75rem;font-weight:700}
.p01-course-go{width:29px;height:29px;display:grid;place-items:center;margin-inline-start:auto;border-radius:0.5625rem;color:#fff;background:var(--fs-p01-c-17284d);transition:background .2s ease, transform .2s ease}
.p01-course-card:hover .p01-course-go{background:var(--fs-p01-c-5a4bdd);transform:translateX(2px)}
.p01-course-footer svg{width:14px;fill:none;stroke:currentColor;stroke-width:2}
.p01-empty-state{padding:35px;border:1px dashed var(--fs-p01-c-cbd5e6);border-radius:1rem;color:var(--fs-p01-muted);text-align:center}
.p01-journey{position:relative;overflow:hidden;color:#fff;background:var(--fs-p01-c-07132d)}
.p01-journey::before{content:"";position:absolute;inset:0;opacity:.17;background-image:radial-gradient(circle at 1px 1px, var(--fs-p01-c-7097dd) 1px, transparent 0);background-size:30px 30px;mask-image:linear-gradient(90deg, transparent, #000 35%, #000 65%, transparent)}
.p01-journey__glow{position:absolute;width:530px;height:530px;inset-inline-start:-270px;bottom:-330px;border-radius:50%;background:var(--fs-p01-c-4434e5);filter:blur(90px);opacity:.3}
.p01-journey__grid{position:relative;display:grid;grid-template-columns:.82fr 1.18fr;gap:80px;align-items:center}
.p01-journey__content h2{margin:0 0 16px;font-size:clamp(1.8rem, 2.7vw, 2.6rem);line-height:1.12;letter-spacing:-.035em}
.p01-journey__content h2 span{color:var(--fs-p01-c-7cecff)}
.p01-journey__content p{max-width:540px;font-size:.95rem;margin:0 0 29px;color:var(--fs-p01-c-aebedc);line-height:1.75}
.p01-journey-steps{position:relative;display:grid;gap:16px;margin:0;padding:0;list-style:none}
.p01-journey-steps::before{content:"";position:absolute;top:45px;bottom:45px;inset-inline-start:39px;width:1px;background:linear-gradient(var(--fs-p01-cyan), var(--fs-p01-violet), var(--fs-p01-pink));opacity:.45}
.p01-journey-steps li{position:relative;display:grid;grid-template-columns:78px 1fr;gap:17px;align-items:center;min-height:112px;padding:18px 24px 18px 18px;border:1px solid rgba(137,169,228,.16);border-radius:1.1875rem;background:rgba(255,255,255,.045);-webkit-backdrop-filter:var(--fs-blur-glass);backdrop-filter:var(--fs-blur-glass);transition:transform .2s ease, background .2s ease}
.p01-journey-steps li:hover{transform:translateX(5px);background:rgba(255,255,255,.075)}
.p01-step-number{position:relative;z-index:2;width:48px;height:48px;display:grid;place-items:center;margin-inline:auto;border:1px solid rgba(115,233,255,.35);border-radius:1rem;color:var(--fs-p01-c-7ceefa);background:var(--fs-p01-c-0e2346);box-shadow:0 0 0 7px var(--fs-p01-c-07132d);font-size:0.72em;font-weight:900}
.p01-journey-steps li:nth-child(2) .p01-step-number{color:var(--fs-p01-c-b298ff);border-color:rgba(171,146,255,.34)}
.p01-journey-steps li:nth-child(3) .p01-step-number{color:var(--fs-p01-c-f28ae9);border-color:rgba(242,138,233,.34)}
.p01-journey-steps h3{margin:0 0 3px;font-size:.97rem}
.p01-journey-steps p{margin:0;color:var(--fs-p01-c-a9b9d5);font-size:.82rem}
.p01-platform{background:#fff}
.p01-feature-grid{display:grid;grid-template-columns:repeat(2, 1fr);gap:20px}
.p01-feature-card{position:relative;min-height:330px;overflow:hidden;padding:32px;border:1px solid var(--fs-p01-c-e0e7f2);border-radius:1.5625rem;background:linear-gradient(145deg, #fff, var(--fs-p01-c-f7f9fe));box-shadow:0 13px 42px rgba(24,46,88,.065)}
.p01-feature-card--wide{display:grid;grid-template-columns:.82fr 1.18fr;gap:34px;align-items:center}
.p01-feature-card h3{margin:16px 0 9px;font-size:1.1rem;line-height:1.25;letter-spacing:-.025em}
.p01-feature-card p{margin:0;color:var(--fs-p01-c-697892);font-size:.88rem;line-height:1.67}
.p01-feature-icon{width:47px;height:47px;display:grid;place-items:center;border-radius:0.875rem;color:var(--fs-p01-c-157feb);background:var(--fs-p01-c-eaf4ff);box-shadow:inset 0 0 0 1px rgba(56,134,220,.08)}
.p01-feature-icon svg{width:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.p01-feature-icon--violet{color:var(--fs-p01-c-7546df);background:var(--fs-p01-c-f0ebff)}
.p01-feature-icon--pink{color:var(--fs-p01-c-df31b4);background:var(--fs-p01-c-fff0fb)}
.p01-feature-icon--cyan{color:var(--fs-p01-c-059ebd);background:var(--fs-p01-c-e6fbff)}
.p01-content-stack{position:relative;min-height:235px;display:flex;flex-direction:column;justify-content:center;gap:9px}
.p01-content-stack::before{content:"";position:absolute;width:230px;height:230px;inset-inline-end:-45px;border-radius:50%;background:linear-gradient(135deg, rgba(19,215,240,.13), rgba(106,66,238,.13));filter:blur(3px)}
.p01-stack-card{position:relative;z-index:1;display:flex;align-items:center;gap:11px;min-height:59px;padding:9px 12px;border:1px solid var(--fs-p01-c-e0e7f1);border-radius:0.8125rem;background:rgba(255,255,255,.92);box-shadow:0 9px 24px rgba(32,55,96,.08)}
.p01-stack-card:nth-child(2){margin-inline-start:23px}
.p01-stack-card:nth-child(3){margin-inline-start:8px}
.p01-stack-card > span{width:35px;height:35px;display:grid;place-items:center;border-radius:0.625rem;color:var(--fs-p01-c-7250df);background:var(--fs-p01-c-f0edff)}
.p01-stack-card--video > span{color:var(--fs-p01-c-078fb0);background:var(--fs-p01-c-e5f9fd)}
.p01-stack-card:nth-child(3) > span{color:var(--fs-p01-c-df3db6);background:var(--fs-p01-c-fff0fb)}
.p01-stack-card svg{width:18px;fill:none;stroke:currentColor;stroke-width:1.7}
.p01-stack-card div{display:flex;flex-direction:column}
.p01-stack-card b{color:var(--fs-p01-c-25304a);font-size:0.72em}
.p01-stack-card i{color:var(--fs-p01-c-8895aa);font-size:0.57em;font-style:normal}
.p01-stack-card em{margin-inline-start:auto;color:var(--fs-p01-c-4b62cf);font-size:.75rem;font-style:normal;font-weight:800}
.p01-feature-live{position:absolute;inset-inline-start:32px;inset-inline-end:32px;bottom:28px;min-height:78px;display:flex;align-items:center;justify-content:space-between;padding:17px 18px;overflow:hidden;border-radius:1.0625rem;color:#fff;background:linear-gradient(120deg, var(--fs-p01-c-0d1e4a), var(--fs-p01-c-3d2985))}
.p01-feature-live::before{content:"";position:absolute;width:130px;height:130px;inset-inline-end:-30px;top:-75px;border:1px solid rgba(255,255,255,.17);border-radius:50%}
.p01-feature-live > span{position:relative;display:flex;align-items:center;gap:6px;font-size:0.68em;font-weight:900}
.p01-feature-live > span i{width:7px;height:7px;border-radius:50%;background:var(--fs-p01-c-ff4a99);box-shadow:0 0 0 5px rgba(255,74,153,.16)}
.p01-feature-live__people{position:relative;display:flex}
.p01-feature-live__people b{width:32px;height:32px;display:grid;place-items:center;margin-inline-start:-6px;border:2px solid var(--fs-p01-c-1c275e);border-radius:50%;background:var(--fs-p01-c-057bb6);font-size:0.54em}
.p01-feature-live__people b:nth-child(2){background:var(--fs-p01-c-bd2dcc)}
.p01-feature-live__people b:nth-child(3){background:var(--fs-p01-c-604de0)}
.p01-certificate-mini{position:absolute;inset-inline-start:32px;inset-inline-end:32px;bottom:26px;min-height:85px;display:grid;grid-template-columns:48px 1fr 49px;align-items:center;gap:12px;padding:13px 14px;border:1px solid var(--fs-p01-c-dfe6f1);border-radius:0.9375rem;background:#fff;box-shadow:0 10px 27px rgba(28,48,91,.08)}
.p01-certificate-mini__seal{width:43px;height:43px;display:grid;place-items:center;border:2px solid var(--fs-p01-c-7c4ade);border-radius:50%;color:#fff;background:linear-gradient(135deg, var(--fs-p01-c-16c9e5), var(--fs-p01-c-7146ed), var(--fs-p01-c-e536c7));box-shadow:0 0 0 4px var(--fs-p01-c-eeeaff);font-weight:900}
.p01-certificate-mini > div:nth-child(2){display:flex;flex-direction:column}
.p01-certificate-mini b{color:var(--fs-p01-c-4e43a6);font-size:0.68em;letter-spacing:.13em}
.p01-certificate-mini span{color:var(--fs-p01-c-667590);font-size:0.53em}
.p01-certificate-mini i{width:80%;height:3px;margin-top:6px;border-radius:0.25rem;background:var(--fs-p01-c-e8ecf4)}
.p01-certificate-mini i:last-child{width:55%;margin-top:4px}
.p01-qr-mini{display:grid;grid-template-columns:repeat(2, 1fr);gap:3px}
.p01-qr-mini span{width:18px;height:18px;border:4px solid var(--fs-p01-c-243150);background:#fff}
.p01-qr-mini span:last-child{border-width:7px 3px 3px 7px}
.p01-feature-card--trainer{background:linear-gradient(145deg, var(--fs-p01-c-f7fbff), var(--fs-p01-c-f5f1ff))}
.p01-message-demo{padding:15px;border:1px solid var(--fs-p01-c-dce5f1);border-radius:1.0625rem;background:rgba(255,255,255,.88);box-shadow:0 15px 34px rgba(29,49,90,.09)}
.p01-message-demo__top{display:flex;align-items:center;gap:8px;padding-bottom:10px;border-bottom:1px solid var(--fs-p01-c-ebeff5)}
.p01-message-demo__top > div{display:flex;flex-direction:column}
.p01-message-demo__top b{color:var(--fs-p01-c-25304b);font-size:0.68em}
.p01-message-demo__top i{color:var(--fs-p01-c-32ac88);font-size:0.51em;font-style:normal}
.p01-message-demo__top em{margin-inline-start:auto;color:var(--fs-p01-c-7e8ba1);font-size:0.65em;font-style:normal}
.p01-chat-bubble,.p01-chat-reply{max-width:88%;margin-top:10px;padding:8px 10px;border-radius:0.5625rem 0.5625rem 0.5625rem 0.125rem;color:var(--fs-p01-c-52607a);background:var(--fs-p01-c-f0f3f8);font-size:0.58em;line-height:1.45}
.p01-chat-reply{margin-inline-start:auto;border-radius:0.5625rem 0.5625rem 0.125rem 0.5625rem;color:#fff;background:linear-gradient(135deg, var(--fs-p01-c-5264db), var(--fs-p01-c-7145df))}
.p01-chat-input{display:flex;align-items:center;justify-content:space-between;margin-top:11px;padding:7px 8px 7px 10px;border:1px solid var(--fs-p01-c-e0e5ee);border-radius:0.5625rem;color:var(--fs-p01-c-a0a9b9);font-size:0.55em}
.p01-chat-input span{width:23px;height:23px;display:grid;place-items:center;border-radius:0.4375rem;color:#fff;background:var(--fs-p01-c-6050d9)}
.p01-trainer-cta{padding-top:25px;background:#fff}
.p01-trainer-panel{position:relative;min-height:380px;display:grid;grid-template-columns:1fr .82fr;align-items:center;gap:64px;padding:54px 60px;overflow:hidden;border-radius:2rem;color:#fff;background:linear-gradient(125deg, var(--fs-p01-c-0a1a42) 0%, var(--fs-p01-c-30309a) 55%, var(--fs-p01-c-8a27ba) 100%);box-shadow:0 28px 70px rgba(32,31,105,.25)}
.p01-trainer-panel::before{content:"";position:absolute;inset:0;opacity:.12;background-image:linear-gradient(rgba(255,255,255,.1) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.1) 1px, transparent 1px);background-size:38px 38px;mask-image:linear-gradient(90deg, #000, transparent 75%)}
.p01-trainer-panel__orb{position:absolute;border-radius:50%;filter:blur(45px)}
.p01-trainer-panel__orb--a{width:240px;height:240px;inset-inline-end:20%;top:-120px;background:var(--fs-p01-c-06d8f1);opacity:.3}
.p01-trainer-panel__orb--b{width:230px;height:230px;inset-inline-end:-100px;bottom:-110px;background:var(--fs-p01-c-ef30dc);opacity:.35}
.p01-trainer-panel__content{position:relative;z-index:2}
.p01-trainer-panel h2{margin:0 0 14px;font-size:clamp(1.8rem, 2.7vw, 2.6rem);line-height:1.12;letter-spacing:-.035em}
.p01-trainer-panel p{max-width:630px;font-size:.95rem;margin:0 0 28px;color:var(--fs-p01-c-cad6ef);line-height:1.75}
.p01-trainer-panel__actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px}
.p01-trainer-link{color:#fff;font-size:.88rem;font-weight:800;text-decoration:underline;text-decoration-color:rgba(255,255,255,.38);text-underline-offset:5px}
.p01-trainer-panel__dashboard{position:relative;z-index:2;min-width:0;padding:17px;border:1px solid rgba(255,255,255,.28);border-radius:1.25rem;color:var(--fs-p01-c-1b2742);background:rgba(255,255,255,.94);box-shadow:0 28px 70px rgba(8,5,54,.35);transform:rotate(3deg)}
.p01-dashboard-mini__header{display:flex;align-items:center;justify-content:space-between;padding-bottom:13px;border-bottom:1px solid var(--fs-p01-c-e5eaf2)}
.p01-dashboard-mini__header > div{display:flex;align-items:center;gap:8px}
.p01-dashboard-mini__header span{width:10px;height:10px;border-radius:0.25rem;background:var(--fs-p01-gradient)}
.p01-dashboard-mini__header b{font-size:0.72em}
.p01-dashboard-mini__header em{color:var(--fs-p01-c-8a95a8);font-size:0.65em;font-style:normal}
.p01-dashboard-mini__stats{display:grid;grid-template-columns:repeat(2, 1fr);gap:9px;margin-top:13px}
.p01-dashboard-mini__stats > div{min-height:91px;display:flex;flex-direction:column;padding:11px;border-radius:0.6875rem;background:var(--fs-p01-c-f3f6fb)}
.p01-dashboard-mini__stats small{color:var(--fs-p01-c-8591a5);font-size:0.5em}
.p01-dashboard-mini__stats strong{color:var(--fs-p01-c-24304a);font-size:1.26rem}
.p01-mini-bars{display:flex;align-items:end;gap:3px;height:20px;margin-top:auto}
.p01-mini-bars i{width:10px;border-radius:0.1875rem 0.1875rem 0 0;background:var(--fs-p01-c-5268dd)}
.p01-mini-bars i:nth-child(1){height:35%}
.p01-mini-bars i:nth-child(2){height:65%}
.p01-mini-bars i:nth-child(3){height:45%}
.p01-mini-bars i:nth-child(4){height:82%}
.p01-mini-bars i:nth-child(5){height:72%;background:var(--fs-p01-c-c846c5)}
.p01-trend{margin-top:auto;color:var(--fs-p01-c-1dab86);font-size:0.48em;font-weight:800}
.p01-dashboard-mini__chart{height:86px;display:flex;align-items:end;gap:7px;margin-top:13px;padding:13px 10px 0;border-radius:0.6875rem;background:linear-gradient(to top, var(--fs-p01-c-f1f4fa) 1px, transparent 1px);background-size:100% 25%}
.p01-dashboard-mini__chart span{flex:1;max-width:25px;border-radius:0.3125rem 0.3125rem 0.125rem 0.125rem;background:linear-gradient(var(--fs-p01-c-3ddceb), var(--fs-p01-c-5d53e2))}
.p01-dashboard-mini__chart span:nth-child(even){background:linear-gradient(var(--fs-p01-c-cb4bce), var(--fs-p01-c-6d4ee3))}
.p01-faq{background:var(--fs-p01-c-f7f9fd)}
.p01-faq__grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:90px;align-items:start}
.p01-faq__intro h2{margin-bottom:16px}
.p01-faq__intro p{max-width:390px;margin:0 0 22px;color:var(--fs-p01-muted)}
.p01-accordion{display:grid;gap:10px}
.p01-accordion details{overflow:hidden;border:1px solid var(--fs-p01-c-dfe6f1);border-radius:0.9375rem;background:#fff}
.p01-accordion summary{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:0 20px;color:var(--fs-p01-c-1a2540);cursor:pointer;font-size:.9rem;font-weight:800;list-style:none}
.p01-accordion summary::-webkit-details-marker{display:none}
.p01-accordion summary span{position:relative;width:27px;height:27px;flex:0 0 auto;border-radius:0.5rem;background:var(--fs-p01-c-f0f3f9)}
.p01-accordion summary span::before,.p01-accordion summary span::after{content:"";position:absolute;top:13px;inset-inline-start:8px;width:11px;height:1.5px;background:var(--fs-p01-c-5264ca);transition:transform .2s ease}
.p01-accordion summary span::after{transform:rotate(90deg)}
.p01-accordion details[open] summary span::after{transform:rotate(0)}
.p01-accordion details[open]{border-color:var(--fs-p01-c-cbd3f0);box-shadow:0 12px 30px rgba(28,48,90,.065)}
.p01-accordion details p{margin:-4px 20px 19px;padding-top:14px;border-top:1px solid var(--fs-p01-c-edf0f5);color:var(--fs-p01-c-66758e);font-size:.85rem}
.p01-final-cta{color:#fff;background:linear-gradient(105deg, var(--fs-p01-c-086fae), var(--fs-p01-c-5542d8) 52%, var(--fs-p01-c-a923bd))}
.p01-final-cta__inner{min-height:218px;display:flex;align-items:center;justify-content:space-between;gap:35px}
.p01-final-cta h2{margin:0;font-size:clamp(1.7rem, 2.5vw, 2.45rem);line-height:1.1;letter-spacing:-.035em}
.p01-final-cta .p01-section-kicker{margin-bottom:7px}
@media (prefers-reduced-motion:reduce){.p01-scope .p01-course-card:hover,.p01-scope .p01-journey-steps li:hover{transform:none}}
@media (max-width: 1100px){
.p01-hero__grid{grid-template-columns:.88fr 1.12fr;gap:30px}
.p01-slide__title{font-size:clamp(2.1rem, 4.2vw, 3.1rem)}
.p01-learning-window{transform:scale(.93) rotateY(-5deg);transform-origin:center right}
.p01-floating-card--community{inset-inline-start:-5px}
.p01-floating-card--certificate{inset-inline-end:0}
.p01-course-grid{grid-template-columns:repeat(2, 1fr)}
.p01-course-body h3,.p01-course-body > p{min-height:auto}}
@media (max-width: 900px){
.p01-hero{min-height:auto}
.p01-hero__grid{grid-template-columns:1fr;gap:48px;padding-top:160px;padding-bottom:36px}
.p01-hero__content{max-width:720px}
.p01-hero__visual{width:min(100%, 680px);margin-inline:auto}
.p01-learning-window{width:100%;transform:none}
.p01-experience-strip__grid{grid-template-columns:repeat(2, 1fr)}
.p01-experience-item:nth-child(2){border-inline-end:0}
.p01-journey__grid{grid-template-columns:1fr;gap:55px}
.p01-journey__content{max-width:700px}
.p01-feature-card--wide{grid-template-columns:1fr}
.p01-trainer-panel{grid-template-columns:1fr;padding:55px}
.p01-trainer-panel__dashboard{width:min(100%, 520px);transform:none}
.p01-faq__grid{grid-template-columns:1fr;gap:42px}}
@media (max-width: 640px){
.p01-hero__grid{padding-top:150px;padding-bottom:28px}
.p01-eyebrow{font-size:.75rem}
.p01-slide__title{font-size:clamp(1.9rem, 8.5vw, 2.5rem)}
.p01-hero__lead{font-size:.94rem}
.p01-hero__actions{align-items:stretch;flex-direction:column}
.p01-hero__actions .p01-button{width:100%}
.p01-hero__proof{gap:13px 18px}
.p01-learning-window{border-radius:1.0625rem}
.p01-learning-layout{min-height:380px;grid-template-columns:42px 1fr}
.p01-demo-sidebar{padding-inline:6px}
.p01-demo-main{padding:13px 11px}
.p01-lesson-card__body{grid-template-columns:1fr}
.p01-lesson-art{min-height:105px}
.p01-lesson-copy p{margin-bottom:9px}
.p01-demo-bottom{grid-template-columns:1fr}
.p01-score-card{display:none}
.p01-floating-card--community{display:none}
.p01-floating-card--certificate{inset-inline-end:10px;bottom:-37px}
.p01-experience-strip{padding-top:46px}
.p01-experience-strip__grid{grid-template-columns:1fr;gap:0}
.p01-experience-item{padding:14px 0;border-inline-end:0;border-bottom:1px solid var(--fs-p01-c-e8ecf3)}
.p01-experience-item:last-child{border-bottom:0}
.p01-section{padding:60px 0}
.p01-section-heading--split{align-items:flex-start;flex-direction:column}
.p01-section-heading h2,.p01-platform h2,.p01-faq h2{font-size:1.8rem}
.p01-filter-row{flex-wrap:nowrap;margin-inline:-14px;padding:0 14px 7px;overflow-x:auto;scrollbar-width:none}
.p01-filter-row::-webkit-scrollbar{display:none}
.p01-filter-button{flex:0 0 auto}
.p01-course-grid{grid-template-columns:1fr}
.p01-course-cover{min-height:190px}
.p01-journey-steps li{grid-template-columns:57px 1fr;padding:16px 15px 16px 10px}
.p01-journey-steps::before{inset-inline-start:28px}
.p01-step-number{width:42px;height:42px}
.p01-feature-grid{grid-template-columns:1fr}
.p01-feature-card,.p01-feature-card--wide{min-height:350px;padding:25px}
.p01-feature-card--wide{gap:22px}
.p01-content-stack{min-height:210px}
.p01-feature-live,.p01-certificate-mini{inset-inline-start:25px;inset-inline-end:25px}
.p01-trainer-panel{min-height:auto;gap:48px;padding:44px 24px;border-radius:1.5625rem}
.p01-trainer-panel h2{font-size:1.85rem}
.p01-trainer-panel__actions{align-items:stretch;flex-direction:column}
.p01-trainer-link{text-align:center}
.p01-dashboard-mini__stats{grid-template-columns:1fr}
.p01-dashboard-mini__stats > div:nth-child(2){display:none}
.p01-faq__grid{gap:34px}
.p01-accordion summary{min-height:72px;padding:0 15px;font-size:.88rem}
.p01-final-cta__inner{align-items:flex-start;flex-direction:column;justify-content:center;padding:42px 0}
.p01-final-cta .p01-button{width:100%}}

.p01-eyebrow{margin-block:0 20px}
.p01-eyebrow__icon .p01-ic{width:.85rem;height:.85rem;fill:currentColor;stroke:none}
.p01-hero__lead,.p01-journey__content p,.p01-trainer-panel p{margin-block-start:0}
.p01-hero__proof{list-style:none;padding:0}
.p01-hero__mock{position:relative}
.p01-proof-icon .p01-ic{width:.8rem;height:.8rem;stroke-width:2.4}
.p01-play-icon .p01-ic{width:1rem;height:1rem}
.p01-spark .p01-ic{width:1em;height:1em;fill:currentColor;stroke:none}
.p01-spark--a{font-size:1rem}.p01-spark--b{font-size:.6em}
.p01-check .p01-ic,.p01-certificate-mini__seal .p01-ic{width:.8em;height:.8em;stroke-width:3}
.p01-stack-card em .p01-ic{width:1rem;height:1rem}
.p01-chat-input span .p01-ic{width:.8rem;height:.8rem}
.p01-trend{display:inline-flex;align-items:center;gap:3px}
.p01-trend .p01-ic{width:1em;height:1em}
.p01-dashboard-mini__header em .p01-ic,.p01-message-demo__top em .p01-ic{width:1rem;height:1rem}
.p01-w-68{width:68%}
.p01-h-31{height:31%}.p01-h-44{height:44%}.p01-h-38{height:38%}.p01-h-67{height:67%}.p01-h-58{height:58%}.p01-h-82{height:82%}.p01-h-72{height:72%}
.p01-experience-strip__grid{list-style:none;padding-inline:0}
.p01-section-kicker{margin-block-start:0}
.p01-section-heading h2,.p01-journey__content h2,.p01-trainer-panel h2,.p01-final-cta h2,.p01-faq h2{font-weight:800}

/* Cartes : toute la carte mène à la fiche, un seul lien dans le parcours clavier. */
.p01-course-card{position:relative}
.p01-course-link{color:inherit}
.p01-course-link::after{content:"";position:absolute;inset:0;z-index:3;border-radius:inherit}
.p01-course-card:focus-within{outline:3px solid rgba(9,216,245,.72);outline-offset:3px}
.p01-course-link:focus-visible{outline:none}
.p01-course-cover--image{background:var(--fs-p01-navy-800)}
.p01-course-cover--image::before,.p01-course-cover--image::after{display:none}
.p01-course-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.p01-course-cover--image .p01-course-pill{background:rgba(3,12,38,.55)}
.p01-course-cover--image .p01-course-level{padding:2px 8px;border-radius:var(--fs-radius-full);background:rgba(3,12,38,.55)}
.p01-course-cover--language{background:linear-gradient(145deg,var(--fs-p01-c-18315a),var(--fs-p01-c-5b47d8) 50%,var(--fs-p01-c-2b9fea))}
.p01-course-body p{margin-block-start:0}
img.p01-trainer-avatar{object-fit:cover}
.p01-course-go .p01-ic{width:.9rem;height:.9rem}
[dir="rtl"] .p01-course-card:hover .p01-course-go{transform:translateX(-2px)}

/* Parcours, FAQ, appels */
.p01-journey-steps{list-style:none}
[dir="rtl"] .p01-journey-steps li:hover{transform:translateX(-5px)}
[dir="rtl"] .p01-text-link:hover svg{transform:scaleX(-1) translateX(3px)}
.p01-accordion summary:focus-visible{outline:3px solid rgba(82,100,202,.6);outline-offset:-3px}
.p01-final-cta__actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px}
.p01-trainer-link{display:inline-flex;align-items:center;min-height:44px}

[dir="rtl"] .p01-learning-window{transform:rotateY(6deg) rotateX(2deg);transform-origin:center right}
@media (max-width: 900px){[dir="rtl"] .p01-learning-window{transform:none}}
@media (prefers-reduced-motion:reduce){[dir="rtl"] .p01-journey-steps li:hover,[dir="rtl"] .p01-course-card:hover .p01-course-go{transform:none}}
/* Emplacement sponsorisé (§3.1) entre la bande des bénéfices et le catalogue. */
.p01-sponsored{background:#fff;padding-block:12px 0}

/* ---------------------------------------------------------------- carrousel en haut de page */
.p01-hero{min-height:0}
.p01-hero__stage{position:relative;z-index:2}
.p01-slides{display:grid}
.p01-slide{grid-area:1/1;opacity:0;visibility:hidden;transition:opacity .6s ease,visibility 0s linear .6s}
.p01-slide.is-active{opacity:1;visibility:visible;transition:opacity .6s ease,visibility 0s}
.p01-slide .p01-hero__content{transform:translateY(12px);transition:transform .6s ease}
.p01-slide.is-active .p01-hero__content{transform:none}
.p01-slider-controls{position:relative;z-index:4;display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding-block:8px 118px}
.p01-slider-btn{display:inline-grid;place-items:center;width:44px;height:44px;border:1px solid rgba(255,255,255,.18);border-radius:var(--fs-radius-full);color:#fff;background:rgba(255,255,255,.06);cursor:pointer;transition:background .2s ease,border-color .2s ease}
.p01-slider-btn:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.32)}
.p01-slider-btn .p01-ic{width:1.1rem;height:1.1rem}
.p01-rot180{transform:rotate(180deg)}
[dir="rtl"] .p01-rot180.p01-flip{transform:rotate(180deg) scaleX(-1)}
.p01-slider-pause .p01-ic-play{display:none}
.p01-slider-pause[aria-pressed="true"] .p01-ic-play{display:block}
.p01-slider-pause[aria-pressed="true"] .p01-ic-pause{display:none}
.p01-slider-dots{display:flex;align-items:center;gap:2px;margin-inline:4px}
.p01-slider-dot{display:inline-grid;place-items:center;width:32px;height:44px;padding:0;border:0;background:none;cursor:pointer}
.p01-slider-dot span{display:block;width:10px;height:10px;border-radius:var(--fs-radius-full);background:rgba(255,255,255,.32);transition:width .3s ease,background .3s ease}
.p01-slider-dot:hover span{background:rgba(255,255,255,.6)}
.p01-slider-dot.is-active span{width:28px;background:var(--fs-p01-gradient)}
.p01-slider-dot:focus-visible,.p01-slider-btn:focus-visible{outline:3px solid rgba(9,216,245,.72);outline-offset:2px}

/* Visuel : classe en direct */
.p01-live-room{display:grid;grid-template-columns:1.55fr 1fr;gap:12px;min-height:400px;padding:16px;background:var(--fs-p01-c-0a1635)}
.p01-live-stage{position:relative;display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:.875rem;background:linear-gradient(145deg,var(--fs-p01-c-0a1541),var(--fs-p01-c-15288c) 60%,var(--fs-p01-c-511371))}
.p01-live-stage .p01-live-badge{background:rgba(255,255,255,.92)}
.p01-live-board{position:relative;flex:1;min-height:210px;padding:14px;border-radius:.625rem;background:#fff}
.p01-live-board__title{display:block;margin-block-end:12px;color:var(--fs-p01-c-5d78e9);font-size:.6em;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.p01-live-board__line{display:block;height:6px;margin-block:10px;border-radius:var(--fs-radius-full);background:var(--fs-p01-c-e9edf5)}
.p01-live-board__line--a{width:78%}.p01-live-board__line--b{width:56%;background:linear-gradient(90deg,var(--fs-p01-c-11dff3),var(--fs-p01-c-6247ff))}.p01-live-board__line--c{width:64%}
.p01-live-board__pen{position:absolute;inset-inline-end:18px;inset-block-end:16px;display:grid;place-items:center;width:34px;height:34px;border-radius:.625rem;color:#fff;background:linear-gradient(135deg,var(--fs-p01-c-1dd8ec),var(--fs-p01-c-6d44ff))}
.p01-live-board__pen .p01-ic{width:1rem;height:1rem}
.p01-live-speaker{display:flex;align-items:center;gap:9px;color:#fff}
.p01-live-speaker div{display:flex;flex-direction:column}
.p01-live-speaker strong{font-size:.72em}
.p01-live-speaker small{color:rgba(255,255,255,.7);font-size:.55em}
.p01-live-mic{margin-inline-start:auto;display:grid;place-items:center;width:30px;height:30px;border-radius:var(--fs-radius-full);background:rgba(255,255,255,.14)}
.p01-live-mic .p01-ic{width:.9rem;height:.9rem}
.p01-live-side{display:grid;grid-template-rows:repeat(3,1fr) auto;gap:10px}
.p01-live-tile{display:grid;place-items:center;border-radius:.75rem;color:#fff;font-size:.75em;font-weight:800}
.p01-live-tile span{display:grid;place-items:center;width:40px;height:40px;border-radius:var(--fs-radius-full);background:rgba(255,255,255,.2)}
.p01-live-tile--one{background:linear-gradient(135deg,var(--fs-p01-c-08bfdc),var(--fs-p01-c-4666df))}
.p01-live-tile--two{background:linear-gradient(135deg,var(--fs-p01-c-7646df),var(--fs-p01-c-da3bbb))}
.p01-live-tile--three{background:linear-gradient(135deg,var(--fs-p01-c-248bdc),var(--fs-p01-c-27c5bb))}
.p01-live-chat{display:flex;flex-direction:column;gap:2px;padding:10px;border-radius:.75rem;background:#fff}
.p01-live-chat b{color:var(--fs-p01-c-5d78e9);font-size:.55em}
.p01-live-chat span{color:var(--fs-p01-c-52607a);font-size:.6em;line-height:1.4}

/* Visuel : certificat */
.p01-cert-sheet{position:relative;z-index:3;width:560px;max-width:100%;margin-inline-start:auto;padding:36px 40px 30px;border:1px solid rgba(152,182,255,.3);border-radius:1.25rem;color:var(--fs-p01-ink);background:linear-gradient(160deg,#fff,var(--fs-p01-c-f7f9fe));box-shadow:0 55px 110px rgba(0,0,0,.43),0 0 0 8px rgba(255,255,255,.025);transform:rotate(-2deg)}
.p01-cert-sheet::before{content:"";position:absolute;inset:12px;border:1px dashed var(--fs-p01-c-cbd3f0);border-radius:.875rem;pointer-events:none}
.p01-cert-sheet__head{display:flex;align-items:center;gap:12px}
.p01-cert-sheet__head div{display:flex;flex-direction:column}
.p01-cert-sheet__head b{color:var(--fs-p01-c-4e43a6);font-size:.8em;letter-spacing:.16em}
.p01-cert-sheet__head small{color:var(--fs-p01-c-667590);font-size:.6em}
.p01-cert-sheet__label{margin:26px 0 2px;color:var(--fs-p01-c-8290a8);font-size:.65em;text-transform:uppercase;letter-spacing:.12em}
.p01-cert-sheet__name{display:block;font-size:1.6em;line-height:1.2;letter-spacing:-.02em}
.p01-cert-sheet__course{margin:6px 0 22px;color:var(--fs-p01-c-5d78e9);font-size:.8em;font-weight:700}
.p01-cert-sheet__foot{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}
.p01-cert-sheet__lines{flex:1}
.p01-cert-sheet__lines i{display:block;height:4px;margin-block:8px;border-radius:var(--fs-radius-full);background:var(--fs-p01-c-e8ecf4)}
.p01-cert-sheet__lines i:last-child{width:60%}
.p01-qr-mini--large span{width:26px;height:26px;border-width:5px}
.p01-floating-icon--violet{background:linear-gradient(135deg,var(--fs-p01-c-7646df),var(--fs-p01-c-da3bbb))}

/* Visuel : image téléversée */
.p01-slide-image img{position:relative;z-index:3;display:block;width:100%;max-width:680px;height:auto;margin-inline-start:auto;border:1px solid rgba(152,182,255,.26);border-radius:1.25rem;object-fit:cover;aspect-ratio:16/11;box-shadow:0 55px 110px rgba(0,0,0,.43)}

@media (max-width: 900px){
  .p01-slider-controls{padding-block:4px 96px}
  .p01-cert-sheet{transform:none;margin-inline:auto}
  .p01-live-room{min-height:340px}
}
@media (max-width: 640px){
  .p01-slider-controls{justify-content:center;padding-block:0 80px}
  .p01-live-room{grid-template-columns:1fr;min-height:0}
  .p01-live-side{grid-template-columns:repeat(3,1fr);grid-template-rows:72px auto}
  .p01-live-chat{grid-column:1/-1}
  .p01-cert-sheet{padding:26px 24px 22px}
}
@media (prefers-reduced-motion:reduce){.p01-slide,.p01-slide.is-active,.p01-slide .p01-hero__content{transition:none}.p01-slide .p01-hero__content{transform:none}}
/* Le visuel épouse la fenêtre illustrée : les cartes flottantes restent accrochées à ses bords, même en très grand écran. */
.p01-hero__mock{width:min(100%, 650px);margin-inline-start:auto}
.p01-hero__mock .p01-learning-window,.p01-hero__mock .p01-cert-sheet{width:100%}
@media (max-width: 900px){.p01-hero__mock{margin-inline:auto}}
.p01-floating-card--low{top:auto;inset-block-end:36px}
@media (max-width: 640px){.p01-floating-card--low{display:none}}

/* ---------------------------------------------------------------- affinage du hero (retour client du 15/09/2026)
 * Marges latérales généreuses, texte et illustration rapprochés dans un bloc centré aux largeurs maîtrisées,
 * titre et visuels plus fins. */
.p01-hero__grid{grid-template-columns:minmax(0, 660px) minmax(0, 580px);justify-content:center;column-gap:clamp(32px, 3.5vw, 56px);padding-top:156px}
.p01-hero__content{max-width:660px}
.p01-slide__title{max-width:640px;font-size:clamp(1.9rem, 2.6vw, 2.8rem);line-height:1.08;letter-spacing:-.035em}
.p01-hero__lead{max-width:580px;font-size:.94rem;line-height:1.7}
.p01-hero__visual{display:flex;justify-content:center}
.p01-hero__mock{width:100%;max-width:580px;margin-inline:0;font-size:.9rem}
.p01-learning-layout{min-height:360px}
.p01-live-room{min-height:330px}
.p01-cert-sheet{padding:28px 30px 24px}
.p01-orbit--one{width:420px;height:420px;top:-46px;inset-inline-end:-46px}
.p01-orbit--two{width:300px;height:300px;top:24px;inset-inline-end:10px}
.p01-floating-card--community{inset-inline-start:-26px}
.p01-floating-card--certificate{inset-inline-end:-18px}
.p01-button--large{min-height:46px;padding-inline:20px}
.p01-slider-btn{width:40px;height:40px}
.p01-slider-controls{padding-block:6px 104px}
@media (max-width: 1100px){
  .p01-hero__grid{grid-template-columns:minmax(0, 1fr) minmax(0, .92fr);column-gap:32px}
  .p01-slide__title{font-size:clamp(1.8rem, 3.2vw, 2.4rem)}
  .p01-floating-card--community{inset-inline-start:-10px}
  .p01-floating-card--certificate{inset-inline-end:-6px}
}
@media (max-width: 900px){
  .p01-hero__grid{grid-template-columns:minmax(0, 1fr);row-gap:40px;padding-top:140px}
  .p01-hero__content{max-width:640px}
  .p01-hero__mock{max-width:520px}
  .p01-slider-controls{padding-block:4px 88px}
}
@media (max-width: 640px){
  .p01-hero__grid{padding-top:132px;row-gap:32px}
  .p01-slide__title{font-size:clamp(1.7rem, 7.2vw, 2.15rem)}
  .p01-slider-controls{padding-block:0 72px}
}


/* ---------------------------------------------------------------- carrousel adapté (retour client du 16/09/2026)
 * Zone visuelle de hauteur identique pour chaque diapositive (plus de saut de mise en page), contenu centré
 * verticalement, commandes rapprochées du texte, cartes flottantes posées sur le bord inférieur du visuel. */
.p01-hero__grid{align-items:center;padding-top:136px;padding-bottom:0}
.p01-slide .p01-hero__visual{height:clamp(320px, 27vw, 410px);align-items:center}
.p01-hero__mock{max-height:100%;font-size:.85rem}
.p01-learning-layout{min-height:300px}
.p01-live-room{min-height:290px}
.p01-live-board{min-height:150px}
.p01-cert-sheet{padding:26px 28px 22px}
.p01-floating-card--community.p01-floating-card--low{top:auto;inset-block-end:-22px;inset-inline-start:22px}
.p01-floating-card--certificate{bottom:-22px}
.p01-slider-controls{padding-block:36px 96px}
@media (max-width: 900px){
  .p01-slide .p01-hero__visual{height:auto}
  .p01-hero__grid{padding-top:128px}
  .p01-slider-controls{padding-block:34px 80px}
}
@media (max-width: 640px){
  .p01-hero__grid{padding-top:120px}
  .p01-slider-controls{padding-block:30px 64px}
}
/* Commandes alignées sur la colonne de texte du bloc centré. */
.p01-slider-controls{width:min(100%, calc(660px + 580px + clamp(32px, 3.5vw, 56px)));margin-inline:auto}
/* Écrans étroits : une diapositive plus courte ne s'étire pas à la hauteur de la plus longue (pas de vide sous le texte). */
@media (max-width: 900px){.p01-slide{align-content:start}}
@media (max-width: 900px){
  .p01-hero__grid{padding-top:150px}
  .p01-slide .p01-hero__visual{height:470px}
}
@media (max-width: 640px){
  .p01-hero__grid{padding-top:138px}
  .p01-slide .p01-hero__visual{height:auto}
}

/* Bandeau des 4 atouts (retour client du 18/09) : éléments agrandis, centrés dans leur colonne et à égale
   distance du bas du hero et du titre du catalogue (le catalogue reprend le même espacement en haut). */
.p01-experience-strip{padding:clamp(40px, 4vw, 60px) 0 0}
.p01-experience-strip + .p01-catalogue,
.p01-experience-strip + .p01-sponsored + .p01-catalogue{padding-top:clamp(40px, 4vw, 60px)}
.p01-experience-strip__grid{gap:clamp(16px, 2vw, 28px)}
.p01-experience-item{justify-content:center;gap:16px;padding-inline-end:clamp(12px, 1.6vw, 24px)}
.p01-experience-item > span{width:60px;height:60px;border-radius:1rem}
.p01-experience-item svg{width:28px;height:28px}
.p01-experience-item strong{font-size:clamp(1rem, 1.1vw, 1.15rem)}
.p01-experience-item small{font-size:clamp(.85rem, .9vw, .95rem);margin-top:2px}
@media (max-width: 1100px){
  .p01-experience-item{justify-content:flex-start}
}
@media (max-width: 640px){
  .p01-experience-strip{padding:28px 0 0}
  .p01-experience-item > span{width:50px;height:50px}
  .p01-experience-item svg{width:24px;height:24px}
}

/* ================================================================ animations de l'accueil (§33.7, 18/09/2026)
 * Tout est préfixé par html.p01-anim, classe posée par le moteur commun (layout + p01-anim.js, §34.4) seulement si le
 * mouvement n'est pas réduit et qu'IntersectionObserver existe : sans JavaScript, le contenu reste visible et statique. Seules transform,
 * translate, scale et opacity sont animées (composition GPU, aucune mise en page recalculée, pas de CLS).
 * Les apparitions emploient la propriété `translate` et non `transform` : les survols (soulèvement, inclinaison)
 * gardent leur propre transform sans conflit. */
@keyframes p01-visual-in{from{opacity:0;translate:0 22px;scale:.96}to{opacity:1;translate:0 0;scale:1}}
@keyframes p01-spin{to{transform:rotate(360deg)}}
@keyframes p01-pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.6);opacity:.45}}
@keyframes p01-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes p01-grow-x{from{transform:scaleX(0)}}
@keyframes p01-pop{0%{opacity:0;transform:scale(.4) rotate(-18deg)}60%{opacity:1;transform:scale(1.12) rotate(4deg)}100%{opacity:1;transform:none}}
@keyframes p01-wiggle{0%,100%{transform:none}30%{transform:rotate(-10deg) scale(1.1)}60%{transform:rotate(6deg)}}

/* --- Révélation au défilement, particules, reflet des boutons, inclinaison des cartes, compteurs, mouvement réduit :
   moteur commun assets/css/p01-anim.css (§34.4), chargé après cette feuille. Ci-dessous : effets propres à l'accueil. */
/* Contenus internes qui arrivent après leur carte : piles de contenus, messagerie, graphiques du tableau de bord. */
.p01-anim .p01-stack-card,.p01-anim .p01-message-demo > *{transition:opacity .6s ease,translate .6s cubic-bezier(.2,.7,.2,1)}
.p01-anim .p01-reveal:not(.is-in) .p01-stack-card,.p01-anim .p01-reveal:not(.is-in) .p01-message-demo > *{opacity:0;translate:0 14px}
.p01-anim .p01-stack-card:nth-child(1),.p01-anim .p01-message-demo > :nth-child(1){transition-delay:.3s}
.p01-anim .p01-stack-card:nth-child(2),.p01-anim .p01-message-demo > :nth-child(2){transition-delay:.42s}
.p01-anim .p01-stack-card:nth-child(3),.p01-anim .p01-message-demo > :nth-child(3){transition-delay:.54s}
.p01-anim .p01-message-demo > :nth-child(4){transition-delay:.66s}
.p01-anim .p01-dashboard-mini__chart span,.p01-anim .p01-mini-bars i{transform-origin:bottom;transition:transform .9s cubic-bezier(.2,.7,.2,1) .35s}
.p01-anim .p01-reveal:not(.is-in) .p01-dashboard-mini__chart span,.p01-anim .p01-reveal:not(.is-in) .p01-mini-bars i{transform:scaleY(0)}
.p01-anim .p01-dashboard-mini__chart span:nth-child(2),.p01-anim .p01-mini-bars i:nth-child(2){transition-delay:.42s}
.p01-anim .p01-dashboard-mini__chart span:nth-child(3),.p01-anim .p01-mini-bars i:nth-child(3){transition-delay:.49s}
.p01-anim .p01-dashboard-mini__chart span:nth-child(4),.p01-anim .p01-mini-bars i:nth-child(4){transition-delay:.56s}
.p01-anim .p01-dashboard-mini__chart span:nth-child(5),.p01-anim .p01-mini-bars i:nth-child(5){transition-delay:.63s}
.p01-anim .p01-dashboard-mini__chart span:nth-child(6){transition-delay:.7s}
.p01-anim .p01-dashboard-mini__chart span:nth-child(7){transition-delay:.77s}
/* Ligne du parcours en trois étapes : se trace de haut en bas quand la liste apparaît. */
.p01-anim .p01-journey-steps.p01-draw::before{transform:scaleY(0);transform-origin:top;transition:transform 1.4s cubic-bezier(.2,.7,.2,1) .2s}
.p01-anim .p01-journey-steps.p01-draw.is-in::before{transform:none}
/* FAQ : la réponse glisse à l'ouverture. */
.p01-anim .p01-accordion details[open] > p{animation:p01-rise .45s cubic-bezier(.2,.7,.2,1)}

/* --- Hero : entrée du texte et du visuel à chaque changement de diapositive (pas au premier affichage). */
/* La diapositive sortante s'efface vite (.3 s) : le nouveau texte n'apparaît pas par-dessus l'ancien. */
.p01-anim .p01-hero.is-live .p01-slide:not(.is-active){transition:opacity .3s ease,visibility 0s linear .3s}
.p01-anim .p01-hero.is-live .p01-slide.is-active .p01-hero__content > *{animation:p01-rise .7s cubic-bezier(.2,.7,.2,1) .15s both}
.p01-anim .p01-hero.is-live .p01-slide.is-active .p01-hero__content > :nth-child(2){animation-delay:.23s}
.p01-anim .p01-hero.is-live .p01-slide.is-active .p01-hero__content > :nth-child(3){animation-delay:.31s}
.p01-anim .p01-hero.is-live .p01-slide.is-active .p01-hero__content > :nth-child(4){animation-delay:.39s}
.p01-anim .p01-hero.is-live .p01-slide.is-active .p01-hero__content > :nth-child(5){animation-delay:.47s}
.p01-anim .p01-hero.is-live .p01-slide.is-active .p01-hero__mock{animation:p01-visual-in .9s cubic-bezier(.2,.7,.2,1) .2s both}
/* Visuels qui flottent doucement (diapositive active seulement) ; cartes flottantes décalées l'une de l'autre. */
.p01-anim .p01-slide.is-active .p01-learning-window,.p01-anim .p01-slide.is-active .p01-cert-sheet,.p01-anim .p01-slide.is-active .p01-slide-image img{animation:p01-float-soft 9s ease-in-out infinite}
.p01-anim .p01-slide.is-active .p01-floating-card{animation:p01-float 6s ease-in-out infinite}
.p01-anim .p01-slide.is-active .p01-floating-card--community{animation-duration:7.5s;animation-delay:-3s}
.p01-anim .p01-slide.is-active .p01-ai-orb{animation:p01-float 5s ease-in-out infinite}
.p01-anim .p01-slide.is-active .p01-spark{animation:p01-twinkle 3.2s ease-in-out infinite}
.p01-anim .p01-slide.is-active .p01-spark--b{animation-delay:-1.6s}
.p01-anim .p01-live-badge i,.p01-anim .p01-feature-live > span i{animation:p01-pulse 2s ease-in-out infinite}
.p01-anim .p01-slide.is-active .p01-progress-line span{transform-origin:left center;animation:p01-grow-x 1.4s cubic-bezier(.2,.7,.2,1) .3s both}
[dir="rtl"].p01-anim .p01-slide.is-active .p01-progress-line span{transform-origin:right center}
.p01-anim .p01-eyebrow__icon .p01-ic{animation:p01-twinkle 4s ease-in-out infinite}
/* Satellites sur les orbites : un point lumineux qui fait lentement le tour. */
.p01-anim .p01-orbit{animation:p01-spin 36s linear infinite}
.p01-anim .p01-orbit--two{animation-duration:26s;animation-direction:reverse}
.p01-anim .p01-orbit::after{content:"";position:absolute;top:-4px;inset-inline-start:calc(50% - 4px);width:8px;height:8px;border-radius:50%;background:var(--fs-p01-cyan);box-shadow:0 0 14px 3px rgba(9,216,245,.55)}
.p01-anim .p01-orbit--two::after{background:var(--fs-p01-pink);box-shadow:0 0 14px 3px rgba(238,32,220,.5)}
/* Halo : dégradés lents en arrière-plan (le troisième, rose, n'existe qu'animé). */
.p01-hero__glow--pink{width:420px;height:420px;bottom:60px;inset-inline-start:34%;background:var(--fs-p01-pink);opacity:0}
.p01-anim .p01-hero__glow{will-change:transform}
.p01-anim .p01-hero__glow--cyan{animation:p01-drift-a 22s ease-in-out infinite}
.p01-anim .p01-hero__glow--violet{animation:p01-drift-b 26s ease-in-out infinite}
.p01-anim .p01-hero__glow--pink{animation:p01-drift-c 30s ease-in-out infinite}
.p01-anim .p01-journey__glow{animation:p01-drift-a 24s ease-in-out infinite}
.p01-anim .p01-trainer-panel__orb--a{animation:p01-float 8s ease-in-out infinite}
.p01-anim .p01-trainer-panel__orb--b{animation:p01-float 10s ease-in-out -4s infinite}
/* Barre de progression du défilement automatique dans la puce active (durée = intervalle, --p01-interval). */
.p01-anim .p01-hero.is-autoplay .p01-slider-dot.is-active span{position:relative;overflow:hidden;background:rgba(255,255,255,.28)}
.p01-anim .p01-hero.is-autoplay .p01-slider-dot.is-active span::after{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--fs-p01-gradient);transform-origin:left center;animation:p01-progress var(--p01-interval,7s) linear both}
[dir="rtl"].p01-anim .p01-hero.is-autoplay .p01-slider-dot.is-active span::after{transform-origin:right center}

/* --- Particules des zones sombres (hero, parcours, appel formateur, appel final) : p01-anim.css ; ici leur plan. */
.p01-journey .p01-particles,.p01-trainer-panel .p01-particles{z-index:0}
.p01-final-cta{position:relative;overflow:hidden}
.p01-final-cta__inner{position:relative;z-index:2}

/* --- Bandeau des 4 atouts : icônes qui « éclosent » à l'apparition et s'animent au survol. */
.p01-anim .p01-experience-item > span{transition:transform .35s cubic-bezier(.3,1.6,.5,1)}
.p01-anim .p01-experience-item.p01-draw:not(.is-in) > span{opacity:0;transform:scale(.4)}
.p01-anim .p01-experience-item.p01-draw.is-in > span{animation:p01-pop .8s cubic-bezier(.3,1.4,.5,1) backwards}
.p01-anim .p01-experience-item:nth-child(2).p01-draw.is-in > span{animation-delay:.1s}
.p01-anim .p01-experience-item:nth-child(3).p01-draw.is-in > span{animation-delay:.2s}
.p01-anim .p01-experience-item:nth-child(4).p01-draw.is-in > span{animation-delay:.3s}
.p01-anim .p01-experience-item:hover > span{transform:translateY(-4px) scale(1.08)}
.p01-anim .p01-experience-item:hover svg{animation:p01-wiggle .6s ease}

/* --- Survols vivants : inclinaison et reflet des cartes dans p01-anim.css ; symbole et image propres à l'accueil. */
.p01-anim .p01-course-symbol{transition:transform .5s cubic-bezier(.3,1.5,.5,1)}
.p01-anim .p01-course-card:hover .p01-course-symbol{transform:rotate(0deg) scale(1.08)}
.p01-anim .p01-course-img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.p01-anim .p01-course-card:hover .p01-course-img{transform:scale(1.05)}
.p01-anim .p01-feature-card{transition:transform .3s ease,box-shadow .3s ease}
.p01-anim .p01-feature-card:hover{transform:translateY(-4px);box-shadow:0 22px 50px rgba(24,46,88,.11)}
.p01-anim .p01-feature-icon{transition:transform .35s cubic-bezier(.3,1.6,.5,1)}
.p01-anim .p01-feature-card:hover .p01-feature-icon{transform:rotate(-8deg) scale(1.08)}
/* --- Mouvement réduit (si la préférence change en cours de visite, le script retire aussi p01-anim) et impression. */
@media (prefers-reduced-motion:reduce){
  .p01-anim .p01-reveal,.p01-anim .p01-reveal .p01-stack-card,.p01-anim .p01-reveal .p01-message-demo > *,.p01-anim .p01-experience-item > span{opacity:1;translate:none}
  .p01-anim .p01-reveal .p01-dashboard-mini__chart span,.p01-anim .p01-reveal .p01-mini-bars i,.p01-anim .p01-journey-steps.p01-draw::before,.p01-anim .p01-experience-item > span{transform:none}
  .p01-hero__glow--pink{display:none}
}

/* §34.2 — couvertures de l'accueil alignées sur le catalogue (CourseCover::variant) : six déclinaisons de la palette. */
.p01-course-cover--tech{background:linear-gradient(145deg,var(--fs-p01-c-0a1541),var(--fs-p01-c-157feb) 52%,var(--fs-p01-c-11dff3))}
.p01-course-cover--marketing{background:linear-gradient(145deg,var(--fs-p01-c-3d2985),var(--fs-p01-c-d443bd) 50%,var(--fs-p01-c-ff6681))}
.p01-course-cover--finance{background:linear-gradient(145deg,var(--fs-p01-c-082c51),var(--fs-p01-c-1dab86) 52%,var(--fs-p01-c-4cdfa1))}
.p01-course-cover--growth{background:linear-gradient(145deg,var(--fs-p01-c-35236d),var(--fs-p01-c-7c4ade) 48%,var(--fs-p01-c-ef518f))}
.p01-course-cover--office{background:linear-gradient(145deg,var(--fs-p01-c-101947),var(--fs-p01-c-4434e5) 50%,var(--fs-p01-c-1fc6dc))}
.p01-course-cover--health{background:linear-gradient(145deg,var(--fs-p01-c-082c51),var(--fs-p01-c-078fb0) 48%,var(--fs-p01-c-39cf95))}
.p01-course-symbol .p01c-symbol-ic{width:48%;height:48%}
