/* ==========================================================================
   Rankovi.ai — longform.css: the research white papers, in the shared brand system.
   Generated by tools/convert_wp.py from the original documents; edit here, not there.
   ========================================================================== */
:root{
  --bg:#F5F1EB; --surface:#FFFFFF; --surface2:#E7ECEF;
  --lime:#B53B0A;        /* small accent text (5.19:1 cream · 5.84:1 white · 4.91:1 mist) */
  --lime-dim:#E8501A;    /* large display accent */
  --white:#0C1824;       /* primary text (token name kept from the original documents) */
  --muted:#5B6873; --ink-2:#44515F; --ink-3:#5B6873; --slate-ink:#566573; --navy:#0C1824; --navy-2:#13202E;
  --border:rgba(12,24,36,.14); --cream:#F5F1EB; --mist:#E7ECEF; --coral:#FF5A1F;
  --serif:'Instrument Serif',Georgia,'Times New Roman',serif;
  --sans:'DM Sans',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
}
*{margin: 0; padding: 0; box-sizing: border-box;}
html{scroll-behavior: smooth;}
body{background: var(--bg); color: var(--white); font-family: var(--serif); font-size: 17px; line-height: 1.8; counter-reset: section;}
.cover{min-height: 100vh; display: flex; flex-direction: column; justify-content: space-between; padding: 60px; border-bottom: 1px solid var(--border); position: relative; overflow: hidden;}
.cover::before{content: ''; position: absolute; top: -200px; right: -200px; width: 600px; height: 600px; background: radial-gradient(circle, rgba(255,90,31,0.08) 0%, transparent 70%); pointer-events: none;}
.cover-top{display: flex; justify-content: space-between; align-items: flex-start;}
.brand{font-family: var(--sans); font-weight:600; font-size: 1.1rem; letter-spacing: 0.05em; color: var(--lime);}
.doc-meta{font-family: var(--sans); font-size: 0.8rem; color: var(--muted); text-align: right; letter-spacing: 0.08em; text-transform: uppercase;}
.cover-center{flex: 1; display: flex; flex-direction: column; justify-content: center; padding: 80px 0 40px; max-width: 900px;}
.wp-number{font-family: var(--sans); font-size: 0.75rem; letter-spacing: 0.2em; text-transform: uppercase; color: var(--lime); margin-bottom: 32px; display: flex; align-items: center; gap: 12px;}
.wp-number::before{content: ''; display: block; width: 40px; height: 1px; background: var(--lime);}
.cover-title{font-family: var(--serif); font-size: clamp(3rem, 7vw, 5.5rem); font-weight:600; line-height: 1.0; letter-spacing: -0.02em; margin-bottom: 32px;}
.cover-title em{font-style: italic; color: var(--lime);}
.cover-subtitle{font-family: var(--sans); font-size: 1.1rem; color: var(--muted); max-width: 600px; line-height: 1.6; font-weight: 400;}
.cover-bottom{display: flex; justify-content: space-between; align-items: flex-end; border-top: 1px solid var(--border); padding-top: 32px;}
.cover-stats{display: flex; gap: 48px;}
.cover-stat{font-family: var(--sans);}
.cover-stat .val{font-size: 1.8rem; font-weight:600; color: var(--lime); display: block; line-height: 1; margin-bottom: 4px;}
.cover-stat .lbl{font-size: 0.7rem; color: var(--muted); text-transform: uppercase; letter-spacing: 0.1em;}
.cover-disclaimer{font-family: var(--sans); font-size: 0.7rem; color: var(--slate-ink); max-width: 300px; text-align: right; line-height: 1.5;}
.toc-wrapper{background: var(--surface); border-bottom: 1px solid var(--border); padding: 60px;}
.toc-label{font-family: var(--sans); font-size: 0.7rem; letter-spacing: 0.2em; text-transform: uppercase; color: var(--lime); margin-bottom: 32px;}
.toc-grid{display: grid; grid-template-columns: 1fr 1fr; gap: 0; max-width: 900px;}
.toc-item{display: flex; align-items: baseline; gap: 16px; padding: 12px 0; border-bottom: 1px solid var(--border); text-decoration: none; color: var(--white); font-family: var(--sans); font-size: 0.9rem; font-weight: 500; transition: color 0.2s; padding-right: 40px;}
.toc-item:hover{color: var(--lime);}
.toc-num{color: var(--muted); font-size: 0.7rem; font-family: var(--mono); min-width: 24px;}
.content{max-width: 800px; margin: 0 auto; padding: 80px 60px;}
.exec-summary{background: var(--surface); border-left: 3px solid var(--lime); padding: 48px; margin-bottom: 80px;}
.exec-label{font-family: var(--sans); font-size: 0.7rem; letter-spacing: 0.2em; text-transform: uppercase; color: var(--lime); margin-bottom: 20px;}
.exec-summary p{font-size: 1.05rem; line-height: 1.9; color: var(--ink-2); margin-bottom: 16px;}
.exec-summary p:last-child{margin-bottom: 0;}
.section{margin-bottom: 72px; scroll-margin-top: 80px;}
.section-header{display: flex; align-items: flex-start; gap: 24px; margin-bottom: 32px; padding-bottom: 24px; border-bottom: 1px solid var(--border);}
.section-num{font-family: var(--mono); font-size: 0.75rem; color: var(--lime); padding-top: 8px; min-width: 32px;}
h2{font-family: var(--serif); font-size: 2.2rem; font-weight:600; line-height: 1.2; letter-spacing: -0.02em;}
h3{font-family: var(--sans); font-size: 1rem; font-weight:600; letter-spacing: 0.05em; text-transform: uppercase; color: var(--white); margin: 40px 0 16px; padding-bottom: 8px; border-bottom: 1px solid var(--border);}
p{margin-bottom: 20px; color: var(--ink-2); line-height: 1.9;}
strong{color: var(--white); font-weight: 600;}
.data-callout{background: var(--surface2); border: 1px solid var(--border); padding: 36px 40px; margin: 40px 0; position: relative;}
.data-callout::before{content: ''; position: absolute; top: 0; left: 0; width: 3px; height: 100%; background: var(--lime);}
.data-callout .stat-big{font-family: var(--sans); font-size: 3.5rem; font-weight:600; color: var(--lime); line-height: 1; margin-bottom: 8px; display: block;}
.data-callout .stat-label{font-family: var(--sans); font-size: 1rem; color: var(--white); font-weight: 600; margin-bottom: 8px;}
.data-callout .stat-source{font-family: var(--mono); font-size: 0.7rem; color: var(--muted);}
.stat-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--border); margin: 40px 0; border: 1px solid var(--border);}
.stat-cell{background: var(--surface); padding: 28px;}
.stat-cell .num{font-family: var(--sans); font-size: 2rem; font-weight:600; color: var(--lime); display: block; line-height: 1; margin-bottom: 8px;}
.stat-cell .desc{font-family: var(--sans); font-size: 0.8rem; color: var(--ink-3); line-height: 1.5;}
.stat-cell .src{font-family: var(--mono); font-size: 0.65rem; color: var(--ink-3); margin-top: 8px; display: block;}
.pull-quote{margin: 48px -20px; padding: 40px 48px; border-top: 1px solid var(--lime); border-bottom: 1px solid var(--lime);}
.pull-quote blockquote{font-family: var(--serif); font-size: 1.5rem; font-style: italic; line-height: 1.5; color: var(--white); font-weight: 300;}
.compare-table{width: 100%; border-collapse: collapse; margin: 40px 0; font-family: var(--sans); font-size: 0.85rem;}
.compare-table th{background: var(--surface2); padding: 12px 16px; text-align: left; font-weight:600; letter-spacing: 0.05em; border-bottom: 2px solid var(--lime); color: var(--white); font-size: 0.75rem; text-transform: uppercase;}
.compare-table th.lime-header{background: var(--lime); color: #000;}
.compare-table td{padding: 12px 16px; border-bottom: 1px solid var(--border); color: var(--ink-2); vertical-align: top; line-height: 1.5;}
.compare-table tr:nth-child(even) td{background: rgba(12,24,36,.03);}
.compare-table td.category{color: var(--white); font-weight: 600;}
ul, ol{margin: 20px 0 20px 20px; color: var(--ink-2);}
li{margin-bottom: 10px; line-height: 1.7; padding-left: 8px;}
ul li::marker{color: var(--lime);}
ol li::marker{color: var(--lime); font-family: var(--mono); font-size: 0.8rem;}
.tactics-box{background: var(--surface2); border: 1px solid var(--border); padding: 32px; margin: 32px 0;}
.tactics-box h4{font-family: var(--sans); font-size: 0.75rem; letter-spacing: 0.15em; text-transform: uppercase; color: var(--lime); margin-bottom: 20px;}
.tactics-list{list-style: none; margin: 0; padding: 0;}
.tactics-list li{display: flex; align-items: flex-start; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--border); font-family: var(--sans); font-size: 0.9rem; color: var(--ink-2); margin: 0; padding-left: 0;}
.tactics-list li:last-child{border-bottom: none;}
.tactics-list li::before{content: '→'; color: var(--lime); font-weight:600; flex-shrink: 0; margin-top: 2px;}
.framework{background: var(--lime); color: #000; padding: 48px; margin: 48px 0;}
.framework h4{font-family: var(--sans); font-size: 0.75rem; letter-spacing: 0.15em; text-transform: uppercase; color: rgba(12,24,36,.12); margin-bottom: 24px;}
.framework-items{display: grid; grid-template-columns: 1fr 1fr; gap: 24px;}
.framework-item{background: rgba(12,24,36,.06); padding: 24px;}
.framework-item .fi-num{font-family: var(--mono); font-size: 0.7rem; font-weight:600; opacity: 0.5; margin-bottom: 8px;}
.framework-item .fi-title{font-family: var(--sans); font-size: 1rem; font-weight:600; margin-bottom: 8px;}
.framework-item .fi-desc{font-family: var(--sans); font-size: 0.8rem; opacity: 0.7; line-height: 1.5; margin: 0; color: #000;}
.highlight-box{background: rgba(255,90,31,0.06); border: 1px solid rgba(255,90,31,0.2); padding: 32px; margin: 32px 0; font-family: var(--sans); font-size: 0.9rem; color: var(--ink-2); line-height: 1.7;}
.highlight-box strong{color: var(--lime);}
.conclusion{background: var(--surface); border: 1px solid var(--border); padding: 48px; margin-top: 80px; margin-bottom: 80px;}
.conclusion .conc-label{font-family: var(--sans); font-size: 0.7rem; letter-spacing: 0.2em; text-transform: uppercase; color: var(--lime); margin-bottom: 24px;}
.conclusion h2{font-size: 2rem; margin-bottom: 24px;}
.wp-footer{background: var(--surface); border-top: 1px solid var(--border); padding: 60px;}
.footer-top{display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 48px; padding-bottom: 48px; border-bottom: 1px solid var(--border);}
.footer-brand{font-family: var(--sans); font-weight:600; font-size: 1.5rem; color: var(--lime); margin-bottom: 12px;}
.footer-tagline{font-family: var(--sans); font-size: 0.85rem; color: var(--muted); max-width: 300px; line-height: 1.6;}
.footer-links{display: grid; grid-template-columns: 1fr 1fr; gap: 48px;}
.footer-col h5{font-family: var(--sans); font-size: 0.7rem; letter-spacing: 0.15em; text-transform: uppercase; color: var(--muted); margin-bottom: 16px;}
.footer-col a{display: block; font-family: var(--sans); font-size: 0.85rem; color: var(--ink-3); text-decoration: none; margin-bottom: 8px;}
.footer-col a:hover{color: var(--lime);}
.footer-bottom{display: flex; justify-content: space-between; font-family: var(--mono); font-size: 0.65rem; color: var(--slate-ink);}
.progress-bar{position: fixed; top: 0; left: 0; height: 2px; background: var(--lime); width: 0%; z-index: 1000; transition: width 0.1s;}
.sticky-nav{position: fixed; top: 0; left: 0; right: 0; background: rgba(245,241,235,.94); backdrop-filter: blur(10px); border-bottom: 1px solid var(--border); padding: 12px 60px; display: flex; justify-content: space-between; align-items: center; z-index: 100; transform: translateY(-100%); transition: transform 0.3s;}
.sticky-nav.visible{transform: translateY(0);}
.sticky-nav .brand{font-size: 0.9rem;}
.sticky-nav .doc-title{font-family: var(--sans); font-size: 0.8rem; color: var(--muted);}
.sticky-nav .cta{background: var(--lime); color: #000; font-family: var(--sans); font-size: 0.75rem; font-weight:600; padding: 8px 20px; text-decoration: none; letter-spacing: 0.05em; text-transform: uppercase; transition: opacity 0.2s;}
.sticky-nav .cta:hover{opacity: 0.85;}
.divider{border: none; border-top: 1px solid var(--border); margin: 48px 0;}
.check{color: var(--lime); font-weight:600;}
.partial{color: var(--ink-3);}
.two-col{display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin: 40px 0;}
.col-card{background: var(--surface2); border: 1px solid var(--border); padding: 32px;}
.col-card h4{font-family: var(--sans); font-size: 0.75rem; letter-spacing: 0.15em; text-transform: uppercase; color: var(--muted); margin-bottom: 20px;}
.col-card.lime-card{border-color: var(--lime);}
.col-card.lime-card h4{color: var(--lime);}
.col-card ul{margin: 0; padding: 0; list-style: none;}
.col-card ul li{font-family: var(--sans); font-size: 0.85rem; color: var(--ink-2); padding: 8px 0; border-bottom: 1px solid var(--border); margin: 0; padding-left: 0; display: flex; gap: 10px;}
.col-card ul li:last-child{border-bottom: none;}
.col-card ul li::before{content: '→'; color: var(--lime); flex-shrink: 0;}
.timeline{margin: 40px 0;}
.timeline-item{display: grid; grid-template-columns: 80px 1fr; gap: 24px; margin-bottom: 32px; align-items: flex-start;}
.timeline-year{font-family: var(--mono); font-size: 0.85rem; font-weight:600; color: var(--lime); padding-top: 4px;}
.timeline-content{border-left: 1px solid var(--border); padding-left: 24px; padding-bottom: 24px;}
.timeline-content h4{font-family: var(--sans); font-size: 0.9rem; font-weight:600; color: var(--white); margin-bottom: 8px;}
.timeline-content p{font-size: 0.9rem; color: var(--ink-3); margin: 0; line-height: 1.6;}
.strategy-matrix{display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--border); margin: 40px 0;}
.matrix-cell{background: var(--surface); padding: 28px;}
.matrix-cell.header{background: var(--surface2); font-family: var(--sans); font-size: 0.75rem; font-weight:600; text-transform: uppercase; letter-spacing: 0.1em; color: var(--muted);}
.matrix-cell.lime-header{background: var(--lime); color: #000;}
.matrix-cell h4{font-family: var(--sans); font-size: 0.9rem; font-weight:600; color: var(--white); margin-bottom: 8px;}
.matrix-cell p{font-family: var(--sans); font-size: 0.8rem; color: var(--ink-3); margin: 0; line-height: 1.5;}
.roadmap{margin: 40px 0;}
.roadmap-phase{display: grid; grid-template-columns: 120px 1fr; margin-bottom: 0; border-bottom: 1px solid var(--border);}
.roadmap-phase:last-child{border-bottom: none;}
.phase-label{background: var(--surface2); padding: 20px 24px; font-family: var(--sans); font-size: 0.7rem; font-weight:600; text-transform: uppercase; letter-spacing: 0.1em; color: var(--lime); border-right: 1px solid var(--border);}
.phase-content{padding: 20px 24px; font-family: var(--sans); font-size: 0.85rem; color: var(--ink-2); line-height: 1.6;}
.phase-content strong{color: var(--white);}
.process-flow{margin: 40px 0;}
.process-step{display: grid; grid-template-columns: 48px 1fr; gap: 24px; margin-bottom: 0; border-bottom: 1px solid var(--border); padding: 24px 0; align-items: flex-start;}
.step-num{font-family: var(--mono); font-size: 1.2rem; font-weight:600; color: var(--lime); line-height: 1; padding-top: 4px;}
.step-content h4{font-family: var(--sans); font-size: 0.95rem; font-weight:600; color: var(--white); margin-bottom: 8px;}
.step-content p{font-size: 0.9rem; color: var(--ink-3); margin: 0; line-height: 1.6; font-family: var(--sans);}
.platform-grid{display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin: 40px 0;}
.platform-card{background: var(--surface2); border: 1px solid var(--border); padding: 28px;}
.platform-card h4{font-family: var(--sans); font-size: 1rem; font-weight:600; color: var(--white); margin-bottom: 6px;}
.platform-card .platform-type{font-family: var(--mono); font-size: 0.65rem; color: var(--lime); letter-spacing: 0.1em; text-transform: uppercase; margin-bottom: 16px; display: block;}
.platform-card ul{list-style: none; margin: 0; padding: 0;}
.platform-card ul li{font-family: var(--sans); font-size: 0.82rem; color: var(--ink-3); padding: 7px 0; border-bottom: 1px solid var(--border); margin: 0; padding-left: 0; display: flex; gap: 8px; line-height: 1.4;}
.platform-card ul li:last-child{border-bottom: none;}
.platform-card ul li::before{content: '·'; color: var(--lime); font-weight:600; flex-shrink: 0;}
.signal-table{width: 100%; border-collapse: collapse; margin: 40px 0; font-family: var(--sans); font-size: 0.85rem;}
.signal-table th{background: var(--surface2); padding: 12px 16px; text-align: left; font-weight:600; letter-spacing: 0.05em; border-bottom: 2px solid var(--lime); color: var(--white); font-size: 0.75rem; text-transform: uppercase;}
.signal-table th.lime-h{background: var(--lime); color: #000;}
.signal-table td{padding: 12px 16px; border-bottom: 1px solid var(--border); color: var(--ink-2); vertical-align: middle;}
.signal-table tr:nth-child(even) td{background: rgba(12,24,36,.03);}
.signal-table td.cat{color: var(--white); font-weight: 600;}
.impact-high{color: var(--lime); font-weight:600;}
.impact-med{color: var(--ink-3);}
.impact-low{color: var(--ink-3);}
.technique-box{background: var(--surface2); border: 1px solid var(--border); padding: 32px; margin: 32px 0;}
.technique-box h4{font-family: var(--sans); font-size: 0.75rem; letter-spacing: 0.15em; text-transform: uppercase; color: var(--lime); margin-bottom: 20px;}
.technique-list{list-style: none; margin: 0; padding: 0;}
.technique-list li{display: flex; align-items: flex-start; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--border); font-family: var(--sans); font-size: 0.88rem; color: var(--ink-2); margin: 0; padding-left: 0; line-height: 1.5;}
.technique-list li:last-child{border-bottom: none;}
.technique-list li::before{content: '→'; color: var(--lime); font-weight:600; flex-shrink: 0; margin-top: 2px;}
.cover::after{content: '2026'; position: absolute; right: -20px; top: 50%; transform: translateY(-50%); font-family: var(--sans); font-size: 22vw; font-weight:600; color: rgba(255,90,31,0.03); line-height: 1; pointer-events: none;}
.headline-stats{display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--border); margin: 40px 0; border: 1px solid var(--border);}
.hs-cell{background: var(--surface); padding: 32px 20px; text-align: center;}
.hs-cell .hs-num{font-family: var(--sans); font-size: 2rem; font-weight:600; color: var(--lime); display: block; line-height: 1; margin-bottom: 10px;}
.hs-cell .hs-desc{font-family: var(--sans); font-size: 0.75rem; color: var(--ink-3); line-height: 1.4;}
.hs-cell .hs-src{font-family: var(--mono); font-size: 0.6rem; color: var(--slate-ink); margin-top: 8px; display: block;}
.bar-chart{margin: 40px 0;}
.bar-chart-title{font-family: var(--sans); font-size: 0.75rem; letter-spacing: 0.15em; text-transform: uppercase; color: var(--lime); margin-bottom: 24px;}
.bar-row{display: grid; grid-template-columns: 130px 1fr 80px; gap: 16px; align-items: center; margin-bottom: 10px;}
.bar-label{font-family: var(--sans); font-size: 0.78rem; color: var(--ink-3); text-align: right;}
.bar-track{background: var(--surface2); height: 26px; position: relative; border: 1px solid var(--border);}
.bar-fill{height: 100%; background: var(--lime); position: absolute; left: 0; top: 0;}
.bar-fill.muted{background: rgba(255,90,31,0.22);}
.bar-fill.projected{background: repeating-linear-gradient(90deg, rgba(255,90,31,0.3) 0px, rgba(255,90,31,0.3) 6px, transparent 6px, transparent 12px);}
.bar-val{font-family: var(--mono); font-size: 0.8rem; color: var(--white); font-weight:600;}
.data-table{width: 100%; border-collapse: collapse; margin: 40px 0; font-family: var(--sans); font-size: 0.85rem;}
.data-table th{background: var(--surface2); padding: 12px 16px; text-align: left; font-weight:600; letter-spacing: 0.05em; border-bottom: 2px solid var(--lime); color: var(--white); font-size: 0.75rem; text-transform: uppercase;}
.data-table th.lime-h{background: var(--lime); color: #000;}
.data-table td{padding: 12px 16px; border-bottom: 1px solid var(--border); color: var(--ink-2); vertical-align: top; line-height: 1.5;}
.data-table tr:nth-child(even) td{background: rgba(12,24,36,.03);}
.data-table td.cat{color: var(--white); font-weight: 600;}
.data-table td.up{color: var(--lime); font-weight:600;}
.data-table td.down{color: #B42318; font-weight:600;}
.data-table td.neutral{color: var(--ink-3);}
.industry-grid{display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 40px 0;}
.industry-card{background: var(--surface2); border: 1px solid var(--border); padding: 24px;}
.industry-card h4{font-family: var(--sans); font-size: 0.9rem; font-weight:600; color: var(--white); margin-bottom: 4px;}
.ind-badge{font-family: var(--mono); font-size: 0.62rem; letter-spacing: 0.1em; margin-bottom: 12px; display: inline-block; text-transform: uppercase; padding: 3px 8px;}
.ind-critical{color: #000; background: #B42318;}
.ind-high{color: #000; background: #B45309;}
.ind-medium{color: #000; background: var(--lime);}
.ind-low{color: var(--white); background: var(--slate-ink);}
.industry-card p{font-family: var(--sans); font-size: 0.82rem; color: var(--ink-3); margin: 0; line-height: 1.5;}
.prediction{background: var(--surface2); border: 1px solid var(--border); padding: 28px; margin-bottom: 16px; display: grid; grid-template-columns: 80px 1fr; gap: 20px; align-items: flex-start;}
.pred-year{font-family: var(--mono); font-size: 1rem; font-weight:600; color: var(--lime);}
.pred-content h4{font-family: var(--sans); font-size: 0.9rem; font-weight:600; color: var(--white); margin-bottom: 8px;}
.pred-content p{font-family: var(--sans); font-size: 0.85rem; color: var(--ink-3); margin: 0; line-height: 1.6;}
.pred-content .confidence{font-family: var(--mono); font-size: 0.62rem; color: var(--lime); letter-spacing: 0.1em; text-transform: uppercase; margin-top: 10px; display: block;}
.source-table{width: 100%; border-collapse: collapse; margin: 32px 0;}
.source-table th{background: var(--surface2); padding: 10px 14px; text-align: left; font-family: var(--sans); font-size: 0.7rem; font-weight:600; letter-spacing: 0.08em; text-transform: uppercase; border-bottom: 1px solid var(--lime); color: var(--muted);}
.source-table td{padding: 10px 14px; border-bottom: 1px solid var(--border); font-family: var(--mono); font-size: 0.72rem; color: var(--ink-3);}
.source-table tr:last-child td{border-bottom: none;}
.source-table td.src-name{color: var(--ink-3); font-family: var(--sans); font-size: 0.8rem; font-weight: 600;}
.conclusion p{color: rgba(12,24,36,.14); margin-bottom: 16px; font-family: var(--sans); font-size: 0.95rem; line-height: 1.7;}
.conclusion p:last-child{margin-bottom: 0;}
.tactics-box h3{font-family: var(--sans); font-size: 0.75rem; letter-spacing: 0.15em; text-transform: uppercase; color: var(--lime); margin-bottom: 20px;}
.framework h3{font-family: var(--sans); font-size: 0.75rem; letter-spacing: 0.15em; text-transform: uppercase; color: rgba(12,24,36,.12); margin-bottom: 24px;}
.col-card h3{font-family: var(--sans); font-size: 0.75rem; letter-spacing: 0.15em; text-transform: uppercase; color: var(--muted); margin-bottom: 20px;}
.col-card.lime-card h3{color: var(--lime);}
.timeline-content h3{font-family: var(--sans); font-size: 0.9rem; font-weight:600; color: var(--white); margin-bottom: 8px;}
.matrix-cell h3{font-family: var(--sans); font-size: 0.9rem; font-weight:600; color: var(--white); margin-bottom: 8px;}
.step-content h3{font-family: var(--sans); font-size: 0.95rem; font-weight:600; color: var(--white); margin-bottom: 8px;}
.platform-card h3{font-family: var(--sans); font-size: 1rem; font-weight:600; color: var(--white); margin-bottom: 6px;}
.technique-box h3{font-family: var(--sans); font-size: 0.75rem; letter-spacing: 0.15em; text-transform: uppercase; color: var(--lime); margin-bottom: 20px;}
.industry-card h3{font-family: var(--sans); font-size: 0.9rem; font-weight:600; color: var(--white); margin-bottom: 4px;}
.pred-content h3{font-family: var(--sans); font-size: 0.9rem; font-weight:600; color: var(--white); margin-bottom: 8px;}
@media (max-width: 768px) { .cover { padding: 32px; } .content { padding: 48px 32px; } .toc-wrapper { padding: 40px 32px; } .toc-grid { grid-template-columns: 1fr; } .stat-grid { grid-template-columns: 1fr; } .cover-stats { gap: 24px; } .framework-items { grid-template-columns: 1fr; } .footer-top { flex-direction: column; gap: 32px; } .sticky-nav { padding: 12px 24px; } .pull-quote { margin: 32px 0; } }
@media (max-width: 768px) { .cover { padding: 32px; } .content { padding: 48px 32px; } .toc-wrapper { padding: 40px 32px; } .toc-grid { grid-template-columns: 1fr; } .stat-grid { grid-template-columns: 1fr; } .two-col { grid-template-columns: 1fr; } .strategy-matrix { grid-template-columns: 1fr; } }
@media (max-width: 768px) { .cover, .toc-wrapper, .content { padding: 32px; } .toc-grid, .platform-grid { grid-template-columns: 1fr; } .stat-grid { grid-template-columns: 1fr; } .cover-stats { gap: 24px; flex-wrap: wrap; } }
@media (max-width: 768px) { .cover, .toc-wrapper, .content { padding: 32px; } .toc-grid, .industry-grid { grid-template-columns: 1fr; } .headline-stats { grid-template-columns: 1fr 1fr; } .bar-row { grid-template-columns: 80px 1fr 55px; gap: 10px; } .cover-stats { gap: 24px; flex-wrap: wrap; } .conclusion { padding: 40px 32px; } .prediction { grid-template-columns: 1fr; } }
/* ---- Brand overrides (applied after the merged document styles) ---- */
body{font-family:var(--sans);font-size:17px;line-height:1.7;color:var(--navy);background:var(--bg);-webkit-font-smoothing:antialiased}
h1,h2,.cover-title,.conclusion h2,.conc-label+h2{font-family:var(--serif);font-weight:400;letter-spacing:-.02em}
.cover-title{font-size:clamp(44px,6.5vw,86px);line-height:1.0}
.cover-title em{color:var(--lime-dim);font-style:italic}
h2{font-size:clamp(30px,3.6vw,46px);line-height:1.08}
h3{font-family:var(--sans);font-weight:600;font-size:15px;letter-spacing:.02em;text-transform:none;color:var(--navy);border-bottom:1px solid var(--border)}
h4{font-family:var(--sans);font-weight:600}
p{color:var(--ink-2)}
strong{color:var(--navy);font-weight:600}
a{color:inherit}
.cover{min-height:0;padding:clamp(40px,6vw,80px) clamp(24px,5vw,60px) clamp(32px,4vw,48px);background:var(--bg)}
.cover::before{display:none}
.cover-top{align-items:center}
.brand,.footer-brand{font-family:var(--sans);font-weight:600;letter-spacing:0;color:var(--navy);font-size:15px}
.brand .by{display:block;font:500 10px/1.6 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--slate-ink)}
.brand img{display:block;width:200px;height:auto}
.doc-meta{font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:var(--slate-ink)}
.wp-number{font-family:var(--mono);color:var(--lime);font-weight:600}
.cover-subtitle{color:var(--ink-2);font-size:19px;line-height:1.55}
.cover-stat .val{font-family:var(--serif);font-weight:400;color:var(--navy);font-size:34px;letter-spacing:-.02em}
.cover-stat .lbl{font-family:var(--mono);color:var(--slate-ink);font-size:10px}
.cover-disclaimer{color:var(--slate-ink);font-size:12px}
.toc-wrapper{background:var(--mist);padding:clamp(32px,5vw,60px) clamp(24px,5vw,60px)}
.toc-label{color:var(--lime);font-family:var(--mono);font-weight:600}
.toc-item{color:var(--navy);border-color:var(--border)}
.toc-item:hover{color:var(--lime)}
.toc-num{color:var(--slate-ink);font-family:var(--mono)}
.content{padding:clamp(48px,7vw,80px) clamp(24px,5vw,60px)}
.exec-summary{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--coral)}
.exec-label,.stat-label,.section-num,.conc-label,.cat,.category{font-family:var(--mono)}
.section-num{color:var(--lime);font-weight:600}
.data-callout,.highlight-box,.tactics-box,.technique-box,.stat-cell,.industry-card,.platform-card,.col-card,.lime-card,.pull-quote,.timeline-item,.roadmap-phase,.prediction,.process-step,.framework-item,.hs-cell{background:var(--surface);border:1px solid var(--border)}
.data-callout::before{background:var(--coral)}
.stat-big,.hs-num,.num,.val{font-family:var(--serif);font-weight:400;color:var(--navy)}
.stat-source,.src,.hs-src{color:var(--slate-ink);font-family:var(--mono)}
.framework,.conclusion{background:var(--navy);color:#E7ECEF}
.framework *,.conclusion *{color:#E7ECEF}
.framework strong,.conclusion strong,.framework h2,.conclusion h2,.framework .fi-title{color:#fff}
.framework .fi-num,.conclusion .conc-label,.framework h3,.framework h4{color:var(--coral)}
.framework-item{background:var(--navy-2);border-color:#1A2938}
.framework-item .fi-desc{color:#B8C3CD;opacity:1}
.conclusion p,.framework p,.conclusion li,.framework li{color:#B8C3CD}
.conclusion a,.framework a{color:#fff;border-bottom:1px solid var(--coral)}
.compare-table th.lime-header,.matrix-cell.lime-header,.signal-table th.lime-h,.data-table th.lime-h,.source-table th{background:var(--navy);color:#fff}
.ind-medium{background:var(--mist);color:var(--navy)}
.matrix-cell.lime-header p,.matrix-cell.lime-header h3,.matrix-cell.lime-header h4{color:#fff}
.ind-high{background:#FDE7DD;color:#9A2E06}
.ind-critical{background:var(--navy);color:#fff}
.bar-fill{background:var(--navy)}
.bar-track{background:var(--mist)}
.progress-bar{background:var(--coral);height:2px}
.sticky-nav{background:rgba(245,241,235,.94);backdrop-filter:saturate(1.2) blur(14px);-webkit-backdrop-filter:saturate(1.2) blur(14px);border-bottom:1px solid var(--border);color:var(--navy)}
.sticky-nav .brand img{width:160px}
.sticky-nav .doc-title{font-family:var(--sans);color:var(--ink-3);font-size:13px}
.sticky-nav .cta{background:var(--navy);color:var(--cream);font-family:var(--sans);font-weight:600;font-size:13px;letter-spacing:.01em;text-transform:none;padding:10px 18px;border-radius:999px;border:1px solid var(--navy);transition:background .2s,color .2s}
.sticky-nav .cta:hover{background:var(--coral);border-color:var(--coral);color:#fff}
table{font-family:var(--sans)}
th{font-family:var(--mono);font-weight:500;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
blockquote{color:var(--navy);font-family:var(--serif);font-size:clamp(22px,2.4vw,30px);line-height:1.25;letter-spacing:-.01em}
.site-footer{margin-top:0}
@media (max-width:600px){.sticky-nav .doc-title{display:none}.sticky-nav .brand img{width:140px}}
/* Wide tables scroll inside their own region instead of pushing the page sideways */
.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:24px 0}
.table-scroll>table{margin:0;min-width:520px}
