/* Express v5: the existing test, presented as preparation for consultation. */
.diagnostic-intro header { padding:23px max(28px,calc((100vw - 1240px)/2)); margin-bottom:0; }
.diagnostic-intro .main-container { padding:54px 32px 24px; }
#start-screen { max-width:1240px; }
.diagnostic-landing .intro-section { grid-template-columns:1.12fr 1fr; gap:64px; padding:14px 0 56px; }
.intro-copy,.intro-report { min-width:0; }
.intro-copy { align-self:start; padding-top:14px; }
.intro-label { font-weight:500; }
.intro-label::before { width:24px; height:1px; border-radius:0; }
#start-screen .intro-copy h1 { font-size:clamp(46px,5.3vw,76px); line-height:1.06; letter-spacing:-.04em; margin:27px 0; max-width:12ch; }
#diagnostic-title>span { margin:0; }
.intro-description { font-size:18px; line-height:1.7; }
.intro-deliverable { font-size:16px; margin-top:22px; }
.diagnostic-landing .hero-start-action { max-width:435px; }
.diagnostic-landing .btn-start { max-width:435px; padding:18px 20px 18px 24px; border-radius:8px; }
.diagnostic-landing .btn-start strong { font-size:16px; line-height:1.35; letter-spacing:-.015em; }
.diagnostic-landing .btn-start .cta-arrow { width:36px; height:36px; font-size:22px; }
.diagnostic-landing .btn-start:hover .cta-arrow { background:#07182f; color:var(--gold); }
.diagnostic-landing .btn-start:active { transform:scale(.985); }
.start-transparency { max-width:44ch; margin-bottom:8px; }
.quiet-link { text-decoration:none; font-size:13px; }
.quiet-link:hover { text-decoration:underline; }
.intro-report { padding:18px; background:#183451; border:1px solid #3e5874; border-radius:12px; box-shadow:none; }
.report-topline { font-size:12px; color:#fff; padding:0 3px 16px; gap:12px; }
.report-topline>span:first-child { font-weight:600; }
.report-topline-divider { margin:0 8px; color:#829bb5; }
.report-topline>span:last-child { padding:0; border:0; color:#d6e0eb; font-size:11px; }
.intro-report .preview-card { padding:26px; border-radius:5px; background:#f5f8fc; }
.intro-report h2 { font-size:24px; line-height:1.2; margin:0 0 10px; }
.intro-report .report-subtitle { font-size:12px; line-height:1.6; }
.intro-report .report-chart-legend { gap:5px; }
.intro-report .report-chart-legend li { border-radius:4px; }
.intro-report .report-chart-rows { gap:12px; }
.intro-report .report-chart-status { display:inline; margin-left:8px; font-size:10px; }
.intro-report .report-chart-track { height:12px; }
.intro-report .report-chart-track>span { top:3px; height:6px; }
.intro-report .chart-note { font-size:11px; line-height:1.6; margin-top:14px; }
.intro-report .report-chart-context { display:none; }
.report-bottomline { padding:18px 4px 0; color:#fff; line-height:1.65; }
.report-bottomline>span { font-size:12px; color:#fff; }
.report-bottomline small { font-size:12px; color:#b9c9dc; }
.report-bottomline>.report-file-icon { display:grid; place-items:center; width:34px; height:38px; border:1px solid #667e99; border-radius:5px; font-size:22px; color:var(--gold); flex-shrink:0; }
.consultation-bridge { display:grid; grid-template-columns:.65fr 2fr auto; align-items:center; gap:30px; padding:27px 0; border-top:1px solid #35506c; border-bottom:1px solid #35506c; }
.bridge-label { color:var(--gold); font-size:13px; }
.consultation-bridge p { color:#b9c9dc; font-size:16px; line-height:1.7; }
.consultation-bridge strong { font-weight:500; color:#fff; }
.consultation-bridge a { display:flex; gap:20px; align-items:center; min-height:44px; color:var(--gold); text-decoration:none; font-size:13px; }
.section-heading { gap:64px; margin-bottom:34px; }
.section-heading h2 { letter-spacing:-.035em; }
.recognition-section { padding:82px 0 68px; border:0; }
.recognition-grid { gap:36px; }
.recognition-grid article,.recognition-grid article:last-child { padding:27px 0 17px; border:0; border-top:1px solid #35506c; }
.recognition-grid svg { width:28px; height:28px; margin-bottom:23px; }
.recognition-grid h3 { font-size:18px; }
.recognition-grid p { line-height:1.7; }
.diagnostic-landing .warmup { grid-template-columns:1fr 1.12fr; gap:54px; margin-bottom:80px; }
.diagnostic-landing .warmup-copy h2 { font-size:clamp(28px,2.7vw,36px); line-height:1.18; margin:16px 0 22px; }
.warmup-copy .section-eyebrow { font-size:12px; font-weight:500; }
.diagnostic-landing .warmup-copy p { font-size:15px; line-height:1.75; color:#435c77; }
.diagnostic-landing .warmup-action { color:#07182f; text-decoration:none; }
.warmup-action:focus-visible { outline:3px solid #0b3b91; outline-offset:4px; }
.promo-heading h2 { font-size:15px; color:#07182f; }
.promo-heading>span,.promo-note { color:#52677f; font-size:12px; }
#diagnosticVideoPlayer { border:0; border-radius:8px; }
.functions-section { padding-bottom:80px; }
.diagnostic-landing .system-node-list { gap:0 64px; }
.diagnostic-landing .system-node span { font-size:18px; }
.diagnostic-landing .system-node em { font-size:14px; line-height:1.7; }
.method-boundary { border:0; padding:0; margin-top:25px; font-size:12px; line-height:1.7; }
.academy-section { grid-template-columns:.85fr 1.15fr; border:0; margin-bottom:80px; }
.academy-person { min-height:430px; }
.academy-person img { object-position:50% 28%; }
.academy-copy { padding:44px 50px; }
.academy-copy .section-eyebrow { font-size:12px; font-weight:400; }
.academy-copy h2 { font-size:clamp(30px,3vw,42px); line-height:1.14; }
.process-section { padding-bottom:66px; }
.process-list { gap:36px; }
.process-list li { display:block; padding-top:24px; }
.step-number { margin-bottom:22px; }
.process-list h3 { font-size:18px; }
.first-question-section { align-items:center; padding:42px; gap:50px; margin-bottom:80px; border:0; background:#f5f8fc; }
.first-question-intro .section-eyebrow { font-size:12px; font-weight:500; }
.first-question-intro h2 { font-size:34px; margin:17px 0; }
.first-question-preview { min-width:0; padding:0 0 0 34px; background:none; border:0; border-left:1px solid #cbd7e5; border-radius:0; }
.question-position { color:#52677f; }
#firstQuestionText { font-size:18px; margin:15px 0 22px; }
.first-question-options button:focus-visible { outline:3px solid #0b3b91; outline-offset:3px; }
.faq-section { display:grid; grid-template-columns:.78fr 1.22fr; gap:64px; padding-bottom:80px; }
.faq-section .section-heading { display:block; }
.faq-section .section-heading h2 { max-width:14ch; }
.faq-section .section-heading p { margin-top:20px; }
.faq-list summary { font-size:16px; font-weight:500; }
.faq-list details>p { font-size:14px; }
.final-invitation { padding:44px; gap:60px; grid-template-columns:1.1fr 1fr; }
.final-invitation .section-eyebrow { font-size:12px; font-weight:500; }
.final-invitation h2 { font-size:40px; line-height:1.12; margin:18px 0; }
.diagnostic-footer { margin-top:0; border:0; }
/* Keep the question and result screens visually connected to the introduction. */
.question-card { backdrop-filter:none; box-shadow:none; border-color:#cbd7e5; }
.question-map-head span { text-transform:none; letter-spacing:0; font-size:12px; }
.lead-gate { box-shadow:none; }
.btn-consult { background:#07182f; box-shadow:none; border-radius:10px; }
.btn-consult:hover { background:#112b49; box-shadow:none; transform:none; }
.btn-consult .consult-arrow { color:#f2ca75; }
.btn-consult:focus-visible { outline:3px solid #0b3b91; outline-offset:4px; }
.btn-download { box-shadow:none; }
@media(min-width:761px) and (max-width:1100px) {
  .diagnostic-landing .intro-section { gap:32px; grid-template-columns:1fr 1fr; }
  #start-screen .intro-copy h1 { font-size:clamp(38px,4.7vw,52px); }
  .intro-description { font-size:16px; }
  .intro-report { padding:12px; }
  .intro-report .preview-card { padding:22px 16px; }
  .intro-report .report-chart-status { display:block; margin-left:0; }
  .diagnostic-landing .warmup { padding:32px; gap:32px; }
  .academy-copy { padding:34px; }
  .final-invitation { gap:32px; padding:34px; }
  .final-invitation h2 { font-size:34px; }
  .first-question-section { padding:32px; gap:30px; }
  .faq-section { gap:36px; }
}
@media(max-width:760px) {
  .diagnostic-intro header { padding:16px 22px; }
  .diagnostic-intro .main-container { padding:24px 22px 18px; }
  .diagnostic-landing .intro-section { grid-template-columns:1fr; gap:34px; padding:12px 0 32px; }
  .intro-copy { padding-top:0; }
  #start-screen .intro-copy h1 { font-size:clamp(39px,10.8vw,64px); line-height:1.08; max-width:13ch; margin:24px 0; }
  .intro-description { font-size:16px; line-height:1.7; }
  .intro-deliverable { font-size:14px; margin-top:17px; }
  .diagnostic-landing .hero-start-action { max-width:none; margin-top:24px; }
  .diagnostic-landing .btn-start { max-width:none; min-height:76px; padding:16px; grid-template-columns:minmax(0,1fr) 32px; column-gap:10px; }
  .diagnostic-landing .btn-start strong { font-size:14px; }
  .diagnostic-landing .btn-start .cta-arrow { width:30px; height:30px; font-size:19px; }
  .start-transparency { font-size:11px; }
  .intro-report { padding:13px; }
  .report-topline { font-size:11px; gap:6px; padding-bottom:14px; }
  .report-topline>span:last-child { font-size:10px; }
  .report-topline-divider { margin:0 5px; }
  .intro-report .preview-card { padding:22px 15px; }
  .intro-report h2 { font-size:23px; }
  .intro-report .report-chart-status { display:block; margin-left:0; font-size:11px; }
  .intro-report .report-chart-label { font-size:12px; }
  .intro-report .report-chart-legend li { flex-direction:row; align-items:center; font-size:10px; padding:9px 5px; }
  .intro-report .report-chart-legend b { font-size:11px; }
  .intro-report .report-chart-legend .report-zone-symbol { display:none; }
  .consultation-bridge { grid-template-columns:1fr auto; gap:12px; padding:24px 0; }
  .bridge-label { grid-column:1/-1; font-size:12px; }
  .consultation-bridge p { font-size:14px; }
  .consultation-bridge a { font-size:0; gap:0; width:44px; justify-content:center; }
  .consultation-bridge a span { font-size:24px; }
  .section-heading { grid-template-columns:1fr; gap:18px; margin-bottom:28px; }
  .section-heading h2 { font-size:32px; }
  .recognition-section { padding:52px 0 40px; }
  .recognition-grid { grid-template-columns:1fr; gap:0; }
  .recognition-grid article,.recognition-grid article:last-child { display:grid; grid-template-columns:30px 1fr; gap:6px 16px; padding:24px 0; border-bottom:0; }
  .recognition-grid svg { grid-row:1/3; margin:3px 0 0; width:24px; height:24px; }
  .recognition-grid h3 { font-size:17px; }
  .diagnostic-landing .warmup { grid-template-columns:1fr; gap:28px; padding:28px 22px; margin-bottom:50px; }
  .diagnostic-landing .warmup-copy h2 { font-size:29px; }
  .diagnostic-landing .warmup-copy p { font-size:14px; }
  .promo-heading h2 { font-size:13px; }
  .promo-heading { gap:8px; }
  .promo-play { left:8px; bottom:42px; gap:8px; padding:5px 12px 5px 5px; }
  .promo-play>span { width:34px; height:34px; font-size:16px; }
  .promo-play strong { font-size:11px; }
  .functions-section { padding-bottom:48px; }
  .diagnostic-landing .system-node-list { grid-template-columns:1fr; }
  .academy-section { grid-template-columns:1fr; margin-bottom:50px; }
  .academy-person { min-height:0; height:360px; }
  .academy-person img { object-position:50% 27%; }
  .academy-copy { padding:30px 24px; }
  .academy-copy h2 { font-size:30px; margin:18px 0; }
  .process-section { padding-bottom:44px; }
  .process-list { grid-template-columns:1fr; gap:24px; }
  .process-list li { display:flex; gap:18px; padding-top:22px; }
  .step-number { margin:0; flex:0 0 32px; }
  .process-list h3 { font-size:17px; }
  .first-question-section { grid-template-columns:1fr; padding:28px 22px; gap:24px; margin-bottom:50px; }
  .first-question-intro h2 { font-size:30px; }
  .first-question-preview { padding:24px 0 0; border-left:0; border-top:1px solid #cbd7e5; }
  #firstQuestionText { font-size:16px; }
  .first-question-options { gap:7px; }
  .first-question-options button { font-size:12px; }
  .faq-section { grid-template-columns:1fr; gap:0; padding-bottom:48px; }
  .faq-section .section-heading h2 { max-width:20ch; }
  .faq-list summary { font-size:15px; padding-right:30px; }
  .faq-list details>p { padding-right:5px; }
  .final-invitation { grid-template-columns:1fr; gap:25px; padding:28px 22px; }
  .final-invitation h2 { font-size:31px; }
  .final-invitation .btn-start { padding:14px 12px; }
  .final-invitation .btn-start strong { font-size:13px; }
  .diagnostic-footer { font-size:10px; padding-top:26px; }
}
@media(max-width:360px) {
  .diagnostic-intro .main-container { padding-left:16px; padding-right:16px; }
  .diagnostic-intro header { padding-left:16px; padding-right:16px; }
  #start-screen .intro-copy h1 { font-size:36px; }
  .diagnostic-landing .btn-start strong { font-size:13px; }
  .intro-report h2 { font-size:21px; }
  .report-topline>span:last-child { font-size:9px; }
  .first-question-section,.diagnostic-landing .warmup,.final-invitation { padding-left:18px; padding-right:18px; }
  .final-invitation .btn-start strong { font-size:12px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .diagnostic-landing .btn-start { transition:none; } .diagnostic-landing .btn-start:active { transform:none; } }
