Budget Law: A Closer Look Reveals Support for Lower Incomes
Table of Contents
The narrative surrounding the budget law,frequently enough framed by the left as favoring the wealthy,warrants a closer examination. While the irpef reduction offers benefits of 440 euros from 50,000 euros and above, and a tax cut on contractual increases assists 3.3 million employees earning less than 28,000 euros, several measures specifically target lower income brackets.
The reduction in taxation on contract renewal increases for 2025 and 2026, dropping to 5%, directly benefits these 3.3 million employees. considering this alongside the tax relief on overtime, holidays, and night work – applicable to employees earning up to 40,000 euros (up to a maximum of 1,500 euros) for all of 2026 – paints a different picture than claims of a maneuver solely benefiting the middle class or the affluent.
further benefits include a reduced tax rate on performance bonuses, lowered from 5% to 1% with an increased ceiling from 3,000 to 5,000 euros, and tax-free electronic meal vouchers up to 10 euros (previously 8).
Estimates from Corriere della Sera illustrate the impact: chemists with a 294 euro salary increase could see a 474 euro annual benefit from the 5% flat tax,while construction workers with a 1,960 euro increase could gain around 491 euros annually. Extending these figures suggests workers earning under 28,000 euros could see an additional 450-500 euros in their pockets.
The Parliamentary Budget Office (UPB) further supports this view,stating the irpef reform has compensated for the fiscal drag (inflation-driven tax increases) for incomes up to 32,000 euros and neutralized it for those between 32,000 and 45,000 euros,thus protecting the purchasing power of lower earners.
The budget law also includes measures to limit the impact of relief on high incomes through caps on deductions in 2024, 2025, and now 2026.
Edicola Verità | la rassegna stampa del 17 novembre
Here is #EdicolaVerità, the podcast press review of November 17th with Flaminia Camilletti.
Benjamin Netanyahu (Trap)
(function() {
const siteHeaderSearchButton = document.querySelector('.site-header__search-button');
const siteHeaderSearchDropdown = document.querySelector('.site-header__search-dropdown');
const siteHeaderOverlay = document.querySelector('.site-header__overlay');
const siteHeaderDropdown = document.querySelector('.site-header__dropdown');
function magictoggle(selector) {
const element = document.querySelector(selector);
if (element) {
if (element.style.display === 'none') {
element.style.display = 'block';
document.querySelector('body').classList.add('site-header__container--search-open');
if (siteHeaderOverlay) {
siteHeaderOverlay.style.display = 'block';
}
} else {
element.style.display = 'none';
document.querySelector('body').classList.remove('site-header__container--search-open');
if (siteHeaderOverlay) {
siteHeaderOverlay.style.display = 'none';
}
}
}
}
if (siteHeaderSearchButton) {
siteHeaderSearchButton.addEventListener('click', function () {
magictoggle('.site-header__search-dropdown');
});
}
if (document.querySelector('.site-header__overlay')) {
document.querySelector('.site-header__overlay').addEventListener('click', function () {
document.querySelector('body').classList.remove('site-header__container--search-open');
document.querySelector('.site-header__search-dropdown').style.display = 'none';
document.querySelector('.site-header__overlay').style.display = 'none';
});
}
document.querySelector(".site-header__dropdown").addEventListener("click", function (e) {
e.stopPropagation();
}, { passive: true });
if (document.querySelector(".site-header__menu-label--guardaci")) {
document.querySelector(".site-header__menu-label--guardaci").addEventListener("click", function () {
document.querySelector(".site-header__dropdown-item--podcast, .site-header__dropdown-item--video").classList.add("site-header__dropdown-item--hidden");
});
}
if (document.querySelector(".site-header__dropdown-item--7-7")) {
document.querySelector(".site-header__dropdown-item--7-7").addEventListener("click", function () {
document.querySelector(".site-header__dropdown-item--podcast, .site-header__dropdown-item--video").classList.toggle("site-header__dropdown-item--hidden");
});
}
window.addEventListener("load", function () {
setTimeout(function () { putRightURLsOnProfile(); }, 1000);
});
function putRightURLsOnProfile() {
let profileURL = document.querySelector(".main-menu-item--my_page a"),
profileLink = document.getElementById("dedicated-area-link");
if (profileURL != null) {
profileURL = profileURL.getAttribute('href');
profileLink && profileLink.setAttribute('href', profileURL);
}
}
})();
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
!function(f,b,e,v,n,t,s)
{if(f.fbq)return;n=f.fbq=function(){n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments)};
if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
n.queue=[];t=b.createElement(e);t.async=!0;
t.src=v;
document.querySelectorAll('.js--toggle-mobile-menu').forEach((a)=>{a.addEventListener('click',(e)=>{document.querySelector('body').classList.toggle('site-header--dropdown-open')})});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
function ChangeListener(t,n){const o=new Set([]);document.querySelectorAll(t).forEach(e=>{n(e),o.add(e)}),new mutationobserver(()=>{document.querySelectorAll(t).forEach(e=>{o.has(e)||(n(e),o.add(e))})}).observe(document.body,{childList:!0,subtree:!0})}
ChangeListener('.infogram-embed',function(e){e.classList.add('nocollapse-listicle');
e.addEventListener('click',function(c){e.classList.toggle('nocollapse-listicle');});
});
ChangeListener('a[href="',function(e){});
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
function ChangeListener(e,t){const n=new Set([]);document.querySelectorAll(e).forEach(e=>{t(e),n.add(e)}),new MutationObserver(()=>{document.querySelectorAll(e).forEach(e=>{n.has(e)||(t(e),n.add(e))})}).observe(document.body,{childList:!0,subtree:!0})}
ChangeListener('a[href="',function(e){});
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
gtag('config', 'UA-84183411-1', { 'anonymize_ip': true });
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
let announcementWrapper = document.querySelector(".declaration-wrapper");
const topBarThemeCustomField = document.querySelector(
".custom-field-announcementtopbartheme"
);
if (topBarThemeCustomField) {
const theme = topBarThemeCustomField.innerHTML;
if (theme == "Light Theme") {
announcementWrapper.classList.add("light-theme");
} else if (theme == "Blue theme") {
announcementWrapper.classList.add("blue-theme");
}
const closeBtn = document.querySelector(".announcement-wrapper_close");
closeBtn.onclick = () => {
announcementWrapper.classList.add("close");
};
}
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
let body_html = document.querySelector(".main");
let isTopBillboard = document.querySelector(".top-billboard");
var top_billboard_ad = document.getElementById("div-gpt-ad-laverita_dsk_970x250_atf");
let topbar_wrapper = document.querySelector(".rebelbar--fixed");
if (body_html && topbar_wrapper) {
var billboardInterval = setInterval(function () {
topbar_wrapper.style.top = isTopBillboard.clientHeight + "px";
body_html.style.paddingTop = isTopBillboard.clientHeight + "px";
}, 100)
if(top_billboard_ad) {
let top_billboard_ad_id = top_billboard_ad.id;
}
}
});
Embedding Videos with RebelMouse Standard Library
The RebelMouse Standard Library provides a streamlined method for embedding videos within web pages. This functionality enhances user engagement by allowing seamless video playback directly within the content flow. The core of this process relies on JavaScript to dynamically switch between an image placeholder and a video player upon user interaction.
how it effectively works
The system utilizes a JavaScript event listener attached to elements with the class “js-show-video”. When a user clicks on an element with this class, the following actions occur:
- Element Identification: The script identifies the parent element containing both an image and a video tag.
- Visibility Toggle: The image elementS display property is set to ‘none’, effectively hiding it. Together, the video element’s display property is set to ‘block’, making it visible.
- Video Playback (Optional): The code includes a commented-out line,
//vid.play();, which, when uncommented, automatically initiates video playback upon display.
Code Breakdown
Let’s examine the key code snippets:
REBELMOUSE_STDLIB.createElementChangeListener(".js-show-video", event=>{
event.addEventListener("click", function(){
showVideo(event)
})
})
This code registers a change listener using REBELMOUSE_STDLIB.createElementChangeListener. It listens for elements with the class “js-show-video” to be created in the DOM.once found, it attaches a click event listener to each of these elements. when clicked,the showVideo function is executed.
function showVideo(event) {
let parent = event.target.closest('.parent-container'); // Replace '.parent-container' with the actual parent class
let image = parent.querySelector('img');
let video = parent.querySelector('video');
if (image && video) {
video.innerHTML = scriptToParse.innerHTML;
image.style.display = 'none';
video.style.display = 'block';
}
let vid = parent.querySelectorAll('video');
if (vid) {
//vid.play();
}
}
The showVideo function is the core logic. It finds the parent container, the image, and the video element within that container. It then replaces the video element’s content with the content from scriptToParse.innerHTML (presumably containing the video source and attributes), hides the image, and displays the video. it checks for the video element and includes an optional line to automatically play the video.
Vital Considerations
- Parent Container: Ensure the image and video elements are properly nested within a common parent container. The code currently uses
'.parent-container'as a placeholder; replace this with the actual class name of yoru container. - scriptToParse: The
scriptToParsevariable must be defined and contain the necessary HTML for the video element,including the<source>tags pointing to the video file. - Video Format Support: Ensure the video format is supported by the user’s browser.Providing multiple source formats (e.g., MP4, WebM, Ogg) is recommended for broader compatibility.
- Accessibility: Provide appropriate ARIA attributes and captions for accessibility.
Example HTML Structure
Here’s an example of the HTML structure required for this script to function correctly:
<div class="parent-container">
<img src="placeholder.jpg" alt="Video Placeholder">
<video style="display: none;">
<source src="your-video.mp4" type="video/mp4">
Your browser does not support the video tag.</video>
</div>
Remember to replace “placeholder.jpg” and “your-video.mp4” with your actual image and video file paths.