/* =========================================================
   FULL WIDTH BREAKOUT — PAGE 19096
========================================================= */

body.page-id-19096 #intuitio-diag,
body.page-id-19096 #intuitio-diag .nav,
body.page-id-19096 #intuitio-diag .hero,
body.page-id-19096 #intuitio-diag .quiz-section,
body.page-id-19096 #intuitio-diag .context-section,
body.page-id-19096 #intuitio-diag .results-section,
body.page-id-19096 #intuitio-diag .footer {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
}

/* on garde le contenu lisible au centre */
body.page-id-19096 #intuitio-diag .container,
body.page-id-19096 #intuitio-diag .nav-inner,
body.page-id-19096 #intuitio-diag .hero-content,
body.page-id-19096 #intuitio-diag .question-card,
body.page-id-19096 #intuitio-diag .context-card,
body.page-id-19096 #intuitio-diag .score-banner,
body.page-id-19096 #intuitio-diag .diag-card,
body.page-id-19096 #intuitio-diag .projection-card,
body.page-id-19096 #intuitio-diag .cta-card,
body.page-id-19096 #intuitio-diag .formation-recommandee,
body.page-id-19096 #intuitio-diag .footer-inner {
  max-width: 1100px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
  box-sizing: border-box !important;
}

/* évite que le container global re-boxe toute la page */
body.page-id-19096 #intuitio-diag .container {
  width: 100% !important;
}

/* mobile */
@media (max-width: 768px) {
  body.page-id-19096 #intuitio-diag .container,
  body.page-id-19096 #intuitio-diag .nav-inner,
  body.page-id-19096 #intuitio-diag .hero-content,
  body.page-id-19096 #intuitio-diag .question-card,
  body.page-id-19096 #intuitio-diag .context-card,
  body.page-id-19096 #intuitio-diag .score-banner,
  body.page-id-19096 #intuitio-diag .diag-card,
  body.page-id-19096 #intuitio-diag .projection-card,
  body.page-id-19096 #intuitio-diag .cta-card,
  body.page-id-19096 #intuitio-diag .formation-recommandee,
  body.page-id-19096 #intuitio-diag .footer-inner {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

/* ── Reset scope ── */
#intuitio-diag * { box-sizing: border-box; }
#intuitio-diag a { text-decoration: none; }

/* ── Fonts Google ── */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;1,9..40,400&display=swap');

/* ============================================================
   DIAGNOSTIC STRATÉGIQUE — Académie Intuitio
   Palette: Bleu Nuit #111F37 · Dodger Blue #30b4f7 · Portage #7e72eb
   ============================================================ */

#intuitio-diag {
  /* Brand palette */
  --c-navy:        #111F37;
  --c-navy-deep:   #0b1524;
  --c-navy-mid:    #172843;
  --c-navy-light:  #1e3354;
  --c-navy-border: #263d5e;

  --c-blue:        #30b4f7;
  --c-blue-soft:   rgba(48,180,247,0.15);
  --c-blue-glow:   rgba(48,180,247,0.25);

  --c-violet:      #7e72eb;
  --c-violet-soft: rgba(126,114,235,0.15);

  --c-cornflower:  #6289ed;
  --c-turquoise:   #0bd4fc;
  --c-hawkes:      #d7e8fb;

  /* Text */
  --c-text:        #e8f0fb;
  --c-text-muted:  #8aaed4;
  --c-text-faint:  #3d5a7a;
  --c-text-inv:    #111F37;

  /* Surfaces */
  --c-surface:     #172843;
  --c-surface-2:   #1e3354;
  --c-border:      #263d5e;
  --c-divider:     #1d304e;

  /* Shadows */
  --shadow-sm: 0 1px 3px rgba(0,0,0,0.4);
  --shadow-md: 0 4px 20px rgba(0,0,0,0.5);
  --shadow-lg: 0 12px 48px rgba(0,0,0,0.6);
  --shadow-blue: 0 0 40px rgba(48,180,247,0.12), 0 0 80px rgba(126,114,235,0.08);

  /* Radius */
  --r-sm: 0.375rem;
  --r-md: 0.625rem;
  --r-lg: 1rem;
  --r-xl: 1.5rem;
  --r-full: 9999px;

  /* Transitions */
  --t: 180ms cubic-bezier(0.16,1,0.3,1);
  --t-slow: 400ms cubic-bezier(0.16,1,0.3,1);

  /* Type scale */
  --text-xs:   clamp(0.75rem,  0.7rem  + 0.25vw, 0.875rem);
  --text-sm:   clamp(0.875rem, 0.8rem  + 0.35vw, 1rem);
  --text-base: clamp(1rem,     0.95rem + 0.25vw, 1.125rem);
  --text-lg:   clamp(1.125rem, 1rem    + 0.75vw, 1.5rem);
  --text-xl:   clamp(1.5rem,   1.2rem  + 1.25vw, 2.25rem);
  --text-2xl:  clamp(2rem,     1.2rem  + 2.5vw,  3.5rem);
  --text-3xl:  clamp(2.5rem,   1rem    + 4vw,    4.5rem);

  /* Spacing */
  --s1:  0.25rem; --s2: 0.5rem;  --s3: 0.75rem;
  --s4:  1rem;    --s5: 1.25rem; --s6: 1.5rem;
  --s8:  2rem;    --s10:2.5rem;  --s12:3rem;
  --s16: 4rem;    --s20:5rem;    --s24:6rem;

  /* Content */
  --cw: 900px;
  --cw-narrow: 680px;

  /* Fonts */
  --font-display: 'Cormorant Garamond', Georgia, serif;
  --font-body:    'DM Sans', 'Helvetica Neue', sans-serif;
}

/* ─── RESET ─────────────────────────────────────────────────── */
*,*::before,*::after { box-sizing:border-box; margin:0; padding:0; }
#intuitio-diag {
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
#intuitio-diag {
  position:relative;
  min-height: 100dvh;
  font-family: var(--font-body);
  font-size: var(--text-base);
  color: var(--c-text);
  background-color: var(--c-navy);
  line-height: 1.65;
  overflow-x: hidden;
}
img,picture,video,canvas,svg { display:block; max-width:100%; height:auto; }
ul[role='list'],ol[role='list'] { list-style:none; }
input,button,textarea,select { font:inherit; color:inherit; }
h1,h2,h3,h4,h5,h6 { text-wrap:balance; line-height:1.15; }
p,li { text-wrap:pretty; }
button { cursor:pointer; background:none; border:none; }
a { color:inherit; text-decoration:none; }
:focus-visible { outline:2px solid var(--c-blue); outline-offset:3px; border-radius:var(--r-sm); }
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;}}

.logo-img {
  width: 40px;
  height: 40px;
  object-fit: contain;
}

/* ─── UTILITIES ──────────────────────────────────────────────── */
.container { width:100%; max-width:var(--cw); margin:0 auto; padding:0 var(--s6); }
.hidden { display:none!important; }

/* ─── BACKGROUND CANVAS ──────────────────────────────────────── */
#intuitio-diag #bg-canvas {
  position:absolute; inset:0; z-index:0; pointer-events:none;
  opacity:0.6;
}
#intuitio-diag > *:not(#bg-canvas) { position:relative; z-index:1; }

/* ─── NAV ────────────────────────────────────────────────────── */
.nav {
  position:sticky; top:0; z-index:100;
  padding:var(--s4) 0;
  background: color-mix(in oklab, var(--c-navy) 88%, transparent);
  backdrop-filter:blur(16px);
  border-bottom:1px solid var(--c-border);
}
.nav-inner {
  max-width:var(--cw); margin:0 auto; padding:0 var(--s6);
  display:flex; align-items:center; justify-content:space-between;
}
.logo { display:flex; align-items:center; gap:var(--s3); }
.logo-text {
  font-family:var(--font-body); font-size:var(--text-sm);
  color:var(--c-text); letter-spacing:0.01em;
}
.logo-text strong { color:var(--c-blue); font-weight:600; }
.nav-cta {
  font-size:var(--text-xs); font-weight:500;
  padding:var(--s2) var(--s5);
  border:1px solid var(--c-blue);
  border-radius:var(--r-full);
  color:var(--c-blue);
  transition:background var(--t), color var(--t);
}
.nav-cta:hover { background:var(--c-blue); color:var(--c-navy); }

/* ─── HERO ───────────────────────────────────────────────────── */
.hero {
  position:relative; min-height:94dvh;
  display:flex; align-items:center; justify-content:center;
  padding:var(--s24) 0 var(--s20);
}
.hero-bg-glow {
  position:absolute; inset:0; pointer-events:none;
  background:
    radial-gradient(ellipse 70% 50% at 50% 20%, rgba(48,180,247,0.10) 0%, transparent 70%),
    radial-gradient(ellipse 50% 40% at 20% 70%, rgba(126,114,235,0.10) 0%, transparent 60%),
    radial-gradient(ellipse 40% 40% at 80% 60%, rgba(11,212,252,0.07) 0%, transparent 60%);
}
.hero-content { text-align:center; max-width:var(--cw-narrow); }

.eyebrow {
  display:inline-block; font-size:var(--text-xs); font-weight:500;
  letter-spacing:0.16em; text-transform:uppercase; color:var(--c-blue);
  margin-bottom:var(--s5);
  padding:var(--s2) var(--s4);
  border:1px solid var(--c-blue-glow);
  border-radius:var(--r-full);
  background:var(--c-blue-soft);
}

.hero-title {
  font-family:var(--font-display);
  font-size:var(--text-3xl); font-weight:400;
  color:var(--c-text); margin-bottom:var(--s6); line-height:1.12;
  text-transform: none !important;
}
.hero-title em { font-style:italic; color:var(--c-blue); }

.hero-subtitle {
  font-size:var(--text-lg); color:var(--c-text-muted);
  line-height:1.7; margin-bottom:var(--s8);
}

.hero-promises {
  display:flex; flex-wrap:wrap; gap:var(--s3) var(--s5);
  justify-content:center; margin-bottom:var(--s8);
}
.promise-item {
  display:flex; align-items:center; gap:var(--s2);
  font-size:var(--text-sm); color:var(--c-text-muted);
}
.promise-item svg { color:var(--c-blue); flex-shrink:0; }

.btn-primary {
  display:inline-flex; align-items:center; gap:var(--s3);
  padding:var(--s4) var(--s8);
  background:linear-gradient(135deg, var(--c-blue), var(--c-violet));
  color:#fff; font-size:var(--text-base); font-weight:600;
  letter-spacing:0.02em; border-radius:var(--r-full);
  transition:filter var(--t), transform var(--t), box-shadow var(--t);
  box-shadow:0 4px 24px var(--c-blue-glow);
}
.btn-primary:hover { filter:brightness(1.1); transform:translateY(-2px); box-shadow:0 8px 36px var(--c-blue-glow); }
.btn-primary:active { transform:translateY(0); }

.hero-note {
  font-size:var(--text-xs); color:var(--c-text-faint);
  margin-top:var(--s4); font-style:italic;
}

/* ─── QUIZ SECTION ───────────────────────────────────────────── */
.quiz-section { padding:var(--s12) 0 var(--s20); }

.progress-wrap { margin-bottom:var(--s8); }
.progress-header {
  display:flex; justify-content:space-between; align-items:center;
  margin-bottom:var(--s3);
}
.progress-label { font-size:var(--text-sm); color:var(--c-text-muted); font-weight:500; }
.progress-bloc {
  font-size:var(--text-xs); font-weight:600;
  letter-spacing:0.12em; text-transform:uppercase;
  color:var(--c-blue); padding:var(--s1) var(--s3);
  background:var(--c-blue-soft); border-radius:var(--r-full);
}
.progress-bar-track {
  width:100%; height:4px; background:var(--c-border);
  border-radius:var(--r-full); overflow:hidden;
}
.progress-bar-fill {
  height:100%;
  background:linear-gradient(90deg, var(--c-blue), var(--c-violet));
  border-radius:var(--r-full);
  transition:width 0.4s cubic-bezier(0.16,1,0.3,1);
}

.question-card {
  background:var(--c-surface); border:1px solid var(--c-border);
  border-radius:var(--r-xl); padding:var(--s12);
  max-width:720px; margin:0 auto;
  box-shadow:var(--shadow-blue);
  animation:fadeUp 0.4s ease-out both;
}
@keyframes fadeUp { from{opacity:0;transform:translateY(16px)} to{opacity:1;transform:translateY(0)} }

.question-number {
  font-family:var(--font-display); font-size:clamp(3rem,6vw,5rem);
  font-weight:300; color:var(--c-blue); opacity:0.25;
  line-height:1; margin-bottom:var(--s4);
}
.question-text {
  font-family:var(--font-display); font-size:var(--text-xl);
  font-weight:400; color:var(--c-text); margin-bottom:var(--s8);
  line-height:1.35;
}

.answers-grid {
  display:grid; grid-template-columns:1fr 1fr;
  gap:var(--s3); margin-bottom:var(--s8);
}
.answer-btn {
  display:flex; align-items:flex-start; gap:var(--s3);
  padding:var(--s4) var(--s5);
  background:var(--c-navy-mid); border:1.5px solid var(--c-border);
  border-radius:var(--r-lg); color:var(--c-text);
  font-size:var(--text-sm); text-align:left; line-height:1.5;
  transition:border-color var(--t), background var(--t), color var(--t);
  cursor:pointer;
}
.answer-btn:hover {
  border-color:var(--c-blue);
  background:var(--c-blue-soft);
}
.answer-btn.selected {
  border-color:var(--c-blue);
  background:var(--c-blue-soft);
  color:var(--c-text);
}
.answer-letter {
  display:flex; align-items:center; justify-content:center;
  width:26px; height:26px; flex-shrink:0;
  border-radius:var(--r-sm);
  background:var(--c-border);
  font-size:var(--text-xs); font-weight:700; color:var(--c-text-muted);
  transition:background var(--t), color var(--t);
}
.answer-btn.selected .answer-letter,
.answer-btn:hover .answer-letter {
  background:var(--c-blue); color:#fff;
}
.answer-text { flex:1; }

.quiz-nav {
  display:flex; justify-content:space-between; align-items:center;
}
.btn-prev, .btn-next {
  display:flex; align-items:center; gap:var(--s2);
  padding:var(--s3) var(--s5);
  font-size:var(--text-sm); font-weight:500;
  border-radius:var(--r-full);
  border:1px solid var(--c-border);
  color:var(--c-text-muted);
  transition:border-color var(--t), color var(--t), background var(--t);
}
.btn-prev:hover:not(:disabled), .btn-next:hover:not(:disabled) {
  border-color:var(--c-blue); color:var(--c-blue);
  background:var(--c-blue-soft);
}
.btn-prev:disabled, .btn-next:disabled { opacity:0.3; cursor:not-allowed; }
.btn-next.active-next {
  background:linear-gradient(135deg, var(--c-blue), var(--c-violet));
  border-color:transparent; color:#fff;
}

/* ─── CONTEXT SECTION ────────────────────────────────────────── */
.context-section { padding:var(--s12) 0 var(--s20); }
.context-card {
  background:var(--c-surface); border:1px solid var(--c-border);
  border-radius:var(--r-xl); padding:var(--s12);
  max-width:680px; margin:0 auto;
  box-shadow:var(--shadow-blue);
}
.context-header {
  display:flex; align-items:center; gap:var(--s4);
  margin-bottom:var(--s3);
}
.context-icon {
  width:52px; height:52px; flex-shrink:0;
  display:flex; align-items:center; justify-content:center;
  background:var(--c-blue-soft); border:1px solid var(--c-blue-glow);
  border-radius:var(--r-lg); color:var(--c-blue);
}
.section-eyebrow {
  font-size:var(--text-xs); font-weight:500;
  letter-spacing:0.14em; text-transform:uppercase;
  color:var(--c-blue); margin-bottom:var(--s1);
}
.section-title {
  font-family:var(--font-display); font-size:var(--text-xl);
  font-weight:400; color:var(--c-text);
}
.context-subtitle {
  font-size:var(--text-sm); color:var(--c-text-muted);
  margin-bottom:var(--s8);
}

.context-form { display:flex; flex-direction:column; gap:var(--s5); }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:var(--s4); }
.form-group { display:flex; flex-direction:column; gap:var(--s2); }
.form-group.full { grid-column:1/-1; }
.form-label {
  font-size:var(--text-sm); font-weight:500; color:var(--c-text);
}
.optional { font-size:var(--text-xs); color:var(--c-text-faint); font-weight:400; }
.form-input {
  padding:var(--s3) var(--s4);
  background:var(--c-navy); border:1px solid var(--c-border);
  border-radius:var(--r-md); color:var(--c-text);
  font-size:var(--text-base);
  transition:border-color var(--t), box-shadow var(--t);
}
.form-input:focus { outline:none; border-color:var(--c-blue); box-shadow:0 0 0 3px var(--c-blue-soft); }
.form-input::placeholder { color:var(--c-text-faint); }
.form-input[type="date"]::-webkit-calendar-picker-indicator { filter:invert(0.7); cursor:pointer; }
.form-check-label {
  display:flex; align-items:flex-start; gap:var(--s3);
  font-size:var(--text-sm); color:var(--c-text-muted); cursor:pointer;
}
.form-checkbox {
  width:18px; height:18px; flex-shrink:0; margin-top:2px;
  accent-color:var(--c-blue); cursor:pointer;
}
.full-btn { width:100%; justify-content:center; border-radius:var(--r-lg); padding:var(--s4) var(--s8); }
.form-input.error { border-color:#e85d75; }

/* ─── RESULTS SECTION ────────────────────────────────────────── */
.results-section { padding:var(--s12) 0 var(--s24); }

/* Score banner */
.score-banner {
  display:flex; align-items:center; justify-content:space-between;
  background:linear-gradient(135deg, var(--c-surface), var(--c-surface-2));
  border:1px solid var(--c-border);
  border-radius:var(--r-xl); padding:var(--s10) var(--s12);
  margin-bottom:var(--s6); gap:var(--s8);
  box-shadow:var(--shadow-blue);
  animation:fadeUp 0.5s ease-out both;
}
.score-greeting {
  font-size:var(--text-sm); color:var(--c-text-muted);
  text-transform:uppercase; letter-spacing:0.1em; margin-bottom:var(--s2);
}
.score-level {
  font-family:var(--font-display); font-size:var(--text-2xl);
  font-weight:400; color:var(--c-text); margin-bottom:var(--s2);
}
.score-tagline {
  font-size:var(--text-base); color:var(--c-blue); font-style:italic;
}
.score-right { flex-shrink:0; }
.score-circle { position:relative; width:120px; height:120px; }
.score-ring { width:120px; height:120px; transform:rotate(-90deg); }
.ring-bg { stroke:var(--c-border); }
.ring-fill {
  stroke:url(#ring-gradient);
  transition:stroke-dashoffset 1.2s cubic-bezier(0.16,1,0.3,1);
}
.score-inner {
  position:absolute; inset:0;
  display:flex; align-items:center; justify-content:center; flex-direction:column;
}
.score-num {
  font-family:var(--font-display); font-size:2.5rem;
  font-weight:500; color:var(--c-blue); line-height:1;
}
.score-denom { font-size:var(--text-xs); color:var(--c-text-muted); }

/* KPI row */
.kpi-row {
  display:grid; grid-template-columns:repeat(4, 1fr);
  gap:var(--s4); margin-bottom:var(--s6);
}
.kpi-card {
  background:var(--c-surface); border:1px solid var(--c-border);
  border-radius:var(--r-lg); padding:var(--s5);
  text-align:center;
  animation:fadeUp 0.5s ease-out 0.1s both;
}
.kpi-label {
  font-size:var(--text-xs); color:var(--c-text-muted);
  text-transform:uppercase; letter-spacing:0.1em; margin-bottom:var(--s2);
}
.kpi-value {
  font-family:var(--font-display); font-size:var(--text-lg);
  font-weight:500; color:var(--c-blue);
}

/* Diagnostic card */
.diag-card {
  background:var(--c-surface); border:1px solid var(--c-border);
  border-radius:var(--r-xl); padding:var(--s10);
  margin-bottom:var(--s6);
  animation:fadeUp 0.5s ease-out 0.15s both;
}
.diag-header {
  display:flex; align-items:center; gap:var(--s4);
  margin-bottom:var(--s5);
}
.diag-icon {
  width:44px; height:44px; flex-shrink:0;
  display:flex; align-items:center; justify-content:center;
  background:var(--c-blue-soft); border:1px solid var(--c-blue-glow);
  border-radius:var(--r-md); color:var(--c-blue);
}
.diag-header h3 {
  font-family:var(--font-display); font-size:var(--text-lg);
  font-weight:500; color:var(--c-text);
}
.diag-intro {
  font-family:var(--font-display); font-size:var(--text-lg);
  font-style:italic; color:var(--c-text);
  border-left:3px solid var(--c-blue);
  padding-left:var(--s5); margin-bottom:var(--s5);
  line-height:1.65;
}
.diag-#intuitio-diag {
  font-size:var(--text-base); color:var(--c-text-muted);
  line-height:1.8; white-space:pre-line;
}

/* Block analysis grid */
.blocks-grid {
  display:grid; grid-template-columns:repeat(2, 1fr);
  gap:var(--s4); margin-bottom:var(--s6);
}
.block-card {
  background:var(--c-surface); border:1px solid var(--c-border);
  border-radius:var(--r-lg); padding:var(--s6);
  animation:fadeUp 0.5s ease-out 0.2s both;
}
.block-title {
  font-size:var(--text-sm); font-weight:600;
  color:var(--c-text); text-transform:uppercase; letter-spacing:0.06em;
  margin-bottom:var(--s3);
}
.block-bar-wrap {
  width:100%; height:6px; background:var(--c-border);
  border-radius:var(--r-full); overflow:hidden; margin-bottom:var(--s3);
}
.block-bar-fill {
  height:100%; border-radius:var(--r-full);
  background:linear-gradient(90deg, var(--c-blue), var(--c-violet));
  width:0%; transition:width 1s cubic-bezier(0.16,1,0.3,1) 0.3s;
}
.block-score {
  font-family:var(--font-display); font-size:var(--text-lg);
  color:var(--c-blue); margin-bottom:var(--s2);
}
.block-desc { font-size:var(--text-xs); color:var(--c-text-muted); line-height:1.6; }

/* Projection */
.projection-card {
  background:linear-gradient(135deg, var(--c-surface-2), var(--c-surface));
  border:1px solid var(--c-blue-glow);
  border-radius:var(--r-xl); padding:var(--s10);
  margin-bottom:var(--s6);
  box-shadow:var(--shadow-blue);
  animation:fadeUp 0.5s ease-out 0.25s both;
}
.projection-header {
  display:flex; align-items:center; gap:var(--s4);
  margin-bottom:var(--s5); color:var(--c-blue);
}
.projection-header h3 {
  font-family:var(--font-display); font-size:var(--text-lg);
  font-weight:500; color:var(--c-text);
}
.projection-text {
  font-size:var(--text-base); color:var(--c-text-muted);
  line-height:1.8; margin-bottom:var(--s6);
}
.projection-milestones {
  display:grid; grid-template-columns:repeat(3,1fr); gap:var(--s4);
}
.milestone {
  padding:var(--s4);
  background:var(--c-navy-mid); border-radius:var(--r-md);
  border:1px solid var(--c-border);
}
.milestone-time {
  font-size:var(--text-xs); font-weight:600;
  color:var(--c-blue); letter-spacing:0.1em;
  text-transform:uppercase; margin-bottom:var(--s2);
}
.milestone-text { font-size:var(--text-sm); color:var(--c-text-muted); line-height:1.6; }

/* Results CTA */
.results-cta { animation:fadeUp 0.5s ease-out 0.3s both; }
.cta-card {
  background:var(--c-surface); border:1px solid var(--c-border);
  border-radius:var(--r-xl); padding:var(--s10);
  margin-bottom:var(--s5); text-align:center;
}
.cta-eyebrow {
  font-size:var(--text-xs); font-weight:600;
  letter-spacing:0.14em; text-transform:uppercase;
  color:var(--c-blue); margin-bottom:var(--s3);
}
.cta-title {
  font-family:var(--font-display); font-size:var(--text-xl);
  font-weight:400; color:var(--c-text); margin-bottom:var(--s4);
}
.cta-#intuitio-diag {
  font-size:var(--text-base); color:var(--c-text-muted);
  line-height:1.7; margin-bottom:var(--s6);
  max-width:56ch; margin-left:auto; margin-right:auto;
}
.pdf-wrap {
  display:flex; align-items:center; justify-content:center; gap:var(--s4); flex-wrap:wrap;
}
.btn-pdf {
  display:inline-flex; align-items:center; gap:var(--s3);
  padding:var(--s3) var(--s6);
  border:1.5px solid var(--c-blue); color:var(--c-blue);
  font-size:var(--text-sm); font-weight:500;
  border-radius:var(--r-full);
  transition:background var(--t), color var(--t);
}
.btn-pdf:hover { background:var(--c-blue); color:var(--c-navy); }
.btn-ghost {
  display:inline-flex; align-items:center; gap:var(--s2);
  padding:var(--s3) var(--s5); font-size:var(--text-sm);
  color:var(--c-text-muted); border:1px solid var(--c-border);
  border-radius:var(--r-full);
  transition:color var(--t), border-color var(--t);
}
.btn-ghost:hover { color:var(--c-text); border-color:var(--c-text-faint); }

/* ─── FOOTER ─────────────────────────────────────────────────── */
.footer {
  padding:var(--s10) 0;
  border-top:1px solid var(--c-border);
}
.footer-inner {
  display:flex; flex-direction:column; align-items:center;
  gap:var(--s4); text-align:center;
}
.footer-logo {
  display:flex; align-items:center; gap:var(--s3);
  font-size:var(--text-sm); color:var(--c-text-muted);
}
.footer-note {
  font-size:var(--text-xs); color:var(--c-text-faint); max-width:52ch;
}

/* SVG gradient for ring */
.score-circle svg defs { position:absolute; }

/* ─── RESPONSIVE ─────────────────────────────────────────────── */
@media(max-width:680px){
  .answers-grid { grid-template-columns:1fr; }
  .kpi-row { grid-template-columns:repeat(2,1fr); }
  .blocks-grid { grid-template-columns:1fr; }
  .projection-milestones { grid-template-columns:1fr; }
  .form-row { grid-template-columns:1fr; }
  .score-banner { flex-direction:column; text-align:center; }
  .question-card, .context-card { padding:var(--s6); }
}
@media(max-width:400px){
  .kpi-row { grid-template-columns:1fr 1fr; }
}

/* ─── FORMATION RECOMMANDÉE ─────────────────────────────────── */
.formation-recommandee {
  background: linear-gradient(135deg, rgba(48,180,247,0.08), rgba(126,114,235,0.12));
  border: 1.5px solid var(--c-blue);
  border-radius: var(--r-xl);
  padding: var(--s10) var(--s12);
  margin-bottom: var(--s6);
  text-align: center;
  box-shadow: 0 0 50px rgba(48,180,247,0.12), 0 0 100px rgba(126,114,235,0.06);
  animation: fadeUp 0.5s ease-out 0.2s both;
  position: relative;
  overflow: hidden;
}
.formation-recommandee::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 60% 40% at 50% 0%, rgba(48,180,247,0.08) 0%, transparent 70%);
  pointer-events: none;
}
.formation-badge {
  display: inline-block;
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--c-blue);
  padding: var(--s2) var(--s4);
  background: var(--c-blue-soft);
  border: 1px solid var(--c-blue-glow);
  border-radius: var(--r-full);
  margin-bottom: var(--s5);
}
.formation-title {
  font-family: var(--font-display);
  font-size: var(--text-xl);
  font-weight: 400;
  color: var(--c-text);
  margin-bottom: var(--s4);
  line-height: 1.2;
}
.formation-desc {
  font-size: var(--text-base);
  color: var(--c-text-muted);
  line-height: 1.7;
  max-width: 58ch;
  margin: 0 auto var(--s6);
}
.formation-secondary {
  margin-top: var(--s5);
  font-size: var(--text-sm);
  color: var(--c-text-faint);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--s2);
  flex-wrap: wrap;
}
.secondary-link {
  color: var(--c-violet);
  font-weight: 500;
  text-decoration: underline;
  text-decoration-color: rgba(126,114,235,0.4);
  text-underline-offset: 3px;
  transition: color var(--t);
}
.secondary-link:hover { color: var(--c-blue); }

/* ─── FORM ERROR ────────────────────────────────────────────── */
.form-error {
  display: flex;
  align-items: center;
  gap: var(--s3);
  padding: var(--s3) var(--s5);
  background: rgba(232, 93, 117, 0.1);
  border: 1px solid rgba(232, 93, 117, 0.3);
  border-radius: var(--r-md);
  color: #e85d75;
  font-size: var(--text-sm);
}

.form-sending {
  text-align: center;
  font-size: var(--text-sm);
  color: var(--c-blue);
  font-style: italic;
  animation: pulse 1.5s ease-in-out infinite;
}
@keyframes pulse { 0%,100%{opacity:1} 50%{opacity:0.5} }

/* ─── PDF WRAP ──────────────────────────────────────────────── */
.pdf-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--s4);
  padding: var(--s8) 0 var(--s4);
}
.pdf-label {
  font-size: var(--text-sm);
  color: var(--c-text-muted);
}

/* ─── REQUIRED / OPTIONAL LABELS ───────────────────────────── */
.required { color: var(--c-blue); font-size: var(--text-xs); }
.optional { color: var(--c-text-faint); font-size: var(--text-xs); font-weight: 400; }


/* ── Overrides WordPress ── */
#intuitio-diag .nav { position: relative; top: auto; }
#intuitio-diag body { background: transparent; }
