/* Sourced editorial figures: real text, responsive diagrams, no chart runtime. */
.vs-story { --vs-ink:#123e3b; --vs-paper:#efeee6; --vs-mint:#98dfc9; --vs-amber:#efba82; color:#eaf0f6; font-family:var(--j-font-body); }
.vs-story * { box-sizing:border-box; }
.vs-story .vs-wrap { width:min(1180px,calc(100% - 64px)); margin-inline:auto; }
.vs-story p,.vs-story h2,.vs-story h3 { padding:0; }
.vs-story a { color:var(--vs-mint); text-underline-offset:4px; }
.vs-story a:focus-visible,.vs-story summary:focus-visible { outline:2px solid var(--vs-amber); outline-offset:6px; }
.vs-story .vs-eyebrow,.vs-story .vs-label { display:block; font:400 11px/1.5 var(--j-font-mono); letter-spacing:.08em; text-transform:uppercase; }
.vs-story .vs-hero { padding:42px 0 50px; border-bottom:1px solid #30465a; }
.vs-story .vs-back { display:inline-block; font-size:13px; margin-bottom:30px; text-decoration:none; }
.vs-story .vs-hero-grid { display:grid; grid-template-columns:1.1fr 1fr; gap:48px; align-items:center; }
.vs-story .vs-hero h1 { font-family:var(--j-font-head)!important; font-size:clamp(37px,4.1vw,60px); font-weight:650; line-height:1.08; letter-spacing:-.035em; color:#eff4fa; margin:18px 0 24px; padding:0; }
.vs-story .vs-hero h1 span { display:block; color:var(--vs-mint); }
.vs-story .vs-deck { color:#bfccda; font-size:17px; line-height:1.75; margin:0; }
.vs-story .vs-meta { display:flex; flex-wrap:wrap; gap:6px 16px; color:#a7b8ca; font-size:11px; line-height:1.7; margin-top:24px; }
.vs-story .vs-cover { margin:0; }.vs-story .vs-cover img { display:block; width:100%; height:auto; border-radius:3px; }
.vs-story .vs-cover figcaption { font-size:11px; line-height:1.7; color:#a7b8ca; margin-top:9px; }
.vs-story .vs-hero-art { padding:34px; background:#123849; border:1px solid #3a6570; border-radius:3px; }
.vs-story .vs-hero-art > strong { display:block; font:650 39px/1.15 var(--j-font-head); letter-spacing:-.035em; margin:20px 0 24px; }
.vs-story .vs-art-row { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:18px 0; border-top:1px solid #527884; font-size:14px; }
.vs-story .vs-art-row span:last-child { color:var(--vs-mint); font-family:var(--j-font-mono); font-size:12px; }
.vs-story .vs-prose { max-width:730px; margin:56px auto 32px; font-size:17px; line-height:1.85; color:#c4ceda; }
.vs-story .vs-prose p { margin:0 0 22px; }.vs-story .vs-prose .vs-lead { color:#eff4fa; font-size:21px; line-height:1.65; }
.vs-story .vs-prose h2 { font:650 clamp(26px,3vw,35px)/1.2 var(--j-font-head); letter-spacing:-.025em; margin:0 0 22px; color:#eff4fa; }
.vs-story .vs-figure { margin:38px 0 0; padding:36px 44px 24px; background:var(--vs-paper); color:var(--vs-ink); border-radius:4px; scroll-margin-top:110px; }
.vs-story .vs-figure.vs-dark { background:#122e3d; color:#edf4ef; border:1px solid #3c5a68; }
.vs-story .vs-figure.vs-green { background:#dce9e2; }.vs-story .vs-figure.vs-blue { background:#e1e8f2; color:#193856; }
.vs-story .vs-figure-head { display:flex; justify-content:space-between; gap:16px; padding-bottom:14px; margin-bottom:26px; border-bottom:1px solid currentColor; font:10px/1.6 var(--j-font-mono); text-transform:uppercase; letter-spacing:.06em; }
.vs-story .vs-figure h2 { font:700 clamp(31px,4vw,48px)/1.1 var(--j-font-head)!important; letter-spacing:-.035em; color:inherit; margin:0 0 18px; max-width:910px; }
.vs-story .vs-figure h3 { font:650 25px/1.2 var(--j-font-head); letter-spacing:-.02em; color:inherit; margin:10px 0 12px; }
.vs-story .vs-subtitle { font-size:15px; line-height:1.7; max-width:800px; margin:0 0 28px; }
.vs-story .vs-figure figcaption { border-top:1px solid currentColor; margin-top:32px; padding-top:15px; font-size:11px; line-height:1.75; }
.vs-story .vs-figure a { color:inherit; text-decoration:underline; }
.vs-story .vs-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; margin-top:30px; }
.vs-story .vs-grid-two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.vs-story .vs-panel { padding:25px; border:1px solid #9fb8ae; border-radius:3px; background:#ffffff30; min-width:0; }
.vs-story .vs-panel p { font-size:14px; line-height:1.7; margin:10px 0 0; }
.vs-story .vs-panel .vs-example { margin-top:24px; padding-top:16px; border-top:1px solid #9fb8ae; font-size:15px; font-weight:550; }
.vs-story .vs-dark .vs-panel { border-color:#54717d; background:#09212f; }
.vs-story .vs-dark .vs-panel .vs-label { color:var(--vs-mint); }
.vs-story .vs-paper-node { background:#174e48; color:#eff4e9; padding:24px 28px; border-radius:3px; }
.vs-story .vs-paper-node strong { font:650 32px/1.1 var(--j-font-head); display:block; margin:10px 0; letter-spacing:-.03em; }
.vs-story .vs-paper-node p { font-size:14px; line-height:1.6; margin:0; }
.vs-story .vs-family { margin:36px auto 0; max-width:890px; }
.vs-story .vs-family > .vs-paper-node { max-width:510px; margin:auto; text-align:center; }
.vs-story .vs-family-branches { position:relative; display:grid; grid-template-columns:1fr 1fr; gap:28px; padding-top:48px; }
.vs-story .vs-family-branches::before { content:''; position:absolute; width:1px; height:24px; left:50%; top:0; background:#719c8e; }
.vs-story .vs-family-branches > div { position:relative; border:1px solid #8aaa9e; padding:24px; }
.vs-story .vs-family-branches > div::before { content:''; position:absolute; top:-24px; left:50%; height:24px; width:calc(50% + 14px); border-top:1px solid #719c8e; border-left:1px solid #719c8e; }
.vs-story .vs-family-branches > div:last-child::before { left:auto; right:50%; border-left:0; border-right:1px solid #719c8e; }
.vs-story .vs-family-branches p { font-size:14px; line-height:1.7; margin:10px 0; }
.vs-story .vs-search-pair { display:flex; gap:8px; margin-top:18px; }.vs-story .vs-search-pair span { padding:10px; flex:1; background:#d0dfd6; font-size:12px; font-weight:600; text-align:center; }
.vs-story .vs-chat-sequence { display:grid; grid-template-columns:1fr 1fr; gap:35px; margin-top:34px; }
.vs-story .vs-chat-step { border:1px solid #517384; padding:28px; border-radius:4px; }
.vs-story .vs-chat-step:last-child { margin-top:64px; background:#204c50; }
.vs-story .vs-chat-step p { font-size:15px; line-height:1.7; }
.vs-story .vs-chat-prompt { padding:14px 18px; border-radius:16px 16px 2px 16px; background:#d5e9df; color:#173e3b; margin-bottom:22px; }
.vs-story .vs-chat-step h3 { font-size:28px; }.vs-story .vs-chat-step .vs-label { color:var(--vs-mint); }
.vs-story .vs-arrow-note { margin:25px 0 0; font-size:13px; line-height:1.7; color:var(--vs-mint); }
.vs-story .vs-stations { list-style:none; counter-reset:station; padding:0; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:36px 0 0; }
.vs-story .vs-stations li { counter-increment:station; position:relative; border-top:2px solid #5c988a; padding:26px 22px 0 0; }
.vs-story .vs-stations li::before { content:counter(station,decimal-leading-zero); display:block; font:13px/1 var(--j-font-mono); color:#397467; margin:0 0 22px; }
.vs-story .vs-stations li::after { content:''; position:absolute; top:-7px; left:0; height:12px; width:12px; border-radius:50%; background:#24685b; }
.vs-story .vs-dark .vs-stations li::before { color:var(--vs-mint); }.vs-story .vs-dark .vs-stations li::after { background:var(--vs-mint); }
.vs-story .vs-stations h3 { font-size:24px; }.vs-story .vs-stations p { font-size:14px; line-height:1.7; margin:0; }
.vs-story .vs-stations-three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.vs-story .vs-fan { margin:32px auto 0; max-width:950px; }.vs-story .vs-question { padding:22px; text-align:center; background:#174e48; color:#eff4e9; font:600 23px/1.45 var(--j-font-head); }
.vs-story .vs-fan-branches { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin:40px 0; position:relative; }
.vs-story .vs-fan-branches::before { content:''; position:absolute; left:12.5%; right:12.5%; height:1px; background:#6d998b; top:-20px; }
.vs-story .vs-fan-branches > div { position:relative; padding:20px 16px; border:1px solid #8daf9e; background:#d7e5dc; }
.vs-story .vs-fan-branches > div::before { content:''; position:absolute; top:-20px; left:50%; height:20px; width:1px; background:#6d998b; }
.vs-story .vs-fan-branches h3 { font-size:21px; margin:0 0 10px; }.vs-story .vs-fan-branches p { font-size:13px; line-height:1.65; margin:0; }
.vs-story .vs-answer { border-block:1px solid #789b8d; padding:22px; text-align:center; }.vs-story .vs-answer strong { display:block; font:600 27px/1.2 var(--j-font-head); margin-bottom:10px; }.vs-story .vs-answer p { font-size:14px; line-height:1.6; margin:0; }
.vs-story .vs-chart-layout { display:grid; grid-template-columns:1fr 240px; align-items:center; gap:45px; margin-top:38px; }
.vs-story .vs-bars { display:grid; gap:26px; }.vs-story .vs-bar-label { display:flex; justify-content:space-between; gap:16px; font-size:15px; margin-bottom:10px; }
.vs-story .vs-bar-track { background:#bfd0c5; height:55px; }.vs-story .vs-bar { background:#235e51; height:100%; display:flex; align-items:center; padding:0 15px; color:#f4f5ed; font:650 26px/1 var(--j-font-head); }
.vs-story .vs-bar.vs-bar-accent { background:#4268a6; }
.vs-story .vs-stat { border-left:1px solid #96afa3; padding:10px 0 10px 30px; }
.vs-story .vs-stat > strong { display:block; font:700 94px/1 var(--j-font-head); letter-spacing:-.065em; margin:10px 0; }
.vs-story .vs-stat > strong small { font-size:.5em; }.vs-story .vs-stat p { font-size:14px; line-height:1.7; margin:0; }
.vs-story .vs-receipt-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:34px 0 0; }
.vs-story .vs-receipt { background:#f0efe6; color:#123e3b; padding:25px; border-top:6px solid #91cbb5; }
.vs-story .vs-receipt strong { font:650 27px/1.2 var(--j-font-head); display:block; margin:18px 0; }.vs-story .vs-receipt p { font-size:14px; line-height:1.7; margin:0; }
.vs-story .vs-receipt:last-child { background:#c9e4d6; }
.vs-story .vs-layer-stack { margin:35px auto 0; max-width:840px; display:grid; gap:12px; }
.vs-story .vs-layer { display:grid; grid-template-columns:65px 1fr 1fr; gap:20px; align-items:center; padding:22px; border:1px solid #87a5b9; background:#f7f7f333; }
.vs-story .vs-layer > span { font:650 40px/1 var(--j-font-head); color:#4268a6; }.vs-story .vs-layer h3 { margin:0; }.vs-story .vs-layer p { font-size:14px; line-height:1.7; margin:0; }
.vs-story .vs-dot-grid { display:grid; grid-template-columns:repeat(10,minmax(0,1fr)); gap:7px; margin:24px 0 16px; }
.vs-story .vs-dot { aspect-ratio:1; border-radius:50%; background:#174e48; }.vs-story .vs-dot.vs-rejected { background:transparent; border:2px solid #789688; }
.vs-story .vs-score { display:flex; align-items:baseline; gap:12px; margin:20px 0; }.vs-story .vs-score strong { font:700 53px/1 var(--j-font-head); letter-spacing:-.045em; }.vs-story .vs-score span { font-size:13px; }
.vs-story .vs-mini-ledger { display:flex; justify-content:space-between; gap:15px; border-top:1px solid #93ac9c; padding-top:18px; font-size:13px; }
.vs-story .vs-mini-ledger strong { display:block; font:650 27px/1.2 var(--j-font-head); margin-top:7px; }
.vs-story .vs-company-grid { display:grid; grid-template-columns:1fr 1fr; margin-top:34px; border-top:1px solid #91ac9e; border-left:1px solid #91ac9e; }
.vs-story .vs-company { padding:28px; border-right:1px solid #91ac9e; border-bottom:1px solid #91ac9e; }.vs-story .vs-company h3 { font-size:32px; margin:10px 0 16px; }.vs-story .vs-company p { font-size:14px; line-height:1.7; margin:0; }.vs-story .vs-company .vs-product { font:11px/1.7 var(--j-font-mono); margin-top:20px; padding-top:15px; border-top:1px solid #91ac9e; }
.vs-story .vs-stacked { display:flex; height:70px; margin-bottom:10px; }.vs-story .vs-stacked span { min-width:0; display:flex; justify-content:center; align-items:center; font:650 26px/1 var(--j-font-head); }
.vs-story .vs-auto { background:#235e51; color:#f5f5ed; }.vs-story .vs-partial { background:#a9caba; color:#183d34; }.vs-story .vs-manual { background:#efba82; color:#573715; }
.vs-story .vs-stacked .vs-small-segment { font-size:13px; }
.vs-story .vs-legend { display:flex; flex-wrap:wrap; gap:10px 22px; font-size:12px; line-height:1.6; margin:22px 0 0; }.vs-story .vs-legend span { display:flex; align-items:center; gap:8px; }.vs-story .vs-legend i { display:inline-block; width:11px; height:11px; flex-shrink:0; }
.vs-story .vs-data { margin-top:15px; color:#b5c5d5; font-size:12px; line-height:1.75; }.vs-story .vs-data summary { cursor:pointer; width:fit-content; text-decoration:underline; text-underline-offset:4px; }
.vs-story .vs-table-wrap { overflow-x:auto; }.vs-story table { width:100%; border-collapse:collapse; margin:18px 0; }.vs-story th,.vs-story td { padding:10px; border:1px solid #355069; text-align:left; }.vs-story th { color:#eef3f8; }.vs-story caption { text-align:left; padding:8px 0; }
.vs-story .vs-close { margin:62px 0; padding:32px 0; border-block:1px solid #3a5265; display:grid; grid-template-columns:1fr auto; align-items:center; gap:30px; }.vs-story .vs-close h2 { font:600 28px/1.2 var(--j-font-head); color:#eff4fa; margin:0 0 12px; }.vs-story .vs-close p { color:#bdcad7; font-size:15px; line-height:1.7; max-width:620px; margin:0; }
.vs-story .vs-button { display:inline-flex; gap:22px; align-items:center; background:#00c9b1; color:#08222b; text-decoration:none; padding:17px 22px; border-radius:3px; font-size:14px; font-weight:600; }.vs-story .vs-button:hover { background:var(--vs-mint); }
.vs-story .vs-sources { max-width:850px; margin:0 auto 52px; color:#a9baca; font-size:12px; line-height:1.75; border-top:1px solid #3a5265; padding-top:20px; }.vs-story .vs-sources summary { cursor:pointer; font-size:14px; color:#d8e4ee; }.vs-story .vs-sources ol { padding-left:20px; }.vs-story .vs-sources li { padding-left:6px; margin-bottom:12px; }.vs-story .vs-sources a { overflow-wrap:anywhere; }
.vs-story .vs-read-next { display:flex; flex-wrap:wrap; gap:20px 32px; margin-bottom:64px; font-size:14px; }
@media(max-width:900px) {
 .vs-story .vs-hero-grid { grid-template-columns:1fr; gap:30px; }.vs-story .vs-cover { max-width:660px; }.vs-story .vs-hero-art { max-width:660px; }
 .vs-story .vs-figure { padding:30px 28px 22px; }.vs-story .vs-grid { gap:14px; }.vs-story .vs-panel { padding:20px; }
 .vs-story .vs-chart-layout { grid-template-columns:1fr; gap:28px; }.vs-story .vs-stat { border-left:0; border-top:1px solid #96afa3; padding:20px 0 0; display:flex; align-items:center; gap:26px; }.vs-story .vs-stat > strong { margin:0; }.vs-story .vs-stat p { max-width:260px; }
 .vs-story .vs-fan-branches { grid-template-columns:1fr 1fr; gap:20px; }.vs-story .vs-fan-branches::before,.vs-story .vs-fan-branches > div::before { display:none; }
 .vs-story .vs-receipt-grid { gap:14px; }.vs-story .vs-receipt { padding:20px; }
 .vs-story .vs-stations { grid-template-columns:1fr 1fr; gap:26px 0; }.vs-story .vs-stations-three { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .vs-story .vs-close { grid-template-columns:1fr; }.vs-story .vs-button { width:fit-content; }
}
@media(max-width:600px) {
 .vs-story .vs-wrap { width:calc(100% - 36px); }.vs-story .vs-hero { padding:24px 0 30px; }.vs-story .vs-back { margin-bottom:23px; }.vs-story .vs-hero h1 { font-size:38px; }.vs-story .vs-deck { font-size:15px; }
 .vs-story .vs-prose { font-size:16px; margin-top:42px; }.vs-story .vs-prose .vs-lead { font-size:19px; }.vs-story .vs-hero-art { padding:25px; }.vs-story .vs-hero-art > strong { font-size:33px; }
 .vs-story .vs-figure { padding:24px 20px 20px; margin-top:28px; }.vs-story .vs-figure-head { font-size:9px; margin-bottom:21px; }.vs-story .vs-figure h2 { font-size:32px!important; }.vs-story .vs-subtitle { font-size:14px; }
 .vs-story .vs-grid,.vs-story .vs-chat-sequence,.vs-story .vs-receipt-grid,.vs-story .vs-company-grid { grid-template-columns:1fr; }.vs-story .vs-panel { padding:23px; }.vs-story .vs-panel .vs-example { margin-top:18px; }
 .vs-story .vs-family-branches { grid-template-columns:1fr; gap:18px; padding:28px 0 0 18px; }.vs-story .vs-family-branches::before { left:0; height:calc(100% - 90px); }.vs-story .vs-family-branches > div::before,.vs-story .vs-family-branches > div:last-child::before { left:-18px; right:auto; top:50%; width:18px; height:1px; border:0; background:#719c8e; }.vs-story .vs-family-branches > div { padding:22px; }
 .vs-story .vs-search-pair { flex-direction:column; }.vs-story .vs-chat-step { padding:22px; }.vs-story .vs-chat-step:last-child { margin-top:0; }.vs-story .vs-chat-sequence { gap:18px; }
 .vs-story .vs-stations,.vs-story .vs-stations-three { display:block; margin-left:5px; }.vs-story .vs-stations li { border-top:0; border-left:2px solid #5c988a; padding:0 0 26px 25px; }.vs-story .vs-stations li::after { top:2px; left:-7px; }.vs-story .vs-stations li::before { margin-bottom:10px; }.vs-story .vs-stations li:last-child { padding-bottom:0; }
 .vs-story .vs-question { font-size:21px; padding:22px 16px; }.vs-story .vs-fan-branches { margin:20px 0; gap:12px; }.vs-story .vs-fan-branches > div { padding:17px 12px; }.vs-story .vs-fan-branches h3 { font-size:19px; }.vs-story .vs-fan-branches p { font-size:12px; }.vs-story .vs-answer { padding:20px 10px; }
 .vs-story .vs-stat { gap:22px; }.vs-story .vs-stat > strong { font-size:70px; }.vs-story .vs-stat p { font-size:12px; }.vs-story .vs-bar-label { font-size:13px; }.vs-story .vs-bar { font-size:23px; }
 .vs-story .vs-layer { grid-template-columns:35px 1fr; padding:20px; gap:10px 15px; }.vs-story .vs-layer > span { font-size:31px; }.vs-story .vs-layer p { grid-column:2; }.vs-story .vs-layer h3 { font-size:24px; }
 .vs-story .vs-company { padding:24px; }.vs-story .vs-stacked { height:60px; }.vs-story .vs-stacked span { font-size:23px; }.vs-story .vs-stacked .vs-small-segment { font-size:10px; }
 .vs-story th,.vs-story td { padding:7px; font-size:11px; }.vs-story .vs-close { margin-block:44px; }
}
