.hero::before,.hero::after{display:none!important}
.hero{color:#F2F6F3;background:linear-gradient(0deg,rgba(9,22,19,.6) 0%,rgba(9,22,19,0) 26%),linear-gradient(90deg,rgba(9,22,19,.66) 0%,rgba(9,22,19,.44) 38%,rgba(9,22,19,.12) 66%,rgba(9,22,19,.04) 100%),url("/img/hero.jpg") center/cover no-repeat #0B1916}
.hero .report{color:var(--ink)}
.hero .eyebrow{color:var(--band-accent)}
.hero h1{color:#F2F6F3}
.hero .lede{color:#C9D7D0}
.hero .facts{border-top-color:rgba(255,255,255,.18)}
.hero .fact b{color:#F2F6F3}
.hero .fact span{color:#B5C7BE}
.hero .btn-primary{background:var(--band-accent);color:#13211D}
.hero .btn-primary:hover{background:#F2F6F3}
.hero .btn-ghost{border-color:rgba(255,255,255,.35);color:#F2F6F3}
.hero .btn-ghost:hover{border-color:#F2F6F3}
.hero .report{box-shadow:0 30px 60px -30px rgba(0,0,0,.6)}
@media (max-width:920px){.hero{background:linear-gradient(rgba(9,22,19,.5),rgba(9,22,19,.72)),url("/img/hero-m.jpg") center/cover no-repeat #0B1916}}
:root{--c-rev:#16805C;--c-cost:#B07A1E}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--c-rev:#3A9E7A;--c-cost:#BF8526}}
:root[data-theme="dark"]{--c-rev:#3A9E7A;--c-cost:#BF8526}
.dash-head{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,4vw,56px);align-items:end;margin-bottom:clamp(24px,3vw,36px)}
@media (max-width:860px){.dash-head{grid-template-columns:minmax(0,1fr)}}
.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin-bottom:24px}
.kpi{display:grid;gap:4px;padding:20px 20px 20px 0;min-width:0}
.kpi+.kpi{padding-left:20px;border-left:1px solid var(--rule)}
.kpi-l{font-family:var(--f-num);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}
.kpi b{font-family:var(--f-display);font-weight:750;font-size:clamp(1.6rem,2.6vw,2.1rem);letter-spacing:-0.02em;line-height:1.1}
.kpi-u{font-size:.85rem;color:var(--ink-2)}
@media (max-width:760px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi:nth-child(3){padding-left:0;border-left:0}.kpi:nth-child(n+3){border-top:1px solid var(--rule)}}
.charts{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(0,1fr);gap:20px}
@media (max-width:900px){.charts{grid-template-columns:minmax(0,1fr)}}
.panel{margin:0;background:var(--card);border:1px solid var(--rule);border-radius:6px;padding:18px 18px 8px;min-width:0}
.panel-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;margin-bottom:6px}
.panel-t{font-weight:600}
.panel-u{font-family:var(--f-num);font-size:.75rem;color:var(--ink-2)}
.legend{display:flex;gap:16px;font-size:.85rem;color:var(--ink-2)}
.legend span{display:inline-flex;align-items:center;gap:6px}
.sw{display:inline-block;width:10px;height:10px;border-radius:2px}
.sw-rev{background:var(--c-rev)}.sw-cost{background:var(--c-cost)}
.plot-scroll{overflow-x:auto}
.plot{position:relative;min-width:300px}
#bars{min-width:520px}
.plot svg{display:block;width:100%;height:auto}
.plot .grid{stroke:var(--rule);stroke-width:1;stroke-dasharray:2 4}
.plot .base{stroke:var(--ink-2);stroke-width:1;opacity:.5}
.plot .tk{fill:var(--ink-2);font-family:var(--f-num);font-size:11px}
.plot .dl{fill:var(--ink);font-family:var(--f-num);font-size:11px;font-weight:500}
.plot .m-rev{fill:var(--c-rev)}.plot .m-cost{fill:var(--c-cost)}
.plot .hl{fill:var(--ink);opacity:0;fill-opacity:.05;transition:opacity .15s}
.plot .m-line{fill:none;stroke:var(--c-rev);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.plot .area{fill:var(--c-rev);opacity:.1}
.plot .m-dot{fill:var(--c-rev);stroke:var(--card);stroke-width:2}
.plot .cross{stroke:var(--ink-2);stroke-width:1;stroke-dasharray:3 3}
.tip{position:absolute;z-index:2;pointer-events:none;background:var(--ink);color:var(--paper);border-radius:4px;padding:8px 10px;font-size:.8rem;line-height:1.45;display:grid;gap:2px;min-width:150px;box-shadow:0 8px 20px -8px rgba(0,0,0,.4)}
.tip span{display:flex;align-items:center;gap:6px}
.tip em{font-style:normal;font-family:var(--f-num);margin-left:auto;padding-left:12px}
.dash-table{margin-top:16px}
.dash-table summary{padding:10px 0;font-size:.92rem;color:var(--ink-2);font-weight:500}
.dash-table summary::after{top:6px}
.dash-table .ledger{min-width:520px}
.dash-table .ledger td,.dash-table .ledger th{padding:10px 16px}
.dash-table .ledger td:last-child{color:inherit;font-weight:400}
.dash-table .ledger td:first-child{width:auto}
.work-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:center;margin-bottom:clamp(32px,4vw,48px)}
.work-photo{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:6px;background:var(--rule);display:block}
@media (max-width:860px){.work-head{grid-template-columns:minmax(0,1fr)}}
.brand{line-height:1}.brand span{line-height:1}.brand .flex{position:static;font-style:normal;font-weight:650}
.hero .facts{border-top:0;padding-top:0;margin-top:10px;gap:12px}
.hero .fact{display:grid;gap:6px;align-content:start;text-align:center;padding:16px 12px;border:1px solid #2B4B42;border-radius:6px;background:rgba(19,48,42,.94)}
.hero .fact b{min-width:0}
.hero .fact span{text-wrap:balance}
@media (max-width:480px){.hero .facts{grid-template-columns:minmax(0,1fr)}.hero .fact{display:grid}}
.comment{text-align:justify;-webkit-hyphens:auto;hyphens:auto}
.hero h1,.hero .lede,.hero .eyebrow{text-shadow:0 2px 14px rgba(4,12,10,.55),0 1px 3px rgba(4,12,10,.4)}
.hero .btn-ghost{background:rgba(9,22,19,.35)}
.team .bio p,.team .bio p:first-child{font-size:1.08rem;line-height:1.65;text-align:justify;-webkit-hyphens:auto;hyphens:auto;max-width:none}
html{font-variant-ligatures:no-common-ligatures;font-feature-settings:"liga" 0,"clig" 0}
.team .bio p,.team .bio p:first-child{word-spacing:-0.02em}
.foot-legal{display:grid;gap:4px;font-size:.84rem;line-height:1.5}
.foot-legal a{text-decoration:underline;text-underline-offset:2px}
.contact-box .gdpr{font-size:.82rem;line-height:1.55}
.contact-box .gdpr a{color:var(--band-ink);text-decoration:underline;text-underline-offset:2px}
.legal-body{max-width:72ch;display:grid;gap:14px}
.legal-body h1{font-size:clamp(2rem,4.4vw,3rem);margin-top:4px}
.legal-body h2{font-size:1.3rem;margin-top:22px}
.legal-body p,.legal-body li{line-height:1.7}
.legal-body ul{margin:0;padding-left:1.2em;display:grid;gap:6px}
.legal-body a{color:var(--brass);text-decoration:underline;text-underline-offset:2px}
.legal-body .btn{text-decoration:none;color:inherit}
.legal-date{color:var(--ink-2);font-size:.92rem}
.legal-back{margin-top:24px}
.plot-scroll{overflow-y:hidden}
@media (min-width:901px){.plot-scroll{overflow:visible}}
.extras{row-gap:4px}
@media (min-width:1101px){.extras{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:32px}}
