/* Product pages: programme/funding first, then the reviewed economic handoff. */
.product-story{--product-gutter:64px;--product-accent:#c58d43;--product-pale:#d7a766;--product-dark:#936326;--story-ink:#202a30;--story-muted:#626e74;font-family:Inter,sans-serif}
.product-story-capital{--product-accent:#8a78c7;--product-pale:#b7abe0;--product-dark:#7864b2}
.product-story *{box-sizing:border-box}
.product-page-inner,.product-story #demo>div{width:min(calc(100% - var(--product-gutter)),1240px)!important;margin-inline:auto}
.product-story section{scroll-margin-top:100px}
.product-hero{padding:180px 0 105px!important;background-image:radial-gradient(ellipse at 88% 10%,color-mix(in srgb,var(--product-accent) 9%,transparent),transparent 52%)!important}
.product-hero-grid{display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,1.15fr);gap:76px;align-items:center}
.product-kicker{margin:0 0 25px;font-size:11px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--product-dark)}
.product-hero .product-kicker{color:#99a5ad;letter-spacing:.12em}
.product-kicker strong{color:var(--product-accent);font-weight:750}
.product-hero h1{font-size:clamp(43px,4.2vw,62px);font-weight:600;letter-spacing:-.052em;line-height:1.07;color:#eef2f4;margin:0 0 32px}
.product-hero h1 em{display:block;margin-top:10px;font-family:Charter,'Bitstream Charter',Georgia,serif;font-size:.94em;font-weight:400;letter-spacing:-.045em;color:var(--product-pale)}
.product-hero-copy>p:not(.product-kicker){font-size:17px;line-height:1.72;letter-spacing:-.01em;color:#aeb8c2;margin:0;max-width:485px}
.product-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:33px;font-size:13px;font-weight:600}
.product-primary{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 19px;border-radius:4px;background:var(--product-accent);color:#0d1117!important;border:1px solid var(--product-accent);transition:background .2s,border-color .2s}
.product-primary:hover{background:var(--product-pale);border-color:var(--product-pale)}
.product-text-link{color:#d5dde1!important;text-underline-offset:6px}
.product-text-link:hover{text-decoration:underline}
.decision-hero{margin:0;min-width:0;color:#d9e1e5;font-size:12px;outline-offset:10px;font-variant-numeric:tabular-nums}
.diagram-context{display:flex;justify-content:space-between;align-items:baseline;gap:16px;border-bottom:1px solid #91a8b429;padding:0 0 18px;margin-bottom:22px;font-size:11px;color:#9aa9b2}
.diagram-context>span:last-child{font-size:10px;white-space:nowrap;color:#84939d}
.stage-delivery svg{display:block;width:100%;height:auto;overflow:visible}.stage-delivery .delivery-chart-mobile{display:none}
.diagram-grid{stroke:#8297a119;stroke-width:1}
.diagram-date{fill:#8a9ba5;font:10px Inter,sans-serif}
.diagram-row-name{fill:#d1dce2;font:11px Inter,sans-serif}
.diagram-row-rule{stroke:#8297a11c;stroke-width:1}
.delivery-bar{fill:#849caa}.delivery-bar.is-summary{fill:#8a9ba5}.delivery-bar.is-moving,.delivery-milestone{fill:var(--product-accent)}
.delivery-baseline{stroke:#76909f;stroke-width:2;opacity:.45}
.delivery-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:4px 0 22px}
.diagram-key{display:flex;align-items:center;gap:21px;flex-wrap:wrap;font-size:10px;color:#8d9ca5}
.diagram-key>span{display:flex;align-items:center;gap:7px;white-space:nowrap}
.diagram-key i{display:block;width:16px;height:3px;background:#829bab}
.diagram-key .key-baseline{height:2px;opacity:.5}.diagram-key .key-revised{background:var(--product-accent);height:5px}
.delivery-date{text-align:right}.delivery-date small{display:block;font-size:10px;color:#8d9ca5;margin-bottom:6px}.delivery-date strong{font-size:23px;font-weight:500;letter-spacing:-.02em;color:#e0e7eb}
.diagram-switch{display:flex;gap:7px;justify-content:flex-end;border-top:1px solid #91a8b429;padding-top:17px}
.diagram-switch button{font:500 11px Inter,sans-serif;color:#9aa9b2;background:transparent;border:1px solid transparent;padding:7px 10px;border-radius:3px;cursor:pointer;transition:background .3s,color .3s,border-color .3s}
.diagram-switch button[aria-pressed=true]{color:var(--product-pale);background:color-mix(in srgb,var(--product-accent) 9%,transparent);border-color:color-mix(in srgb,var(--product-accent) 25%,transparent)}
.sources-scale{position:relative;height:13px;margin:0 0 9px 160px;font-size:10px;line-height:13px;color:#82929d}.sources-scale span{position:absolute;top:0;transform:translateX(-50%)}.sources-scale span:nth-child(1){left:0;transform:none}.sources-scale span:nth-child(2){left:25%}.sources-scale span:nth-child(3){left:50%}.sources-scale span:nth-child(4){left:75%}.sources-scale span:nth-child(5){right:0;transform:none}
.sources-cases{display:grid;gap:1px}
.sources-case{display:grid;grid-template-columns:142px minmax(0,1fr);align-items:center;gap:18px;border:0;border-top:1px solid #91a8b425;text-align:left;background:none;padding:20px 0;color:#9facb5;cursor:pointer;font:inherit;transition:color .6s}
.source-case-name{font-size:12px;font-weight:500;line-height:1.4}.source-case-name small{display:block;font-size:10px;font-weight:400;color:#7e909c;margin-top:7px}
.sources-track{display:flex;height:32px;background:repeating-linear-gradient(90deg,transparent,transparent calc(25% - 1px),#8297a119 calc(25% - 1px),#8297a119 25%);position:relative}
.sources-track>i{font-style:normal;height:100%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:500;color:#e5e9ed;opacity:.76;transition:opacity .85s,filter .85s}
.sources-equity{background:#536674}.sources-debt{background:var(--product-accent)}
.sources-track>i[style*="width:0%"]{overflow:hidden}
.sources-case[aria-pressed=true]{color:#f1f4f5}.sources-case[aria-pressed=true] .sources-track>i{opacity:1}
.sources-key{justify-content:flex-end;padding:14px 0 22px;border-bottom:1px solid #91a8b429}
.diagram-key .key-equity{background:#536674;height:7px}.diagram-key .key-debt{background:var(--product-accent);height:7px}
.funding-readout{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:22px}
.funding-readout small{display:block;font-size:10px;color:#8f9faa;margin-bottom:10px}
.funding-readout strong{display:block;font-size:29px;line-height:1.2;font-weight:500;letter-spacing:-.035em;color:#e6eaf0}
.funding-readout em{font-size:11px;font-style:normal;font-weight:400;letter-spacing:0;color:#92a0ab;margin-left:8px}
.diagram-basis{font-size:10px;line-height:1.5;color:#7f909c;margin:22px 0 0}
.product-function{padding:106px 0 82px!important;border-top:1px solid #d8ddd9}
.product-section-intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:48px}
.product-section-intro .product-kicker{margin-bottom:21px}
.product-story h2{font-size:clamp(34px,3.35vw,47px);font-weight:600;letter-spacing:-.046em;line-height:1.1;color:var(--story-ink);margin:0}
.product-section-intro>p{font-size:17px;line-height:1.72;letter-spacing:-.008em;color:var(--story-muted);margin:0;padding-bottom:2px;max-width:550px}
.product-demonstration{display:grid;grid-template-columns:200px minmax(0,1fr);gap:34px;align-items:start}
.demonstration-chapters{display:grid;gap:0;padding-top:45px}
.demonstration-chapters button{appearance:none;width:100%;background:transparent;text-align:left;color:#798187;border:0;border-bottom:1px solid #c5cdcb;border-left:2px solid transparent;padding:18px 0 19px 17px;cursor:pointer;font:inherit;transition:color .35s,border-color .35s,background .35s}
.demonstration-chapters button>span{font-size:13px;line-height:1.35;font-weight:600;display:block}
.demonstration-chapters button>span .mod{font:inherit;letter-spacing:inherit}
.demonstration-chapters button>small{display:block;font-size:11px;line-height:1.65;font-weight:400;margin-top:8px;color:#798187;max-width:178px}
.demonstration-chapters button[aria-pressed=true]{border-left-color:var(--product-dark);color:var(--product-dark);background:linear-gradient(90deg,color-mix(in srgb,var(--product-accent) 7%,transparent),transparent)}
.demonstration-chapters button[aria-pressed=true]>small{color:#536269}
.demonstration-window{margin:0;min-width:0;border:1px solid #c9d1d0;border-radius:9px;overflow:hidden;box-shadow:0 22px 48px -34px #18303d65;background:#f5f6f3;outline-offset:6px}
.demonstration-toolbar{height:41px;display:flex;align-items:center;gap:16px;background:#e9edeb;border-bottom:1px solid #ccd4d1;padding:0 17px;font-size:10px;line-height:1.3;color:#65727a;white-space:nowrap}
.demonstration-dots{display:flex;gap:5px;flex-shrink:0}.demonstration-dots i{width:6px;height:6px;border-radius:50%;border:1px solid #96a4aa}
.demonstration-toolbar>span:nth-child(2){overflow:hidden;text-overflow:ellipsis}
.demonstration-product{margin-left:auto;font-size:9px;font-weight:600;letter-spacing:.06em;color:#839197;flex-shrink:0}
.demonstration-screen{background:#f5f6f3;overflow:hidden;position:relative}
.demonstration-screen video{display:block;width:100%;height:100%;object-fit:contain}
.product-function-note{display:flex;justify-content:flex-end;gap:26px;flex-wrap:wrap;margin-top:27px;font-size:10px;color:#78817f;letter-spacing:.025em}
.product-integration{padding:112px 0!important;border-top:1px solid #d8ddd9}
.integration-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:64px;align-items:center}
.integration-copy{grid-column:2;grid-row:1;padding-bottom:34px}
.integration-copy .product-kicker{display:flex;align-items:center;gap:13px;font-size:10px;letter-spacing:.09em}
.integration-copy .product-kicker strong{color:var(--product-dark)}
.integration-copy .product-kicker b{color:#40738c;font-weight:700}
.integration-arrow{color:#b0b8ba;font-size:15px;font-weight:400;letter-spacing:0}
.integration-copy h2{font-size:clamp(30px,2.8vw,41px)}
.integration-copy>p:not(.product-kicker){font-size:15px;line-height:1.75;letter-spacing:-.005em;color:var(--story-muted);margin:25px 0 0}
.integration-copy>p:last-child{font-size:13px;color:#7b858a}
.is-return{grid-column:1;grid-row:1;display:flex;flex-direction:column;gap:22px}
.is-return .demonstration-window{order:0;width:100%;box-shadow:0 16px 35px -28px #18303d50}
/* A chapter group reads as one control, independent of the film's timeline. */
.is-return .demonstration-chapters{order:1;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);padding:0;gap:0;width:100%;border:1px solid #cdd5d1;background:#f5f6f3;border-radius:3px}
.is-return .demonstration-chapters button{position:relative;flex:1 1 0;min-width:0;min-height:54px;display:flex;align-items:center;justify-content:center;text-align:center;border:0;padding:12px 10px;background:transparent;color:#66737a}
.is-return .demonstration-chapters button+button{border-left:1px solid #d9dfdb}
.is-return .demonstration-chapters button:hover{background:#e9eeea;color:#374b54}
.is-return .demonstration-chapters button[aria-pressed=true]{color:var(--product-dark);background:color-mix(in srgb,var(--product-accent) 11%,#f8f9f6);box-shadow:inset 0 -2px var(--product-dark)}
.is-return .demonstration-chapters small{display:none}
.is-return .demonstration-chapters button>span{font-size:11px;line-height:1.45;text-wrap:balance}
.product-story :is(button,a,figure):focus-visible{outline:2px solid var(--product-dark);outline-offset:4px}.product-hero :is(button,a,figure):focus-visible,.product-story #demo a:focus-visible{outline-color:var(--product-pale)}
.product-story .demonstration-chapters button:focus-visible{outline:2px solid var(--product-dark);outline-offset:-4px;box-shadow:none;border-radius:0}
@media(min-width:1500px){.integration-layout{grid-template-columns:minmax(0,1.85fr) minmax(0,1fr)}.product-hero{padding-bottom:115px!important}}
@media(max-width:1100px){.product-story{--product-gutter:48px}.product-hero-grid{gap:45px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.product-hero h1{font-size:44px}.product-hero-copy>p:not(.product-kicker){font-size:15px}.product-hero{padding-top:150px!important}.product-demonstration{grid-template-columns:170px minmax(0,1fr);gap:24px}.demonstration-chapters button{padding-left:12px}.demonstration-chapters button>span{font-size:12px}.sources-scale{margin-left:138px}.sources-case{grid-template-columns:125px minmax(0,1fr);gap:13px}.source-case-name{font-size:11px}.integration-layout{gap:35px;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}.integration-copy h2{font-size:33px}.diagram-row-name{font-size:14px}.diagram-date{font-size:12px}.product-section-intro{gap:45px}}
@media(max-width:820px){.product-hero-grid{grid-template-columns:1fr;gap:53px}.product-hero-copy{max-width:600px}.product-hero h1{font-size:54px}.product-hero-copy>p:not(.product-kicker){font-size:17px}.decision-hero{max-width:660px;width:100%;margin:auto}.product-hero{padding-bottom:76px!important}.product-section-intro{grid-template-columns:1fr;gap:25px;margin-bottom:32px}.product-section-intro>p{max-width:650px}.product-demonstration{display:flex;flex-direction:column;gap:22px}.demonstration-chapters{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);padding:0;gap:0;width:100%;border:1px solid #cdd5d1;background:#f5f6f3;border-radius:3px}.demonstration-chapters button{flex:1 1 0;min-width:0;min-height:56px;display:flex;align-items:center;justify-content:center;text-align:center;padding:12px 9px;border:0;background:transparent;color:#66737a}.demonstration-chapters button+button{border-left:1px solid #d9dfdb}.demonstration-chapters button:hover{background:#e9eeea;color:#374b54}.demonstration-chapters button[aria-pressed=true]{background:color-mix(in srgb,var(--product-accent) 11%,#f8f9f6);box-shadow:inset 0 -2px var(--product-dark)}.demonstration-chapters button>span{line-height:1.45;text-wrap:balance}.demonstration-chapters small{display:none!important}.demonstration-window{width:100%}.product-function-note{justify-content:flex-start;gap:14px 25px}.integration-layout{display:flex;flex-direction:column;gap:37px}.integration-copy{padding:0;width:100%;max-width:650px;align-self:start}.integration-copy h2{font-size:39px}.is-return{width:100%}.is-return .demonstration-chapters{gap:0}.product-function,.product-integration{padding:76px 0!important}}
@media(max-width:520px){.product-story{--product-gutter:36px}.product-hero{padding-top:142px!important}.product-hero h1{font-size:43px}.product-hero-copy>p:not(.product-kicker){font-size:15px}.product-actions{gap:23px}.diagram-context{font-size:10px;gap:8px}.diagram-context>span:last-child{font-size:9px}.sources-case{grid-template-columns:109px minmax(0,1fr);gap:8px}.sources-scale{margin-left:117px}.source-case-name{font-size:10px}.source-case-name small{font-size:9px}.sources-track>i{font-size:10px}.funding-readout small{font-size:9px}.funding-readout strong{font-size:27px}.diagram-key{gap:13px;font-size:9px}.delivery-date strong{font-size:20px}.product-story h2{font-size:34px}.product-section-intro>p{font-size:15px}.demonstration-toolbar{padding:0 10px;height:32px;font-size:8px;gap:10px}.demonstration-product{display:none}.demonstration-chapters{gap:0}.demonstration-chapters button>span{font-size:11px}.demonstration-chapters button,.is-return .demonstration-chapters button{padding:11px 6px;min-height:58px}.demonstration-window{border-radius:6px}.product-function-note{font-size:9px}.integration-copy>p:not(.product-kicker){font-size:15px}.stage-delivery .delivery-chart-desktop{display:none}.stage-delivery .delivery-chart-mobile{display:block}.diagram-row-name{font-size:11px}.diagram-date{font-size:10px}}
@media(prefers-reduced-motion:reduce){.product-story *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
