/* ==== Euros for News design system (see DESIGN.md). Loaded last; it settles colour, type voices,
   containers and spacing for every page. ==== */

/* 1. One accent: CSM indigo */
:root{--csmb-indigo:#241B6B;--csmb-indigo-tint:#C9C4E8;--csmb-indigo-tint-2:#DDDAF0;--box:#FBFAF6}

/* 2. Display voice: every title in Archivo Black, uppercase */
.view .v-main section>h2,.part section>h2,.qs-h h2,.pp-main h2,
.view .v-main h3,.q-t,.pw-panel h3{
  font-family:var(--font-display) !important;font-weight:400 !important;text-transform:uppercase !important;letter-spacing:0 !important}
.view .v-main section>h2,.part section>h2,.qs-h h2{font-size:clamp(1.2rem,1.8vw,1.5rem) !important;line-height:1.12 !important;margin:0 0 14px !important}
.pp-main h2{font-size:clamp(1.1rem,1.6vw,1.3rem) !important}
.view .v-main h3,.q-t{font-size:16.5px !important;line-height:1.18 !important;margin:0 0 8px !important}
.pw-panel h3{font-size:clamp(1.3rem,2vw,1.6rem) !important;margin:10px 0 2px !important}

/* Reading voice: roman serif, no italics outside quotations */
.view .ck-left .ck-stand{font-style:normal !important;color:var(--csmb-ink) !important}
.pw-panel .pw-sub{font-style:normal !important;font-family:var(--font-sans) !important;font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--csmb-indigo-tint) !important}

/* Interface voice */
.ck-toc a{font-family:var(--font-sans) !important;font-size:15px !important}
.pw-s{font-family:var(--font-sans) !important;font-size:13.5px !important}

/* 3. Containers: boxes */
.decisions li,.fights .fight,.fight,#part-the-numbers .howread li,.route,.say,.other,.track,.pcard,.il,.stand,.feed{
  background:var(--box) !important;border:3px solid var(--csmb-ink) !important;box-shadow:none !important}
.decisions li,.fight,#part-the-numbers .howread li{padding:20px 22px !important}
.decisions{display:grid !important;grid-template-columns:1fr 1fr !important;gap:16px !important;border:0 !important;margin-top:16px}
.decisions li{display:grid !important;grid-template-columns:auto minmax(0,1fr);column-gap:14px;align-content:start}
.decisions .dn{font-family:var(--font-display) !important;font-size:1.6rem !important;line-height:1 !important;color:var(--csmb-indigo) !important;grid-row:1 / span 2}
.decisions h3,.decisions p{grid-column:2}
.fights{display:grid !important;gap:14px !important;border:0 !important}
.fight{border-left:3px solid var(--csmb-ink) !important}
.fight::before{display:none !important}
#part-the-numbers .howread{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:16px !important;border:0 !important;padding:0 !important;background:none !important}
#part-the-numbers .howread li{display:block !important;margin:0 !important}
#part-the-numbers .howread b{display:block;font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:16px;margin-bottom:6px}
/* the featured box of a page carries the hard shadow */
.pw-panel,.stand{box-shadow:6px 6px 0 var(--csmb-ink) !important}
@media (max-width:760px){.decisions,#part-the-numbers .howread{grid-template-columns:1fr !important}}

/* Analysis: the feed, a scrollable box of articles, newest first */
.feed{max-height:600px;overflow-y:auto;margin-top:6px;max-width:820px !important;scrollbar-color:var(--csmb-ink) var(--box)}
.feed:focus-visible{outline:3px solid var(--csmb-indigo);outline-offset:3px}
.feed-list{list-style:none;margin:0;padding:0}
.feed-list li+li{border-top:1px solid rgba(22,21,27,.2)}
.feed-list a{display:grid;grid-template-columns:110px minmax(0,1fr);gap:4px 20px;padding:16px 22px;color:var(--csmb-ink);text-decoration:none}
.feed-list a:hover{background:#E7C4A2}
.feed-list time{grid-row:1 / span 2;font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;color:var(--csmb-indigo);padding-top:4px}
.f-t{font-family:var(--font-serif,Georgia),serif;font-weight:600;font-size:18.5px;line-height:1.3}
.f-d{font-family:var(--font-serif,Georgia),serif;font-size:15.5px;line-height:1.5;color:var(--csmb-stone)}
@media (max-width:600px){.feed-list a{grid-template-columns:1fr}.feed-list time{grid-row:auto;padding:0}}

/* 4. Spacing scale: 48 between sections, 64 between parts */
.view:not([data-view="home"]) :is(.v-main,.vm-body)>section,.part>section{margin-top:48px !important}
.part{margin-top:64px !important}
@media (max-width:760px){.view:not([data-view="home"]) :is(.v-main,.vm-body)>section,.part>section{margin-top:36px !important}.part{margin-top:48px !important}}

/* Labels inside boxes speak in the interface voice */
.view .v-main :is(p,span,div).o-k,.view .v-main :is(p,span,div).s-k,.view .v-main :is(p,span,div).t-k,.view .v-main :is(p,span,div).il-k,.view .v-main .pw-panel p.pw-sub{
  font-family:var(--font-sans) !important;font-size:11.5px !important;font-weight:700 !important;letter-spacing:.1em !important;text-transform:uppercase !important;line-height:1.4 !important;color:var(--csmb-indigo) !important;font-style:normal !important}
.view .v-main .pw-panel p.pw-sub{color:var(--csmb-indigo-tint) !important;margin:0 0 16px !important}
.stand-h,.stand-h *{font-family:var(--font-display) !important;font-weight:400 !important;text-transform:uppercase;letter-spacing:0}
.stand-h .dt,.stand-h time,.stand-h span:last-child{font-family:var(--font-mono) !important;text-transform:none}
.dash-top h2{font-family:var(--font-display) !important;font-weight:400 !important;text-transform:uppercase !important;letter-spacing:0 !important;font-size:clamp(1.2rem,1.8vw,1.5rem) !important}
/* three boxes sit in three columns */
.fights{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
@media (max-width:900px){.fights{grid-template-columns:1fr !important}}
/* feed list resets */
.feed-list,.feed-list li{border-left:0 !important;margin:0 !important;padding:0 !important;list-style:none !important}
.feed-list li::before{display:none !important}
.feed-list li+li{border-top:1px solid rgba(22,21,27,.2) !important}
.feed{padding:0 !important}
.feed::before{display:none !important;content:none !important}
/* "On this page" hover: beige band, ink text (CSM-site hover) */
.ck-toc a:hover,.ck-toc a:focus-visible{background:#E7C4A2 !important;color:var(--csmb-ink) !important;text-decoration:none}
.ck-toc a{padding-left:8px !important;padding-right:8px !important;margin:0 -8px}

/* Funding today: numbered sections, each opened by a rule */
.view[data-view="funding-today"] :is(.v-main,.vm-body)>section{border-top:3px solid var(--csmb-ink);padding-top:26px;max-width:1040px !important}
/* which programme fits: ruled list */
.fit{list-style:none;margin:16px 0 10px;padding:0;max-width:820px;border-top:3px solid var(--csmb-ink);border-bottom:3px solid var(--csmb-ink)}
.fit li{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:16px;padding:11px 0;border-top:1px solid rgba(22,21,27,.2);margin:0 !important}
.fit li:first-child{border-top:0}
.fit .fit-h{font-family:var(--font-sans) !important;font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.fit-p{font-family:var(--font-serif,Georgia),serif;font-weight:600;font-size:16.5px}
.fit-r{font-family:var(--font-serif,Georgia),serif;font-size:16.5px;color:var(--csmb-stone)}
.fit .fit-h .fit-p,.fit .fit-h .fit-r{font-family:var(--font-sans);font-size:11.5px;font-weight:700;color:var(--csmb-ink)}
/* what grants pay for: two boxes */
.pay2{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:820px;margin-top:16px}
.pay{background:var(--box);border:3px solid var(--csmb-ink);padding:20px 22px}
.pay p{font-size:16.5px !important;margin:0 0 10px !important}
.pay:last-child{background:#ECE8DD}
@media (max-width:760px){.pay2,.fit li{grid-template-columns:1fr}.fit li{gap:2px}}
/* programme switcher: arrows in squares, top right of the panel */
.pw-side{position:relative}
.pw-nav{position:absolute;top:18px;right:18px;margin:0 !important;gap:6px !important;z-index:2}
.pw-nav button{width:36px;height:36px;padding:0 !important;display:grid;place-items:center;font-size:16px !important;border:2px solid #fff !important;background:transparent !important;color:#fff !important}
.pw-nav button:hover{background:#fff !important;color:var(--csmb-indigo) !important}

/* Funding today: who gets the money, before you apply (after the course's numbered cards) */
a.who-link{display:inline-block;margin-top:6px;font-weight:700;color:var(--csmb-indigo);max-width:740px}
.checks{list-style:none;counter-reset:ck;margin:18px 0 26px;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:1040px}
.checks li{counter-increment:ck;background:var(--box);border:3px solid var(--csmb-ink);padding:16px 18px 18px;margin:0 !important;display:flex;flex-direction:column;gap:6px}
.checks li::before{content:counter(ck);font-family:var(--font-display);font-size:1.7rem;line-height:1;color:var(--csmb-indigo)}
.checks b{font-family:var(--font-sans);font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.checks span{font-family:var(--font-serif,Georgia),serif;font-size:16px;line-height:1.45;color:var(--csmb-stone)}
.facts{list-style:none;margin:16px 0 26px;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--csmb-ink);color:#fff;max-width:1040px}
.facts li{padding:18px 20px;border-left:1px solid rgba(255,255,255,.18);margin:0 !important;display:flex;flex-direction:column;gap:4px}
.facts li:first-child{border-left:0}
.facts b{font-family:var(--font-display);font-weight:400;font-size:1.6rem;line-height:1.1}
.facts span{font-family:var(--font-sans);font-size:13px;line-height:1.4;color:#C9C4E8}
@media (max-width:900px){.checks,.facts{grid-template-columns:1fr 1fr}.facts li:nth-child(3){border-left:0}.facts li:nth-child(n+3){border-top:1px solid rgba(255,255,255,.18)}}
@media (max-width:520px){.checks{grid-template-columns:1fr}}

/* Funding today in figures */
.tbl-wrap{max-width:1040px;overflow-x:auto;border:3px solid var(--csmb-ink);background:var(--box);margin-top:16px}
.ptab{width:100%;border-collapse:collapse;font-family:var(--font-sans);font-size:14.5px}
.ptab thead th{background:var(--csmb-ink);color:#fff;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;text-align:left;padding:10px 12px;white-space:nowrap}
.ptab tbody th{text-align:left;font-weight:600;padding:10px 12px;border-top:1px solid rgba(22,21,27,.15)}
.ptab td{padding:10px 12px;border-top:1px solid rgba(22,21,27,.15)}
.ptab .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.ptab td.bar{position:relative;width:24%;min-width:140px}
.ptab td.bar span{display:block;height:14px;background:var(--csmb-indigo)}
.ptab td.bar em{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-style:normal;font-size:12px;color:var(--csmb-stone)}
.ptab td.bar span{max-width:calc(100% - 44px)}
h3.yr-h{margin:32px 0 10px !important}
.years{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:6px;align-items:end;height:200px;max-width:1040px;border-bottom:3px solid var(--csmb-ink)}
.years li{position:relative;height:100%;display:flex;flex-direction:column;justify-content:flex-end;margin:0 !important}
.yb{display:block;background:var(--csmb-indigo);min-height:3px}
.years .recent .yb{background:repeating-linear-gradient(135deg,var(--csmb-indigo) 0 4px,#BAB5D0 4px 8px)}
.years b{position:absolute;left:0;right:0;text-align:center;font-family:var(--font-sans);font-size:11px;font-weight:700;bottom:calc(var(--h,0) + 4px)}
.years i{position:absolute;left:0;right:0;bottom:-24px;text-align:center;font-style:normal;font-family:var(--font-mono);font-size:11.5px;color:var(--csmb-stone)}
.years+.note{margin-top:36px !important}
@media (max-width:700px){.years b{display:none}.ptab{font-size:13.5px}}
.tbl-wrap+h3.yr-h,h3.yr-h{margin-top:40px !important;margin-bottom:28px !important}
.years{height:220px;padding-top:24px;box-sizing:border-box}
@media (max-width:700px){
.ptab th:nth-child(3),.ptab td:nth-child(3),.ptab th:nth-child(6),.ptab td:nth-child(6){display:none}
.ptab thead th,.ptab tbody th,.ptab td{padding:9px 8px}
.years{height:170px}
}
@media (max-width:700px){
.ptab thead th{white-space:normal;font-size:10px}
.ptab td.num,.ptab th.num{white-space:nowrap}
.ptab tbody th{font-size:13px}
.tbl-wrap{overflow-x:visible}
.ptab{table-layout:fixed}
.ptab th:nth-child(1){width:44%}
}
@media (max-width:700px){
.ptab{width:100%;table-layout:fixed}
.ptab th:nth-child(1){width:46%}
.ptab th:nth-child(2),.ptab th:nth-child(4),.ptab th:nth-child(5){width:18%}
.ptab td,.ptab th{overflow-wrap:anywhere}
.ptab thead th{letter-spacing:.04em}
}
@media (max-width:700px){.tbl-wrap{overflow-x:auto !important}.ptab th:nth-child(1){width:40%}}
@media (max-width:700px){.ptab thead th.num{white-space:normal !important}}

/* How much funding is there: allocation boxes */
.alloc2{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:1040px;margin:18px 0 10px}
.alloc{background:var(--box);border:3px solid var(--csmb-ink);padding:20px 22px;display:flex;flex-direction:column;gap:6px}
.alloc:first-child{box-shadow:6px 6px 0 var(--csmb-ink)}
.al-k{font-family:var(--font-sans);font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--csmb-indigo)}
.alloc b{font-family:var(--font-display);font-weight:400;font-size:clamp(2rem,3.4vw,2.6rem);line-height:1}
.alloc h3{margin:4px 0 2px !important}
.alloc p{margin:0 !important;font-size:16.5px !important}
.al-s{margin-top:auto;padding-top:10px;font-family:var(--font-sans);font-size:12.5px;line-height:1.45;color:var(--csmb-stone)}
@media (max-width:760px){.alloc2{grid-template-columns:1fr}}
/* the header already closes with a rule: no second rule above the first section */
.view[data-view="funding-today"] :is(.v-main,.vm-body)>section:first-of-type{border-top:0 !important;padding-top:0 !important}
.view[data-view="funding-today"] :is(.v-main,.vm-body)>section:first-child{border-top:0 !important;padding-top:0 !important}
.tl-open{max-width:820px;border:3px solid var(--csmb-ink);background:var(--box);margin-top:14px}
.tl-open .tbl{border:0 !important;margin:0 !important;box-shadow:none !important}
/* status markers: filled = advanced, striped = in progress, empty = open */
.adv>div.prog-s::before{background:repeating-linear-gradient(135deg,var(--csmb-indigo) 0 3px,var(--csmb-paper) 3px 6px) !important}
.view .ck-head.ck-solo{grid-template-columns:minmax(0,1fr) !important}
.ck-solo .ck-left{border-right:0}
/* Analysis: compact one-line header */
.ck-solo .ck-left{padding:clamp(24px,3vw,36px) clamp(20px,4vw,56px) !important}
.ck-solo .ck-left h1{max-width:none !important}
.view .ck-solo .ck-left .ck-stand{max-width:none !important;margin-top:10px !important}
.view[data-view="analysis"] :is(.v-main,.vm-body)>section:first-child{margin-top:28px !important}

/* Analysis: article side sheet (like the call sheet in the Funding Explorer) */

/* ==== Wider use of the column: sticky "On this page" rail on wide screens ==== */
.rail-toc{display:none}
@media (min-width:1000px){
.view .v-main.has-rail{display:grid !important;grid-template-columns:minmax(0,1fr) 230px;column-gap:56px;align-items:start}
.vm-body{min-width:0}
.vm-body>*,.vm-body .part>*{max-width:none !important}
.vm-body p,.vm-body .prose,.vm-body .part-lede,.vm-body .linklist,.vm-body .note{max-width:760px !important}
.rail-toc{display:block;position:sticky;top:84px;margin-top:clamp(28px,3vw,40px);padding-left:20px;border-left:3px solid var(--csmb-ink)}
.rail-toc ol{list-style:none;margin:0;padding:0}
.rail-toc li{border-bottom:1px solid rgba(22,21,27,.18)}
.rail-toc a{display:flex;gap:10px;padding:8px 0;font-family:var(--font-sans);font-size:14px;line-height:1.35;color:var(--csmb-stone);text-decoration:none}
.rail-toc a:hover{color:var(--csmb-ink)}
.rail-toc a.on{color:var(--csmb-ink);font-weight:700}
.rail-toc a.on .ck-n{color:var(--csmb-indigo)}
/* the rail replaces the index in the page header */
.view .ck-head:not(.ck-solo){grid-template-columns:minmax(0,1fr) !important}
.view .ck-head:not(.ck-solo) .ck-toc{display:none}
.view .ck-head:not(.ck-solo) .ck-left{border-right:0}
.view .ck-head .ck-left h1{max-width:24ch !important}
.view .ck-head .ck-left .ck-stand{max-width:62ch !important}
}

/* ==== Home: lighter and roomier ==== */
a.sh-news{background:var(--box) !important;color:var(--csmb-ink) !important;padding:16px clamp(20px,4vw,56px) !important;border-bottom:3px solid var(--csmb-ink)}
.sh-news .sn-k{background:var(--csmb-indigo) !important;color:#fff !important;border-color:var(--csmb-indigo) !important}
.sh-news .sn-t{font-size:15px;color:var(--csmb-ink)}
.sh-news .sn-go{background:transparent !important;box-shadow:none !important;border:2px solid var(--csmb-ink) !important}
a.sh-news:hover .sn-go{background:var(--csmb-ink) !important;color:#fff !important}
.sh-hero{padding-top:clamp(48px,6vw,84px) !important;padding-bottom:clamp(44px,5vw,72px) !important}
.sh-hero h1{margin-bottom:32px !important}
a.sh-ex{padding:clamp(28px,3.4vw,40px) clamp(20px,4vw,56px) !important}
.sh-ex .ex-t{font-family:var(--font-sans) !important;font-size:clamp(1.05rem,1.4vw,1.2rem) !important;line-height:1.55 !important;color:#E6E3F3}
.sh-ex .ex-t b{font-family:var(--font-display) !important;font-weight:400 !important;font-size:1.25em !important;color:#fff;letter-spacing:0}
.qs-h{padding-top:clamp(36px,4vw,52px) !important;padding-bottom:22px !important}
/* questions: 4 columns, the last card spans two */
ul.qs-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:2px;background:var(--csmb-ink)}
.qs-grid li{border:0 !important;background:var(--csmb-paper)}
.qs-grid li.q-wide{grid-column:span 2}
.qs-grid a{padding:28px clamp(18px,2vw,28px) 30px !important}
@media (max-width:1000px){ul.qs-grid{grid-template-columns:1fr 1fr !important}.qs-grid li.q-wide{grid-column:span 2}}
@media (max-width:600px){ul.qs-grid{grid-template-columns:1fr !important}.qs-grid li.q-wide{grid-column:auto}}
@media (min-width:1000px){
.vm-body :is(.alloc2,.tbl-wrap,.pw,.route-cards,.years,.decisions,.fights,.howread,.pcards,.say-cards,.inst-cards,.tracks2,.stand,.illus,.embed,.feed,.tl-open,.tbl,.others,.adv,section,.part){max-width:none !important}
}
@media (min-width:1000px){
.view .v-main.has-rail.has-rail .vm-body > *,
.view .v-main.has-rail.has-rail .vm-body .part > *,
.view .v-main.has-rail.has-rail .vm-body section > *:not(p):not(.prose):not(.note):not(.linklist){max-width:none !important}
.view .v-main.has-rail.has-rail .vm-body :is(p,.prose,.part-lede,.note,.linklist){max-width:760px !important}
.view .v-main.has-rail.has-rail .vm-body :is(.alloc,.pay,.decisions li,.route,.say,.other,.pcard,.checks li,.fight,.stand) p{max-width:none !important}
}
.view .v-main.has-rail.has-rail > .vm-body,.view .v-main.has-rail.has-rail > .rail-toc{max-width:none !important;margin-top:0}
.view .v-main.has-rail.has-rail > .rail-toc{margin-top:clamp(28px,3vw,40px)}
/* scroll spy: switch section a little earlier */

/* ==== Fill the column at every width ==== */
@media (min-width:1000px){
.view .v-main.has-rail{grid-template-columns:minmax(0,1fr) 210px !important;column-gap:clamp(32px,4vw,56px) !important}
}
.view:not([data-view="home"]) :is(.alloc2,.tbl-wrap,.pw,.route-cards,.years,.decisions,.fights,.howread,.pcards,.say-cards,.inst-cards,.tracks2,.stand,.illus,.embed,.tl-open,.tbl,.others,.adv,.pay2){max-width:none !important}
.view:not([data-view="home"]) .v-main section,.view:not([data-view="home"]) .vm-body > *,.view:not([data-view="home"]) .part > *:not(p):not(.prose){max-width:none !important}

.view .ck-head.ck-solo .ck-left h1{max-width:none !important}.view .ck-head.ck-solo .ck-left .ck-stand{max-width:none !important}
.qs-grid li.q-wide{grid-column:auto}
@media (max-width:1000px){.qs-grid li.q-wide{grid-column:auto}}

/* ==== Analysis: article list with images on the left, newsletter beside it, latest edition below ==== */
.view[data-view="analysis"] .v-main > section{max-width:none !important}
.view[data-view="analysis"] .feed{max-height:none !important;overflow:visible;max-width:none !important;margin-top:6px}
.feed-list a{display:grid !important;grid-template-columns:240px minmax(0,1fr);gap:0 26px;padding:22px !important;align-items:start}
.feed-list .f-img{display:block;width:240px;height:160px;object-fit:cover;border:2px solid var(--csmb-ink);background:var(--csmb-lav-lt,#BAB5D0)}
.feed-list .f-b{display:flex;flex-direction:column;gap:6px;min-width:0}
.feed-list time{grid-row:auto !important;padding:0 !important}
.feed-list .f-d{font-family:var(--font-sans);font-size:14.5px;line-height:1.45;color:var(--csmb-stone)}
.feed-list .f-p{font-family:var(--font-serif,Georgia),serif;font-size:16.5px;line-height:1.55;color:var(--csmb-ink);margin-top:2px}
.feed-list .f-go{margin-top:6px;font-family:var(--font-sans);font-weight:700;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--csmb-indigo)}
.feed-list a:hover .f-go{text-decoration:underline}
@media (max-width:700px){
.feed-list a{grid-template-columns:96px minmax(0,1fr);gap:0 14px;padding:16px !important}
.feed-list .f-img{width:96px;height:64px;border-width:2px}
.feed-list .f-p{font-size:15.5px}
}
@media (min-width:1000px){
.view[data-view="analysis"] .v-main{display:grid !important;grid-template-columns:minmax(0,1fr) 300px;column-gap:clamp(28px,3.5vw,48px);align-items:start !important}
.view[data-view="analysis"] .v-main > section{grid-column:1;margin-top:28px !important;margin-bottom:0 !important}
.view[data-view="analysis"] .v-main > section.an-side{grid-column:2;grid-row:1;position:sticky;top:84px}
}
.an-side .nl-band{background:var(--csmb-indigo);grid-template-columns:1fr !important;max-width:none !important;margin:6px 0 0 !important}
.an-side .nl-main{border:0}

/* ==== "On this page" rail as a side cell of the frame: a full-height rule from the page header down ==== */
@media (min-width:1000px){
.view .v-main.has-rail.has-rail{align-items:stretch !important}
.view .v-main.has-rail.has-rail > .rail-toc{position:static;align-self:stretch;border-left:3px solid var(--csmb-ink);padding:0 clamp(20px,2.4vw,32px);margin:calc(-1 * clamp(8px,2vw,24px)) calc(-1 * clamp(20px,4vw,56px)) 0 0 !important;background:var(--box)}
.rail-in{position:sticky;top:64px;padding:clamp(36px,3.6vw,52px) 0 40px}
.view .v-main.has-rail{grid-template-columns:minmax(0,1fr) calc(210px + clamp(20px,4vw,56px)) !important}
}
.an-side .nl-main{padding:24px 24px 26px !important}
.an-side .nl-lead{font-size:16.5px !important;line-height:1.5 !important;margin:0 0 18px !important}
@media (min-width:1000px){
.view:has(.v-main.has-rail){padding-bottom:0 !important}
.view .v-main.has-rail.has-rail > .vm-body{padding-bottom:64px}
}
/* Cover images in colour, framed like the boxes */
.f-pic{display:block;position:relative;border:2px solid var(--csmb-ink);overflow:hidden;line-height:0;background:var(--box)}
.f-pic[hidden]{display:none}
.f-pic img{border:0 !important}
.feed-list .f-pic{width:240px;height:160px}
.feed-list .f-pic img{width:100%;height:100%;object-fit:cover}
.feed-list .f-go{font-size:22px;line-height:1;letter-spacing:0;font-weight:700;color:var(--csmb-indigo);text-decoration:none !important;transition:transform .15s}
.feed-list a:hover .f-go{transform:translateX(4px)}
@media (max-width:700px){.feed-list .f-pic{width:96px;height:64px}}
/* Home: room between the question cards and the footer */
.view[data-view="home"] ul.qs-grid{margin-bottom:0 !important}
.view[data-view="home"]:not([hidden]){display:flow-root;padding-bottom:clamp(48px,6vw,80px) !important}
/* Footer: descriptions in readable mixed case */
.foot-mini span{font-family:var(--font-sans) !important;font-size:13px !important;letter-spacing:0 !important;text-transform:none !important;line-height:1.4;color:#C9C4E8 !important}
.foot-mini a{padding-top:18px !important;padding-bottom:18px !important}

/* ==== Home: where we are, three seven-year budgets ==== */
.sh-time{padding:clamp(32px,4vw,52px) clamp(20px,4vw,56px) clamp(36px,4.5vw,56px);border-top:3px solid var(--csmb-ink)}
.st-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:12px 48px;align-items:end;margin-bottom:22px}
.st-head h2{margin:0 !important;font-family:var(--font-display) !important;font-weight:400 !important;text-transform:uppercase;font-size:clamp(1.2rem,1.8vw,1.5rem) !important;line-height:1.12 !important;letter-spacing:0}
.st-head p{margin:0;font-family:var(--font-serif,Georgia),serif;font-size:17px;line-height:1.55;color:var(--csmb-ink);max-width:62ch}
.st-bar{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:3px solid var(--csmb-ink);background:var(--box)}
.st-bar li{position:relative;margin:0 !important;padding:30px 22px 20px;display:flex;flex-direction:column;gap:4px;border-left:3px solid var(--csmb-ink)}
.st-bar li:first-child{border-left:0}
.st-bar li::before{content:"";position:absolute;left:0;right:0;top:0;height:12px;border-bottom:3px solid var(--csmb-ink)}
.st-past::before{background:#BAB5D0}
.st-now::before{background:var(--csmb-indigo)}
.st-next::before{background:repeating-linear-gradient(135deg,var(--csmb-indigo) 0 4px,var(--box) 4px 8px)}
.st-past{background:#ECE8DD}
.st-y{font-family:var(--font-display);font-size:clamp(1.4rem,2.2vw,1.9rem);line-height:1.05;margin-top:6px}
.st-l{font-family:var(--font-sans);font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--csmb-indigo)}
.st-s{font-family:var(--font-serif,Georgia),serif;font-size:16px;line-height:1.45;color:var(--csmb-stone)}
.st-today{position:absolute;top:-3px;left:var(--at);width:3px;height:22px;background:var(--csmb-ink);transform:translateX(-1px)}
.st-today i{position:absolute;top:-24px;left:50%;transform:translateX(-50%);font-style:normal;font-family:var(--font-sans);font-weight:700;font-size:11px;letter-spacing:.1em;text-transform:uppercase;background:var(--csmb-ink);color:#fff;padding:3px 7px;white-space:nowrap}
a.st-go{margin-top:10px;align-self:flex-start;font-family:var(--font-sans);font-weight:700;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--csmb-ink);text-decoration:none;border:2px solid var(--csmb-ink);padding:8px 12px;background:var(--csmb-paper)}
a.st-go:hover{background:var(--csmb-ink);color:#fff}
.st-bar{margin-top:30px}
@media (max-width:760px){
.st-head{grid-template-columns:1fr}
.st-bar{grid-template-columns:1fr}
.st-bar li{border-left:0;border-top:3px solid var(--csmb-ink)}
.st-bar li:first-child{border-top:0}
}

/* Funding today: the Explorer band as a dark box above the programme table */
a.sh-ex.ft-ex{margin:6px 0 20px;border:3px solid var(--csmb-ink);padding:24px 28px !important}
/* "On this page" rail: beige hover band with ink text, as elsewhere on the site */
.rail-toc a{margin:0 -8px;padding-left:8px !important;padding-right:8px !important}
.rail-toc a:hover,.rail-toc a:focus-visible{background:#E7C4A2 !important;color:var(--csmb-ink) !important;text-decoration:none}
.rail-toc a:hover .ck-n{color:var(--csmb-indigo) !important}
.view .sh-time .st-head{display:block;margin-bottom:0}
.view .sh-time .st-head h2{font-family:var(--font-display) !important;font-weight:400 !important;text-transform:uppercase !important;font-size:clamp(1.2rem,1.8vw,1.5rem) !important;line-height:1.12 !important;letter-spacing:0 !important;margin:0 0 10px !important}
.view .sh-time .st-head p{max-width:70ch}
.st-bar{margin-top:40px}
a.sh-ex.ft-ex{margin:28px 0 8px !important}
.ft-ex .ex-t{font-size:16.5px !important;line-height:1.6 !important}
.ft-ex .ex-t b{font-size:1.2em !important}
.embed-bar a.eb-s{color:#C9C4E8;text-decoration:none;display:block}
.embed-bar a.eb-s:hover{background:none !important;color:#fff;text-decoration:underline}
.embed-bar a.eb-s,.embed-bar a.eb-s:hover{background:none !important;border:0 !important;padding:0 !important;box-shadow:none !important;margin:2px 0 0 !important;font-family:var(--font-mono) !important;font-size:12px !important;letter-spacing:.02em !important;text-transform:none !important}
.embed-bar a.eb-s{color:#C9C4E8 !important}
.embed-bar a.eb-s:hover{color:#fff !important;text-decoration:underline !important}
.ft-ex + h3.yr-h{margin-top:40px !important}

/* Home rhythm: "Where we are" as an indigo band; questions as separate boxes, fewer full-width rules */
.sh-time{background:var(--csmb-indigo);color:#fff;border-top:3px solid var(--csmb-ink);border-bottom:3px solid var(--csmb-ink)}
.view .sh-time .st-head h2{color:#fff !important}
.view .sh-time .st-head p{color:#E6E3F3}
.sh-time .st-bar{box-shadow:6px 6px 0 var(--csmb-ink)}
.sh-time .st-today{background:#fff}
.sh-time .st-today i{background:#fff;color:var(--csmb-ink)}
.sh-qs{border-top:0 !important}
.qs-h{border-bottom:0 !important;padding-bottom:20px !important}
.view[data-view="home"] ul.qs-grid{gap:16px !important;background:none !important;padding:0 clamp(20px,4vw,56px) !important;border:0 !important}
.view[data-view="home"] .qs-grid li{border:3px solid var(--csmb-ink) !important;background:var(--box) !important}
.view[data-view="home"] .qs-grid a{background:var(--box)}
.view[data-view="home"] .qs-grid a:hover{background:#E7C4A2}
.view[data-view="home"] .qs-grid a:hover .q-go{background:var(--csmb-ink);color:#fff}
/* descriptions start on the same line: titles reserve three lines */
.sh-time .st-bar{color:var(--csmb-ink)}
/* question cards: icon above the title; rows aligned across each line of cards (subgrid) */
.view[data-view="home"] .qs-grid li{display:grid;grid-row:span 4;grid-template-rows:subgrid;row-gap:0}
.view[data-view="home"] .qs-grid a{grid-row:1 / -1;display:grid !important;grid-template-rows:subgrid !important;grid-template-columns:minmax(0,1fr) !important;row-gap:12px !important;align-content:stretch}
.view[data-view="home"] .qs-grid .q-ico{grid-row:auto !important;grid-column:1 !important;margin:0}
.view[data-view="home"] .qs-grid .q-t,.view[data-view="home"] .qs-grid .q-d,.view[data-view="home"] .qs-grid .q-go{grid-column:1 !important;margin:0 !important}
.view[data-view="home"] .qs-grid .q-go{align-self:end;margin-top:6px !important}
@media (max-width:760px){.st-today{display:none}}
.embed-go{margin:22px 0 0 !important}
/* The numbers: four combinations in a 2 x 2 grid */
.illus.il4{max-width:none}
.illus.il4 .il-k{font-family:var(--font-sans);font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--csmb-indigo)}

/* ==== Analysis: the latest edition first, full width and large ==== */
@media (min-width:1000px){
.view[data-view="analysis"] .v-main > section.an-latest{grid-column:1 / -1;grid-row:1}
.view[data-view="analysis"] .v-main > section[aria-labelledby="s6a"]{grid-row:2}
.view[data-view="analysis"] .v-main > section.an-side{grid-row:2}
}
.view[data-view="analysis"] .v-main > section.an-latest{margin-top:28px !important}
a.nl-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);margin-top:6px;background:var(--box);border:3px solid var(--csmb-ink);box-shadow:6px 6px 0 var(--csmb-ink);color:var(--csmb-ink);text-decoration:none}
a.nl-hero:not(.has-img){grid-template-columns:1fr}
a.nl-hero:hover{background:#E7C4A2}
a.nl-hero .nl-pic{border:0;border-right:3px solid var(--csmb-ink);aspect-ratio:3/2}
a.nl-hero .nl-pic img{width:100%;height:100%;object-fit:cover}
.nl-hb{display:flex;flex-direction:column;justify-content:center;gap:12px;padding:clamp(22px,3vw,40px)}
.nl-hero .nl-ck{font-family:var(--font-sans);font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--csmb-indigo)}
.nl-hero .nl-ct{font-family:var(--font-serif,Georgia),serif;font-weight:700;font-size:clamp(1.4rem,2.4vw,2rem);line-height:1.2}
.nl-hero .nl-cs{font-family:var(--font-serif,Georgia),serif;font-size:17.5px;line-height:1.55;color:var(--csmb-stone)}
.nl-hero .nl-cu{font-size:26px;line-height:1;font-weight:700;color:var(--csmb-indigo);transition:transform .15s}
a.nl-hero:hover .nl-cu{transform:translateX(4px)}
@media (max-width:760px){a.nl-hero{grid-template-columns:1fr}a.nl-hero .nl-pic{border-right:0;border-bottom:3px solid var(--csmb-ink)}}
.view[data-view="analysis"] .v-main > section[aria-labelledby="s6a"]{margin-top:48px !important}
@media (min-width:1000px){.view[data-view="analysis"] .v-main > section.an-side{margin-top:48px !important}}
.feed-list li[hidden] + li{border-top:0 !important}
.view[data-view="analysis"] a.nl-hero{max-width:none !important;width:100% !important;box-sizing:border-box}
a.nl-hero .nl-pic{aspect-ratio:auto;height:100%;min-height:300px}
.nl-hero .nl-cu{border:0 !important;padding:0 !important;margin:4px 0 0 !important;background:none !important;box-shadow:none !important;width:auto !important}
@media (max-width:760px){a.nl-hero .nl-pic{min-height:0;height:auto;aspect-ratio:3/2}}
.view.view[data-view="analysis"] .v-main.v-main > section.an-latest{max-width:none !important}
.feed-list a.no-pic{grid-template-columns:minmax(0,1fr) !important}

/* ==== The next budget (Peter's structure, 26 Oct) ==== */
.nb-bars{list-style:none;margin:6px 0 0;padding:18px 22px;border:3px solid var(--csmb-ink);background:var(--box);display:grid;gap:12px}
.nb-bars li{display:grid;grid-template-columns:minmax(0,15rem) minmax(0,1fr) 6.5rem;align-items:center;gap:14px;margin:0 !important}
.nb-l{font-family:var(--font-sans);font-weight:700;font-size:14.5px}
.nb-b{display:block;height:22px;background:#ECE8DD}
.nb-b i{display:block;height:100%;min-width:4px;background:var(--csmb-indigo)}
.nb-v{font-family:var(--font-sans);font-weight:700;font-size:14.5px;text-align:right;font-variant-numeric:tabular-nums}
@media (max-width:640px){.nb-bars li{grid-template-columns:1fr 5.5rem;row-gap:4px}.nb-l{grid-column:1 / -1}}
.nb-cmp td b{font-weight:700;color:var(--csmb-indigo)}
.nb-agora{max-width:620px !important;margin-top:14px}
.nb-go{margin:10px 0 0 !important}
.nb-go a{font-family:var(--font-sans);font-weight:700;color:var(--csmb-indigo)}
.tbl .exp{display:inline-block;margin-left:6px;padding:1px 6px;border:1px solid currentColor;font-family:var(--font-sans);font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--csmb-stone);vertical-align:2px}
.view[data-view="the-next-budget"] .prose ul{margin:10px 0 14px;padding-left:1.2em}
.view[data-view="the-next-budget"] .prose li{margin:0 0 8px}
.act-cards{grid-template-columns:minmax(0,1fr) !important;max-width:none !important}
@media (max-width:900px){.act-cards{grid-template-columns:1fr !important}}
.act-cards .say h3{margin-top:10px !important}
.view[data-view="the-next-budget"] .pcards{list-style:none;padding:0}
.act-cards .say p{max-width:72ch}
.act-cards .say h3{margin-top:4px !important}
.view[data-view="the-next-budget"] .note + h3.yr-h{margin-top:36px !important;margin-bottom:12px !important}
.nb-agora + .prose{margin-top:14px}

/* ==== AgoraEU Explorer tab: the copied dashboard in a frame that grows with its content ==== */
.view[data-view="explorer"] .v-main.xp-main{padding-top:28px !important;padding-bottom:40px !important}
.xp-frame{display:block;width:100%;height:1200px;border:0;background:transparent}
.xp-alt{margin:18px 0 0 !important;font-family:var(--font-sans);font-size:13.5px;color:var(--csmb-stone)}
/* four equal tabs */
.tabs>ol{grid-template-columns:repeat(5,minmax(0,1fr)) !important}
.view[data-view="explorer"] .v-main.xp-main > .xp-frame{max-width:none !important;width:100% !important}
.view[data-view="explorer"] .ck-left .reviewed{margin-top:16px !important}
.nb-cmp .est{color:var(--csmb-stone);font-style:normal;opacity:.8}
/* The next budget, reader's path (27 Oct) */
.nb-warn{margin:6px 0 8px !important;padding:12px 16px;border-left:4px solid var(--csmb-indigo);background:var(--box);font-family:var(--font-sans);font-weight:700;font-size:14.5px;line-height:1.45;max-width:760px}
.tbl .ours{display:inline-block;margin:4px 0 0;padding:1px 6px;background:var(--csmb-indigo);color:#fff;font-family:var(--font-sans);font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.tbl td.dt .ours,.tbl td.dt .exp{display:table;margin-left:0;margin-top:6px}
.pcards-how .pcard{background:#ECE8DD !important}
.view[data-view="the-next-budget"] #part-timeline .stand{margin:6px 0 8px;max-width:none}
.view[data-view="the-next-budget"] #part-timeline .stand .stand-b{padding:20px 24px}
.view[data-view="the-next-budget"] .nb-agora + .note{margin-top:8px !important}

/* The next budget: key numbers per instrument */
.nb-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:3px solid var(--csmb-ink);background:var(--box);margin:20px 0 10px;max-width:760px}
.nb-facts>div{padding:16px 18px 18px;border-left:2px solid var(--csmb-ink)}
.nb-facts>div:first-child{border-left:0}
.nb-facts b{display:block;font-family:var(--font-display);font-weight:400;font-size:1.6rem;line-height:1.05;color:var(--csmb-ink)}
.nb-facts span{display:block;font-family:var(--font-sans);font-size:13.5px;line-height:1.4;color:var(--csmb-stone);margin-top:8px}
@media (max-width:640px){.nb-facts{grid-template-columns:1fr}.nb-facts>div{border-left:0;border-top:2px solid var(--csmb-ink)}.nb-facts>div:first-child{border-top:0}}

/* The next budget: what each instrument merges, how it divides money, where the sector fits */
.nb-def{margin:16px 0 6px;max-width:760px;border-top:2px solid var(--csmb-ink)}
.nb-def>div{display:grid;grid-template-columns:180px minmax(0,1fr);gap:20px;padding:14px 0;border-bottom:1px solid rgba(26,26,26,.18)}
.nb-def dt{font-family:var(--font-sans);font-weight:700;font-size:12px;line-height:1.4;letter-spacing:.06em;text-transform:uppercase;color:var(--csmb-indigo);padding-top:4px}
.nb-def dd{margin:0;font-family:var(--font-serif);font-size:17px;line-height:1.6;color:var(--csmb-ink)}
@media (max-width:640px){.nb-def>div{grid-template-columns:1fr;gap:4px}}

/* The money: one full-width box per instrument, text on the left and the figures on the right */
.in-cols{display:flex;flex-direction:column;gap:28px;margin-top:24px}
.in-col{border:3px solid var(--csmb-ink);background:var(--box);margin:0;box-shadow:6px 6px 0 var(--csmb-ink)}
.in-hd{background:var(--csmb-indigo);padding:16px 24px}
.in-hd h3{font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:1.3rem !important;line-height:1.15;margin:0 !important;color:#fff !important}
.in-body{display:grid;grid-template-columns:minmax(0,1fr) 300px}
.in-main{padding:18px 24px 20px}
.in-side{background:#ECE8DD;border-left:2px solid var(--csmb-ink);padding:18px 22px 20px;display:flex;flex-direction:column}
.view .v-main .in-col p{max-width:none !important}
.view .v-main .in-intro{margin:0 0 6px !important;font-size:17px !important;line-height:1.55;color:var(--csmb-ink)}
.in-row{display:grid;grid-template-columns:170px minmax(0,1fr);gap:20px;padding:12px 0;border-top:1px solid rgba(22,21,27,.16)}
.in-k{display:block;font-family:var(--font-sans);font-weight:700;font-size:11.5px;line-height:1.4;letter-spacing:.08em;text-transform:uppercase;color:var(--csmb-indigo);padding-top:4px}
.view .v-main .in-row p{margin:0 !important;font-size:16px !important;line-height:1.6;color:var(--csmb-ink);max-width:68ch !important}
.in-figs .in-k{padding-top:0;margin-bottom:10px}
.in-figs ul{list-style:none;margin:0;padding:0}
.in-figs li{margin:0 0 10px !important}
.in-figs b{display:block;font-family:var(--font-display);font-weight:400;font-size:1.45rem;line-height:1.1;color:var(--csmb-ink)}
.in-figs li span{display:block;font-family:var(--font-sans);font-size:12.5px;color:var(--csmb-stone)}
.in-note{display:block;margin-top:6px;font-family:var(--font-sans);font-size:12.5px;line-height:1.45;color:var(--csmb-stone)}
.view .v-main .in-go{margin:16px 0 0 !important;font-family:var(--font-sans) !important;font-size:14px !important;font-weight:700;line-height:1.4}
@media (max-width:899px){.in-body{grid-template-columns:1fr}.in-side{border-left:0;border-top:2px solid var(--csmb-ink)}}
@media (max-width:640px){.in-row{grid-template-columns:1fr;gap:4px}.in-main{padding:16px 18px}.in-hd{padding:14px 18px}}
.view .v-main.has-bar :is(section,.part){scroll-margin-top:calc(var(--top-h,64px) + 24px)}

/* ==== "On this page" as a bar in the sticky header, under the tabs (replaces the side rail) ==== */
/* small screens: the current section, which opens the full list */
.top .page-bar{display:block;position:relative;background:var(--box);border-bottom:3px solid var(--csmb-ink)}
.top .page-bar[hidden]{display:none}
.pb-in .ck-k{display:none !important}
.pb-cur{display:flex;align-items:center;gap:8px;width:100%;margin:0;padding:11px clamp(16px,4vw,24px);background:none;border:0;font-family:var(--font-sans);font-weight:600;font-size:14px;line-height:1.2;color:var(--csmb-ink);text-align:left;cursor:pointer}
.pb-cur::before{content:"\2193";color:var(--csmb-indigo)}
.pb-cur::after{content:"\25BE";margin-left:auto;color:var(--csmb-indigo)}
.page-bar.open .pb-cur::after{content:"\25B4"}
.pb-in ol{list-style:none;margin:0;padding:0;display:none}
.page-bar.open .pb-in ol{display:block;border-top:2px solid var(--csmb-ink)}
.pb-in li{margin:0 !important}
.page-bar.open .pb-in li+li{border-top:1px solid rgba(22,21,27,.2)}
.top .page-bar a,.top .page-bar a:visited{display:flex;align-items:center;gap:8px;height:100%;box-sizing:border-box;padding:11px clamp(16px,4vw,24px);font-family:var(--font-sans);font-weight:400;font-size:13.5px;line-height:1.2;color:var(--csmb-ink) !important;text-decoration:none;white-space:nowrap}
.top .page-bar a::before{content:"\2193";color:var(--csmb-indigo) !important;font-weight:400}
.top .page-bar a:hover,.top .page-bar a:focus-visible{background:#E7C4A2}
.top .page-bar a.on{background:transparent;color:var(--csmb-ink) !important;font-weight:600;box-shadow:inset 0 -4px 0 var(--csmb-indigo)}
.top .page-bar a.on::before{color:var(--csmb-indigo) !important}
/* wide screens: all sections across the full width */
@media (min-width:1000px){
.view .ck-head:not(.ck-solo){grid-template-columns:minmax(0,1fr) !important}
.view .ck-head:not(.ck-solo) .ck-toc{display:none}
.view .ck-head:not(.ck-solo) .ck-left{border-right:0}
.pb-cur{display:none}
.pb-in{display:flex;align-items:stretch}
.pb-in ol,.page-bar.open .pb-in ol{display:flex;flex:1;border-top:0}
.pb-in li{flex:1;border-right:1px solid rgba(22,21,27,.22)}
.pb-in li:last-child{border-right:0}
.page-bar.open .pb-in li+li{border-top:0}
.top .page-bar a,.top .page-bar a:visited{padding:11px 20px}
.view .v-main.has-bar.has-bar > .vm-body{max-width:none !important}
.view .v-main.has-bar.has-bar .vm-body :is(p,.prose,.part-lede,.note,.linklist){max-width:760px !important}
}
/* Page headers: title in one column, the intro text in the other */
@media (min-width:1000px){
.view .ck-head:not(.ck-solo) .ck-left{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:clamp(36px,5vw,72px);align-items:start}
.view .ck-head:not(.ck-solo) .ck-left > *{grid-column:2}
.view .ck-head:not(.ck-solo) .ck-left > h1{grid-column:1;grid-row:1 / span 6;max-width:none !important;margin:0 !important}
.view .ck-head:not(.ck-solo) .ck-left .ck-stand{max-width:none !important}
.view .ck-head:not(.ck-solo) .ck-left .ck-stand:first-of-type{margin-top:6px !important}
}

/* Use the width across the whole page on wide screens */
@media (min-width:1000px){
.view .v-main .part-t{max-width:none !important}
.view .v-main .vm-body section > h2{max-width:none !important}
.view .v-main.has-bar.has-bar .vm-body :is(p,.prose,.part-lede,.note,.linklist){max-width:900px !important}
.view .v-main.has-bar.has-bar .vm-body .part-lede{max-width:900px !important}
.in-row{grid-template-columns:190px minmax(0,1fr)}
.view .v-main .in-row p{max-width:none !important}
}

/* The money: other proposals set apart; cuts chart */
.in-also{margin-top:16px;padding-top:12px;border-top:1px solid rgba(22,21,27,.25)}
.in-also b{display:block;font-family:var(--font-display);font-weight:400;font-size:1.15rem;line-height:1.1;color:var(--csmb-ink)}
.in-also span:not(.in-k){display:block;font-family:var(--font-sans);font-size:12.5px;line-height:1.4;color:var(--csmb-stone);margin-top:3px}
.nb-cuts li.whole .nb-b i{background:var(--csmb-stone)}
.nb-cuts li.agora .nb-b i{background:#D29A57}
.nb-cuts li.agora .nb-v,.nb-cuts li.agora .nb-l{font-weight:700}

/* The money: the two proposals as alternatives, with the difference */
.in-figs .fg-a span,.in-figs .fg-b span{display:block;font-family:var(--font-sans);font-size:12.5px;color:var(--csmb-stone)}
.in-figs .fg-a b,.in-figs .fg-b b{display:block;font-family:var(--font-display);font-weight:400;font-size:1.45rem;line-height:1.1;color:var(--csmb-ink);margin-top:2px}
.in-figs .fg-a b{color:var(--csmb-stone)}
.in-figs .fg-arrow{font-family:var(--font-sans);font-weight:700;font-size:18px;line-height:1;color:var(--csmb-indigo);margin:6px 0 6px 4px}
.in-figs .fg-d{display:flex;align-items:baseline;gap:10px;margin:12px 0 4px;padding:8px 12px;background:var(--csmb-indigo);color:#fff}
.in-figs .fg-d b{font-family:var(--font-display);font-weight:400;font-size:1.35rem;line-height:1.1;color:#fff}
.in-figs .fg-d span{font-family:var(--font-sans);font-weight:700;font-size:14px;color:var(--csmb-indigo-tint-2)}

/* The money: one envelope, proposed by different actors over time */
.in-figs ol.fp{list-style:none;margin:0;padding:0;border-left:3px solid var(--csmb-indigo)}
.in-figs ol.fp li{margin:0 !important;padding:0 0 14px 14px;position:relative}
.in-figs ol.fp li:last-child{padding-bottom:2px}
.in-figs ol.fp li::before{content:"";position:absolute;left:-8px;top:4px;width:11px;height:11px;border-radius:50%;background:var(--csmb-indigo);border:2px solid #ECE8DD}
.in-figs .fp-who{display:block;font-family:var(--font-sans);font-size:12.5px;color:var(--csmb-stone)}
.in-figs ol.fp b{display:block;font-family:var(--font-display);font-weight:400;font-size:1.4rem;line-height:1.1;color:var(--csmb-ink);margin-top:2px}
.in-figs ol.fp em{display:inline-block;margin-top:4px;font-style:normal;font-family:var(--font-sans);font-weight:700;font-size:12px;padding:2px 7px}
.in-figs ol.fp em.base{font-weight:400;color:var(--csmb-stone);padding-left:0}
.in-figs ol.fp em.down{background:var(--csmb-indigo);color:#fff}
.in-figs ol.fp em.up{background:#fff;color:var(--csmb-indigo);border:1px solid var(--csmb-indigo)}

/* The next budget hero: bigger title, a strip of budget periods, smaller intro; less space before the first part */
.hero-mff{margin-top:40px;max-width:540px}
.hm-track{display:grid;grid-template-columns:repeat(3,1fr);height:16px;gap:4px}
.hm-track i{display:block;position:relative}
.hm-track .past{background:#D6D1C6}
.hm-track .now{background:#D29A57}
.hm-track .next{background:repeating-linear-gradient(-45deg,var(--csmb-indigo) 0 8px,#3A2F8F 8px 16px);background-size:22.6px 22.6px;animation:hm-move 1.6s linear infinite;box-shadow:3px 3px 0 var(--csmb-ink)}
@keyframes hm-move{to{background-position:22.6px 0}}
@media (prefers-reduced-motion:reduce){.hm-track .next{animation:none}}
.hm-track .today{position:absolute;left:83%;top:50%;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:#fff;border:3px solid var(--csmb-ink);font-size:0;font-style:normal;box-sizing:border-box}
.hm-track .today::after{content:"Today";position:absolute;bottom:100%;left:50%;transform:translateX(-50%);margin-bottom:6px;font-family:var(--font-sans);font-weight:700;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--csmb-ink);white-space:nowrap}
.hm-labels{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;margin-top:8px}
.hm-labels span{font-family:var(--font-display);font-size:.95rem;line-height:1.15;color:var(--csmb-stone)}
.hm-labels span.next{color:var(--csmb-indigo);font-size:1.1rem}
.hm-labels small{display:block;margin-top:3px;font-family:var(--font-sans);font-weight:700;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--csmb-stone)}
.hm-labels span.next small{color:var(--csmb-indigo)}
.ck-text .ck-stand{font-size:17px !important;line-height:1.6 !important}
@media (min-width:1000px){
.view[data-view="the-next-budget"] .ck-head .ck-left{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}
.view[data-view="the-next-budget"] .ck-head .ck-left > h1{grid-row:1;font-size:clamp(2.6rem,4vw,3.9rem) !important;line-height:1.02 !important}
.view[data-view="the-next-budget"] .ck-head .ck-left > .hero-mff{grid-column:1;grid-row:2}
.view[data-view="the-next-budget"] .ck-head .ck-left > .ck-text{grid-column:2;grid-row:1 / span 2;align-self:center}
.view .v-main.has-bar.has-bar > .vm-body > .part:first-child{margin-top:clamp(12px,1.6vw,20px) !important;padding-top:0 !important;border-top:0 !important}
.view .v-main.has-bar.has-bar > .vm-body{padding-top:0 !important}
}
@media (max-width:999px){.hero-mff{margin:16px 0 4px}}

/* The money: relative size, counted in AgoraEUs */
.nb-iso{border:3px solid var(--csmb-ink);background:var(--box);padding:18px 22px 20px;margin-top:14px}
.nb-iso .iso-key{margin:0 0 14px !important;font-family:var(--font-sans) !important;font-weight:600;font-size:13px !important;color:var(--csmb-stone);display:flex;align-items:center;gap:8px}
.iso-key i,.iso-sq i{display:inline-block;width:18px;height:18px;background:var(--csmb-indigo)}
.iso-key i,.iso-sq.agora i{background:#D29A57}
.iso-row{display:grid;grid-template-columns:200px minmax(0,1fr) auto;gap:16px;align-items:center;padding:8px 0;border-top:1px solid rgba(22,21,27,.12)}
.iso-l{font-family:var(--font-sans);font-weight:700;font-size:14px;color:var(--csmb-ink)}
.iso-sq{display:flex;flex-wrap:wrap;gap:4px}
.iso-n{font-family:var(--font-display);font-size:1.1rem;color:var(--csmb-ink);white-space:nowrap}
@media (max-width:640px){.iso-row{grid-template-columns:1fr auto}.iso-sq{grid-column:1 / -1;grid-row:2}.iso-sq i{width:14px;height:14px}}
.view[data-view="the-next-budget"] .ck-text .ck-stand{font-size:clamp(18px,1.45vw,20px) !important;line-height:1.55 !important}
@media (min-width:1000px){
.view[data-view="the-next-budget"] .ck-head .ck-left > .hero-mff{grid-column:1 / -1;grid-row:2;max-width:none;margin-top:44px}
.view[data-view="the-next-budget"] .ck-head .ck-left > .ck-text{grid-row:1;align-self:end}
.view[data-view="the-next-budget"] .ck-head .ck-left > .ck-text .ck-stand{margin-bottom:6px !important}
.view[data-view="the-next-budget"] .hm-track{height:18px}
.view[data-view="the-next-budget"] .hm-labels span{font-size:1.05rem}
.view[data-view="the-next-budget"] .hm-labels span.next{font-size:1.2rem}
}
/* hero on a three-part grid that matches the timeline: title over two periods, intro over 2028-2034 */
@media (min-width:1000px){
.view[data-view="the-next-budget"] .ck-head .ck-left{grid-template-columns:minmax(0,2fr) minmax(0,1fr) !important;column-gap:4px !important}
.view[data-view="the-next-budget"] .ck-head .ck-left > h1{padding-right:clamp(24px,3vw,48px)}
.view[data-view="the-next-budget"] .ck-text .ck-stand{font-size:clamp(17px,1.3vw,19px) !important}
}
/* small screens: hero as title, text, then the timeline as its base; the sticky section button replaces the index */
@media (max-width:999px){
.view[data-view="the-next-budget"] .ck-head .ck-left{display:flex;flex-direction:column}
.view[data-view="the-next-budget"] .ck-head .ck-left > .ck-text{order:2}
.view[data-view="the-next-budget"] .ck-head .ck-left > .hero-mff{order:3;margin:34px 0 4px}
.view .ck-head:not(.ck-solo) .ck-toc{display:none !important}
.view .ck-head:not(.ck-solo) .ck-left{border-bottom:0 !important}
.hm-labels span{font-size:.9rem}
.hm-labels span.next{font-size:1rem}
}
@media (max-width:999px){.view .v-main.has-bar > .vm-body > .part:first-child{margin-top:8px !important;padding-top:0 !important;border-top:0 !important}}

/* Text column on the hero's grid: two thirds of the width, ending where the hero's intro column starts */
@media (min-width:1000px){
.view .v-main.has-bar.has-bar .vm-body :is(p,.prose,.part-lede,.note,.linklist){max-width:calc((100% - 4px) * 2 / 3) !important}
.view .v-main.has-bar.has-bar .vm-body .prose p{max-width:none !important}
.view .v-main.has-bar.has-bar .vm-body .in-col p,.view .v-main.has-bar.has-bar .vm-body :is(.say,.pcard,.track,.stand,.nb-iso,.in-figs) p{max-width:none !important}
}

/* size chart right under The money lede */
.iso-h{display:block;font-family:var(--font-sans);font-weight:700;font-size:11.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--csmb-indigo);margin-bottom:10px}
.vm-body .part-lede + .nb-iso{margin-top:18px}
.view .v-main .note.iso-src{margin-bottom:8px !important}
/* source notes under charts and tables: no separating rule, the box above already frames them */
.note{border-top:0 !important;padding-top:0 !important;margin-top:10px !important}

/* Who decides: the Commission's three priorities side by side; procedure cards with labelled rows */
.themes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,2.4vw,32px);margin-top:18px}
.theme{border-top:3px solid var(--csmb-ink);padding-top:12px}
.view .v-main .theme h3{font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:1rem !important;letter-spacing:.02em;margin:0 0 8px !important;color:var(--csmb-indigo)}
.view .v-main .theme p{margin:0 !important;font-size:15.5px !important;line-height:1.6;max-width:none !important}
.tracks-dl dl{margin:10px 0 0}
.tracks-dl dl > div{display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;padding:8px 0;border-top:1px solid rgba(22,21,27,.15)}
.tracks-dl dt{font-family:var(--font-sans);font-weight:700;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--csmb-indigo);padding-top:3px}
.tracks-dl dd{margin:0;font-family:var(--font-serif);font-size:15.5px;line-height:1.5;color:var(--csmb-ink)}
@media (max-width:900px){.themes{grid-template-columns:1fr}}
.view .v-main.has-bar.has-bar .vm-body :is(.theme,.track) :is(p,dd){max-width:none !important}

/* Who decides: actors as boxes, like the instruments */
.view .v-main .in-hd .act-role{margin:4px 0 0 !important;font-family:var(--font-sans) !important;font-weight:600;font-size:13.5px !important;color:var(--csmb-indigo-tint) !important;max-width:none !important}
.say-meter{display:flex;gap:4px;margin:2px 0 6px}
.say-meter i{display:block;width:44px;height:14px;border:2px solid var(--csmb-indigo);background:transparent}
.say-meter i.on{background:var(--csmb-indigo)}
.sm-t{display:block;font-family:var(--font-sans);font-size:12.5px;line-height:1.4;color:var(--csmb-ink);font-weight:600}
.act-facts{list-style:none;margin:16px 0 0;padding:12px 0 0;border-top:1px solid rgba(22,21,27,.2)}
.act-facts li{margin:0 0 12px !important}
.act-facts b{display:block;font-family:var(--font-display);font-weight:400;font-size:1.15rem;line-height:1.15;color:var(--csmb-ink)}
.act-facts span{display:block;margin-top:3px;font-family:var(--font-sans);font-size:12.5px;line-height:1.4;color:var(--csmb-stone)}
.act-facts a,.actors .in-row a{color:var(--csmb-indigo);font-weight:600}
.actors .in-row strong{color:var(--csmb-ink)}

/* Who decides, hybrid: Commission priorities with a discreet vertical rule, a key figure, two pressures */
.themes-v .theme{border-top:0;border-left:3px solid var(--csmb-indigo);padding:2px 0 2px 16px}
.stat-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(20px,3vw,40px);align-items:start;margin-top:22px;padding:20px 0;border-top:2px solid var(--csmb-ink);border-bottom:2px solid var(--csmb-ink)}
.stat-row > b{font-family:var(--font-display);font-weight:400;font-size:clamp(3.2rem,6vw,5rem);line-height:.9;color:var(--csmb-indigo)}
.view .v-main.has-bar.has-bar .vm-body .stat-row p{margin:6px 0 0 !important;max-width:68ch !important}
.view .v-main .stat-row .nb-go{margin-top:10px !important}
.press{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}
.pr{border:3px solid var(--csmb-ink);background:var(--box);padding:16px 20px 18px;border-top-width:8px}
.pr.cut{border-top-color:var(--csmb-indigo)}
.pr.protect{border-top-color:#D29A57}
.view .v-main .pr h3{font-family:var(--font-display);font-weight:400;font-size:1.05rem !important;line-height:1.2;margin:6px 0 8px !important;text-transform:none}
.view .v-main.has-bar.has-bar .vm-body .pr p{margin:0 !important;font-size:15.5px !important;line-height:1.55;max-width:none !important}
.pr a{color:var(--csmb-indigo);font-weight:600}
@media (max-width:760px){.press{grid-template-columns:1fr}.stat-row{grid-template-columns:1fr;gap:8px}}

/* Who decides, as in the references: priorities stacked with icons; boxes at text width */
.themes.themes-v{display:block;margin-top:14px;max-width:calc((100% - 4px) * 2 / 3)}
.themes-v .theme{display:grid;grid-template-columns:28px minmax(0,1fr);gap:14px;border:0;border-bottom:1px solid rgba(22,21,27,.15);padding:16px 0}
.themes-v .theme:last-child{border-bottom:0}
.th-ic{width:22px;height:22px;fill:none;stroke:var(--csmb-indigo);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;margin-top:1px}
.view .v-main .themes-v .theme h3{font-family:var(--font-sans);font-weight:700;text-transform:none;letter-spacing:0;font-size:16px !important;color:var(--csmb-ink);margin:0 0 6px !important}
.stat-row{display:block;max-width:calc((100% - 4px) * 2 / 3);border:2px solid var(--csmb-ink);background:var(--box);padding:18px 22px 20px}
.stat-row > b{display:block;font-size:clamp(2.2rem,3.2vw,2.8rem);line-height:1;margin-bottom:6px}
.press.press-stack{display:block;max-width:calc((100% - 4px) * 2 / 3);border:2px solid var(--csmb-ink);background:var(--box)}
.press-stack .pr{border:0;border-top:0;background:transparent;padding:16px 22px}
.press-stack .pr + .pr{border-top:1px solid rgba(22,21,27,.18)}
.press-stack .pr.cut .in-k{color:var(--csmb-indigo)}
.press-stack .pr.protect .in-k{color:#A8702F}
@media (max-width:999px){.themes.themes-v,.stat-row,.press.press-stack{max-width:none}}
.view .v-main :is(.themes-v .theme,.press-stack .pr) h3{font-family:var(--font-sans) !important;font-weight:700 !important;text-transform:none !important;letter-spacing:0 !important;font-size:16px !important}
/* The politics: small section kicker */
.sec-k{display:block;margin:0 0 6px}
:is(.part-lede,.part-h) + .sec-k{margin-top:22px}
/* The politics: who can do what */
.dcards{margin-top:14px;border:2px solid var(--csmb-ink);background:var(--box)}
.dc-row{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1fr) minmax(0,1fr)}
.dc-row + .dc-row{border-top:2px solid var(--csmb-ink)}
.dc-what{padding:18px 22px;background:#EEEAF6}
.dc-what .in-k{display:block;margin-bottom:4px}
.view .v-main .dc-what h3{font-family:var(--font-sans) !important;font-weight:700 !important;text-transform:none !important;letter-spacing:0 !important;font-size:17px !important;margin:0 0 6px;color:var(--csmb-ink)}
.dc-ex{font-family:var(--font-serif);font-size:15px;line-height:1.45;color:var(--csmb-ink)}
.dc-cell{padding:18px 22px;border-left:1px solid rgba(22,21,27,.18)}
.dc-who{display:flex;align-items:center;gap:8px;font-family:var(--font-sans);font-size:12.5px;font-weight:700;color:#5b5862}
.dc-who small{font-weight:400;font-size:12px;color:#7a7682}
.dc-rule{font-family:var(--font-sans);font-weight:700;font-size:17px;color:var(--csmb-indigo);margin:8px 0 4px}
.dc-txt{font-family:var(--font-serif);font-size:15.5px;line-height:1.45;color:var(--csmb-ink)}
.pw-ic{flex:none;width:18px;height:18px;fill:none;stroke:var(--csmb-indigo);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media (max-width:760px){.dc-row{grid-template-columns:1fr}.dc-cell{border-left:0;border-top:1px solid rgba(22,21,27,.18);padding:14px 16px}.dc-what{padding:14px 16px}}
/* The politics: Commission priorities in three columns */
.themes.themes-v.themes-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;max-width:none;margin-top:16px;border-top:2px solid var(--csmb-ink)}
.themes-3 .theme{display:block;padding:16px 22px 4px 0;border-top:0 !important;border-bottom:0 !important}
.themes-3 .theme + .theme{padding-left:22px;border-left:1px solid rgba(22,21,27,.18)}
.themes-3 .theme .th-ic{display:block;width:26px;height:26px;margin-bottom:10px}
.themes-3 .theme > div{padding:0}
@media (max-width:760px){.themes.themes-v.themes-3{grid-template-columns:1fr}.themes-3 .theme + .theme{padding-left:0;border-left:0;border-top:1px solid rgba(22,21,27,.18) !important}}
.themes-3 .theme p{text-wrap:wrap}
.view .v-main .dc-what h3{font-size:20px !important;line-height:1.2}
.themes.themes-v.themes-3{column-gap:44px}
.themes-3 .theme,.themes-3 .theme + .theme{padding:16px 0 4px;border-left:0;position:relative}
.themes-3 .theme + .theme::before{content:"";position:absolute;left:-22px;top:0;bottom:0;border-left:1px solid rgba(22,21,27,.18)}
@media (max-width:760px){.themes-3 .theme + .theme::before{content:none}}
/* actor names once, as column heads (desktop); per cell on mobile */
.dc-head .dc-cell{padding:14px 22px 12px}
.dc-head .dc-what{padding:0}
.dc-head + .dc-row{border-top:2px solid var(--csmb-ink)}
.dc-head .dc-who{font-size:14px;color:var(--csmb-ink)}
.dc-head .pw-ic{width:20px;height:20px}
.dc-row:not(.dc-head) .dc-who{display:none}
.dc-row:not(.dc-head) .dc-rule{margin-top:0}
@media (max-width:760px){.dc-head{display:none}.dc-head + .dc-row{border-top:0}.dc-row:not(.dc-head) .dc-who{display:flex}.dc-row:not(.dc-head) .dc-rule{margin-top:8px}}
.dc-head .dc-what{background:transparent}
.dc-abbr{display:block;font-size:13px;font-weight:700;letter-spacing:.06em;color:#5b5862;margin-top:4px}
.themes.themes-v.themes-3{border-top:0;margin-top:6px}
.themes-3 .theme{padding-top:8px}
.themes-3 .theme,.themes-3 .theme + .theme{padding-top:8px}
.dc-head .dc-what{background:#EEEAF6;padding:14px 22px 12px}
.themes.themes-v.themes-3{border-top:1px solid rgba(22,21,27,.18);margin-top:10px}
.themes-3 .theme,.themes-3 .theme + .theme{padding-top:14px}
/* The politics: actor chip above each actor heading */
.act-chip{display:inline-flex;align-items:center;gap:8px;margin:0 0 8px;padding:4px 10px 4px 8px;background:#EEEAF6;font-family:var(--font-sans);font-weight:700;font-size:13px;color:var(--csmb-ink)}
.act-chip .pw-ic{width:18px;height:18px}
.act-chip + h2{margin-top:0 !important}
.act-chip{gap:9px;margin:0 3px 14px 0;padding:6px 12px 6px 10px;background:#E7C4A2;border:2px solid var(--csmb-ink);box-shadow:3px 3px 0 var(--csmb-ink);font-size:12px;letter-spacing:.09em;text-transform:uppercase}
.act-chip .pw-ic{stroke:var(--csmb-ink);width:17px;height:17px}
/* Parliament: amendments box beside the text */
.par-2col{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);column-gap:clamp(24px,3vw,40px);align-items:start}
.par-2col > .stat-row{grid-column:1;grid-row:1;margin-top:4px;max-width:none}
.par-2col > .prose{grid-column:2;grid-row:1}
.view .v-main.has-bar.has-bar .vm-body .par-2col :is(p,.prose){max-width:none !important}
@media (max-width:760px){.par-2col{grid-template-columns:1fr}.par-2col > .stat-row,.par-2col > .prose{grid-column:1;grid-row:auto}.par-2col > .stat-row{margin-top:18px}}
/* actor headings: icon + "Actor: what they want" */
.ac-h{display:flex;align-items:flex-start;gap:12px}
.ac-ic{flex:none;width:30px;height:30px;margin-top:-2px;fill:none;stroke:var(--csmb-indigo);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media (max-width:760px){.ac-ic{width:24px;height:24px;margin-top:0}}
/* Parliament: amendments banner in the newsletter style, beside the text */
.par-2col{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr)}
.par-2col > .stat-row{grid-column:2}
.par-2col > .prose{grid-column:1}
.stat-row.amd-banner{background:var(--csmb-indigo);border:var(--border-thick);padding:clamp(22px,2.6vw,30px);color:#fff}
.amd-banner > b{color:#fff !important}
.amd-banner .in-k{display:block;color:var(--csmb-indigo-tint-2) !important}
.amd-banner a.nl-go{margin-top:20px;font-size:13px}
@media (max-width:760px){.par-2col > .stat-row,.par-2col > .prose{grid-column:1}}
/* actor sections: thin divider between actors, none under the Commission lead */
.themes.themes-v.themes-3{border-top:0}
.themes-3 .theme,.themes-3 .theme + .theme{padding-top:6px}
#part-how-decisions-are-made section:is([aria-labelledby="s2b"],[aria-labelledby="s2c"],[aria-labelledby="s2p"]),#part-timeline section[aria-labelledby="s3b"]{border-top:1px solid rgba(22,21,27,.18);padding-top:clamp(28px,3.5vw,40px)}
/* Governments: the two pressures as two columns, same pattern as the Commission's goals */
.themes.themes-v.themes-3.themes-2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:calc((100% - 4px) * 2 / 3);margin-top:14px}
.themes-2 .in-k{display:block;margin-bottom:4px}
.themes-2 .pk-protect{color:#A8702F}
@media (max-width:760px){.themes.themes-v.themes-3.themes-2{grid-template-columns:1fr;max-width:none}}
#part-the-money section[aria-labelledby="s1d"]{border-top:1px solid rgba(22,21,27,.18);padding-top:clamp(28px,3.5vw,40px)}
/* parts: heavy ink rule runs edge to edge of the page box */
.view .v-main.has-bar .vm-body > .part:not(:first-child){position:relative;border-top:0 !important}
.view .v-main.has-bar .vm-body > .part:not(:first-child)::before{content:"";position:absolute;top:0;left:calc(-1 * clamp(20px,4vw,56px));right:calc(-1 * clamp(20px,4vw,56px));border-top:3px solid var(--csmb-ink)}
.par-2col > .stat-row.amd-banner{align-self:stretch;display:flex;flex-direction:column;justify-content:center;margin-top:0}
@media (max-width:760px){.par-2col > .stat-row.amd-banner{margin-top:18px}}
.par-2col > .stat-row.amd-banner{gap:6px}
/* Governments: three pressures in a white box on the left, text on the right */
.par-2col.gov-2col{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.gov-2col > .press-stack{grid-column:1;grid-row:1;max-width:none;margin:4px 0 0}
.gov-2col > .prose{grid-column:2;grid-row:1}
.gov-press .pr{display:grid;grid-template-columns:24px minmax(0,1fr);column-gap:12px}
.pr-ic{width:22px;height:22px;margin-top:1px;fill:none;stroke:var(--csmb-indigo);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.gov-press .pr.protect .pr-ic{stroke:#A8702F}
.gov-press .pr.more .in-k{color:var(--csmb-ink)}
.gov-press .pr.more .pr-ic{stroke:var(--csmb-ink)}
.gov-press .in-k{display:block;margin-bottom:3px}
@media (max-width:760px){.gov-2col > .press-stack,.gov-2col > .prose{grid-column:1;grid-row:auto}.gov-2col > .press-stack{margin-top:18px}}
@media (max-width:760px){.par-2col.gov-2col{grid-template-columns:1fr}}
.gov-2col > .gov-a{grid-column:2;grid-row:1}
.gov-2col > .gov-b{grid-column:2;grid-row:2}
.gov-2col > .press-stack{grid-row:1 / span 2}
@media (max-width:760px){.gov-2col > :is(.gov-a,.gov-b,.press-stack){grid-column:1;grid-row:auto}.gov-2col > .gov-b{margin-top:22px}}
@media (min-width:761px){.par-2col.gov-2col{grid-template-rows:auto 1fr}.gov-2col > .gov-b{margin-top:2px}}
.par-2col:not(.gov-2col){grid-template-columns:minmax(0,1.38fr) minmax(0,.62fr)}
/* timeline: one list of milestones (past white, coming up lilac, set from each date) with an indigo detail panel */
.tlx{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);margin-top:24px;border:3px solid var(--csmb-ink);box-shadow:8px 8px 0 var(--csmb-ink);background:#FBFAF6;align-items:stretch}
.tlx-l{border-right:3px solid var(--csmb-ink)}
.tlx-h{display:flex;justify-content:space-between;align-items:center;padding:12px 18px;background:var(--csmb-ink);color:var(--csmb-paper)}
.tlx-h b{font:700 13px var(--font-sans);letter-spacing:.12em;text-transform:uppercase}
.tlx-upd{font:500 11.5px var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:#C9C4E8}
.tlx-foot{display:flex !important;flex-wrap:wrap;align-items:center;gap:8px 22px;margin-top:24px !important}
.tlx-key{display:inline-flex;align-items:center;gap:7px;font:700 11px var(--font-sans);letter-spacing:.1em;text-transform:uppercase;color:var(--csmb-ink)}
.tlx-key i{width:14px;height:14px;background:#FBFAF6;border:1.5px solid var(--csmb-ink)}.tlx-key i.f{background:#DDDAF0;margin-left:10px}
.tlx-ol{list-style:none;margin:0;padding:0}
.tlx-ol > li + li{border-top:1px solid #D8D5CA}
.tlx-ol > li.fut{background:#EEEAF6}.tlx-ol > li.fut + li.fut{border-top-color:#D9D4EC}
.tl-i{display:grid;grid-template-columns:150px minmax(0,1fr) 14px;column-gap:12px;align-items:center;width:100%;text-align:left;border:0;background:transparent;padding:8px 18px;cursor:pointer;color:var(--csmb-ink)}
.tl-i:hover,.tl-i.on{background:var(--csmb-indigo);color:#fff}
.tl-dt{white-space:nowrap;font:700 11px var(--font-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--csmb-indigo)}
.tl-i:hover .tl-dt,.tl-i.on .tl-dt{color:#C9C4E8}
.tl-t{font:600 14.5px/1.3 var(--font-sans)}
.tl-ar{font:700 14px var(--font-sans)}
.ac{justify-self:start;display:inline-block;padding:2px 6px;border:1.5px solid currentColor;font:700 9.5px var(--font-sans);letter-spacing:.09em;text-transform:uppercase;white-space:nowrap}
.ac.csm{background:#E7C4A2;border-color:#E7C4A2;color:var(--csmb-ink)}
.tlx-now{font-family:var(--font-sans) !important;padding:5px 18px;background:#D29A57;border-top:3px solid var(--csmb-ink) !important;border-bottom:1px solid var(--csmb-ink);font:700 10.5px var(--font-sans);letter-spacing:.14em;text-transform:uppercase}
.tlx-now + li{border-top:0 !important}
.view .v-main .vm-body .tlx-ol > li.tlx-now{font-family:var(--font-sans) !important;font-size:10.5px !important;font-weight:700 !important}
.tlx-p{background:var(--csmb-indigo)}
.tlx-pin{padding:20px clamp(20px,2.6vw,32px) 26px;color:#fff}
.tlx-bar{display:flex;align-items:center;gap:10px;padding-bottom:14px;margin-bottom:18px;border-bottom:1px solid #C9C4E8}
.tlx-bar .ac{color:#fff}.tlx-bar .ac.csm{color:var(--csmb-ink)}
.tlx-dt{font:700 11.5px var(--font-sans);letter-spacing:.1em;text-transform:uppercase;color:#C9C4E8}
.tlx-nav{margin-left:auto;display:flex;align-items:center;gap:8px;font:700 12px var(--font-sans);color:#C9C4E8}
.tlx-nav button{width:36px;height:36px;border:2px solid #fff;background:transparent;color:#fff;font:700 16px var(--font-sans);cursor:pointer;padding:0}
.tlx-nav button:not(:disabled):hover{background:#fff;color:var(--csmb-indigo)}.tlx-nav button:disabled{opacity:.3;cursor:default}
.view .v-main .tlx-pin h3{margin:0 0 12px !important;font-family:var(--font-display) !important;font-weight:400 !important;text-transform:uppercase !important;font-size:clamp(1.25rem,1.8vw,1.6rem) !important;line-height:1.08 !important;color:#fff !important;letter-spacing:-.01em !important}
.view .v-main.has-bar.has-bar .vm-body .tlx-pin p{max-width:none !important;margin:0 !important;color:#fff;font-family:var(--font-sans) !important;font-size:17px !important;letter-spacing:.005em;line-height:1.55 !important}
.view .v-main.has-bar.has-bar .vm-body .tlx-pin p + p{margin-top:12px !important}
.view .v-main .vm-body .tlx-pin a{color:#fff;text-decoration-color:#C9C4E8}
.tlx-out{margin-top:16px;padding:10px 14px;border:2px solid #fff;font:500 15px/1.5 var(--font-sans)}
.tlx-out span{display:block;margin-bottom:3px;font-weight:700;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:#C9C4E8}
.tlx-out.pend{border-style:dashed;color:#C9C4E8}
@media (max-width:900px){.tlx{display:block;box-shadow:4px 4px 0 var(--csmb-ink)}.tlx-l{border-right:0}.tlx-p{display:none}
 .tl-dt{white-space:normal}.tl-i{grid-template-columns:minmax(0,1fr) 14px;row-gap:4px;padding:10px 16px}.tl-dt{grid-column:1}.ac{grid-column:1}.tl-t{grid-column:1}.tl-ar{grid-column:2;grid-row:1 / span 2}
 .tlx-pin{position:static;background:var(--csmb-indigo);padding:14px 16px 20px}.tlx-bar{flex-wrap:wrap}}
.tlx + .note{margin-top:22px !important}
/* timeline: clearer past / coming up contrast */
.tlx-ol > li.fut{background:#DDDAF0}
.tlx-ol > li.fut + li.fut{border-top-color:#C9C4E8}
.tlx-ol > li.past + li.fut{border-top:1px solid #C9C4E8}
.tlx-ol > li.fut .tl-t{font-weight:500}
.tlx-key i.f{background:#DDDAF0}
.view .v-main.has-bar.has-bar .vm-body p.note.tlx-foot{max-width:none !important;flex-wrap:nowrap}
@media (max-width:900px){.view .v-main.has-bar.has-bar .vm-body p.note.tlx-foot{flex-wrap:wrap}}

/* proposals: one band per programme, then the cross-cutting rules on an indigo panel */
.view .v-main .vm-body .pl{list-style:none;padding:0;margin:0;border:3px solid var(--csmb-ink);box-shadow:6px 6px 0 var(--csmb-ink);background:#FBFAF6}
.pl-r{display:grid;grid-template-columns:250px 1fr}.pl-r + .pl-r{border-top:3px solid var(--csmb-ink)}
.pl-r + .pl-r .pl-p{border-top:2px solid #4A4852;margin-top:-3px;padding-top:21px}
.pl-p{background:var(--csmb-ink);color:var(--csmb-paper);padding:18px 20px}
.view .v-main .vm-body .pl-p h3{margin:0 !important;font:400 1.12rem/1.05 var(--font-display) !important;text-transform:uppercase !important;color:#fff !important}
.pl-is{display:grid;grid-auto-flow:column;grid-auto-columns:1fr}
.pl-i{padding:18px 22px 22px}.pl-i + .pl-i{border-left:2px solid var(--csmb-ink)}
.view .v-main .vm-body .pl-i h4{margin:0 0 8px !important;font:400 1.02rem/1.15 var(--font-display) !important;text-transform:uppercase !important;color:var(--csmb-ink)}
.view .v-main.has-bar.has-bar .vm-body .pl-i p{margin:0 !important;max-width:none !important;font-size:15.5px !important;line-height:1.5 !important}
.view .v-main.has-bar.has-bar .vm-body p.pg-in{margin:0 0 22px !important}
.pgroup + .pgroup{margin-top:48px}
.rpanel{background:var(--csmb-indigo);color:#fff;padding:28px clamp(20px,3vw,36px) 30px;box-shadow:6px 6px 0 var(--csmb-ink);border:3px solid var(--csmb-ink)}
.view .v-main .vm-body .rpanel h2{color:#fff !important;margin:0 0 4px !important;font-family:var(--font-display) !important;font-weight:400 !important;text-transform:uppercase !important;line-height:1.1 !important;font-size:clamp(1.3rem,2vw,1.6rem) !important}
.view .v-main.has-bar.has-bar .vm-body .rpanel p.rp-in{margin:0 0 22px !important;color:#C9C4E8;font-size:15px}
.view .v-main .vm-body .rp-l{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:22px 28px}
.rp-l li{border-top:2px solid #C9C4E8;padding-top:12px}
.view .v-main .vm-body .rp-l h3{margin:0 0 6px !important;font:700 16.5px/1.25 var(--font-sans) !important;color:#fff !important;text-transform:none !important;letter-spacing:0 !important}
.view .v-main.has-bar.has-bar .vm-body .rp-l p{margin:0 !important;max-width:none !important;color:#DDDAF0;font-size:15px !important;line-height:1.5 !important}
.pf-links{margin-top:40px !important}
@media (max-width:900px){.pl-r{grid-template-columns:1fr}.pl-r + .pl-r .pl-p{border-top:0;margin-top:0;padding-top:18px}.pl-is{grid-auto-flow:row}.pl-i + .pl-i{border-left:0;border-top:2px solid var(--csmb-ink)}.view .v-main .vm-body .rp-l{grid-template-columns:1fr}}

.view .v-main.has-bar.has-bar .vm-body .rpanel p.rp-in{max-width:760px !important}
a.pf-cta{display:flex;justify-content:space-between;align-items:center;gap:14px 28px;flex-wrap:wrap;margin-top:40px;padding:18px 22px;border:3px solid var(--csmb-ink);background:#FBFAF6;color:var(--csmb-ink);text-decoration:none}
.pf-t{font:500 16.5px/1.45 var(--font-sans)}
.pf-go{flex:none;padding:10px 16px;background:var(--csmb-ink);color:var(--csmb-paper);font:700 13px var(--font-sans);letter-spacing:.06em;text-transform:uppercase;box-shadow:4px 4px 0 var(--csmb-indigo)}
a.pf-cta:hover .pf-go{background:var(--csmb-indigo);color:#fff;box-shadow:4px 4px 0 var(--csmb-ink)}
#tlxp p{font-family:var(--font-sans) !important}

.rpanel{padding-top:24px !important}
#part-proposals .pgroup + .pgroup{margin-top:52px;padding-top:28px;border-top:1px solid rgba(22,21,27,.18)}

.view .v-main.has-bar.has-bar .vm-body #part-proposals p.pg-note{margin:22px 0 0 !important;font-size:16px;color:#44424C}
#part-proposals .pl{margin-top:8px}

.pl-tag{display:inline-block;margin:0 0 10px;padding:2px 7px;background:#E7C4A2;border:1.5px solid var(--csmb-ink);font:700 10.5px/1.4 var(--font-sans);letter-spacing:.1em;text-transform:uppercase;color:var(--csmb-ink)}
.pl-tag.law{background:#DDDAF0}

svg.s-ico.s-line{width:30px !important;height:30px !important;fill:none;stroke:var(--csmb-indigo);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;background:none !important;border:0 !important;box-shadow:none !important}
.par-2col > .stat-row.amd-banner{align-items:center;text-align:center}.par-2col > .stat-row.amd-banner > div{display:flex;flex-direction:column;align-items:center}
.tlx-key{flex:none;white-space:nowrap}
#part-proposals .rp-l p{font-family:var(--font-sans) !important;font-size:15px !important}

/* home question cards: colour of each icon, icon + question + arrow, icon animates on hover */
.qa-grid{list-style:none;margin:0 clamp(20px,4vw,56px);padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.qa{background:var(--qc);border:3px solid var(--csmb-ink)}
.qa a{position:relative;display:flex;flex-direction:column;height:100%;min-height:300px;padding:26px 26px 72px;color:var(--csmb-ink);text-decoration:none}
.qa-ic{width:96px;height:96px;display:block;overflow:hidden}
.qa-t{margin-top:auto;padding-top:28px;font:600 clamp(1.3rem,1.8vw,1.65rem)/1.15 var(--font-serif,Georgia),serif;letter-spacing:-.01em}
.qa-dk a{color:#fff}
.qa-go{position:absolute;right:22px;bottom:22px;display:grid;place-items:center;width:40px;height:40px;border:2px solid var(--csmb-ink);background:var(--csmb-paper);color:var(--csmb-ink);font:700 18px var(--font-sans)}
.qa:hover,.qa:focus-within{background:var(--csmb-ink);transform:translate(-4px,-4px);box-shadow:8px 8px 0 var(--qc)}
.qa:hover a,.qa:focus-within a{color:#fff}
.qa:hover .qa-go,.qa:focus-within .qa-go{background:var(--qc);color:var(--csmb-ink)}
.qa-B .qa-wide{grid-column:span 2}
.qa-B .qa-wide .qa-ic{width:150px;height:150px}
.qa-B .qa-wide .qa-t{font-size:clamp(1.6rem,2.4vw,2.2rem);max-width:16ch}
@media (max-width:1000px){.qa-grid{grid-template-columns:1fr 1fr}.qa-B .qa-wide{grid-column:span 2}}
@media (max-width:600px){.qa-grid{grid-template-columns:1fr}.qa-B .qa-wide{grid-column:auto}.qa a{min-height:0;flex-direction:row;align-items:center;gap:18px;padding:18px 70px 18px 18px}.qa-ic,.qa-B .qa-wide .qa-ic{width:72px;height:72px;flex:none}.qa-t,.qa-B .qa-wide .qa-t{margin:0;padding:0;font-size:1.2rem}.qa-go{top:50%;bottom:auto;transform:translateY(-50%)}}
/* icon motion */
.qa-ic *{transform-box:fill-box}
.a-coin{transform-origin:center}.a-eye{transform-origin:center}.a-bar{transform-origin:bottom}.a-ln{transform-origin:left}
@keyframes qa-flip{0%{transform:scaleX(1)}50%{transform:scaleX(-1)}100%{transform:scaleX(1)}}
@keyframes qa-push{0%,100%{transform:translateX(0)}50%{transform:translateX(26px)}}
@keyframes qa-mark{0%,100%{fill:#BAB5D0}40%,70%{fill:#CD9C5B}}
@keyframes qa-write{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes qa-bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-22px)}}
@keyframes qa-grow{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes qa-blink{0%,100%{transform:scaleY(1)}50%{transform:scaleY(.08)}}
@keyframes qa-open{0%,100%{transform:translate(0,0)}50%{transform:translate(18px,-18px)}}
.qa:is(:hover,:focus-within,.qa-on) .a-coin{animation:qa-flip .7s steps(8) 1}
.qa:is(:hover,:focus-within,.qa-on) .a-ar1{animation:qa-push .6s steps(4) 1}
.qa:is(:hover,:focus-within,.qa-on) .a-ar2{animation:qa-push .6s steps(4) .25s 1}
.qa:is(:hover,:focus-within,.qa-on) .a-day{animation:qa-mark 1s steps(2) 1 forwards}
.qa:is(:hover,:focus-within,.qa-on) .a-ln{animation:qa-write .5s steps(5) both}
.qa:is(:hover,:focus-within,.qa-on) .a-ln:nth-of-type(4){animation-delay:.1s}.qa:is(:hover,:focus-within,.qa-on) .a-ln:nth-of-type(5){animation-delay:.2s}.qa:is(:hover,:focus-within,.qa-on) .a-ln:nth-of-type(6){animation-delay:.3s}.qa:is(:hover,:focus-within,.qa-on) .a-ln:nth-of-type(7){animation-delay:.4s}
.qa:is(:hover,:focus-within,.qa-on) .a-dot{animation:qa-bounce .45s steps(3) 2}
.qa:is(:hover,:focus-within,.qa-on) .a-dot:nth-of-type(2){animation-delay:.15s}.qa:is(:hover,:focus-within,.qa-on) .a-dot:nth-of-type(3){animation-delay:.3s}
.qa:is(:hover,:focus-within,.qa-on) .a-bar{animation:qa-grow .5s steps(5) both}
.qa:is(:hover,:focus-within,.qa-on) .a-bar:nth-of-type(2){animation-delay:.1s}.qa:is(:hover,:focus-within,.qa-on) .a-bar:nth-of-type(3){animation-delay:.2s}.qa:is(:hover,:focus-within,.qa-on) .a-bar:nth-of-type(4){animation-delay:.3s}
.qa:is(:hover,:focus-within,.qa-on) .a-eye{animation:qa-blink .35s steps(3) 2}
.qa:is(:hover,:focus-within,.qa-on) .a-slice{animation:qa-open .6s steps(4) 1}
@media (prefers-reduced-motion:reduce){.qa-ic *{animation:none !important}.qa:hover,.qa:focus-within{transform:none}}

/* header: one diamond, as tall as the two brand lines */
.top-row .brand-logo{width:44px !important;height:44px !important}
.top-row .brand{gap:14px}
@media (max-width:640px){.top-row .brand-logo{width:34px !important;height:34px !important}}

/* home: no rule between the intro and the questions; slightly smaller card icons */
.sh-hero{border-bottom:0 !important;padding-bottom:8px !important}
.qa-ic{width:80px !important;height:80px !important}

.a-strike{transform-origin:left}.a-pen{transform-box:fill-box;transform-origin:center}
@keyframes qa-strike{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes qa-pen{0%,100%{transform:translate(0,0)}50%{transform:translate(-40px,-50px)}}
@keyframes qa-wave{0%{opacity:0}50%,100%{opacity:1}}
.qa:is(:hover,:focus-within,.qa-on) .a-strike{animation:qa-strike .5s steps(5) both}
.qa:is(:hover,:focus-within,.qa-on) .a-pen{animation:qa-pen .6s steps(4) 1}
.qa:is(:hover,:focus-within,.qa-on) .a-wave{animation:qa-wave .5s steps(2) both}
.qa:is(:hover,:focus-within,.qa-on) .a-wave:nth-of-type(2){animation-delay:.15s}.qa:is(:hover,:focus-within,.qa-on) .a-wave:nth-of-type(3){animation-delay:.3s}
@media (prefers-reduced-motion:reduce){.a-strike,.a-pen,.a-wave{animation:none !important}}

/* home: two wide cards per row, icon beside the question; thin rule before the questions */
.qa-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
.qa a{flex-direction:row !important;align-items:center;gap:24px;min-height:150px !important;padding:24px 84px 24px 24px !important}
.qa-ic{flex:none}
.qa-t{margin:0 !important;padding:0 !important;font-size:clamp(1.2rem,1.6vw,1.45rem) !important}
.qa-go{top:50%;bottom:auto !important;transform:translateY(-50%)}
.view[data-view="home"] .sh-qs{border-top:1px solid rgba(22,21,27,.18) !important;margin:0 clamp(20px,4vw,56px);padding-left:0 !important;padding-right:0 !important}
.view[data-view="home"] .sh-qs .qa-grid{margin:0 !important}
@media (max-width:760px){.qa-grid{grid-template-columns:1fr !important}.qa a{min-height:0 !important;padding:18px 70px 18px 18px !important;gap:18px}.qa-ic{width:64px !important;height:64px !important}}
.view[data-view="home"] .sh-qs .qs-h{padding-left:0 !important;padding-right:0 !important}
.view[data-view="home"] .sh-hero{padding-bottom:36px !important}

/* home cards: question with a line of context */
.qa-tx{display:flex;flex-direction:column;gap:8px;min-width:0}
.qa-d{font:400 14.5px/1.45 var(--font-sans);color:var(--csmb-ink)}
.qa-dk .qa-d{color:#F3EEE8}
.qa:hover .qa-d,.qa:focus-within .qa-d{color:#DDDAF0}
.qa-t{font-size:clamp(1.08rem,1.3vw,1.2rem) !important}
.qa-ic{width:64px !important;height:64px !important}
.qa a{gap:20px;min-height:128px !important}
.view[data-view="home"] .sh-ledes{display:block !important;max-width:760px}
.view[data-view="home"] .sh-ledes .lede{max-width:760px !important}

/* home cards: no orphan words in questions */
.qa-t{text-wrap:balance}
.qa-d{text-wrap:pretty}
/* home title: the highlighted question starts on its own line */
.sh-hero h1{max-width:none !important}
.sh-hero h1 .h1a{display:block;max-width:20ch;text-wrap:balance}
.sh-hero h1{font-size:clamp(2.4rem,5.6vw,4.4rem) !important}
@media (max-width:600px){.br-d{display:none}}
/* funding today icon: pins drop onto the map one after another */
@keyframes qa-drop{0%{transform:translateY(-60px)}100%{transform:translateY(0)}}
.qa:is(:hover,:focus-within,.qa-on) .a-pin{animation:qa-drop .4s steps(4) both}
.qa:is(:hover,:focus-within,.qa-on) .a-pin:nth-of-type(2){animation-delay:.15s}
.qa:is(:hover,:focus-within,.qa-on) .a-pin:nth-of-type(3){animation-delay:.3s}
@media (prefers-reduced-motion:reduce){.qa .a-pin{animation:none !important}}
#part-funding-today .ft-take,.ft-take{margin-top:24px}
/* carousel: keep the programme name clear of the arrows */
.pw-panel h3{padding-right:96px}
.view:not([data-view="the-next-budget"]) .ck-head .reviewed{width:fit-content}
/* section headers: title and text start at the same height */
.view:not([data-view="the-next-budget"]) .ck-head:not(.ck-solo) .ck-left > h1{align-self:start}
/* section headers: same title and intro sizes as The next budget */
.view .ck-head:not(.ck-solo) .ck-left > .ck-stand{font-size:clamp(18px,1.45vw,20px) !important;line-height:1.55 !important}
@media (min-width:1000px){
.view .ck-head:not(.ck-solo) .ck-left > h1{font-size:clamp(2.6rem,4vw,3.9rem) !important;line-height:1.02 !important}
.view .ck-head:not(.ck-solo) .ck-left > .ck-stand{font-size:clamp(17px,1.3vw,19px) !important}
}
/* all section headers on the same two-to-one grid as The next budget */
@media (min-width:1000px){
.view .ck-head:not(.ck-solo) .ck-left{grid-template-columns:minmax(0,2fr) minmax(0,1fr) !important;column-gap:4px !important}
.view .ck-head:not(.ck-solo) .ck-left > h1{padding-right:clamp(24px,3vw,48px)}
}
/* explorer, analysis and funding today: one shared grid, with the intro closer to the title */
@media (min-width:1000px){
.view:not([data-view="the-next-budget"]) .ck-head:not(.ck-solo) .ck-left{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) !important;column-gap:clamp(32px,4vw,56px) !important}
.view:not([data-view="the-next-budget"]) .ck-head:not(.ck-solo) .ck-left > h1{padding-right:0}
}
@media (min-width:1000px){.nw{white-space:nowrap}}
/* titles stop growing past 1280px so the shared grid holds on wide screens */
@media (min-width:1000px){.view:not([data-view="the-next-budget"]) .ck-head:not(.ck-solo) .ck-left > h1{font-size:clamp(2.6rem,4vw,3.2rem) !important}}
/* funding today: sections use the full width of the page, like the parts of The next budget */
.view[data-view="funding-today"]:not([data-view="home"]) :is(.v-main,.vm-body)>section:not(.part){max-width:none !important}
.view[data-view="funding-today"]:not([data-view="home"]) :is(.v-main,.vm-body)>section:not(.part)>*:not(p){max-width:none !important}
.view[data-view="funding-today"]:not([data-view="home"]) :is(.v-main,.vm-body)>section:not(.part)>p{max-width:820px !important}
.view[data-view="funding-today"] .route-cards{grid-template-columns:1fr 1fr}
.view[data-view="funding-today"] .route p{max-width:none !important}
.view[data-view="funding-today"] .pw-panel p{max-width:62ch !important}
.view .v-main.has-bar.has-bar .vm-body .route p{max-width:none !important}
/* analysis: short title, so the intro follows it at a fixed gap */
@media (min-width:1000px){
.view:is([data-view="analysis"],[data-view="explorer"],[data-view="what-you-can-do"]) .ck-head:not(.ck-solo) .ck-left{grid-template-columns:auto minmax(0,1fr) !important;column-gap:clamp(48px,6vw,88px) !important}
.view:is([data-view="analysis"],[data-view="explorer"],[data-view="what-you-can-do"]) .ck-head:not(.ck-solo) .ck-left > .ck-stand{max-width:36em !important}
}
/* funding today: section heads styled like the parts of The next budget */
.ft-part h2.part-t{font-family:var(--font-display) !important;font-weight:400 !important;text-transform:uppercase !important;letter-spacing:-.01em !important;margin:0 !important;font-size:clamp(1.55rem,2.7vw,2.25rem) !important;line-height:1.08 !important;max-width:none !important}
.ft-part .part-h{margin-bottom:18px}
/* every page: the intro under a section title starts where the title starts */
@media (min-width:761px){
.part > .part-lede,.ft-part > .part-h + p{margin-left:82px !important;max-width:calc((100% - 4px) * 2 / 3 - 82px) !important}
}
.view .v-main.has-bar.has-bar .vm-body .pw-panel p{max-width:none !important}
/* funding today: programmes as an accordion */
.pacc{border:3px solid var(--csmb-ink);box-shadow:6px 6px 0 var(--csmb-ink);background:var(--box);margin-top:20px}
.pa+.pa{border-top:2px solid var(--csmb-ink)}
.pa summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,2fr) 36px;gap:20px;align-items:center;padding:18px 24px}
.pa summary::-webkit-details-marker{display:none}
.pa-n{font-family:var(--font-display);text-transform:uppercase;font-size:1.1rem;line-height:1.15}
.pa-s{font-family:var(--font-sans);font-size:15px;line-height:1.45;color:#3B3A41}
.pa-pm{width:34px;height:34px;border:2px solid var(--csmb-ink);display:grid;place-items:center;font:700 18px var(--font-sans);background:#fff;color:var(--csmb-ink)}
.pa-pm::before{content:"+"}
.pa[open] .pa-pm::before{content:"−"}
.pa[open] summary{background:var(--csmb-indigo);color:#fff}
.pa[open] .pa-s{color:#E4E1F3}
.pa summary:hover .pa-pm{background:var(--csmb-ink);color:#fff}
.pa-b{padding:6px 24px 22px}
.pa-row{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,2fr) 36px;gap:20px;padding:14px 0;border-bottom:1px solid rgba(22,21,27,.15)}
.pa-row:last-child{border-bottom:0}
.pa-k{font-family:var(--font-sans);font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--csmb-indigo);padding-top:4px}
.view .v-main.has-bar.has-bar .vm-body .pa-row p{margin:0 !important;max-width:none !important;font-size:16.5px !important;line-height:1.55 !important}
@media (max-width:760px){.pa summary{grid-template-columns:minmax(0,1fr) 34px;gap:6px 14px;padding:16px 18px}.pa-s{grid-column:1;grid-row:2}.pa-pm{grid-row:1 / span 2;grid-column:2}.pa-b{padding:4px 18px 18px}.pa-row{grid-template-columns:1fr;gap:4px}}
/* funding today: today's rules as a bordered list */
.ft-rules-h{font-family:var(--font-display) !important;text-transform:uppercase;font-weight:400 !important;font-size:1.15rem !important;margin:36px 0 12px !important}
.ft-rules{margin:0;border:3px solid var(--csmb-ink);background:var(--box);box-shadow:6px 6px 0 var(--csmb-ink)}
.fr-row{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,2fr) 36px;gap:20px;padding:16px 24px;border-top:1px solid rgba(22,21,27,.15)}
.fr-row:first-child{border-top:0}
.fr-row dt{font-family:var(--font-sans);font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--csmb-indigo);padding-top:5px}
.fr-row dd{margin:0;font-family:var(--font-serif,Georgia),serif;font-size:16.5px;line-height:1.55}
.view .v-main.has-bar.has-bar .vm-body .ft-take{margin-top:28px !important}
@media (max-width:760px){.fr-row{grid-template-columns:1fr;gap:4px;padding:14px 18px}}
.view .v-main .vm-body h3.ft-rules-h{margin:40px 0 14px !important}
/* funding today: the rules, grouped by stage, in one compact panel */
.ft-rl{border:3px solid var(--csmb-ink);background:var(--box);box-shadow:6px 6px 0 var(--csmb-ink)}
.rl-st{display:block;border-top:3px solid var(--csmb-ink)}
.rl-st:first-child{border-top:0}
.view .v-main .vm-body h4.rl-h{margin:0 !important;padding:9px 24px;background:var(--sc);color:var(--st,#fff);font-family:var(--font-display) !important;font-weight:400 !important;text-transform:uppercase;font-size:.98rem !important;line-height:1.2}
.rl-st:nth-child(1){--sc:var(--csmb-ink)}
.rl-st:nth-child(2){--sc:var(--csmb-indigo)}
.rl-st:nth-child(3){--sc:#7D7AAD}
.rl-st:nth-child(4){--sc:#CD9C5B;--st:var(--csmb-ink)}
.rl-l{margin:0;padding:2px 24px 4px}
.rl-l > div{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,2fr);gap:20px;padding:13px 0;border-top:1px solid rgba(22,21,27,.15)}
.rl-l > div:first-child{border-top:0}
.rl-l dt{font-family:var(--font-sans);font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--csmb-indigo);padding-top:4px}
.rl-l dd{margin:0;font-family:var(--font-serif,Georgia),serif;font-size:16px;line-height:1.5}
@media (max-width:760px){.rl-l{padding:0 18px}.rl-l > div{grid-template-columns:1fr;gap:3px}}
.ft-part .part-h + p + .ft-ex{margin-top:22px}
/* accordion: rows light up on hover */
.pa summary{transition:background-color .15s}
.pa:not([open]) summary:hover,.pa:not([open]) summary:focus-visible{background:#E4E1F3}
.pa[open] summary:hover{background:#2E2A7A}
/* home title: one solid highlight block that rises behind the bottom of the line above */
.sh-hero h1 .h1a{position:relative;z-index:2}
.sh-hero h1 .hl{position:relative;z-index:1;padding:.17em .14em .08em !important}
.sh-hero h1 .hlt{position:relative;z-index:1}
/* What you can do page */
.view[data-view="what-you-can-do"] .v-main > section{max-width:none !important}
.act-links{margin-top:48px}
.view .v-main .act-links h2{font-family:var(--font-display) !important;text-transform:uppercase;font-weight:400 !important;font-size:clamp(1.3rem,2vw,1.6rem) !important;margin:0 0 16px !important}
.al-l{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.al-l a{position:relative;display:flex;flex-direction:column;gap:6px;height:100%;padding:20px 56px 20px 22px;border:3px solid var(--csmb-ink);background:var(--box);box-shadow:6px 6px 0 var(--csmb-ink);color:var(--csmb-ink);text-decoration:none;transition:transform .12s,box-shadow .12s}
.al-l a:hover{transform:translate(-3px,-3px);box-shadow:9px 9px 0 var(--csmb-indigo)}
.al-t{font-family:var(--font-serif,Georgia),serif;font-weight:600;font-size:1.12rem;line-height:1.25}
.al-d{font-family:var(--font-sans);font-size:14.5px;line-height:1.45;color:#3B3A41}
.al-go{position:absolute;right:20px;top:50%;transform:translateY(-50%);font:700 20px var(--font-sans)}
@media (max-width:900px){.al-l{grid-template-columns:1fr}}
.nb-act{margin-top:56px}
.view[data-view="what-you-can-do"]:not([data-view="home"]) :is(.v-main,.vm-body)>section:not(.part){max-width:none !important}
.view[data-view="what-you-can-do"] .act-cards{max-width:none !important}
@media (min-width:1000px){.view[data-view="what-you-can-do"] .act-cards{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:22px !important}
.view[data-view="what-you-can-do"] .act-cards .say{display:flex;flex-direction:column}
.view[data-view="what-you-can-do"] .act-cards .say p{max-width:none}}
/* the action tab gets a small mark so it stands out a little */
.tabs a[data-route="what-you-can-do"]::before{content:"✦";display:inline-block;margin-right:8px;color:#CD9C5B;font-size:.95em;transform:translateY(-.02em)}
.tabs a[data-route="what-you-can-do"]{justify-content:flex-start !important;gap:0}
/* What you can do: ways to act and arguments */
.view[data-view="what-you-can-do"] .v-main > section.ft-part + section{margin-top:56px}
.ways{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:22px}
.way{border:3px solid var(--csmb-ink);background:var(--box);box-shadow:6px 6px 0 var(--csmb-ink);display:flex;flex-direction:column}
.way-h{display:flex;align-items:center;gap:12px;padding:16px 20px;background:var(--csmb-ink);color:#fff}
.way-h .s-ico{width:24px;height:24px;flex:none;stroke:#CD9C5B}
.view .v-main .way-h h3{margin:0 !important;font-family:var(--font-display) !important;font-weight:400 !important;text-transform:uppercase;font-size:1rem !important;line-height:1.2;color:#fff}
.way-l{margin:0;padding:4px 20px 8px}
.way-l > div{padding:12px 0;border-top:1px solid rgba(22,21,27,.15)}
.way-l > div:first-child{border-top:0}
.way-l dt{font-family:var(--font-sans);font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--csmb-indigo);margin-bottom:4px}
.way-l dd{margin:0;font-family:var(--font-serif,Georgia),serif;font-size:16px;line-height:1.5}
.arg-l{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:22px;border:3px solid var(--csmb-ink);background:var(--box);box-shadow:6px 6px 0 var(--csmb-ink)}
.arg{padding:20px 22px;border-left:2px solid var(--csmb-ink)}
.arg:first-child{border-left:0}
.view .v-main .arg h3{margin:0 0 8px !important;font-family:var(--font-sans) !important;font-weight:700 !important;text-transform:none !important;font-size:18px !important;color:var(--csmb-indigo)}
.view .v-main.act-main .arg p{margin:0 !important;font-family:var(--font-serif,Georgia),serif;font-size:16px !important;line-height:1.5 !important;max-width:none !important}
@media (max-width:900px){.ways,.arg-l{grid-template-columns:1fr}.arg{border-left:0;border-top:2px solid var(--csmb-ink)}.arg:first-child{border-top:0}}
.way-h svg.s-ico.s-line{stroke:#CD9C5B !important;color:#CD9C5B}
/* the three ways line up row by row (who / what you could raise / a tip) */
@media (min-width:901px){
.ways{grid-template-rows:auto repeat(3,auto);row-gap:0}
.way{display:grid;grid-template-rows:subgrid;grid-row:span 4}
.way-l{display:contents}
.way-l > div{margin:0 20px;padding:12px 0}
.way-l > div:first-child{padding-top:16px}
.way-l > div:last-child{padding-bottom:18px}
}
/* What you can do: objections and answers */
.qa-l{margin:22px 0 0;border:3px solid var(--csmb-ink);background:var(--box);box-shadow:6px 6px 0 var(--csmb-ink)}
.qa-l > div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:28px;padding:18px 24px;border-top:1px solid rgba(22,21,27,.15)}
.qa-l > div:first-child{border-top:0}
.qa-l dt{font-family:var(--font-serif,Georgia),serif;font-weight:600;font-size:1.1rem;line-height:1.3;color:var(--csmb-ink)}
.qa-l dd{margin:0;font-family:var(--font-serif,Georgia),serif;font-size:16px;line-height:1.55}
@media (max-width:760px){.qa-l > div{grid-template-columns:1fr;gap:6px;padding:16px 18px}}
/* end of The next budget: the way into What you can do */
.view .v-main .vm-body > .nb-cta,.nb-cta{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:6px;max-width:none !important;margin-top:64px;padding:30px 120px 32px 36px;background:#BAB5D0;border:3px solid var(--csmb-ink);box-shadow:8px 8px 0 var(--csmb-ink);color:var(--csmb-ink);text-decoration:none;transition:transform .12s,box-shadow .12s}
.nb-cta:hover{transform:translate(-3px,-3px);box-shadow:11px 11px 0 var(--csmb-ink)}
.nbc-k{font-family:var(--font-sans);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.nbc-t{font-family:var(--font-display);text-transform:uppercase;font-size:clamp(1.8rem,3.2vw,2.6rem);line-height:1.05}
.nbc-d{font-family:var(--font-serif,Georgia),serif;font-size:18px;line-height:1.5;max-width:46em}
.nbc-go{position:absolute;right:32px;top:50%;transform:translateY(-50%);width:64px;height:64px;display:grid;place-items:center;background:var(--csmb-ink);color:#fff;font:700 28px var(--font-sans)}
@media (max-width:640px){.nb-cta{padding:24px 22px 84px}.nbc-go{top:auto;bottom:18px;right:18px;transform:none;width:48px;height:48px;font-size:22px}}
/* Why fund public interest information: question cards */
.qa-g{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:22px}
.qa-c{display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:16px;align-content:start;padding:20px 22px;border:3px solid var(--csmb-ink);background:var(--box);box-shadow:6px 6px 0 var(--csmb-ink)}
.qa-ico{grid-row:1 / span 2;width:44px;height:44px;padding:9px;background:var(--csmb-indigo);fill:none;stroke:#CD9C5B;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.view .v-main .qa-c h3{margin:2px 0 8px !important;font-family:var(--font-serif,Georgia),serif !important;font-weight:600 !important;text-transform:none !important;letter-spacing:0 !important;font-size:1.12rem !important;line-height:1.3}
.view .v-main.act-main .qa-c p{margin:0 !important;font-family:var(--font-serif,Georgia),serif;font-size:16px !important;line-height:1.55 !important;max-width:none !important}
@media (max-width:900px){.qa-g{grid-template-columns:1fr}}
/* question icons: line only, no square behind */
.qa-ico{background:none !important;padding:4px !important;width:36px !important;height:36px !important;stroke:var(--csmb-indigo) !important;stroke-width:1.6 !important}
.qa-c{grid-template-columns:36px minmax(0,1fr) !important}
/* questions as an open two-column list: no card boxes */
.qa-g{column-gap:48px !important;row-gap:0 !important}
.qa-c{border:0 !important;box-shadow:none !important;background:none !important;padding:22px 0 !important;border-top:2px solid var(--csmb-ink) !important}
/* What you can do: tool link at the foot of each way */
.way-go{margin:auto 20px 18px;padding-top:12px;border-top:2px solid var(--csmb-ink);font-family:var(--font-sans);font-size:13.5px;font-weight:700;color:var(--csmb-indigo);text-decoration:none}
.way-go:hover{text-decoration:underline}
@media (min-width:901px){.ways{grid-template-rows:auto repeat(3,auto) auto}.way{grid-row:span 5}}
.view .v-main.act-main p.way-go{margin:auto 20px 18px !important;max-width:none !important}
.way-go a{color:var(--csmb-indigo);text-decoration:none}
.way-go a:hover{text-decoration:underline}
.view .v-main.act-main p.way-go{font-family:var(--font-sans) !important;font-size:13.5px !important;line-height:1.45 !important;font-weight:700;color:var(--csmb-ink)}
.way-go a{font-family:var(--font-sans) !important;font-weight:700}
/* What you can do foot links: no global indigo hover block, underline only the link */
.way-go a:hover{background:none;color:var(--csmb-indigo);text-decoration:underline;text-decoration-color:currentColor}
p.way-go:hover{text-decoration:none}
a.way-go:hover{background:none;color:var(--csmb-indigo);text-decoration:underline;text-decoration-color:currentColor}
/* foot links: top rules line up across the three ways */
@media (min-width:901px){.view .v-main.act-main .way-go,.view .v-main.act-main p.way-go{margin:0 20px 18px !important;align-self:start}}
/* One hover for every text link: no colour block, the underline thickens */
.view :is(p,dd,td,figcaption,.prose li) a:not([class]):hover,.way-go a:hover,a.way-go:hover{background:none !important;color:var(--csmb-indigo) !important;text-decoration:underline !important;text-decoration-color:currentColor !important;text-decoration-thickness:2px !important}
/* The rules of the game: Commission, Parliament, Council */
@media (min-width:761px){.dc-row{grid-template-columns:minmax(0,.8fr) repeat(3,minmax(0,1fr))}}
/* Council with national governments underneath, not trailing in grey */
.dc-nm{display:flex;flex-direction:column;line-height:1.15}
.dc-nm small{font-size:11.5px;font-weight:500;color:var(--csmb-ink);opacity:.7;margin-top:2px}
/* Who decides icon: the three institutions pop in turn */
.qa .a-tri{transform-box:fill-box;transform-origin:center}
.qa:is(:hover,:focus-within,.qa-on) .a-tri{animation:qa-pop .45s steps(4) 1}
.qa:is(:hover,:focus-within,.qa-on) .a-tri:nth-of-type(2){animation-delay:.15s}
.qa:is(:hover,:focus-within,.qa-on) .a-tri:nth-of-type(3){animation-delay:.3s}
@keyframes qa-pop{50%{transform:scale(1.18)}}
@media (prefers-reduced-motion:reduce){.qa .a-tri{animation:none !important}}
/* Section tiles: play the matching animation once, when the header comes into view */
.part-tile .a-pop,.part-tile .a-spin,.part-tile .a-dot,.part-tile .a-tri{transform-box:fill-box;transform-origin:center}
.part-tile .a-coin{transform-origin:center}.part-tile .a-ln{transform-origin:left}
.tile-on .a-coin{animation:qa-flip .7s steps(8) 1}
.tile-on .a-tri{animation:qa-pop .45s steps(4) 1}
.tile-on .a-tri:nth-of-type(2){animation-delay:.15s}.tile-on .a-tri:nth-of-type(3){animation-delay:.3s}
.tile-on .a-day{animation:qa-mark 1s steps(2) 1 forwards}
.tile-on .a-ln{animation:qa-write .5s steps(5) both}
.tile-on .a-dot{animation:qa-bounce .45s steps(3) 1}
.tile-on .a-dot:nth-of-type(2){animation-delay:.1s}.tile-on .a-dot:nth-of-type(3){animation-delay:.2s}
.tile-on .a-pop{animation:qa-pop .5s steps(4) 1}
.tile-on .a-spin{animation:qa-spin .8s steps(6) 1}
@keyframes qa-spin{50%{transform:scaleX(.25)}}
@media (prefers-reduced-motion:reduce){.tile-on .part-tile *{animation:none !important}}
/* text links on dark panels keep a light colour on hover */
.view .tlx-p :is(p,li,dd,td,figcaption) a:not([class]):hover{color:#fff !important;text-decoration-color:#fff !important}
/* Timeline: one vertical line with dots, details open underneath */
.tla{margin-top:24px;border:3px solid var(--csmb-ink);box-shadow:8px 8px 0 var(--csmb-ink);background:#FBFAF6}
.tla-h{display:flex;justify-content:space-between;align-items:center;padding:12px 22px;background:var(--csmb-ink);color:#fff}
.tla-h b{font:700 13px var(--font-sans);letter-spacing:.12em;text-transform:uppercase}
.tla-b{padding:8px 26px 22px}
.tla-y{display:grid;grid-template-columns:110px minmax(0,1fr);column-gap:10px}
.tla-y + .tla-y{border-top:2px solid var(--csmb-ink);margin-top:0}
.tla-yl{padding-top:16px}
.tla-yl span{display:inline-block;padding:4px 10px 3px;background:#CD9C5B;color:var(--csmb-ink);font-family:var(--font-display);font-size:20px;line-height:1.1;box-shadow:3px 3px 0 var(--csmb-ink)}
.tla-y:has(li.fut) .tla-yl span{background:#BAB5D0}
.view .v-main .vm-body ol.tla-ol{list-style:none;margin:0 !important;padding:8px 0 !important;max-width:none !important}
.tla-ol > li{position:relative;padding-left:40px;margin:0 !important}
.tla-ol > li::before{content:"";position:absolute;left:10px;top:0;bottom:0;width:3px;background:var(--csmb-ink)}
.tla-ol > li.fut::before{background:repeating-linear-gradient(var(--csmb-indigo) 0 6px,transparent 6px 11px)}
.tla-ol > li::after{content:"";position:absolute;left:3px;top:15px;width:17px;height:17px;border-radius:50%;background:var(--csmb-ink);box-sizing:border-box}
.tla-ol > li.fut::after{background:#fff;border:3px solid var(--csmb-indigo)}
.tla-ol > li.on::after{background:#CD9C5B;border:3px solid var(--csmb-ink)}
.tla-ol > li.fut.on::after{background:#BAB5D0;border-color:var(--csmb-indigo)}
.tla-i{display:grid;grid-template-columns:170px minmax(0,1fr) 20px;gap:14px;align-items:baseline;width:100%;padding:12px 14px 12px 0;border:0;border-bottom:1px solid #DDD9CE;background:none;text-align:left;cursor:pointer;color:var(--csmb-ink)}
.tla-dt{font:700 11.5px var(--font-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--csmb-indigo)}
.tla-t{font:600 15.5px/1.35 var(--font-sans)}
.tla-pm{font:700 16px var(--font-sans);text-align:center}
.tla-i:hover .tla-t,.tla-ol > li.on .tla-t{color:var(--csmb-indigo)}
.tla-ol > li.fut .tla-i{border-bottom-color:#DCD7EC}
.tla-ol > li.on{background:linear-gradient(90deg,transparent 40px,#EEEAF6 40px)}
.tla-ol > li.on .tla-i{border-bottom:0}
.tla-d{padding:0 16px 18px 184px;border-bottom:1px solid #DDD9CE}
.view .v-main.has-bar.has-bar .vm-body .tla-d p{max-width:none !important;margin:0 !important;font-family:var(--font-serif,Georgia),serif;font-size:16px;line-height:1.55}
.view .v-main.has-bar.has-bar .vm-body .tla-d p + p{margin-top:10px !important}
.tla-out{margin-top:12px;padding:8px 12px;border:2px solid var(--csmb-indigo);background:#fff;font:500 14px/1.45 var(--font-sans)}
.tla-out span{display:block;font-weight:700;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--csmb-indigo)}
.tla-out.pend{border-style:dashed;color:#55525F}
.view .v-main .vm-body .tla-ol > li.tla-now{padding:8px 0 8px 40px}
.tla-now::before{background:var(--csmb-ink) !important;bottom:50% !important}
.tla-now::after{display:none}
.tla-now span{position:relative;display:inline-block;padding:3px 10px;background:var(--csmb-indigo);color:#fff;font:700 11px var(--font-sans);letter-spacing:.14em;text-transform:uppercase}
.tla-now span::before{content:"";position:absolute;right:100%;top:50%;width:30px;height:3px;margin-top:-1.5px;background:var(--csmb-indigo)}
.tla-key i{border-radius:50%;background:var(--csmb-ink) !important;border:0 !important}
.tla-key i.f{background:#fff !important;border:3px solid var(--csmb-indigo) !important;box-sizing:border-box}
@media (max-width:760px){.tla-b{padding:4px 14px 16px}.tla-y{grid-template-columns:1fr}.tla-yl{padding:14px 0 2px}.tla-i{grid-template-columns:minmax(0,1fr) 18px;gap:4px 10px}.tla-dt{grid-column:1 / -1}.tla-d{padding:0 8px 16px 0}.tla-h{flex-wrap:wrap;gap:4px;padding:10px 14px}}
.tla-yl span{white-space:nowrap}
.dc-who small.dc-ng{font-size:12.5px;font-weight:500;color:var(--csmb-ink);opacity:.75;margin-left:-3px}
/* Home cards: hover animations for the new icons */
.qa .a-pop,.qa .a-dot{transform-box:fill-box;transform-origin:center}
.qa .a-tilt{transform-origin:200px 113px}
.qa:is(:hover,:focus-within,.qa-on) .a-pop{animation:qa-pop .5s steps(4) 1}
.qa:is(:hover,:focus-within,.qa-on) .a-tilt{animation:qa-tilt .7s steps(6) 1}
@keyframes qa-tilt{25%{transform:rotate(-7deg)}75%{transform:rotate(7deg)}}
@media (prefers-reduced-motion:reduce){.qa .a-pop,.qa .a-tilt{animation:none !important}}
/* deep links to a section heading land below the sticky bars */
.view h2[id]{scroll-margin-top:130px}
/* The politics: each institution keeps the colour badge of the drawing */
#s2a .ac-ic,#s2b .ac-ic,#s2c .ac-ic{width:40px;height:40px;padding:7px;box-sizing:border-box;border:2.5px solid var(--csmb-ink);border-radius:50%;box-shadow:3px 3px 0 var(--csmb-ink);stroke:var(--csmb-ink);margin-top:-6px}
#s2a .ac-ic{background:#BAB5D0}#s2b .ac-ic{background:#CD9C5B}#s2c .ac-ic{background:#F3EEE8}
.dc-head .pw-ic{width:28px !important;height:28px !important;padding:4px;box-sizing:border-box;border:2px solid var(--csmb-ink);border-radius:50%;box-shadow:2px 2px 0 var(--csmb-ink);stroke:var(--csmb-ink)}
.dc-head .dc-cell:nth-child(2) .pw-ic{background:#BAB5D0}.dc-head .dc-cell:nth-child(3) .pw-ic{background:#CD9C5B}.dc-head .dc-cell:nth-child(4) .pw-ic{background:#F3EEE8}
/* calendar tile: the marked day also pops, so the change is visible */
.part-tile .a-day,.qa .a-day{transform-box:fill-box;transform-origin:center}
.tile-on .a-day{animation:qa-mark 1s steps(2) 1 forwards,qa-pop .5s steps(4) 1}
.qa:is(:hover,:focus-within,.qa-on) .a-day{animation:qa-mark 1s steps(2) 1 forwards,qa-pop .5s steps(4) 1}
.route-cards + .ft-rl{margin-top:26px !important}
.view .v-main.has-bar.has-bar .vm-body p.ft-sub{margin:-4px 0 14px !important;max-width:820px !important;font-family:var(--font-serif,Georgia),serif;font-size:16.5px;line-height:1.55}
/* process tables: a practical tip at the end of each stage */
.rl-l > .rl-tip{background:#F6EADB;margin:0 -24px;padding-left:24px !important;padding-right:24px !important;border-top:0 !important}
.rl-l > .rl-tip dt{color:#8A5A1F !important}
.view .v-main.has-bar.has-bar .vm-body p.ft-bridge{margin:26px 0 14px !important}
.ft-bridge + .ft-rl{margin-top:0 !important}
/* process tables: tips as a callout under each stage */
.view .v-main .vm-body p.rl-tipbox{display:flex;gap:14px;align-items:flex-start;margin:4px 24px 20px !important;max-width:none !important;padding:12px 16px;border:2px dashed #CD9C5B;background:#FBF4EA;font-family:var(--font-sans);font-size:14.5px;line-height:1.5;color:var(--csmb-ink)}
.rl-tipk{flex:none;display:inline-flex;align-items:center;gap:6px;padding:2px 8px;background:#CD9C5B;color:var(--csmb-ink);font:700 11px var(--font-sans);letter-spacing:.12em;text-transform:uppercase;margin-top:1px}
.rl-tipk::before{content:"✦"}
/* tips span the whole stage box */
.view .v-main .vm-body p.rl-tipbox{margin:0 !important;border:0;border-top:2px dashed #CD9C5B;padding:14px 24px 16px}
.view .v-main.has-bar.has-bar .vm-body p.rl-tipbox{max-width:none !important}
/* tip text lines up with the answers column */
.view .v-main.has-bar.has-bar .vm-body p.rl-tipbox{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,2fr);gap:20px;align-items:start;font-family:var(--font-serif,Georgia),serif;font-size:16px;line-height:1.5}
.rl-tipbox .rl-tipk{justify-self:start}
@media (max-width:760px){.view .v-main.has-bar.has-bar .vm-body p.rl-tipbox{grid-template-columns:1fr;gap:8px;padding:12px 18px 14px}}
.rl-tipk::before{content:none !important}
/* tips: a dashed box inset within each stage, almost its full width */
.view .v-main.has-bar.has-bar .vm-body p.rl-tipbox{display:flex !important;gap:14px;margin:6px 24px 20px !important;border:2px dashed #CD9C5B !important;padding:12px 16px !important;font-family:var(--font-sans) !important;font-size:14.5px !important;line-height:1.5 !important}
@media (max-width:760px){.view .v-main.has-bar.has-bar .vm-body p.rl-tipbox{flex-direction:column;gap:8px;margin:6px 18px 16px !important}}
/* tip label: a small light bulb */
.rl-tipk::before{content:"" !important;width:13px;height:13px;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2316151B' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18h6M10 21h4M12 3a6 6 0 0 0-3.6 10.8c.6.5 1.1 1.3 1.1 2.2h5c0-.9.5-1.7 1.1-2.2A6 6 0 0 0 12 3z'/%3E%3C/svg%3E")}
/* tips as a short list (div, not p) */
.view .v-main .vm-body div.rl-tipbox{display:flex;gap:16px;align-items:flex-start;margin:6px 24px 20px;padding:12px 16px;border:2px dashed #CD9C5B;background:#FBF4EA}
.view .v-main .vm-body ul.rl-tips{margin:0 !important;padding:0 0 0 18px !important;max-width:none !important;font-family:var(--font-sans);font-size:14.5px;line-height:1.5;color:var(--csmb-ink)}
.view .v-main .vm-body ul.rl-tips li{margin:0 0 4px !important;max-width:none !important}
.view .v-main .vm-body ul.rl-tips li:last-child{margin-bottom:0 !important}
.rl-tips li::marker{color:#CD9C5B}
@media (max-width:760px){.view .v-main .vm-body div.rl-tipbox{flex-direction:column;gap:8px;margin:6px 18px 16px}}
/* Funding today: explorer callout in indigo rather than black */
a.sh-ex.ft-ex{background:var(--csmb-indigo) !important;box-shadow:6px 6px 0 var(--csmb-ink)}
a.sh-ex.ft-ex .ex-t{color:#fff !important}
/* The recipients: a few facts from the data */
.view .v-main .vm-body ul.ft-facts{list-style:none;margin:18px 0 6px !important;padding:0 !important;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 22px;max-width:none !important}
.view .v-main .vm-body ul.ft-facts li{margin:0 !important;max-width:none !important;padding:12px 16px;border-left:6px solid #CD9C5B;background:var(--box);font-family:var(--font-serif,Georgia),serif;font-size:16px;line-height:1.5}
.ft-facts b{font-family:var(--font-sans);font-weight:700}
@media (max-width:760px){.view .v-main .vm-body ul.ft-facts{grid-template-columns:1fr}}
a.sh-ex.ft-ex:hover .ex-go{background:var(--csmb-ink) !important;color:#fff !important;border-color:var(--csmb-ink) !important}
/* mock: budget and news line in the programmes list */
.pa summary,.pacc-key{grid-template-columns:minmax(0,.7fr) minmax(0,1.35fr) 150px 120px 36px !important}
.pacc-key{display:grid;gap:20px;padding:9px 24px;background:var(--csmb-ink);color:#C9C4E8;font:700 10.5px var(--font-sans);letter-spacing:.12em;text-transform:uppercase}
.pa-bud{font-family:var(--font-display);font-size:.95rem;line-height:1.2}
.pa[open] .pa-bud{color:#fff}
.mt-y{display:inline-block;padding:1px 8px;font:700 11px var(--font-sans);letter-spacing:.1em;text-transform:uppercase;border:2px solid var(--csmb-ink);color:var(--csmb-ink)}
.mt-yes{background:#CD9C5B}.mt-part{background:#BAB5D0}.mt-no{background:#fff}
@media (max-width:760px){.pacc-key{display:none}.pa summary{grid-template-columns:minmax(0,1fr) 34px !important}.pa-bud,.pa-yn{grid-column:1}}
/* programmes list redesign: lighter names, status bar on the left, figures at a glance */
.pacc .pa-n{font-family:var(--font-sans) !important;text-transform:none !important;font-weight:700 !important;font-size:1.05rem !important;line-height:1.25 !important}
.pacc .pa summary{padding:15px 24px 15px 18px;border-left:8px solid transparent}
.pacc .pa-yes summary{border-left-color:#CD9C5B}
.pacc .pa-part summary{border-left-color:#BAB5D0}
.pacc .pa-no summary{border-left-color:#E4E1EC}
.pacc .pa-s{font-size:14.5px}
.pacc .pa-bud{font-family:var(--font-sans);font-weight:700;font-size:14.5px}
.pacc-key{padding-left:26px !important}
.pacc .pa[open] summary{border-left-color:var(--csmb-ink)}
.view .v-main .vm-body p.mt-src{margin-top:12px !important}
.pa summary,.pacc-key{grid-template-columns:minmax(0,.75fr) minmax(0,1.6fr) 170px 36px !important}
.pa-set{background:#FBF4EA;margin:0 -24px;padding-left:24px !important;padding-right:24px !important}
.pacc .pa summary{border-left:0 !important;padding-left:24px}
/* programme tabs */
.pt{border:3px solid var(--csmb-ink);box-shadow:6px 6px 0 var(--csmb-ink);background:var(--box);margin-top:22px}
.pt-tabs{display:none}
.pt.js .pt-tabs{display:flex;border-bottom:3px solid var(--csmb-ink);background:#fff}
.pt-tabs button{flex:1 1 0;min-width:0;padding:14px 12px;border:0;border-right:2px solid var(--csmb-ink);background:#fff;color:var(--csmb-ink);font:700 14px/1.25 var(--font-sans);cursor:pointer;text-align:center}
.pt-tabs button:last-child{border-right:0}
.pt-tabs button:hover{background:var(--csmb-indigo-tint-2)}
.pt-tabs button[aria-selected=true]{background:var(--csmb-ink);color:#fff}
.pt-tabs button:focus-visible{outline:3px solid var(--csmb-indigo);outline-offset:-6px}
.pt-p{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.pt-p+.pt-p{border-top:3px solid var(--csmb-ink)}
.pt.js .pt-p{border-top:0}
.pt.js .pt-p:not(.on){display:none}
.pt-g{padding:24px 26px 22px;border-right:3px solid var(--csmb-ink)}
.pt-s{padding:24px 26px 22px;background:#FBF4EA}
.view .v-main .pt h3.pt-n{font:400 1.45rem/1.15 var(--font-display) !important;text-transform:uppercase !important;margin:0 0 12px !important;letter-spacing:0 !important}
.view .v-main.has-bar.has-bar .vm-body .pt p,.view .v-main .pt p{max-width:none !important;margin:0 !important}
.view .v-main .pt p.pt-what{font-family:var(--font-serif,Georgia),serif;font-size:16.5px !important;line-height:1.55 !important}
.view .v-main .pt p.pt-k{font:700 11px var(--font-sans) !important;letter-spacing:.14em;text-transform:uppercase;color:var(--csmb-indigo);padding-bottom:10px !important;border-bottom:2px solid var(--csmb-ink);margin-bottom:14px !important}
.view .v-main .pt p.pt-set{font-family:var(--font-serif,Georgia),serif;font-size:18px !important;line-height:1.5 !important}
.pt-sk{display:block;font:700 10.5px var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--csmb-indigo);margin-bottom:4px}
.pt-dl{margin:16px 0 0}
.pt-dl>div{padding:12px 0 0;margin-top:12px;border-top:1px solid rgba(22,21,27,.15)}
.pt-dl>div:first-child{margin-top:0}
.pt-dl dt{font:700 10.5px var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--csmb-indigo);margin-bottom:4px}
.pt-dl dd{margin:0;font-family:var(--font-serif,Georgia),serif;font-size:15.5px;line-height:1.55;color:var(--csmb-ink)}
@media (max-width:760px){.pt.js .pt-tabs{overflow-x:auto;scrollbar-width:none}.pt-tabs button{flex:0 0 auto;padding:12px 14px}.pt-p{grid-template-columns:1fr}.pt-g{border-right:0;border-bottom:3px solid var(--csmb-ink);padding:18px}.pt-s{padding:18px}}
.view .v-main.has-bar.has-bar .vm-body .pt p.pt-k,.view .v-main .vm-body .pt p.pt-k{font:400 1.45rem/1.15 var(--font-display) !important;text-transform:uppercase;letter-spacing:0;color:var(--csmb-indigo);padding:0 !important;border:0;margin:0 0 14px !important}
.pt-sk{margin-bottom:6px}
.view .v-main .pt h4.pt-k{font:400 1.45rem/1.15 var(--font-display) !important;text-transform:uppercase !important;letter-spacing:0 !important;color:var(--csmb-indigo) !important;margin:0 0 14px !important;padding:0 !important;border:0 !important}
@media (max-width:760px){.pt.js .pt-tabs{flex-wrap:wrap;overflow:visible}.pt-tabs button{flex:1 1 40%;border-bottom:2px solid var(--csmb-ink);margin-bottom:-2px}.view .v-main .pt :is(h3.pt-n,h4.pt-k){font-size:1.2rem !important}}
.pt-kick{display:block;font:700 11px var(--font-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--csmb-indigo);padding-bottom:8px;margin-bottom:14px;border-bottom:2px solid var(--csmb-ink)}
.pt-set{display:flex;flex-direction:column;gap:4px;padding-bottom:4px}
.pt-set .pt-sk{margin:0}
.pt-v{font:400 1.7rem/1.1 var(--font-display);text-transform:uppercase;color:var(--csmb-ink)}
.pt-vd{font-family:var(--font-serif,Georgia),serif;font-size:16.5px;line-height:1.5;margin-top:4px}
.pt-s .pt-dl{margin-top:18px}
@media (max-width:760px){.pt-v{font-size:1.35rem}}
@media (max-width:760px){.pt.js .pt-tabs{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:var(--csmb-ink);border-bottom:3px solid var(--csmb-ink)}.pt-tabs button{border:0 !important;margin:0 !important;padding:12px 10px;font-size:13.5px}.pt-tabs button:last-child:nth-child(odd){grid-column:1 / -1}}
/* the tab already names the programme: keep the heading for screen readers and the no-JS view only */
.view .v-main .pt.js h3.pt-n{position:absolute !important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;margin:0 !important}
/* tabs that read as tabs: inactive ones tinted, the active one joins its panel */
.pt-hint{display:none}
.view .v-main .pt-hint:has(+ .pt.js){display:block;margin:22px 0 -14px !important;font:700 11px var(--font-sans) !important;letter-spacing:.14em;text-transform:uppercase;color:var(--csmb-indigo)}
.pt.js .pt-tabs{background:var(--csmb-indigo-tint-2)}
.pt-tabs button{background:var(--csmb-indigo-tint-2);position:relative;transition:background .15s}
.pt-tabs button:hover{background:#fff}
.pt-tabs button[aria-selected=true]{background:var(--box);color:var(--csmb-ink);margin-bottom:-3px;padding-bottom:17px;box-shadow:inset 0 5px 0 var(--csmb-indigo);z-index:1}
.pt-tabs button:not([aria-selected=true])::after{content:"";position:absolute;left:50%;bottom:7px;width:0;height:2px;background:var(--csmb-ink);transition:width .15s,left .15s}
.pt-tabs button:not([aria-selected=true]):hover::after{width:40%;left:30%}
.pt-next{grid-column:1 / -1;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 26px;border-top:3px solid var(--csmb-ink);background:#fff;font:400 13px var(--font-sans);color:#5A5862}
.pt-next button{border:2px solid var(--csmb-ink);background:var(--csmb-ink);color:#fff;font:700 13.5px var(--font-sans);padding:8px 14px;cursor:pointer;box-shadow:3px 3px 0 var(--csmb-indigo);transition:transform .1s,box-shadow .1s}
.pt-next button:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--csmb-indigo)}
.pt-next button:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--csmb-indigo)}
@media (max-width:760px){.pt-tabs button[aria-selected=true]{margin-bottom:0;padding-bottom:12px}.pt-next{padding:10px 18px}}
.view .v-main.has-bar.has-bar .vm-body p.pt-hint,.view .v-main p.pt-hint{font-family:var(--font-sans) !important;font-size:11px !important;font-weight:700 !important}
@media (max-width:760px){.pt.js .pt-tabs{background:var(--csmb-ink)}}
.view .v-main .pt p.pt-vd{font-family:var(--font-serif,Georgia),serif;font-size:16.5px !important;line-height:1.6 !important;margin-top:10px !important}
/* mobile fixes */
@media (max-width:999px){.nw{white-space:normal}}
@media (max-width:700px){.view[data-view="funding-today"] .route-cards{grid-template-columns:1fr}}
@media (max-width:760px){.par-2col:not(.gov-2col){grid-template-columns:1fr}}
@media (max-width:640px){.view .v-main .vm-body > .nb-cta,.view .v-main .nb-cta{padding:24px 22px 84px}}
@media (max-width:600px){.feed-list a{grid-template-columns:minmax(0,1fr) !important}.feed-list .f-pic{display:none}}
/* home cards on phones: smaller icon, arrow tucked into the corner so the text gets the width */
@media (max-width:600px){.qa a{gap:14px;min-height:0 !important;padding:18px 18px 18px 16px !important}.qa-ic{width:56px !important;height:56px !important;flex:0 0 56px}.qa-go{width:30px;height:30px;right:10px;bottom:10px;font-size:14px}.qa-tx{padding-right:22px}}
@media (max-width:600px){.qa .qa-go{display:none !important}.qa-tx{padding-right:0}}
/* tab change: the panel slides in, then the verdict lands like a stamp */
@keyframes ptIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes ptStamp{from{opacity:0;transform:scale(1.4)}to{opacity:1;transform:scale(1)}}
.pt.js .pt-p.on :is(.pt-g,.pt-s){animation:ptIn .22s ease-out both}
.pt.js .pt-p.on .pt-s{animation-delay:.05s}
.pt-v{align-self:flex-start;transform-origin:left center}
.pt.js .pt-p.on .pt-v{animation:ptStamp .3s cubic-bezier(.2,.9,.3,1.15) .18s both}
@media (prefers-reduced-motion:reduce){.pt.js .pt-p.on :is(.pt-g,.pt-s,.pt-v){animation:none}}
/* header: the CSM credit links to sustainablemedia.eu */
a.endorse{text-decoration:none}
a.endorse b{text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px;transition:text-decoration-color .15s}
.top a.endorse:hover,.top a.endorse:focus-visible{background:none;color:var(--csmb-stone)}
a.endorse:hover b,a.endorse:focus-visible b{text-decoration-color:currentColor}
@media (min-width:901px){.endorse{display:flex !important}}
/* home cards: two columns, today and the next budget, with rows lined up across them */
.view[data-view="home"] .qa-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto repeat(6,auto);gap:16px}
.qa-col{display:grid;grid-row:span 7;grid-template-rows:subgrid;min-width:0}
.view[data-view="home"] .qa-col .qa-grid{display:grid;grid-row:span 6;grid-template-rows:subgrid;grid-template-columns:minmax(0,1fr) !important}
.view .qa-col-h{margin:0 0 -4px !important;padding:0 0 10px;border-bottom:3px solid var(--csmb-ink);font-family:var(--font-display) !important;font-weight:400 !important;text-transform:uppercase;font-size:clamp(1rem,1.3vw,1.15rem) !important;line-height:1.1;letter-spacing:.01em;color:var(--csmb-ink);display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.qa-col-h span{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;color:var(--csmb-stone)}
@media (max-width:760px){
.view[data-view="home"] .qa-cols{display:block}
.qa-col{display:block}
.view[data-view="home"] .qa-col .qa-grid{grid-template-rows:none}
.qa-col + .qa-col{margin-top:36px}
.view .qa-col-h{margin:0 0 14px !important}
}
.qa-col .qa-tx{flex:1 1 auto}
.view .qa-col-h{text-transform:uppercase !important}
/* proposals: the two source documents, the Policy Lab recommendations and our platform */
.pf-docs{list-style:none;margin:28px 0 8px;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:none !important}
.pf-docs a{position:relative;display:flex;flex-direction:column;gap:8px;height:100%;padding:22px 24px 24px;border:3px solid var(--csmb-ink);background:var(--box);box-shadow:6px 6px 0 var(--csmb-ink);color:var(--csmb-ink);text-decoration:none;transition:transform .12s,box-shadow .12s}
.pf-docs a:hover,.pf-docs a:focus-visible{background:var(--box);color:var(--csmb-ink);transform:translate(-3px,-3px);box-shadow:9px 9px 0 var(--csmb-indigo)}
.pfd-k{font-family:var(--font-mono);font-size:11.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--csmb-indigo)}
.pfd-t{font-family:var(--font-display);text-transform:uppercase;font-size:clamp(1.15rem,1.6vw,1.35rem);line-height:1.1}
.pfd-d{font:400 15px/1.5 var(--font-sans);flex:1}
.pfd-go{align-self:flex-start;margin-top:10px;padding:9px 14px;background:var(--csmb-ink);color:var(--csmb-paper);font:700 12.5px var(--font-sans);letter-spacing:.06em;text-transform:uppercase}
.pfd-main a,.pfd-main a:hover,.pfd-main a:focus-visible{background:var(--csmb-indigo);color:#fff}
.pfd-main a:hover,.pfd-main a:focus-visible{box-shadow:9px 9px 0 var(--csmb-ink)}
.pfd-main .pfd-k{color:var(--csmb-indigo-tint)}
.pfd-main .pfd-go{background:var(--csmb-paper);color:var(--csmb-ink)}
@media (max-width:700px){.pf-docs{grid-template-columns:1fr}}
/* section bar: quiet, with a progress line under it. The current section is dark and bold, the rest fade back */
.top .page-bar{background:var(--csmb-paper);border-bottom:1px solid rgba(22,21,27,.14)}
.pb-prog{position:absolute;left:0;bottom:-1px;height:3px;width:0;background:var(--csmb-indigo);transition:width .15s linear;pointer-events:none}
@media (prefers-reduced-motion:reduce){.pb-prog{transition:none}}
.pb-cur{padding:9px clamp(16px,4vw,24px);font-size:13.5px}
.pb-cur::before{content:none}
@media (min-width:1000px){
.pb-in li{border-right:0}
.top .page-bar a,.top .page-bar a:visited{padding:9px 20px;font-size:13px;font-weight:500;letter-spacing:.01em;color:rgba(22,21,27,.4) !important;transition:color .2s}
.top .page-bar a::before{content:none}
.top .page-bar a.past{color:rgba(22,21,27,.55) !important}
.top .page-bar a:hover,.top .page-bar a:focus-visible{background:none;color:var(--csmb-ink) !important}
.top .page-bar a.on{box-shadow:none;background:none;color:var(--csmb-ink) !important;font-weight:700}
}
