/* Prolongement de la DA validée. Les deux pages de référence sont exclues.
   Les !important ci-dessous neutralisent uniquement un style inline importé
   ou une règle de normalisation explicite de astra.css. */

.astra-site[data-ui-app="site"]:not([data-approved]) main :is(h1,h2,h3,h4) {
  text-shadow: none;
  filter: none;
}
.astra-site[data-ui-app="site"]:not([data-approved]) main :is(.section-title,.section-title-v2,.text-center) {
  text-align: left;
}
.astra-site[data-ui-app="site"]:not([data-approved]) main :is(.section-title,.section-title-v2) {
  max-width: 24ch;
  font-size: clamp(28px,3.3vw,42px);
  line-height: 1.12;
  margin: 0 0 28px;
}
.astra-site[data-ui-app="site"]:not([data-approved]) main :is(.section-title,.section-title-v2)::before {
  content: "";
  display: block;
  width: 28px;
  height: 1px;
  margin-bottom: 18px;
  background: var(--offer-ink,var(--accent));
}
.astra-site[data-ui-app="site"]:not([data-approved]) main .section-intro-v2 {
  text-align: left;
  max-width: 70ch;
  margin-left: 0;
  margin-right: 0;
}
.astra-site[data-ui-app="site"]:not([data-approved]) main .section-eyebrow { display:block; text-align:left; margin-left:0; margin-right:0; }
.astra-site[data-ui-app="site"]:not([data-approved]):has(.ds-course-hero) main { padding-top:20px; }
.astra-site[data-ui-page="/tarifs"] .price-card { display:flex; flex-direction:column; }
.astra-site[data-ui-page="/tarifs"] .price-features { flex:1; }
.astra-site[data-ui-page="/tarifs"] .price-card > .btn { display:flex; align-items:center; justify-content:center; min-height:68px; margin-top:auto; text-align:center; }
.astra-site[data-ui-app="veille"] #root main .h-full { height:auto; }
.astra-site .ds-edition-list li { padding:0; background:var(--panel); }
.astra-site .ds-edition-list .ds-edition-link { display:flex; height:100%; flex-direction:column; align-items:flex-start; gap:18px; padding:26px; }
.astra-site .ds-edition-week { font-size:11px; color:var(--accent); letter-spacing:.1em; }
.astra-site .ds-edition-title { font-family:var(--head); font-size:22px; line-height:1.35; }
.astra-site .ds-edition-action { margin-top:auto; font-size:13px; color:var(--muted); }
.astra-site .ds-edition-link:hover { background:var(--panel-strong); }
.astra-site[data-ui-app="site"]:not([data-approved]) main .btn {
  box-shadow: none !important;
}
.astra-site:not([data-approved]) .btn.btn-outline-light { background:transparent !important; color:var(--text) !important; border:1px solid var(--line-strong) !important; box-shadow:none !important; }
.astra-site .ds-contact-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(24px,5vw,64px); }
.astra-site .ds-contact-grid > div { padding-right:24px; border-right:1px solid var(--line); }
.astra-site .ds-contact-grid .ds-reservation { padding:28px; border:1px solid var(--line-strong); background:var(--panel); }
.astra-site[data-offer="forger"] { --offer-ink: var(--offer-forger); }
.astra-site[data-offer="propulser"] { --offer-ink: var(--offer-propulser); }
.astra-site[data-offer="ancrer"] { --offer-ink: var(--offer-ancrer); }
.astra-site[data-offer="rayonner"] { --offer-ink: var(--offer-rayonner); }
.astra-site[data-offer="eclore"] { --offer-ink: var(--offer-eclore); }
html[data-theme="light"] .astra-site[data-offer="forger"] { --offer-ink:#0E7490; }
html[data-theme="light"] .astra-site[data-offer="propulser"] { --offer-ink:#BE3C3C; }
html[data-theme="light"] .astra-site[data-offer="ancrer"] { --offer-ink:#B52B76; }
html[data-theme="light"] .astra-site[data-offer="rayonner"] { --offer-ink:#7053B6; }
html[data-theme="light"] .astra-site[data-offer="eclore"] { --offer-ink:#087D58; }

/* Offres : le visuel accompagne la proposition dès le premier écran. */
.astra-site:not([data-approved]):has(.ds-offer-hero) main { padding-top: 20px; }
.astra-site:not([data-approved]) .ds-offer-hero {
  display: grid;
  grid-template-columns: minmax(0,1.08fr) minmax(0,.92fr);
  align-items: center;
  gap: clamp(28px,5vw,68px);
  text-align: left;
  padding: 40px 0 64px;
  border-bottom: 1px solid var(--line);
}
.astra-site:not([data-approved]) .ds-offer-copy { min-width: 0; }
.astra-site:not([data-approved]) .ds-offer-copy .lp-badge {
  padding: 8px 0 8px 14px;
  border-left: 2px solid var(--offer-ink);
  background: none;
  color: var(--offer-ink);
  font-size: 12px;
  line-height: 1.5;
  margin: 0 0 24px;
}
.astra-site:not([data-approved]) .ds-offer-copy h1 {
  font-size: clamp(48px,6vw,80px);
  line-height: 1.02;
  margin: 0 0 20px;
  color: var(--offer-ink) !important;
  background: none;
  -webkit-text-fill-color: currentColor;
}
.astra-site:not([data-approved]) .ds-offer-copy :is(.tagline,.subtitle) { margin-left: 0; margin-right: 0; }
.astra-site:not([data-approved]) .ds-offer-copy .tagline { font-size: 23px; line-height: 1.35; margin-block: 0 16px; }
.astra-site:not([data-approved]) .ds-offer-copy .subtitle { font-size: 17px; line-height: 1.7; margin-bottom: 28px; }
.astra-site:not([data-approved]) .ds-offer-copy .lp-price-box {
  border: 0;
  border-top: 1px solid var(--line-strong);
  background: none;
  backdrop-filter: none;
  box-shadow: none;
  padding: 16px 0 0;
  gap: 10px;
  margin: 0 0 4px;
}
.astra-site:not([data-approved]) .ds-offer-copy .lp-price-box .amount {
  font-size: clamp(32px,3.2vw,44px);
  color: var(--offer-ink) !important;
  background: none !important;
  -webkit-text-fill-color: currentColor !important;
}
.astra-site:not([data-approved]) .ds-offer-copy .lp-price-box .suffix { font-size: 16px; }
.astra-site:not([data-approved]) .ds-offer-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.astra-site:not([data-approved]) .ds-offer-hero .lp-hero-img {
  position: relative;
  width: 100%;
  max-width: none;
  margin: 0;
  border: 1px solid var(--line-strong);
  box-shadow: none;
  padding: 10px;
  background: var(--panel);
}
.astra-site:not([data-approved]) .ds-offer-hero .lp-hero-img::before {
  content: "";
  position: absolute;
  width: 30px;
  height: 30px;
  top: 0;
  left: 0;
  border-top: 2px solid var(--offer-ink);
  border-left: 2px solid var(--offer-ink);
  pointer-events: none;
}
.astra-site:not([data-approved]) .ds-offer-hero .lp-hero-img img { aspect-ratio: 4/5; object-fit: cover; }
.astra-site[data-offer="ancrer"]:not([data-approved]) .ds-offer-hero .lp-hero-img img { object-position:right center; }
.astra-site:not([data-approved]):has(.ds-offer-hero) main .py-3 { padding-block:56px; border-bottom:1px solid var(--line); }
.astra-site:not([data-approved]):has(.ds-offer-hero) .programme-tags { justify-content:flex-start; gap:10px; margin-block:0 22px; }
.astra-site:not([data-approved]):has(.ds-offer-hero) .programme-tags + p { text-align:left !important; margin-left:0 !important; max-width:70ch !important; }
.astra-site:not([data-approved]):has(.ds-offer-hero) :is(.pour-qui-grid,.lp-timeline) { gap:0; }
.astra-site:not([data-approved]):has(.ds-offer-hero) .pour-qui-card { margin:-1px 0 0 -1px; padding:28px; }
.astra-site:not([data-approved]):has(.ds-offer-hero) .lp-timeline { max-width:none; margin-inline:0; display:grid; }
.astra-site:not([data-approved]):has(.ds-offer-hero) .lp-step { display:grid; grid-template-columns:44px minmax(0,1fr); gap:20px; margin:0; padding:22px 0; border-bottom:1px solid var(--line); }
.astra-site:not([data-approved]):has(.ds-offer-hero) .lp-step:last-child { border-bottom:0; }
.astra-site:not([data-approved]):has(.ds-offer-hero) .lp-step-dot { position:static; width:44px; height:44px; border:1px solid var(--line-strong); background:var(--panel); color:var(--offer-ink); box-shadow:none; }
.astra-site:not([data-approved]):has(.ds-offer-hero) .lp-step-card { padding:0; background:none; border:0; box-shadow:none; }
.astra-site:not([data-approved]):has(.ds-offer-hero) .lp-step-card h3 { margin-top:0; }
.astra-site:not([data-approved]):has(.ds-offer-hero) .lp-timeline::before { display:none; }

/* Les deux parcours gardent leur logo, dans une couverture structurée. */
.astra-site:not([data-approved]) .ds-course-hero { padding:64px 0; text-align:left; }
.astra-site:not([data-approved]) .ds-course-hero > .container {
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);
  align-items:start;
  gap:clamp(28px,5vw,64px);
  max-width:var(--ds-width);
  padding-inline:var(--ds-gut);
}
.astra-site:not([data-approved]) .ds-course-copy { min-width:0; }
.astra-site:not([data-approved]) .ds-course-copy .badge-nouveau { background:none; border:0; border-left:2px solid var(--offer-ink,var(--accent)); padding:8px 0 8px 14px; margin-bottom:24px; }
.astra-site:not([data-approved]) .ds-course-copy .hero-pain { max-width:52ch; font-size:12px !important; line-height:1.6; }
.astra-site:not([data-approved]) .ds-course-copy .hero-v2-title { text-align:left; font-size:clamp(36px,4.2vw,56px); line-height:1.08; max-width:19ch; margin:0 0 24px; }
.astra-site:not([data-approved]) .ds-course-copy .hero-v2-title br { display:none; }
.astra-site:not([data-approved]) .ds-course-copy .lead { font-size:18px; line-height:1.7; margin:0 0 24px; max-width:60ch; text-align:left; }
.astra-site:not([data-approved]) .ds-course-copy .hero-price-line { border-top:1px solid var(--line); padding-top:20px; margin-block:0 24px; }
.astra-site:not([data-approved]) .ds-course-copy .ctas { justify-content:flex-start; gap:12px; margin:24px 0 16px; }
.astra-site:not([data-approved]) .ds-course-copy .ctas .btn { padding:13px 18px; font-size:15px; }
.astra-site:not([data-approved]) .ds-course-cover { border:1px solid var(--line-strong); border-top:2px solid var(--offer-ink,var(--accent)); background:var(--panel); padding:28px; min-width:0; }
.astra-site:not([data-approved]) .ds-course-cover .propulser-mega-title-wrap { padding:0; margin:0; border:0; background:none; box-shadow:none; text-align:left; }
.astra-site:not([data-approved]) .ds-course-cover .propulser-mega-title { filter:none; }
.astra-site:not([data-approved]) .ds-course-cover h1 { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-start; gap:12px; margin:0; padding:12px 0 28px; font-size:32px; }
.astra-site:not([data-approved]) .ds-course-cover h1 picture { display:block; width:100%; max-width:360px; }
.astra-site:not([data-approved]) .ds-course-cover h1 img { display:block; width:100%; max-width:360px; height:auto; margin:0; }
.astra-site:not([data-approved]) .ds-course-cover .codex-title-badge { display:inline-block; font-size:15px; letter-spacing:.12em; padding:6px 10px; color:var(--text); border:1px solid var(--line-strong); }
.astra-site:not([data-approved]) .ds-course-cover .hero-pillars { grid-template-columns:minmax(0,1fr); margin:0; gap:0; }
.astra-site:not([data-approved]) .ds-course-cover .hero-pillar { display:grid; grid-template-columns:40px minmax(0,1fr); column-gap:16px; padding:24px 0; background:none; border:0; border-top:1px solid var(--line); backdrop-filter:none; box-shadow:none; }
.astra-site:not([data-approved]) .ds-course-cover .hero-pillar :is(.ico,.num) { grid-column:1; grid-row:1/3; width:40px; height:40px; margin:0; display:grid; place-items:center; font-size:15px; }
.astra-site:not([data-approved]) .ds-course-cover .hero-pillar :is(h3,p) { grid-column:2; }
.astra-site:not([data-approved]) .ds-course-cover .hero-pillar h3 { font-size:17px; line-height:1.35; }
.astra-site:not([data-approved]) .ds-course-cover .hero-pillar p { font-size:14px; }
.astra-site:not([data-approved]) .ds-course-cover .hero-pillar:last-child { padding-bottom:0; }

/* Pages éditoriales et personas : mêmes axes et mêmes repères. */
.astra-site[data-ui-app="site"]:not([data-approved]) .persona-hero,
.astra-site[data-ui-app="site"]:not([data-approved]) .hero-tarifs { text-align:left; padding-block:64px 48px; }
.astra-site[data-ui-app="site"]:not([data-approved]) :is(.persona-hero,.hero-tarifs,.page-header) h1 { font-size:clamp(38px,5vw,64px); line-height:1.08; max-width:20ch; margin:0 0 24px; }
.astra-site[data-ui-app="site"]:not([data-approved]) :is(.persona-hero,.hero-tarifs) :is(.lead,p) { margin-left:0; margin-right:0; max-width:65ch; font-size:18px; line-height:1.7; text-align:left; }
.astra-site[data-ui-app="site"]:not([data-approved]) :is(.persona-hero,.hero-tarifs,.page-header) > .ds-kicker { display:block; margin-bottom:20px; }
.astra-site[data-ui-app="site"]:not([data-approved]) .ds-persona-action { display:inline-flex; gap:16px; margin-top:24px; }
.astra-site[data-ui-app="site"]:not([data-approved]):has(.persona-hero) main > section:not(.persona-hero) { padding-block:48px; }
.astra-site[data-ui-app="site"]:not([data-approved]):has(.persona-hero) main > .divider { display:none; }
.astra-site[data-ui-app="site"]:not([data-approved]):has(.persona-hero) main > section > h2 { font-size:clamp(28px,3.3vw,40px); line-height:1.16; margin-top:0; margin-bottom:24px; }
.astra-site[data-ui-app="site"]:not([data-approved]):has(.persona-hero) :is(.pain-grid,.path-grid,.testi-grid) { gap:0; margin-block:24px 0; }
.astra-site[data-ui-app="site"]:not([data-approved]):has(.persona-hero) :is(.pain-card,.path-card,.testi-mini) { border:1px solid var(--line); padding:28px; background:var(--panel); box-shadow:none; margin:-1px 0 0 -1px; }
.astra-site[data-ui-app="site"]:not([data-approved]):has(.persona-hero) .offer-list { max-width:none; margin:24px 0 0; }
.astra-site[data-ui-app="site"]:not([data-approved]):has(.persona-hero) .offer-list-item { padding:18px 0; gap:24px; }
.astra-site[data-ui-app="site"]:not([data-approved]):has(.persona-hero) .offer-list .u-logo-1em { height:1.35em; }
.astra-site[data-ui-app="site"]:not([data-approved]) :is(.faq-persona,.lp-faq) { max-width:none; margin-inline:0; }
.astra-site[data-ui-app="site"]:not([data-approved]) :is(.faq-persona,.lp-faq) details { border:0; border-bottom:1px solid var(--line); margin:0; padding:18px 0; background:none; backdrop-filter:none; box-shadow:none; }
.astra-site[data-ui-app="site"]:not([data-approved]) :is(.faq-persona,.lp-faq) details:hover { transform:none; background:none; }
.astra-site[data-ui-app="site"]:not([data-approved]) :is(.faq-persona,.lp-faq) summary { min-height:32px; gap:20px; }
.astra-site[data-ui-app="site"]:not([data-approved]) :is(.lp-cta,.cta-persona,.cta-section) { max-width:none; margin:48px 0 0; padding:clamp(24px,4vw,40px); text-align:left; border:1px solid var(--line-strong); border-left:2px solid var(--offer-ink,var(--accent)); background:var(--panel); box-shadow:none; }
.astra-site[data-ui-app="site"]:not([data-approved]) :is(.lp-cta,.cta-persona,.cta-section) :is(h2,p) { margin-left:0; margin-right:0; max-width:65ch; }
.astra-site.ds-persona-page:not([data-approved]) main > .cta-persona { width:calc(100% - 2 * var(--ds-gut)); max-width:calc(var(--ds-width) - 2 * var(--ds-gut)); margin-inline:auto; }
.astra-site[data-ui-page="/blog/"]:not([data-approved]) main > div { padding-top:64px !important; padding-bottom:48px !important; }
.astra-site[data-ui-page="/blog/"]:not([data-approved]) .page-header { text-align:left; margin-bottom:36px; }
.astra-site[data-ui-page="/blog/"]:not([data-approved]) .page-header :is(.page-subtitle,.muted) { text-align:left !important; margin-left:0; margin-right:0; max-width:65ch; }
.astra-site[data-ui-page="/blog/"]:not([data-approved]) .categories { justify-content:flex-start; gap:8px; padding-block:20px; margin-bottom:28px; border-block:1px solid var(--line); }
.astra-site[data-ui-page="/blog/"]:not([data-approved]) .cat-btn { min-height:44px; padding:10px 14px; font-size:14px; }
.astra-site[data-ui-page="/blog/"]:not([data-approved]) .cat-btn.active { background:var(--primary); border:1px solid var(--primary); box-shadow:none; filter:none; }
.astra-site[data-ui-page="/blog/"]:not([data-approved]) .articles-grid { gap:0; }
.astra-site[data-ui-page="/blog/"]:not([data-approved]) .article-card { min-width:0; border:1px solid var(--line); margin:-1px 0 0 -1px; padding:28px; background:var(--panel); }
.astra-site[data-ui-page="/blog/"]:not([data-approved]) .card-category { background:none; color:var(--accent); border:0; border-left:2px solid var(--accent); padding:3px 0 3px 10px; }
.astra-site[data-ui-page="/tarifs"]:not([data-approved]) main > .container > :is(h2,p) { text-align:left !important; }
.astra-site[data-ui-page="/tarifs"]:not([data-approved]) .pricing-grid { gap:0; }
.astra-site[data-ui-page="/tarifs"]:not([data-approved]) .price-card { text-align:left; border:1px solid var(--line-strong); margin:-1px 0 0 -1px; box-shadow:none; background:var(--panel); }
.astra-site[data-ui-page="/tarifs"]:not([data-approved]) .price-card.featured::before { top:0; right:0; left:auto; transform:none; background:var(--primary); padding:4px 10px; }
.astra-site[data-ui-page="/tarifs"]:not([data-approved]) .price-card.featured { padding-top:40px; }
.astra-site[data-ui-page="/tarifs"]:not([data-approved]) .price-features li { align-items:baseline; }
.astra-site[data-ui-page="/la-bibliotheque/"]:not([data-approved]) main { padding-top:24px; }
.astra-site[data-ui-page="/la-bibliotheque/"]:not([data-approved]) main > .container { max-width:var(--ds-width) !important; }
.astra-site[data-ui-page="/la-bibliotheque/"]:not([data-approved]) main > .container > section:first-of-type { text-align:left !important; padding:40px 0 40px !important; }
.astra-site[data-ui-page="/la-bibliotheque/"]:not([data-approved]) main > .container > section:first-of-type h1 { font-size:clamp(34px,4.7vw,58px) !important; max-width:22ch; }
.astra-site[data-ui-page="/la-bibliotheque/"]:not([data-approved]) main > .container > section:first-of-type p { margin-left:0 !important; margin-right:0 !important; }
.astra-site[data-ui-page="/la-bibliotheque/"]:not([data-approved]) main > .container > section + div { text-align:left !important; }
.astra-site[data-ui-page="/la-bibliotheque/"]:not([data-approved]) .u-my-40 { margin-block:0; padding-block:48px; border-top:1px solid var(--line); }
.astra-site[data-ui-page="/la-bibliotheque/"]:not([data-approved]) .u-my-40 > :is(p,ul) { max-width:75ch; }
.astra-site[data-ui-page="/la-bibliotheque/"]:not([data-approved]) .u-my-40 > p:has(img) { max-width:none; }
.astra-site[data-ui-page="/la-bibliotheque/"]:not([data-approved]) .u-my-40 h2 { font-size:clamp(26px,3vw,38px); line-height:1.2; margin-top:0; max-width:26ch; }

/* Espace client : restaurer les accents sans changer sa disposition. */
.astra-site[data-ui-app="hub"]:not([data-approved]) .app-icon { --icon-color:var(--accent); }
.astra-site[data-ui-app="hub"]:not([data-approved]) .app-icon--skills { --icon-color:#FBBF24; }
.astra-site[data-ui-app="hub"]:not([data-approved]) .app-icon--labs { --icon-color:#22D3EE; }
.astra-site[data-ui-app="hub"]:not([data-approved]) .app-icon--biblio { --icon-color:#A78BFA; }
.astra-site[data-ui-app="hub"]:not([data-approved]) .app-icon--lettres { --icon-color:#F472B6; }
.astra-site[data-ui-app="hub"]:not([data-approved]) .app-icon--codex { --icon-color:#52D6AC; }
.astra-site[data-ui-app="hub"]:not([data-approved]) .app-icon--atelier-1 { --icon-color:#E9A17C; }
.astra-site[data-ui-app="hub"]:not([data-approved]) .app-icon--atelier-2 { --icon-color:#22D3EE; }
.astra-site[data-ui-app="hub"]:not([data-approved]) .app-icon--atelier-3 { --icon-color:#F472B6; }
.astra-site[data-ui-app="hub"]:not([data-approved]) .app-icon--forger { --icon-color:var(--offer-forger); }
.astra-site[data-ui-app="hub"]:not([data-approved]) .app-icon--propulser { --icon-color:var(--offer-propulser); }
.astra-site[data-ui-app="hub"]:not([data-approved]) .app-icon--ancrer { --icon-color:var(--offer-ancrer); }
.astra-site[data-ui-app="hub"]:not([data-approved]) .app-icon--rayonner { --icon-color:var(--offer-rayonner); }
.astra-site[data-ui-app="hub"]:not([data-approved]) .app-icon--eclore { --icon-color:var(--offer-eclore); }
html[data-theme="light"] .astra-site[data-ui-app="hub"]:not([data-approved]) :is(.app-icon--labs,.app-icon--atelier-2,.app-icon--forger) { --icon-color:#0E7490; }
html[data-theme="light"] .astra-site[data-ui-app="hub"]:not([data-approved]) :is(.app-icon--biblio,.app-icon--rayonner) { --icon-color:#7053B6; }
html[data-theme="light"] .astra-site[data-ui-app="hub"]:not([data-approved]) :is(.app-icon--lettres,.app-icon--atelier-3,.app-icon--ancrer) { --icon-color:#B52B76; }
html[data-theme="light"] .astra-site[data-ui-app="hub"]:not([data-approved]) :is(.app-icon--codex,.app-icon--eclore) { --icon-color:#087D58; }
html[data-theme="light"] .astra-site[data-ui-app="hub"]:not([data-approved]) .app-icon--skills { --icon-color:#946200; }
html[data-theme="light"] .astra-site[data-ui-app="hub"]:not([data-approved]) .app-icon--atelier-1 { --icon-color:#9E4528; }
html[data-theme="light"] .astra-site[data-ui-app="hub"]:not([data-approved]) .app-icon--propulser { --icon-color:#BE3C3C; }
.astra-site[data-ui-app="hub"]:not([data-approved]) .app-icon {
  background:color-mix(in srgb,var(--icon-color) 12%,var(--bg)) !important;
  border-color:color-mix(in srgb,var(--icon-color) 42%,transparent);
  color:var(--icon-color) !important;
  filter:none;
}
.astra-site[data-ui-app="hub"]:not([data-approved]) .app-icon svg { color:var(--icon-color) !important; }

/* Ateliers : mêmes surfaces que le hub, information utile et action visible. */
.astra-site:not([data-approved]) .ds-workshop-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; margin-block:40px; }
.astra-site:not([data-approved]) .ds-workshop-card { display:flex; flex-direction:column; align-items:flex-start; min-width:0; padding:28px; margin:-1px 0 0 -1px; border:1px solid var(--line-strong); background:var(--panel); color:var(--text); text-decoration:none; }
.astra-site:not([data-approved]) .ds-workshop-card:hover { background:var(--panel-strong); }
.astra-site:not([data-approved]) .ds-workshop-card .app-icon { display:grid; place-items:center; width:64px; height:64px; margin:0 0 28px; }
.astra-site:not([data-approved]) .ds-workshop-card .app-icon svg { width:30px; height:30px; }
.astra-site:not([data-approved]) .ds-workshop-card { border-top:2px solid var(--workshop-color,var(--accent)); }
.astra-site:not([data-approved]) .ds-workshop-number { font-size:11px; letter-spacing:.1em; color:var(--muted); margin-bottom:24px; }
.astra-site:not([data-approved]) .ds-workshop-icon { display:grid; place-items:center; width:64px; height:64px; margin:0 0 24px; border:1px solid color-mix(in srgb,var(--workshop-color) 45%,transparent); background:color-mix(in srgb,var(--workshop-color) 10%,var(--bg)); color:var(--workshop-color); }
html[data-theme="light"] .astra-site:not([data-approved]) .ds-workshop-icon { color:color-mix(in srgb,var(--workshop-color) 60%,#0B1226); }
.astra-site:not([data-approved]) .ds-workshop-card h2 { font-size:23px; line-height:1.3; margin:0 0 16px; }
.astra-site:not([data-approved]) .ds-workshop-card p { font-size:16px; color:var(--muted); margin:0 0 24px; }
.astra-site:not([data-approved]) .ds-workshop-card :is(.ds-workshop-meta,small) { display:block; color:var(--muted); font-size:13px; margin-bottom:24px; }
.astra-site:not([data-approved]) .ds-workshop-card :is(.ds-workshop-action,.btn) { margin-top:auto; }
.astra-site:not([data-approved]) .ds-workshop-action { display:flex; align-items:center; gap:12px; color:var(--accent); font-size:14px; font-weight:600; border-top:1px solid var(--line); padding-top:20px; width:100%; }

/* Catalogue Labs seulement : les cours conservent leur marque et leur usage. */
.astra-site[data-ui-page="/labs/"]:not([data-approved]) > .wrap { max-width:var(--ds-width); padding:48px var(--ds-gut) 64px; }
.astra-site[data-ui-page="/labs/"]:not([data-approved]) > .wrap > h1 { font-size:clamp(38px,5vw,64px); line-height:1.1; margin:0 0 20px; }
.astra-site[data-ui-page="/labs/"]:not([data-approved]) > .wrap > .lead { max-width:65ch; font-size:18px; line-height:1.65; margin-bottom:40px; }
.astra-site[data-ui-page="/labs/"]:not([data-approved]) .wrap .grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; }
.astra-site[data-ui-page="/labs/"]:not([data-approved]) .wrap .grid > .card { display:flex; flex-direction:column; min-width:0; margin:-1px 0 0 -1px; padding:28px; }
.astra-site[data-ui-page="/labs/"]:not([data-approved]) .wrap .card .st { float:none; align-self:flex-start; display:inline-flex; gap:5px; margin-bottom:16px; font-size:11px; }
.astra-site[data-ui-page="/labs/"]:not([data-approved]) .wrap .card h2 { font-size:20px; line-height:1.35; margin:0 0 12px; }
.astra-site[data-ui-page="/labs/"]:not([data-approved]) .wrap .card p { font-size:15px; line-height:1.65; }
.astra-site[data-ui-page="/labs/"]:not([data-approved]) .wrap .card .meta { margin-top:auto; padding-top:20px; }
.astra-site[data-ui-page="/labs/"]:not([data-approved]) .section-os > :is(h1,h2) { font-size:30px !important; margin-bottom:16px; }

/* Tableaux de bord des parcours : la reprise prime sur le grand anneau. */
.astra-site:is([data-ui-app="propulser"],[data-ui-app="propulser-codex"],[data-ui-app="labs"]):not([data-approved]) .dashboard-progress-section { flex-direction:row; justify-content:flex-start; align-items:center; gap:20px; margin:0 0 28px; padding:18px 0; border-block:1px solid var(--line); }
.astra-site:is([data-ui-app="propulser"],[data-ui-app="propulser-codex"],[data-ui-app="labs"]):not([data-approved]) .dashboard-progress-section .progress-ring-container { padding:0; flex:0 0 88px; }
.astra-site:is([data-ui-app="propulser"],[data-ui-app="propulser-codex"],[data-ui-app="labs"]):not([data-approved]) .dashboard-progress-section svg { width:88px; height:88px; filter:none; }
.astra-site:is([data-ui-app="propulser"],[data-ui-app="propulser-codex"],[data-ui-app="labs"]):not([data-approved]) .dashboard-progress-label { text-align:left; margin:0; }
.astra-site:is([data-ui-app="propulser"],[data-ui-app="propulser-codex"],[data-ui-app="labs"]):not([data-approved]) .next-module-card { margin:0 0 24px; }
.astra-site:is([data-ui-app="propulser"],[data-ui-app="propulser-codex"],[data-ui-app="labs"]):not([data-approved]) .next-module-card > .card { border-left:3px solid var(--lab-ink,var(--offer-propulser)) !important; padding:24px; }
.astra-site:is([data-ui-app="propulser"],[data-ui-app="propulser-codex"],[data-ui-app="labs"]):not([data-approved]) .next-module-title { font-size:22px; line-height:1.25; }

@media(max-width:1000px) {
  .astra-site:not([data-approved]) .ds-course-hero > .container { grid-template-columns:minmax(0,1fr); }
  .astra-site:not([data-approved]) .ds-course-cover { max-width:760px; width:100%; }
  .astra-site:not([data-approved]) .ds-course-copy .hero-v2-title { max-width:24ch; }
  .astra-site:not([data-approved]) .ds-workshop-grid { grid-template-columns:minmax(0,1fr); }
  .astra-site[data-ui-page="/labs/"]:not([data-approved]) .wrap .grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:700px) {
  .astra-site .ds-contact-grid { grid-template-columns:minmax(0,1fr); }
  .astra-site .ds-contact-grid > div { padding:0; border:0; }
  .astra-site .ds-contact-grid .ds-reservation { padding:20px; }
  .astra-site:not([data-approved]) .ds-offer-hero { grid-template-columns:minmax(0,1fr); padding:28px 0 40px; gap:32px; }
  .astra-site:not([data-approved]) .ds-offer-copy h1 { font-size:48px; }
  .astra-site:not([data-approved]) .ds-offer-copy .tagline { font-size:21px; }
  .astra-site:not([data-approved]) .ds-offer-copy .subtitle { font-size:16px; line-height:1.65; }
  .astra-site:not([data-approved]) .ds-offer-hero .lp-hero-img img { aspect-ratio:3/2; }
  .astra-site:not([data-approved]):has(.ds-offer-hero) main .py-3 { padding-block:36px; }
  .astra-site:not([data-approved]):has(.ds-offer-hero) .pour-qui-grid { grid-template-columns:minmax(0,1fr); }
  .astra-site:not([data-approved]) .ds-course-hero { padding:36px 0; }
  .astra-site:not([data-approved]) .ds-course-cover { padding:22px; }
  .astra-site:not([data-approved]) .ds-course-copy .hero-v2-title { font-size:38px; }
  .astra-site:not([data-approved]) .ds-course-copy .lead { font-size:17px; }
  .astra-site:not([data-approved]) .ds-course-copy .ctas { display:grid; grid-template-columns:minmax(0,1fr); }
  .astra-site[data-ui-app="site"]:not([data-approved]) :is(.persona-hero,.hero-tarifs) { padding-block:36px; }
  .astra-site[data-ui-app="site"]:not([data-approved]):has(.persona-hero) main > section:not(.persona-hero) { padding-block:36px; }
  .astra-site[data-ui-app="site"]:not([data-approved]):has(.persona-hero) :is(.pain-grid,.path-grid,.testi-grid) { grid-template-columns:minmax(0,1fr); }
  .astra-site[data-ui-app="site"]:not([data-approved]):has(.persona-hero) .offer-list-item { gap:16px; }
  .astra-site[data-ui-page="/blog/"]:not([data-approved]) main > div { padding-top:36px !important; }
  .astra-site[data-ui-page="/blog/"]:not([data-approved]) .articles-grid { grid-template-columns:minmax(0,1fr); }
  .astra-site[data-ui-page="/blog/"]:not([data-approved]) .categories { gap:6px; }
  .astra-site[data-ui-page="/blog/"]:not([data-approved]) .cat-btn { padding:9px 12px; font-size:13px; }
  .astra-site[data-ui-page="/la-bibliotheque/"]:not([data-approved]) .u-my-40 { padding-block:32px; }
  .astra-site[data-ui-page="/labs/"]:not([data-approved]) > .wrap { padding-top:32px; }
  .astra-site[data-ui-page="/labs/"]:not([data-approved]) .wrap .grid { grid-template-columns:minmax(0,1fr); }
  .astra-site:not([data-approved]) .ds-workshop-card { padding:24px; }
  .astra-site[data-ui-app="hub"]:not([data-approved]) .search-kbd { display:none; }
}
