/* ConsultiQ editorial design refresh — October 2026.
   Presentation-only layer. Does not replace source data, financial formulas or fund restrictions. */
:root{--ink:#102f40;--navy:#0b2c3e;--navy2:#071f2d;--teal:#007f85;--blue:#317bb1;--coral:#bb5d49;--soft:#f3f7f7;--muted:#536a76;--rule:#dbe6e9;--max:1240px;--sans:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}
body{font-family:var(--sans);font-size:16px;line-height:1.55;color:#153648;background:#fff}
p{line-height:1.58}a{text-underline-offset:3px}
strong,b{font-variant-numeric:tabular-nums}
::selection{background:#bce9e7;color:#092e42}
/* Consistent header and wordmark */
.site-header{height:72px;background:#08293b;box-shadow:none;border-bottom:1px solid #ffffff14}
.site-header .brand{gap:13px}
.brand-mark{display:grid!important;place-items:center!important;background:#087e98!important;width:40px!important;height:40px!important;min-width:40px!important;border-radius:12px!important;font-size:25px!important;font-weight:850!important;letter-spacing:0!important;padding:0!important;line-height:1!important;overflow:hidden}
.brand-text{font-size:19px;letter-spacing:-.6px}
.brand-text small{font-size:8px;letter-spacing:1.25px;line-height:1.3;margin-top:5px}
.site-header .mini-link{font-size:12px;padding:9px 13px;color:#e4f5f8}
.menu-toggle{border:1px solid #ffffff2d!important;border-radius:6px}
/* Hero: more photography, fewer words, visible data sooner */
.hero{min-height:0;height:535px}
.hero-media{background-position:center 47%;filter:saturate(.85)}
.hero-overlay{background:linear-gradient(90deg,rgba(5,26,39,.97) 0%,rgba(5,26,39,.86) 38%,rgba(6,29,45,.35) 78%,rgba(5,26,39,.16) 100%),linear-gradient(0deg,rgba(6,25,39,.77),transparent 34%)}
.hero-body{padding-top:77px;padding-bottom:54px}
.hero-kicker{font-size:11px;letter-spacing:1.9px;line-height:1.4}
.hero h1{font-size:clamp(68px,7.7vw,108px);letter-spacing:-.06em;line-height:.98;max-width:980px;margin:25px 0 18px;font-weight:820}
.hero h1 em{color:#82e6e2}
.hero-sub{font-size:clamp(18px,2vw,24px);line-height:1.37;max-width:560px;color:#f0f8fa}
.hero-buttons{margin-top:26px}
.button{font-size:14px;border-radius:7px;min-width:190px;padding:14px 17px}
.hero-disclosure{margin:23px 0 0;color:#d0e4e9;font-size:12px;max-width:750px;line-height:1.45}
.hero-disclosure a{color:#e4ffff;font-weight:700}
.hero-corner{bottom:20px;font-size:9px}
/* The important numbers lead the article */
.section{padding-block:72px}
.intro{padding-top:43px;padding-bottom:70px}
.intro>.eyebrow{font-size:11px;letter-spacing:1.65px;margin-bottom:15px}
.intro .stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));border-top:0;border-bottom:0;gap:12px}
.stat-tile,.stat-tile+.stat-tile{background:#f1f6f6;border:1px solid #dbe6e8;padding:23px 20px;min-height:215px;border-radius:8px}
.stat-tile:nth-child(1){background:#102f40;border-color:#102f40;color:#fff}
.stat-tile .stat-index{color:#4b6a76;font-weight:850;font-size:10px;letter-spacing:1.1px}
.stat-tile:nth-child(1) .stat-index{color:#afd8e0}
.stat-tile strong{font-size:clamp(34px,3.85vw,56px);font-weight:860;line-height:1.02;letter-spacing:-.05em;margin:17px 0 12px;color:#10374c}
.stat-tile:nth-child(1) strong{color:#fff}
.stat-tile>span:nth-of-type(2){font-size:14px;line-height:1.43;color:#32515f;font-weight:690}
.stat-tile:nth-child(1)>span:nth-of-type(2){color:#e2f1f4}
.stat-tile a{font-size:11px;color:#006d7b;font-weight:770}
.stat-tile:nth-child(1) a{color:#adede9}
.intro-head{margin:42px 0 16px;grid-template-columns:1fr 1fr;gap:38px}
.intro-head h2{font-size:clamp(38px,4.4vw,60px);letter-spacing:-.055em;line-height:1.07;max-width:690px}
.intro-head>p{font-size:18px;color:#405b67;max-width:490px;line-height:1.55}
/* Restricted fund cash: each balance as a large editorial number */
.fund-snapshot{margin:38px 0 22px;padding-top:25px;border-top:2px solid #193f52}
.fund-snapshot-heading h3{font-size:clamp(30px,3.35vw,44px);margin:6px 0 5px}
.fund-snapshot-heading p{font-size:15px;color:#526975}
.fund-snapshot-cards{gap:14px}
.snapshot-card{background:#f6f9f9;border:1px solid #dce7e9;border-top:4px solid #0c8191;border-radius:8px;padding:23px 22px 20px;gap:7px}
.snapshot-card.general{border-top-color:#d77963}
.snapshot-card.sewer{border-top-color:#397aae}
.snapshot-caption{font-size:11px;letter-spacing:1.1px;color:#526d7a}
.snapshot-card>strong{font-size:clamp(39px,4.1vw,61px);letter-spacing:-.06em;margin:8px 0 3px;color:#12384d}
.snapshot-card>span{font-size:14px;color:#375762}
.snapshot-secondary{min-height:40px;margin-top:11px;font-size:13px}
.snapshot-card small{font-size:12px;line-height:1.5}
.snapshot-disclosure{font-size:12px;line-height:1.6}
.note-ribbon{border-left:3px solid #008790;background:#f1f7f7;border-radius:0 7px 7px 0;margin-top:11px;padding:16px 19px}
.note-ribbon p{font-size:14px;color:#264958}
.note-icon{background:#0f7887}
/* Universal section title language and chart surfaces */
.section-topline{font-size:11px;letter-spacing:1.4px;border-top:2px solid #173b4d;padding-top:13px;color:#087781}
.section-heading{margin:24px 0 29px;align-items:end;grid-template-columns:minmax(0,1.15fr) minmax(290px,.85fr);gap:28px}
.section-heading h2{font-size:clamp(37px,4.35vw,59px);line-height:1.08;letter-spacing:-.055em;max-width:790px}
.section-heading>p{font-size:16px;line-height:1.55;color:#45616c;max-width:465px;margin-bottom:3px}
.section-mist{background:#f2f6f7}
.panel{border-radius:9px;border-color:#dbe5e8}
.panel-chart{padding:28px}
.panel-top h3{font-size:21px;color:#153e51}
.panel-top p{font-size:14px;color:#506b75}
.svg-chart .axis-label{font-size:13px;fill:#496570}
.analysis-aside,.debt-detail{background:#0e3245;border-radius:9px}
.detail-number{font-size:clamp(45px,4vw,65px);letter-spacing:-.055em}
.aside-explain{font-size:15px;line-height:1.55}
.legend{font-size:12px;line-height:1.4}
.fund-card{border-radius:8px}
.fund-operating{border-radius:7px;padding:17px;background:#edf5f5}
.fund-operating strong{font-size:26px}
.source-short,.source-inline{font-weight:700}
/* Income: primary figure should dominate, detailed breakdown beneath */
.community-revenue{padding-top:75px}
.revenue-chart,.revenue-aside{border-radius:10px}
.revenue-label strong{font-variant-numeric:tabular-nums;font-weight:870}
.revenue-foot{font-size:13px;line-height:1.55}
.fag-note{border-radius:8px}
.neutral-srv-reference,.neutral-srv-calc{border-radius:0 8px 8px 0}
/* Service directory / criticality explorer */
.cluster-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.cluster-card{border-radius:9px;min-height:155px;padding:18px 17px;border:1px solid #d9e5e8}
.cluster-card .ck{font-size:10px;color:#647980}
.cluster-card .ct{font-size:14px;line-height:1.35;color:#173c4a}
.cluster-card .cv{font-size:clamp(25px,2.4vw,32px);font-weight:880;margin-top:auto;color:#095b68}
.cluster-card .cf{font-size:12px;line-height:1.4}
.cluster-card .cc{font-size:11px}
.service-side{border-radius:9px}
.service-side .service-description{background:#e8f5f4!important;color:#123c49!important;border-left:4px solid #0e8991!important;font-size:15px!important;line-height:1.57!important;padding:15px 16px!important}
.service-side .service-description strong{font-size:15px!important;color:#103a49!important}
.service-side .detail-stats{gap:9px}
.service-side .detail-stat{border-radius:7px;padding:14px 11px}
.service-side .detail-stat strong{font-size:19px}
.service-item{border-radius:8px}
/* Assets: treat physical units as primary information */
.asset-inventory-head h3{font-size:clamp(30px,3.4vw,44px)}
.asset-inventory-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.asset-quantity{background:#f1f7f7;border:1px solid #dce8e9;border-radius:9px;min-height:169px;padding:18px;gap:8px}
.asset-quantity:nth-child(-n+4){background:#e8f1f3}
.asset-quantity strong{font-size:clamp(33px,3.2vw,46px);font-variant-numeric:tabular-nums}
.asset-quantity>span:not(.asset-symbol){font-size:14px}
.asset-quantity small{font-size:11px}
.council-image-context{border-radius:8px}
/* Sources / legal evidence: legible and lower visual weight */
.source-method p,.sources-section p,.sources-section .method-update{line-height:1.6}
.recommendations{padding:76px 0}
.recommendations h2{font-size:clamp(37px,4.3vw,58px);letter-spacing:-.05em}
.site-footer{background:#092839}
/* Calculator: critical financial numbers and choices visible sooner */
body:has(.calc-layout){background:#f4f7f7;color:#17384a}
.sitebar{background:#092b3c}
.navflex{max-width:1280px;min-height:72px}
.sitebar nav a{font-size:13px;letter-spacing:0}
body:has(.calc-layout) .hero{height:310px;min-height:0}
body:has(.calc-layout) .hero-shade{background:linear-gradient(90deg,rgba(6,28,42,.95) 0%,rgba(6,28,42,.78) 52%,rgba(6,28,42,.24) 100%)}
body:has(.calc-layout) .hero-inner{padding-top:33px}
body:has(.calc-layout) .hero h1{font-size:clamp(45px,5.2vw,68px);line-height:1.02;max-width:1120px;margin:14px 0 12px;letter-spacing:-.05em}
body:has(.calc-layout) .hero-sub{max-width:750px;font-size:18px;line-height:1.48}
body:has(.calc-layout) .hero-note{font-size:12px;margin-top:17px;color:#def0f1}
body:has(.calc-layout) .hero-note a{color:#b9f0ef}
.explainer{padding:31px 0 18px}
.explainer h2{font-size:clamp(31px,3.5vw,45px);letter-spacing:-.048em;margin:6px 0 9px}
.explainer>p{font-size:16px;max-width:900px;margin:9px 0 13px;color:#3f5c69}
.warningline{padding:11px 15px;max-width:none;background:#fff7e8;border-left:4px solid #d19e37}
.warningline>span{font-size:19px}
.warningline p{font-size:13px;color:#665037}
.transparency-banner{border-radius:8px;margin:12px 0}
.finance-primer{margin:12px 0 22px;gap:12px}
.finance-primer>div{border-radius:9px;padding:16px 18px}
.finance-primer h3{font-size:19px;margin:9px 0 4px}
.finance-primer p{font-size:13px;color:#4f6a77}
.calc-layout{gap:21px}
.sheet{border-radius:11px;padding:25px;border-color:#d9e5e8;box-shadow:0 3px 16px rgba(10,48,63,.035);margin-bottom:15px}
.number{border-radius:11px;width:40px;height:40px;flex-basis:40px;background:#dff1f1;color:#036b78}
.step-title h2{font-size:clamp(22px,2.3vw,28px);letter-spacing:-.04em;line-height:1.16}
.step-title p{font-size:14px;line-height:1.48;color:#526f7a}
.two-fields>label,.item-toolbar>label{font-size:13px;color:#325363}
.two-fields select,.two-fields input,.item-toolbar input,.item-toolbar select{border-radius:7px;min-height:44px}
.sheet .help{font-size:12.5px;color:#58727d;line-height:1.55}
.mini-heading{font-size:18px;color:#133c4c}
.item{padding:16px 14px;border-bottom-color:#e3eced}
.item .service-title,.item label{font-size:15px}
.item .item-cost{font-size:14px}
.item-budget-grid{font-size:12px;gap:8px 15px}
.item-budget-grid b{color:#0a3c52}
.item .meta,.item .detail{font-size:12px;line-height:1.5}
.reduction-control{background:#f0f8f8;border-radius:8px}
.reduction-top label{font-size:13px!important}
.reduction-hint{font-size:11px}
.catalogue-summary{border-radius:10px}
.catalogue-kpis>div{padding:13px;border-radius:7px}
.catalogue-kpis small{font-size:11px}
.catalogue-kpis strong{font-size:clamp(18px,2.4vw,25px)}
.grant-summary{border-radius:10px}
.income-forecast-grid{gap:10px}
.income-stat{border-radius:8px}
.income-stat strong{font-size:clamp(22px,2.6vw,32px);font-weight:850;letter-spacing:-.04em}
.fag-big{letter-spacing:-.05em}
.result-panel{background:#0b3145;border-radius:11px 11px 0 0;padding:27px}
.balance-figure{font-size:clamp(48px,4.6vw,73px);letter-spacing:-.06em}
.balance-caption{font-size:14px}
.balance-line{font-size:13px}
.balance-line strong{font-size:17px}
.separation,.sharing{border-color:#d8e5e6}
.sharing{background:#ebf4f5}
/* Ten-year forward view */
.forward-hero{padding:59px 0 37px!important;background:linear-gradient(106deg,rgba(5,31,46,.94),rgba(6,30,45,.74)),url('assets/hero.webp') center 49%/cover!important}
.forward-hero h1{font-size:clamp(56px,5.9vw,88px);line-height:1.02;max-width:1100px;margin:15px 0}
.forward-hero .intro-copy{font-size:clamp(17px,2vw,24px);max-width:780px;line-height:1.42}
.hero-facts{gap:12px;margin:26px 0 16px}
.hero-facts div{padding:18px 20px;border-radius:9px;background:#ffffff13}
.hero-facts strong{font-size:clamp(33px,3.7vw,56px);line-height:1.05;letter-spacing:-.045em}
.hero-facts span{font-size:14px;line-height:1.4}
.forward-hero .disclosure{font-size:12px;max-width:1000px;line-height:1.5}
.metric{border-radius:9px;padding:19px;background:#f0f6f6}
.metric .met-number{font-size:clamp(31px,3.4vw,52px);letter-spacing:-.05em}
.metric .met-label{font-size:13px;color:#365763}
.metric .met-note{font-size:12px;color:#58707b}
.chart-panel{border-radius:9px;padding:25px}
.chart-panel h3{font-size:24px}
.project-card{border-radius:9px;gap:9px}
.project-card .amount{font-size:30px;font-weight:850;color:#123e51}
.project-card h3{font-size:17px}
/* About and independent-interest disclosure */
.community-page{color:#12394a;background:#f5f8f8}
.community-header{background:#09293a}
.community-hero{padding-top:68px;padding-bottom:62px}
.community-hero h1{font-size:clamp(37px,5vw,70px);letter-spacing:-.055em;line-height:1.07}
.community-hero p{font-size:18px;line-height:1.55}
.community-callout{background:#fffaec;border-left:4px solid #d5a54b;border-radius:0 8px 8px 0}
.community-card{border-radius:9px}
/* RESPONSIVE */
@media(max-width:1150px){
 .section-heading{grid-template-columns:1fr;gap:14px}
 .section-heading>p{max-width:690px}
 .intro-head{grid-template-columns:1fr;gap:14px}
 .intro-head>p{max-width:650px}
 .cluster-summary{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){
 .intro .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .fund-snapshot-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
 .asset-inventory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .hero{height:490px}
 .hero-body{padding-top:66px}
 .forward-hero{padding-top:65px!important}
 .hero-facts{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:650px){
 .container{width:calc(100% - 34px)}
 .site-header{height:65px;padding:0 16px;gap:12px}
 .brand-mark{width:35px!important;min-width:35px!important;height:35px!important;font-size:21px!important}
 .brand-text{font-size:15px}
 .brand-text small{font-size:6.5px;letter-spacing:.9px}
 .site-header .mini-link{display:none}
 .top-nav{top:65px;max-height:calc(100vh - 65px)}
 .hero{height:450px}
 .hero-media{background-position:60% 47%}
 .hero-body{padding:55px 0 39px}
 .hero h1{font-size:clamp(51px,13.8vw,73px);line-height:.97;margin:21px 0 15px;max-width:100%}
 .hero-sub{font-size:17px;line-height:1.45}
 .hero-buttons{gap:9px;margin-top:20px}
 .button{font-size:12px;min-width:0;flex:1;padding:13px 12px;gap:8px}
 .hero-kicker{font-size:9px;letter-spacing:1.1px;line-height:1.4}
 .hero-disclosure{font-size:10px;line-height:1.4;margin-top:19px}
 .hero-corner{display:none}
 .section{padding-block:54px}
 .intro{padding-top:30px}
 .intro .stat-grid{gap:8px}
 .stat-tile,.stat-tile+.stat-tile{min-height:178px;padding:15px 12px;border-radius:7px}
 .stat-tile .stat-index{font-size:9px;letter-spacing:.5px}
 .stat-tile strong{font-size:clamp(29px,9.5vw,42px);margin:15px 0 9px}
 .stat-tile>span:nth-of-type(2){font-size:11.5px;line-height:1.35}
 .stat-tile a{font-size:10px;padding-top:11px}
 .intro-head{margin:29px 0 13px}
 .intro-head h2{font-size:clamp(35px,9.4vw,47px)}
 .intro-head>p{font-size:15px;line-height:1.53}
 .fund-snapshot{margin-top:23px;padding-top:20px}
 .fund-snapshot-heading h3{font-size:30px}
 .fund-snapshot-heading p{font-size:14px}
 .fund-snapshot-cards{grid-template-columns:1fr;gap:9px}
 .snapshot-card{padding:19px 18px}
 .snapshot-card>strong{font-size:48px}
 .snapshot-secondary{min-height:0}
 .section-heading{margin:21px 0 24px}
 .section-heading h2{font-size:clamp(37px,9.8vw,48px)}
 .section-heading>p{font-size:15px}
 .panel-chart{padding:17px}
 .panel-top h3{font-size:19px}
 .cluster-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .cluster-card{padding:13px;min-height:147px}
 .cluster-card .cv{font-size:25px}
 .asset-inventory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .asset-quantity{min-height:150px;padding:13px}
 .asset-quantity strong{font-size:31px}
 .hero-facts{grid-template-columns:1fr;gap:7px}
 .forward-hero{padding:46px 0 29px!important}
 .forward-hero h1{font-size:clamp(40px,11.6vw,55px)}
 .forward-hero .intro-copy{font-size:16px}
 .hero-facts div{padding:13px 16px;display:grid;grid-template-columns:120px 1fr;align-items:center;gap:12px}
 .hero-facts strong{font-size:32px}
 .hero-facts span{font-size:13px}
 body:has(.calc-layout) .hero{height:auto;min-height:0;padding-bottom:17px}
 body:has(.calc-layout) .hero-inner{padding-top:39px}
 body:has(.calc-layout) .hero h1{font-size:clamp(43px,10.7vw,58px);line-height:1.06}
 body:has(.calc-layout) .hero-sub{font-size:15px;line-height:1.48}
 body:has(.calc-layout) .hero-note{font-size:11px}
 .explainer{padding-top:24px}
 .explainer h2{font-size:30px}
 .explainer>p{font-size:14px}
 .warningline p{font-size:12px}
 .sheet{padding:17px;margin-bottom:13px}
 .step-title h2{font-size:21px}
 .result-panel{padding:19px}
 .balance-figure{font-size:56px}
 .catalogue-kpis strong{font-size:20px}
 .metric-row{grid-template-columns:repeat(2,minmax(0,1fr))}
 .metric{padding:13px}
 .metric .met-number{font-size:30px}
 .community-hero{padding:42px 0 37px}
 .community-hero h1{font-size:37px}
 .community-hero p{font-size:15px}
}
/* Final detail pass: preserve inset margins even against earlier handset overrides. */
.intro .stat-grid .stat-tile{padding:23px 20px}
.hero-sub{max-width:690px}
@media(min-width:901px){.hero h1{font-size:clamp(70px,7.1vw,100px)}.hero-body{padding-top:65px}.hero-sub{font-size:23px}.hero-disclosure{margin-top:16px}}
@media(max-width:650px){
 .intro .stat-grid .stat-tile{padding:15px 12px!important}
 .intro .stat-grid .stat-tile strong{font-size:clamp(26px,7.3vw,31px)!important;letter-spacing:-.055em;white-space:nowrap}
 .intro .stat-grid .stat-tile .stat-index{font-size:9px}
 .intro .stat-grid .stat-tile a{font-size:10px}
 .intro .stat-grid .stat-tile>span:nth-of-type(2){font-size:11px}
}
