body[data-publication="it-budget"]{--m2-ink:#18191b;--m2-paper:#eff0f1;--m2-surface:#e1e3e5;--m2-orange:#ff4a1f}
body[data-publication="it-budget"] .section-copy{min-width:0}
.editorial-site[data-publication="it-budget"] .editorial-compact-meta{width:fit-content;max-width:100%;margin-inline:auto}
.editorial-site[data-publication="it-budget"] .welcome-sub-intro h1{font-size:clamp(2rem,4.6vw,4.7rem);max-width:20ch}
body[data-publication="it-budget"] .hero-actions{display:flex;flex-direction:column;align-items:center;gap:.8rem;margin-top:1.6rem}
.m2-primary{display:inline-flex;align-items:center;justify-content:space-between;gap:1.5rem;background:var(--m2-orange);color:var(--m2-ink)!important;font:inherit;font-weight:600;text-decoration:none!important;padding:1rem 1.3rem;min-height:52px;max-width:100%;transition:transform .18s ease,background-color .18s ease}
.m2-primary:hover{background:#f26342;transform:translateY(-2px)}.m2-primary:active{transform:translateY(0)}.m2-primary:focus-visible,.m2-file-links a:focus-visible,.m2-case-label select:focus-visible,.m2-preview summary:focus-visible{outline:3px solid var(--m2-orange);outline-offset:5px}
body[data-publication="it-budget"] .m2-free{font-size:.95rem;margin:0}
.m2-cover{margin:0 0 2.5rem}.m2-cover img{display:block;width:100%;height:auto;max-height:350px;object-fit:contain}.m2-cover figcaption,.m2-preview figcaption{font-size:.85rem;line-height:1.5;margin-top:.8rem;color:#50565b}
.m2-downloads{background:var(--m2-ink);color:var(--m2-paper);padding:clamp(1.25rem,3vw,2.5rem);margin:2rem 0}.m2-downloads p{color:inherit}.m2-downloads .m2-version{margin-top:0;font-size:.95rem}.m2-file-links{display:flex;flex-direction:column;align-items:flex-start;gap:.65rem;margin-top:1.5rem}.m2-file-links a{color:var(--m2-paper);font-weight:500;line-height:1.5;padding:.3rem 0;min-height:44px}.m2-other-language{margin-top:1rem}.m2-other-language summary{cursor:pointer;min-height:44px;padding:.5rem 0}.m2-version{font-size:.9rem;line-height:1.5}
.m2-forecast{background:var(--m2-surface);color:var(--m2-ink);padding:clamp(1.25rem,3vw,2.5rem);margin:2.5rem 0}.m2-forecast>p:first-child{font-size:1rem;margin-top:0}.m2-case-label{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem;font-weight:500}.m2-case-label select{font:inherit;max-width:100%;min-height:48px;padding:.65rem 2.5rem .65rem .75rem;background:var(--m2-paper);color:var(--m2-ink);border:0}.m2-case-label select[hidden]{display:none}
.m2-equation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin:2rem 0}.m2-equation>div{min-width:0}.m2-equation dt{font-size:.95rem;line-height:1.4;min-height:2.8em}.m2-equation dd{font-size:clamp(1.3rem,2.3vw,1.8rem);font-variant-numeric:tabular-nums;font-weight:600;letter-spacing:-.035em;margin:.6rem 0 0;white-space:nowrap}.m2-outturn{padding:1.3rem 0 0}.m2-outturn>span{display:block;font-size:1rem}.m2-outturn strong{display:block;font-size:clamp(1.8rem,3.8vw,3rem);letter-spacing:-.04em;line-height:1.2;font-variant-numeric:tabular-nums;margin-top:.4rem}.m2-outturn p{font-size:1rem}.m2-forecast #m2-case-note{font-size:1rem;min-height:3.2em}.m2-forecast .m2-example-note{font-size:.9rem;margin-bottom:0}
.m2-preview{background:var(--m2-surface);padding:1.25rem;margin:2rem 0}.m2-preview summary{font-size:1.15rem;font-weight:500;cursor:pointer;padding:.5rem 0;min-height:48px}.m2-preview figure{margin:1.4rem 0 0}.m2-preview-link{display:inline-block;min-height:44px;margin-bottom:.5rem}.m2-preview img{display:block;width:100%;height:auto}.m2-preview figcaption{color:var(--m2-ink)}
@media(max-width:650px){.editorial-site[data-publication="it-budget"] .editorial-byline{flex-direction:column;align-items:flex-start}.editorial-site[data-publication="it-budget"] .editorial-byline span{white-space:normal}.m2-cover img{max-height:240px}.m2-equation{grid-template-columns:1fr;gap:1.3rem}.m2-equation>div{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.m2-equation dt{max-width:58%;min-height:0}.m2-equation dd{font-size:1.5rem;margin:0}.m2-case-label{display:block}.m2-case-label select{display:block;width:100%;margin-top:.5rem}.m2-forecast #m2-case-note{min-height:4.8em}}
@media(prefers-reduced-motion:reduce){.m2-primary{transition:none}.m2-primary:hover{transform:none}}
