:root {
    --fr-paper: #f3f1eb;
    --fr-card: #fffefb;
    --fr-ink: #171816;
    --fr-muted: #686b65;
    --fr-dim: #8c8f88;
    --fr-line: #d4d3cc;
    --fr-line-strong: #9a9c96;
    --fr-accent: #9a572d;
    --fr-accent-2: #e7a56c;
    --fr-soft: #f2e4d7;
    --fr-night: #1c1714;
    --fr-positive: #167769;
    --fr-risk: #b64f45;
    --fr-neutral: #55718d;
    --fr-sans: var(--nv-font-sans, "Montserrat", "Noto Sans SC", sans-serif);
    --fr-serif: var(--nv-font-serif, Georgia, "Noto Sans SC", serif);
}

body[data-topic="ai-energy-profit-pools"] { --fr-accent:#a9c900; --fr-accent-2:#e5ff55; --fr-soft:#eef5c9; --fr-night:#11180b; --fr-neutral:#4b7382; }
body[data-topic="biopharma-licensing-quality"] { --fr-accent:#7d3e75; --fr-accent-2:#d7a2cf; --fr-soft:#efe1ee; --fr-night:#21131f; --fr-neutral:#4f7594; }
body[data-topic="localized-production-return"] { --fr-accent:#355c9b; --fr-accent-2:#82a9ec; --fr-soft:#e1e8f3; --fr-night:#101827; --fr-neutral:#6b5d9a; }
body[data-topic="second-growth-curve"] { --fr-accent:#ce604c; --fr-accent-2:#f3aa7e; --fr-soft:#f6e0d8; --fr-night:#241310; --fr-neutral:#6b6fa1; }
body[data-topic="emerging-order-quality"] { --fr-accent:#0c7a80; --fr-accent-2:#59ced1; --fr-soft:#dbeeee; --fr-night:#0b1c20; --fr-neutral:#726291; }
body[data-topic="founder-to-organization"] { --fr-accent:#1c7458; --fr-accent-2:#76c8a2; --fr-soft:#deede4; --fr-night:#0e1d17; --fr-neutral:#5a6d91; }

html { scroll-behavior: smooth; scroll-padding-top: 122px; }
body.fr-page { margin:0; color:var(--fr-ink); background:var(--fr-paper); font-family:var(--fr-sans); font-size:16px; line-height:1.65; }
body.fr-drawer-open { overflow:hidden; }
.fr-page *, .fr-page *::before, .fr-page *::after { box-sizing:border-box; }
.fr-page a { color:inherit; }
.fr-page button, .fr-page summary { font:inherit; }
.fr-page :focus-visible { outline:3px solid var(--fr-accent-2); outline-offset:3px; }
.fr-shell { width:min(100% - 42px, 1480px); margin:24px auto 100px; }

.fr-hero { position:relative; min-height:690px; display:grid; grid-template-columns:minmax(0,1.5fr) minmax(330px,.6fr); overflow:hidden; color:#f7f6f0; background:var(--fr-night); border:1px solid #080a09; }
.fr-hero::before { content:""; position:absolute; width:600px; height:600px; right:-220px; bottom:-310px; border:1px solid color-mix(in srgb,var(--fr-accent-2) 35%,transparent); border-radius:50%; box-shadow:0 0 0 72px color-mix(in srgb,var(--fr-accent-2) 6%,transparent),0 0 0 145px color-mix(in srgb,var(--fr-accent-2) 4%,transparent); }
.fr-hero::after { content:attr(data-code); position:absolute; right:34px; bottom:18px; color:color-mix(in srgb,var(--fr-accent-2) 20%,transparent); font-size:clamp(48px,8vw,118px); font-weight:800; letter-spacing:-.07em; white-space:nowrap; }
.fr-hero-main { position:relative; z-index:1; display:flex; flex-direction:column; padding:48px clamp(34px,5.5vw,86px) 62px; }
.fr-eyebrow,.fr-section-head p,.fr-framework-head p,.fr-source-register > header p { margin:0; color:var(--fr-accent); font-size:11px; font-weight:850; letter-spacing:.17em; text-transform:uppercase; }
.fr-hero .fr-eyebrow { color:var(--fr-accent-2); }
.fr-breadcrumb { display:flex; gap:10px; align-items:center; margin-top:13px; color:#aeb5b1; font-size:12px; }
.fr-breadcrumb a { text-decoration:none; }.fr-breadcrumb a:hover { color:#fff; text-decoration:underline; }
.fr-topic-tag { width:max-content; margin:auto 0 24px; padding:9px 12px; color:var(--fr-night); background:var(--fr-accent-2); font-size:11px; font-weight:900; letter-spacing:.12em; }
.fr-hero h1 { max-width:960px; margin:0; font-family:var(--fr-serif); font-size:clamp(51px,6.4vw,94px); font-weight:500; letter-spacing:-.065em; line-height:1.01; }
.fr-question { max-width:900px; margin:23px 0 0; color:var(--fr-accent-2); font-size:clamp(18px,1.6vw,24px); font-weight:760; }
.fr-deck { max-width:860px; margin:18px 0 0; color:#c3cbc6; font-size:17px; line-height:1.8; }
.fr-hero-actions { display:flex; gap:10px; flex-wrap:wrap; margin-top:28px; }
.fr-hero-actions a { padding:10px 14px; border:1px solid #52605a; font-size:12px; font-weight:780; text-decoration:none; }
.fr-hero-actions a:first-child { color:var(--fr-night); border-color:var(--fr-accent-2); background:var(--fr-accent-2); }
.fr-hero-side { position:relative; z-index:2; display:flex; flex-direction:column; padding:30px; border-left:1px solid rgba(255,255,255,.14); background:rgba(255,255,255,.035); backdrop-filter:blur(16px); }
.fr-hero-side [data-nv-page-actions] { min-height:44px; margin-bottom:auto; }
.fr-score-label { margin:30px 0 0; color:#8f9b96; font-size:10px; font-weight:800; letter-spacing:.15em; }
.fr-score-grid { display:grid; grid-template-columns:1fr 1fr; margin-top:14px; border-top:1px solid rgba(255,255,255,.14); border-left:1px solid rgba(255,255,255,.14); }
.fr-score-grid article { min-height:112px; padding:15px; border-right:1px solid rgba(255,255,255,.14); border-bottom:1px solid rgba(255,255,255,.14); }
.fr-score-grid strong { display:block; color:var(--fr-accent-2); font-size:29px; letter-spacing:-.045em; }
.fr-score-grid span { display:block; margin-top:5px; color:#eff2ef; font-size:11px; font-weight:760; }
.fr-score-grid small { display:block; margin-top:4px; color:#8f9b96; font-size:9px; line-height:1.45; }
.fr-verdict { margin-top:18px; padding:18px; border:1px solid color-mix(in srgb,var(--fr-accent-2) 42%,transparent); background:color-mix(in srgb,var(--fr-accent-2) 8%,transparent); }
.fr-verdict span { color:var(--fr-accent-2); font-size:9px; font-weight:850; letter-spacing:.11em; }
.fr-verdict strong { display:block; margin-top:7px; font-family:var(--fr-serif); font-size:22px; font-weight:500; line-height:1.35; }
.fr-release { margin:14px 0 0; color:#87928d; font-size:9px; }

.fr-nav { position:sticky; top:var(--nv-header-height,68px); z-index:50; display:grid; grid-template-columns:repeat(4,1fr); border:1px solid var(--fr-line); border-top:0; background:color-mix(in srgb,var(--fr-paper) 90%,transparent); backdrop-filter:blur(16px); }
.fr-nav a { min-height:60px; display:grid; place-items:center; border-right:1px solid var(--fr-line); color:var(--fr-muted); font-size:12px; font-weight:780; text-decoration:none; }
.fr-nav a:last-child { border-right:0; }.fr-nav a:hover,.fr-nav a.is-active { color:var(--fr-ink); background:var(--fr-soft); }
.fr-section { padding:92px clamp(0px,3.4vw,52px) 0; scroll-margin-top:130px; }
.fr-section-head { display:grid; grid-template-columns:1fr minmax(250px,.42fr); gap:42px; align-items:end; margin-bottom:28px; }
.fr-section-head h2,.fr-framework-head h2 { margin:10px 0 0; font-family:var(--fr-serif); font-size:clamp(34px,4.3vw,59px); font-weight:500; letter-spacing:-.052em; line-height:1.1; }
.fr-section-head > span { color:var(--fr-muted); font-size:12px; line-height:1.75; text-align:right; }

.fr-framework { padding:clamp(34px,5vw,70px); border:1px solid color-mix(in srgb,var(--fr-accent) 42%,var(--fr-line)); background:radial-gradient(circle at 88% 8%,color-mix(in srgb,var(--fr-accent) 15%,transparent),transparent 34%),var(--fr-card); }
.fr-framework-head { display:grid; grid-template-columns:1fr minmax(260px,.38fr); gap:40px; align-items:end; }
.fr-framework-head > span { color:var(--fr-muted); font-size:13px; line-height:1.8; }
.fr-framework-steps { display:grid; grid-template-columns:repeat(var(--step-count),minmax(130px,1fr)); margin-top:40px; border-top:1px solid var(--fr-line-strong); border-left:1px solid var(--fr-line); }
.fr-framework-steps article { position:relative; min-height:170px; padding:20px 17px; border-right:1px solid var(--fr-line); border-bottom:1px solid var(--fr-line); }
.fr-framework-steps article::after { content:"→"; position:absolute; right:-9px; top:23px; z-index:1; width:18px; color:var(--fr-accent); background:var(--fr-card); text-align:center; }
.fr-framework-steps article:last-child::after { display:none; }
.fr-framework-steps i { color:var(--fr-accent); font-size:10px; font-style:normal; font-weight:850; }
.fr-framework-steps strong { display:block; margin-top:34px; font-size:15px; }
.fr-framework-steps p { margin:8px 0 0; color:var(--fr-muted); font-size:11px; line-height:1.55; }

.fr-insight-list { display:grid; gap:18px; }
.fr-insight { display:grid; grid-template-columns:minmax(0,.88fr) minmax(500px,1.12fr); min-height:530px; border:1px solid var(--fr-line); background:var(--fr-card); }
.fr-insight-copy { display:flex; flex-direction:column; padding:clamp(30px,4.5vw,62px); }
.fr-insight-index { color:var(--fr-accent); font-size:11px; font-weight:850; letter-spacing:.14em; }
.fr-insight h3 { margin:22px 0 0; font-family:var(--fr-serif); font-size:clamp(27px,3vw,43px); font-weight:500; letter-spacing:-.045em; line-height:1.18; }
.fr-insight-thesis { margin:21px 0 0; color:var(--fr-muted); font-size:14px; line-height:1.82; }
.fr-implication { margin-top:auto; padding:15px 17px; border-left:3px solid var(--fr-accent); background:var(--fr-soft); }
.fr-implication span { color:var(--fr-accent); font-size:9px; font-weight:850; letter-spacing:.12em; }
.fr-implication p { margin:6px 0 0; font-size:11px; line-height:1.65; }
.fr-visual { display:flex; flex-direction:column; justify-content:center; min-width:0; padding:clamp(25px,4vw,52px); border-left:1px solid var(--fr-line); background:linear-gradient(145deg,color-mix(in srgb,var(--fr-soft) 60%,#fff),var(--fr-card)); }
.fr-chart-head { display:flex; align-items:end; justify-content:space-between; gap:20px; padding-bottom:16px; border-bottom:1px solid var(--fr-line); }
.fr-chart-head strong { font-size:12px; }.fr-chart-head span { color:var(--fr-dim); font-size:9px; }
.fr-chart { min-height:260px; display:grid; align-content:center; gap:13px; margin-top:24px; }
.fr-bar { display:grid; grid-template-columns:minmax(105px,.8fr) minmax(160px,1.5fr) 90px; gap:12px; align-items:center; }
.fr-bar label { color:var(--fr-muted); font-size:10px; }.fr-bar-track { height:12px; position:relative; overflow:hidden; background:var(--fr-line); }
.fr-bar-track i { position:absolute; top:0; bottom:0; left:50%; width:var(--width); background:var(--fr-accent); }
.fr-bar.is-negative .fr-bar-track i { left:auto; right:50%; background:var(--fr-risk); }.fr-bar.is-positive .fr-bar-track i { background:var(--fr-positive); }
.fr-bar b { font-size:11px; text-align:right; }
.fr-card-chart { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.fr-card-chart article { min-height:130px; display:flex; flex-direction:column; padding:16px; border:1px solid var(--fr-line); background:rgba(255,255,255,.5); }
.fr-card-chart span { color:var(--fr-muted); font-size:9px; }.fr-card-chart strong { margin-top:16px; color:var(--fr-accent); font-size:23px; letter-spacing:-.04em; }.fr-card-chart p { margin:auto 0 0; color:var(--fr-muted); font-size:9px; line-height:1.5; }
.fr-step-chart { display:flex; align-items:stretch; overflow-x:auto; }
.fr-step-chart article { min-width:112px; flex:1; position:relative; padding:19px 15px; border:1px solid var(--fr-line); border-right:0; }
.fr-step-chart article:last-child { border-right:1px solid var(--fr-line); }.fr-step-chart article::after { content:"→"; position:absolute; right:-8px; top:19px; z-index:2; color:var(--fr-accent); background:var(--fr-card); }
.fr-step-chart article:last-child::after { display:none; }.fr-step-chart span { color:var(--fr-dim); font-size:8px; }.fr-step-chart strong { display:block; margin-top:42px; font-size:12px; line-height:1.4; }
.fr-matrix-chart { display:grid; grid-template-columns:1fr 1fr; gap:2px; background:var(--fr-line); border:1px solid var(--fr-line); }
.fr-matrix-chart article { min-height:115px; padding:16px; background:var(--fr-card); }.fr-matrix-chart span { color:var(--fr-muted); font-size:9px; }.fr-matrix-chart strong { display:block; margin-top:32px; color:var(--fr-accent); font-size:14px; }
.fr-donut-chart { display:flex; justify-content:center; align-items:center; gap:35px; }.fr-donut { width:190px; height:190px; border-radius:50%; background:conic-gradient(var(--fr-accent) calc(var(--value)*1%),var(--fr-line) 0); position:relative; }.fr-donut::after { content:""; position:absolute; inset:34px; border-radius:50%; background:var(--fr-card); }.fr-donut strong { position:absolute; inset:0; z-index:1; display:grid; place-items:center; font-size:27px; }.fr-donut-legend { display:grid; gap:12px; }.fr-donut-legend span { font-size:11px; }
.fr-source-details { margin-top:22px; border-top:1px solid var(--fr-line); }.fr-source-details summary { padding:15px 0 0; color:var(--fr-accent); cursor:pointer; font-size:10px; font-weight:800; }.fr-source-details p { margin:11px 0 0; color:var(--fr-muted); font-size:10px; line-height:1.65; }
.fr-analysis-mark { display:block; margin-top:14px; color:var(--fr-muted); font-size:9px; font-weight:800; letter-spacing:.08em; text-align:right; opacity:.62; }
.fr-inline-sources { display:grid; gap:8px; margin:11px 0 0; padding:0; list-style:none; }.fr-inline-sources a { color:var(--fr-ink); font-size:10px; text-decoration:underline; text-underline-offset:3px; }

.fr-table-wrap { overflow-x:auto; border:1px solid var(--fr-line); background:var(--fr-card); }
.fr-table { width:100%; min-width:980px; border-collapse:collapse; }
.fr-table th { padding:15px 17px; color:var(--fr-muted); background:var(--fr-soft); font-size:9px; letter-spacing:.1em; text-align:left; }
.fr-table td { padding:19px 17px; border-top:1px solid var(--fr-line); vertical-align:top; font-size:11px; line-height:1.55; }
.fr-table tbody tr { cursor:pointer; }.fr-table tbody tr:hover { background:color-mix(in srgb,var(--fr-soft) 58%,#fff); }
.fr-company-cell strong { display:block; font-family:var(--fr-serif); font-size:19px; font-weight:500; }.fr-company-cell span { display:block; margin-top:5px; color:var(--fr-accent); font-size:9px; font-weight:800; }
.fr-metric-pair { display:flex; gap:7px; flex-wrap:wrap; }.fr-metric-pair span { padding:5px 7px; border:1px solid var(--fr-line); color:var(--fr-muted); font-size:9px; }.fr-open { color:var(--fr-accent); font-weight:800; }

.fr-method-grid { display:grid; grid-template-columns:.72fr 1.28fr; gap:18px; }
.fr-method-card,.fr-source-register { padding:clamp(27px,4vw,48px); border:1px solid var(--fr-line); background:var(--fr-card); }
.fr-method-card h3,.fr-source-register h3 { margin:0; font-family:var(--fr-serif); font-size:28px; font-weight:500; }.fr-method-card ol { margin:23px 0 0; padding-left:20px; }.fr-method-card li { margin-top:13px; color:var(--fr-muted); font-size:12px; }
.fr-source-register > header { display:flex; align-items:end; justify-content:space-between; gap:20px; }.fr-source-register > header span { color:var(--fr-muted); font-size:10px; }
.fr-source-list { display:grid; gap:8px; margin:22px 0 0; padding:0; list-style:none; }
.fr-source-list li { display:grid; grid-template-columns:1fr auto; gap:12px; align-items:start; padding:13px 0; border-top:1px solid var(--fr-line); }
.fr-source-list b { width:27px; height:27px; display:grid; place-items:center; color:var(--fr-accent); border:1px solid var(--fr-line); font-size:9px; }.fr-source-list a { font-size:11px; font-weight:760; }.fr-source-list p { margin:4px 0 0; color:var(--fr-muted); font-size:9px; }.fr-source-list time { color:var(--fr-dim); font-size:9px; }
.fr-method-foot { margin:18px 0 0; color:var(--fr-muted); font-size:10px; line-height:1.7; }

.fr-drawer-backdrop { position:fixed; inset:var(--nv-header-height,68px) 0 0; z-index:1200; background:rgba(9,13,11,.58); backdrop-filter:blur(4px); }
.fr-drawer { position:fixed; top:var(--nv-header-height,68px); right:0; bottom:0; z-index:1210; width:min(760px,100%); overflow-y:auto; color:var(--fr-ink); background:var(--fr-paper); border-left:1px solid var(--fr-line-strong); box-shadow:-24px 0 70px rgba(0,0,0,.24); }
.fr-drawer-head { position:sticky; top:0; z-index:2; display:flex; justify-content:space-between; gap:20px; padding:24px 28px; border-bottom:1px solid var(--fr-line); background:color-mix(in srgb,var(--fr-paper) 92%,transparent); backdrop-filter:blur(18px); }
.fr-drawer-head p { margin:0; color:var(--fr-accent); font-size:9px; font-weight:850; letter-spacing:.13em; }.fr-drawer-head h2 { margin:5px 0 0; font-family:var(--fr-serif); font-size:31px; font-weight:500; }.fr-drawer-head button { align-self:start; padding:8px 11px; border:1px solid var(--fr-line-strong); background:transparent; cursor:pointer; }
.fr-drawer-body { padding:30px 28px 70px; }.fr-drawer-verdict { padding:23px; color:#f5f5ef; background:var(--fr-night); }.fr-drawer-verdict span { color:var(--fr-accent-2); font-size:9px; font-weight:850; }.fr-drawer-verdict h3 { margin:9px 0 0; font-family:var(--fr-serif); font-size:26px; font-weight:500; line-height:1.3; }
.fr-drawer-metrics { display:grid; grid-template-columns:repeat(3,1fr); margin-top:18px; border:1px solid var(--fr-line); }.fr-drawer-metrics article { min-height:100px; padding:15px; border-right:1px solid var(--fr-line); }.fr-drawer-metrics article:last-child { border-right:0; }.fr-drawer-metrics span { color:var(--fr-muted); font-size:9px; }.fr-drawer-metrics strong { display:block; margin-top:18px; color:var(--fr-accent); font-size:19px; }
.fr-drawer-section { margin-top:30px; }.fr-drawer-section h3 { margin:0; font-family:var(--fr-serif); font-size:25px; font-weight:500; }.fr-mechanism-flow { display:grid; gap:8px; margin-top:16px; }.fr-mechanism-flow article { position:relative; padding:17px 18px 17px 52px; border:1px solid var(--fr-line); background:var(--fr-card); }.fr-mechanism-flow i { position:absolute; left:16px; top:16px; color:var(--fr-accent); font-size:10px; font-style:normal; font-weight:900; }.fr-mechanism-flow strong { font-size:12px; }.fr-mechanism-flow article:not(:last-child)::after { content:"↓"; position:absolute; left:25px; bottom:-15px; z-index:1; color:var(--fr-accent); background:var(--fr-paper); }
.fr-mechanism-note { margin:12px 0 0; padding:12px 14px; border-left:3px solid var(--fr-accent); color:var(--fr-muted); background:var(--fr-card); font-size:10px; line-height:1.65; }
.fr-takeaway { margin-top:18px; padding:16px 18px; border-left:3px solid var(--fr-accent); background:var(--fr-soft); font-size:12px; line-height:1.7; }
.fr-dna-link { display:inline-flex; margin-top:18px; padding:10px 13px; border:1px solid var(--fr-accent); color:var(--fr-accent); font-size:11px; font-weight:800; text-decoration:none; }
.fr-error { position:fixed; right:22px; bottom:22px; z-index:1400; padding:18px; color:white; background:#8d2f2f; }
[hidden] { display:none !important; }

@media (max-width:1050px) {
    .fr-hero { grid-template-columns:1fr; }.fr-hero-side { border-top:1px solid rgba(255,255,255,.14); border-left:0; }.fr-hero-side [data-nv-page-actions] { margin-bottom:20px; }
    .fr-insight { grid-template-columns:1fr; }.fr-visual { border-top:1px solid var(--fr-line); border-left:0; }.fr-framework-steps { grid-template-columns:repeat(2,1fr); }.fr-method-grid { grid-template-columns:1fr; }
}
@media (max-width:720px) {
    .fr-shell { width:min(100% - 20px,1480px); margin-top:10px; }.fr-hero-main { padding:30px 22px 42px; }.fr-hero h1 { font-size:49px; }.fr-hero-side { padding:22px; }
    .fr-nav { grid-template-columns:repeat(2,1fr); }.fr-nav a { border-bottom:1px solid var(--fr-line); }.fr-section { padding-top:70px; }.fr-section-head,.fr-framework-head { grid-template-columns:1fr; }.fr-section-head > span { text-align:left; }
    .fr-framework { padding:25px 20px; }.fr-framework-steps { grid-template-columns:1fr; }.fr-framework-steps article::after { display:none; }.fr-insight-copy,.fr-visual { padding:26px 20px; }.fr-insight { min-height:0; }.fr-card-chart { grid-template-columns:1fr; }.fr-bar { grid-template-columns:90px 1fr 70px; }.fr-donut-chart { flex-direction:column; }.fr-drawer-metrics { grid-template-columns:1fr; }.fr-drawer-metrics article { border-right:0; border-bottom:1px solid var(--fr-line); }
}
