/* v10 — unified typography + higher-interaction continuity section */
:root{
  --type-hero:clamp(56px,5.1vw,82px);
  --type-section:clamp(42px,3.7vw,60px);
  --type-subsection:clamp(25px,2.15vw,32px);
  --type-card:18px;
  --type-body:14px;
  --type-small:12px;
  --type-micro:10px;
}

/* Consistent page hierarchy: only the hero owns the largest type. */
.hero h1{font-size:var(--type-hero)!important;line-height:1.07!important}
.continuity-v9-head h2,.instrument-v9-head h2,.organization-v9-head h2,.contact-copy h2,.final-cta h2{
  font-size:var(--type-section)!important;line-height:1.06!important;letter-spacing:-.058em!important
}
.instrument-v9-head p,.organization-v9-head p,.continuity-v9-copy p,.contact-copy>p,.final-cta p{
  font-size:var(--type-body)!important;line-height:1.85!important
}
.institution-v9-copy h3,.lead-v9-copy h3,.principle-v9-copy h3{font-size:var(--type-subsection)!important}

/* Page 2 is deliberately calmer than hero. */
.continuity-v10{padding:112px 0 116px!important}
.continuity-v10-head{grid-template-columns:minmax(0,1.04fr) minmax(360px,.66fr)!important;gap:72px!important;align-items:end!important;margin-bottom:26px!important}
.continuity-v10-head h2{max-width:770px!important}
.continuity-v10-copy{padding-bottom:2px}
.continuity-v10-copy p{max-width:560px;margin:0 0 18px!important;color:#69748b!important}
.continuity-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.context-play{height:48px;display:inline-flex;align-items:center;gap:9px;padding:0 15px;border:1px solid var(--v9-line);border-radius:13px;background:rgba(255,255,255,.68);box-shadow:0 9px 24px rgba(49,62,112,.055);color:#5f6a82;font:800 11px/1 inherit;cursor:pointer;transition:.25s ease;backdrop-filter:blur(16px)}
.context-play:hover{transform:translateY(-1px);border-color:rgba(83,105,244,.25);color:#34405e}
.context-play i{width:8px;height:8px;border-radius:50%;background:#a8b0c1;box-shadow:0 0 0 5px rgba(168,176,193,.08);transition:.25s}
.context-play[aria-pressed="true"]{background:#fff;color:#394764;box-shadow:0 12px 28px rgba(60,73,129,.09)}
.context-play[aria-pressed="true"] i{background:#687bf1;box-shadow:0 0 0 6px rgba(104,123,241,.10),0 0 18px rgba(104,123,241,.42)}

/* Research route selector makes page 2 a playable story, not a static explanation. */
.context-scenarios{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 12px}
.context-scenarios button{position:relative;display:grid;grid-template-columns:34px 1fr auto;gap:12px;align-items:center;min-height:78px;padding:13px 15px;border:1px solid var(--v9-line);border-radius:18px;background:rgba(255,255,255,.60);box-shadow:0 12px 34px rgba(52,65,116,.045);color:#69748b;text-align:left;cursor:pointer;transition:.28s ease;overflow:hidden;backdrop-filter:blur(16px)}
.context-scenarios button:before{content:"";position:absolute;inset:auto 0 0;height:2px;background:linear-gradient(90deg,#536bff,#9776ff);transform:scaleX(0);transform-origin:left;transition:.28s ease}
.context-scenarios button:hover{transform:translateY(-2px);background:rgba(255,255,255,.86);box-shadow:0 18px 38px rgba(52,65,116,.075)}
.context-scenarios button.active{border-color:rgba(84,105,242,.24);background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(241,244,255,.94));color:#2d3958;box-shadow:0 18px 42px rgba(74,87,156,.10)}
.context-scenarios button.active:before{transform:scaleX(1)}
.context-scenarios button>i{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(88,106,230,.12);border-radius:11px;background:#f6f7fd;color:#7180e9;font-style:normal;font-size:9px;font-weight:900}
.context-scenarios button span{display:grid;gap:4px}.context-scenarios button b{font-size:13px;letter-spacing:-.015em}.context-scenarios button small{font-size:10px;color:#9aa3b4}.context-scenarios button em{font-style:normal;font-size:8px;font-weight:900;letter-spacing:.12em;color:#a0a9ba}.context-scenarios button.active em{color:#687af0}

.continuity-v10-stage{grid-template-columns:232px minmax(0,1fr) 270px!important;min-height:560px!important;border-radius:28px!important;transition:box-shadow .3s ease,border-color .3s ease}
.continuity-v10-stage.is-playing{border-color:rgba(91,109,238,.20);box-shadow:0 32px 90px rgba(70,84,150,.12),0 0 0 1px rgba(92,110,241,.06) inset}
.continuity-v10-stage .context-assets,.continuity-v10-stage .context-audit{padding:20px!important}
.continuity-v10-stage .asset{min-height:72px!important;padding:11px 12px!important}
.continuity-v10-stage .asset b{font-size:11px!important}.continuity-v10-stage .asset small{font-size:8px!important}.continuity-v10-stage .asset>i{font-size:8px!important}
.continuity-v10-stage .context-flow{min-height:560px}
.continuity-v10-stage .flow-caption{min-height:55px;display:grid!important;grid-template-columns:1fr auto auto!important;gap:14px!important;align-items:center!important;padding:0 18px!important}
.continuity-v10-stage .flow-caption>span{font-size:10px!important;max-width:430px;line-height:1.55}
.flow-progress{display:flex;align-items:center;gap:8px}.flow-progress>b{font-size:8px;color:#7b86a0;white-space:nowrap}.flow-progress>i{position:relative;display:block;width:72px;height:4px;border-radius:999px;background:#e8ebf3;overflow:hidden}.flow-progress>i em{display:block;width:60%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#596ff1,#9477f0);transition:width .35s ease}
.continuity-v10-stage .flow-label{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,background .25s ease}
.continuity-v10-stage .flow-label:hover{transform:translate(-50%,-50%) scale(1.07)!important;z-index:6;box-shadow:0 14px 30px rgba(67,81,145,.13)}
.continuity-v10-stage .flow-label.active{box-shadow:0 13px 31px rgba(74,88,157,.16),0 0 0 5px rgba(93,111,242,.07)}
.continuity-v10-stage .ctx-path{stroke-dasharray:7 9;animation:ctxDash 7s linear infinite}
.continuity-v10-stage[data-mode="broken"] .ctx-path{animation:none;stroke-dasharray:4 12;opacity:.25}
.context-packet{position:absolute;z-index:5;left:9.5%;top:48%;display:flex;align-items:center;gap:5px;padding:5px 7px;border:1px solid rgba(88,106,230,.15);border-radius:999px;background:rgba(255,255,255,.92);box-shadow:0 10px 25px rgba(64,77,139,.12);color:#6b77da;font-size:7px;font-weight:900;letter-spacing:.08em;pointer-events:none;transition:left .48s cubic-bezier(.2,.8,.2,1),top .48s cubic-bezier(.2,.8,.2,1),opacity .25s ease}
.context-packet i{width:6px;height:6px;border-radius:50%;background:#667af0;box-shadow:0 0 0 5px rgba(102,122,240,.10),0 0 15px rgba(102,122,240,.45)}
.continuity-v10-stage[data-mode="broken"] .context-packet{opacity:.18}
.flow-mini-console{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);z-index:4;width:min(76%,440px);display:grid;grid-template-columns:auto 1fr;grid-template-areas:"s b" "s d";column-gap:11px;align-items:center;padding:11px 14px;border:1px solid rgba(91,108,227,.11);border-radius:14px;background:rgba(255,255,255,.80);box-shadow:0 13px 30px rgba(54,68,123,.08);backdrop-filter:blur(18px)}
.flow-mini-console>span{grid-area:s;display:flex;align-items:center;gap:7px;color:#7b86a0;font-size:7px;font-weight:900;letter-spacing:.11em}.flow-mini-console>span i{width:6px;height:6px;border-radius:50%;background:#65b59a;box-shadow:0 0 0 5px rgba(101,181,154,.08)}.flow-mini-console>b{grid-area:b;font-size:10px;color:#34405d}.flow-mini-console>small{grid-area:d;margin-top:2px;font-size:7px;color:#9aa3b5;letter-spacing:.04em}
.audit-next{width:100%;height:40px;margin-top:14px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;border:1px solid rgba(86,104,226,.14);border-radius:11px;background:linear-gradient(135deg,#f8f9ff,#f1f3ff);color:#5262ba;font-size:9px;font-weight:900;cursor:pointer;transition:.25s}.audit-next:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(66,79,143,.09)}.audit-next em{font-style:normal;font-size:14px}
.continuity-v10-stage .context-audit li.active{transform:translateX(2px)}

@keyframes ctxDash{to{stroke-dashoffset:-128}}

/* Keep other section typography aligned with page 2. */
.instrument-v9{padding-top:118px!important}.organization-v9{padding-top:118px!important}
.instrument-v9-head{grid-template-columns:minmax(0,1fr) minmax(360px,.68fr)!important;gap:64px!important}
.instrument-v9-head h2{max-width:760px}.organization-v9-head h2{max-width:760px}

html[data-theme="dark"] .context-scenarios button,html[data-theme="dark"] .context-play,html[data-theme="dark"] .flow-mini-console,html[data-theme="dark"] .context-packet{background:rgba(20,29,55,.82);border-color:rgba(169,180,220,.10);color:#aeb7cb}
html[data-theme="dark"] .context-scenarios button.active{background:linear-gradient(135deg,rgba(29,39,72,.96),rgba(24,33,62,.95));color:#eef1ff}
html[data-theme="dark"] .context-scenarios button>i{background:#17213f;border-color:rgba(144,157,220,.10)}
html[data-theme="dark"] .context-scenarios button small,html[data-theme="dark"] .flow-mini-console>small{color:#7f8aa3}
html[data-theme="dark"] .flow-mini-console>b{color:#e5e9f7}
html[data-theme="dark"] .audit-next{background:#18213c;color:#aab5ff;border-color:rgba(144,157,220,.11)}
html[data-theme="dark"] .flow-progress>i{background:#28324d}

@media(max-width:1180px){
  .continuity-v10-head{grid-template-columns:1fr!important;gap:22px!important}.continuity-v10-copy p{max-width:720px}.context-scenarios{grid-template-columns:1fr 1fr 1fr}.continuity-v10-stage{grid-template-columns:210px 1fr!important}.continuity-v10-stage .context-audit{grid-column:1/-1}.continuity-v10-stage .context-audit ol{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:900px){
  .continuity-v10{padding:92px 0 88px!important}.context-scenarios{grid-template-columns:1fr}.continuity-v10-stage{grid-template-columns:1fr!important}.continuity-v10-stage .context-flow{min-height:470px}.continuity-v10-stage .flow-caption{grid-template-columns:1fr auto!important}.flow-progress{display:none}.flow-mini-console{width:78%}
}
@media(max-width:640px){
  :root{--type-hero:clamp(43px,12vw,58px);--type-section:clamp(34px,9.7vw,44px);--type-subsection:26px;--type-body:13px}
  .continuity-v10-head h2,.instrument-v9-head h2,.organization-v9-head h2,.contact-copy h2,.final-cta h2{font-size:var(--type-section)!important}
  .continuity-head-actions{align-items:stretch}.context-switch,.context-play{width:100%}.context-switch button{flex:1}.context-play{justify-content:center}
  .context-scenarios button{min-height:70px}.context-scenarios button em{display:none}.continuity-v10-stage .context-flow{min-height:420px}.continuity-v10-stage .flow-caption{grid-template-columns:1fr!important}.continuity-v10-stage .flow-caption>em{display:none}.flow-mini-console{bottom:12px;width:88%}
}
