Financial highlights
Last trade 63.32€
Variation +4.77%
12/03/2026 - 03:39 PM
data source: Investis Digital
Financial highlights
Last trade 63.32€
Variation +4.77%
12/03/2026 - 03:39 PM
data source: Investis Digital
Financial Results & Reports
Press releases
The 2026–2030 Industrial Plan continues the growth strategy pursued by Leonardo over the past three years: becoming a multinational “One Company” with a clear, integrated and international industrial vision. The Group has been strengthened through the rationalization of its portfolio, the launch of new products, strategic international partnerships and joint ventures, selective M&A transactions, as well as strong digitization and enhanced production capacity. This path has enabled the Group to present itself on the global stage with a more solid structure, ready to seize the opportunities of a rapidly evolving market.
The update of the Plan to 2030 responds to a new context in which threats have changed in nature, speed and scale. Hypersonic missiles, ballistic vectors, drones and cyber-attacks are increasing uncertainty and operational complexity, requiring a paradigm shift: security no longer concerns only the traditional perimeter of defense, but directly affects the economic and social continuity of nations. Critical infrastructure, transport, agriculture, financial services, manufacturing, energy and chemicals are now exposed to interconnected risks capable of impacting growth and prosperity over the next decade.
Estimates confirm the scale of the challenge: the budget of global security is expected to increase from around USD 0.4 trillion per year in 2020 to more than 1 trillion per year by 2030, while the economic impact of cybercrime could rise from around 1 trillion per year in 2020 to 1 trillion per month by 2030.
For this reason, Leonardo intends to further strengthen its positioning as a leading player in Global Security, combining industrial leadership, innovation capabilities and the development of multi-domain dual-use solutions serving the security, resilience and competitiveness of national systems. Leonardo can rely on a renewed and comprehensive portfolio of solutions, developed both organically and through inorganic initiatives, capable of effectively addressing current and emerging global security needs.
2025 update
Vision
A two-fold strategy for: bridging the transition from Defence to Global Security through continuous innovation; acting as a catalyst for the new European Defence.
• R&D, innovation and new product introduction
• Digitalization
• Servitization / customer proximity
• Group-wide efficiencies and Corporate cost reduction
• Business and product focus / rationalization
• Optimization of operations
• Global alliances and M&A in emerging technologies and markets
The following has evaluated to null or missing:
==> staticUtil [in template "20115#20151#26622631" at line 2, column 26]
----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----
----
FTL stack trace ("~" means nesting-related):
- Failed at: #assign textFormatter = staticUtil["c... [in template "20115#20151#26622631" at line 2, column 1]
----
1<#assign dLFileLocalService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileEntryLocalService") />
2<#assign textFormatter = staticUtil["com.liferay.portal.kernel.util.TextFormatter"]>
3
4<section class="container-full-width padding-top padding-bottom">
5 <div class="plan-updates-section">
6 <div class="container component-with-title">
7 <#if Title.getData()?? && Title.getData() !=''>
8 <h1 class="title-extralarge">${Title.getData()}</h1>
9 </#if>
10 <#if TitleListLink.getSiblings()?has_content>
11 <div class="grid">
12 <#list TitleListLink.getSiblings() as node>
13 <div class="card-update">
14 <p class="body-medium">${node.getData()}</p>
15 <ul>
16 <#if node.LabelFile.getSiblings()?has_content>
17 <#list node.LabelFile.getSiblings() as file>
18 <#if file.File.getData() !=''>
19 <#assign attach = getDlFileEntry(file.File.getData()) />
20 <li>
21 <a href="${file.File.getData()}">
22 <img
23 src="${themeDisplay.getPathThemeImages()}/img/industrial-plan/update-download-icon.svg"
24 alt=""
25 />
26 <p class="label-regular">
27 ${file.getData()} (${attach.getExtension()}, ${textFormatter.formatStorageSize(attach.size, locale)})
28 </p>
29 </a>
30 </li>
31 </#if>
32 </#list>
33 </#if>
34 <#if node.LabelLink.getSiblings()?has_content>
35 <#list node.LabelLink.getSiblings() as link>
36 <#if link.Page.getData() !=''>
37 <#assign url = link.Page.getFriendlyUrl() />
38 <#assign target = "" />
39 <#else>
40 <#assign url = link.ExternalURL.getData() />
41 <#assign target = "_blank" />
42 </#if>
43 <li>
44 <a href="${url}" target="${target}">
45 <img
46 src="${themeDisplay.getPathThemeImages()}/img/industrial-plan/update-arrow-icon.svg"
47 alt=""
48 />
49 <p class="label-regular">${link.getData()}</p>
50 </a>
51 </li>
52 </#list>
53 </#if>
54 </ul>
55 </div>
56 </#list>
57 </div>
58 </#if>
59 </div>
60 </div>
61</section>
62
63<#function getDlFileEntry url>
64 <#assign parts=url?string?split("/") />
65 <#assign groupId=parts[2]?number />
66 <#assign uuid=parts[5]?string?split("?")[0] />
67 <#assign dlFileEntry=dLFileLocalService.fetchDLFileEntryByUuidAndGroupId(uuid, groupId)! />
68 <#return dlFileEntry />
69</#function>
2026-03-12T15:04:57Z
NSC_Qppm-ovpwp-tjup-qspe - ffffffff0919140e45525d5f4f58455e445a4a423660
JSESSIONID - 863C7A9C395BABB51FCE8D8950A80D00.lcsgepalsv050
cookie_disclaimer:true
page_disclaimer :false