Museo delle Officine Galileo

Museo delle Officine Galileo - Company

Il Museo delle Officine Galileo ha sede a Campi Bisenzio, in provincia di Firenze, e nasce con l’obiettivo di preservare e testimoniare quasi 150 anni di ricerca tecnologica sviluppata principalmente nelle storiche aziende fiorentine. Fu fondato nel 2006 dall’allora Galileo Avionica che, riunendo sotto lo stesso marchio varie aziende Italiane del settore della difesa, aveva rilevato anche l’eredità delle Officine Galileo, una delle più antiche aziende italiane di alta tecnologia.

Ottiche, macchine tessili, calcolatori meccanici e oggetti di uso comune come contatori del gas e macchine fotografiche sono protagonisti di un’esposizione varia e viva, che si arricchisce di continuo di apparati e in cui è possibile apprezzare gli antenati di moltissimi prodotti attuali, come radar, visori ottici, strumenti di volo e radio. Fiore all’occhiello della collezione è un orologio astronomico a pendolo donato al Museo dall’osservatorio Ximeniano di Firenze. Realizzato nel 1884 dalle Officine Galileo, per anni fu utilizzato per sincronizzare tutti gli altri orologi presenti nell’Osservatorio.

Porta aperta dell’azienda sul territorio, il Museo delle Officine Galileo è testimonianza di un marchio storico della cultura industriale italiana e si propone come guida di riferimento per l’innovazione tecnologica del futuro.
 

Si è verificato un errore nell'elaborarazione del modello.
The following has evaluated to null or missing:
==> Links  [in template "20115#20151#8694053" at line 194, column 29]

----
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: #if Links.ExternalTargetURL.getData()...  [in template "20115#20151#8694053" at line 194, column 24]
----
1<#assign siteExpandoBridge = themeDisplay.getScopeGroup().getExpandoBridge() /> 
2<#assign new_restyle = (siteExpandoBridge.hasAttribute("new-restyle")?then(getterUtil.getBoolean(siteExpandoBridge.getAttribute("new-restyle", false)),false)) /> 
3<#if new_restyle?? && new_restyle> 
4    <@leonardo.articleInfo .vars "(I3) Video Launch"/> 
5 
6    <#macro videoBox yt canto video poster> 
7 
8        <div class="video-full-width-container-rounded"> 
9                <button 
10                        class="video-full-width" 
11                        title="play report video" 
12                        onclick="playSingleVideo(this)" 
13                        data-video="${video}" 
14
15                <div class="cover rounded-20"> 
16                    <#if VideoInfo.Image.getData()?? && VideoInfo.Image.getData() != ""> 
17                        <#assign scalingDetails = { 
18                        "desktop": {"alternateImage": {}, "key": "w_768"}, 
19                        "tl": {"alternateImage": VideoInfo.Image.ImageTl!, "key": "h_400"}, 
20                        "tp": {"alternateImage": VideoInfo.Image.ImageTp!, "key": "w_720"}, 
21                        "mobile": {"alternateImage": VideoInfo.Image.ImageM!, "key": "w_596"} }> 
22                        <#assign posterImg = leonardo.adaptImage(VideoInfo.Image!, scalingDetails )> 
23                        <picture> 
24                            <source 
25                                    srcset="${posterImg.mobile?replace(" ", "%20")!}" 
26                                    media="(max-width: 576px)" 
27                            /> 
28                            <source 
29                                    srcset="${posterImg.tablet_portrait?replace(" ", "%20")!}" 
30                                    media="(max-width: 768px)" 
31
32                            <source 
33                                    srcset="${posterImg.tablet_landscape?replace(" ", "%20")!}" 
34                                    media="(max-width: 1024px)" 
35
36                            <img class="img-fluid" alt="${posterImg.alt_desktop!}" src="${posterImg.desktop?replace(" ", "%20")!}" /> 
37                        </picture> 
38                    </#if> 
39 
40                    <div class="btn-play"> 
41                        <img 
42                                class="icon" 
43                                src="${themeDisplay.getPathThemeImages()}/img/generic/button-play.svg" 
44                                alt="play" 
45                        /> 
46                        <img 
47                                class="icon-hover" 
48                                src="${themeDisplay.getPathThemeImages()}/img/generic/button-play-hover.svg" 
49                                alt="play" 
50                        /> 
51                    </div> 
52                </div> 
53                </button> 
54        </div> 
55    </#macro> 
56 
57    <#if VideoInfo.Video.getData() != "" ||  VideoInfo.YoutubeId.getData() != "" ||  VideoInfo.CantoUrl.getData() != "" > 
58 
59        <#assign scalingDetails = { 
60        "desktop": {"alternateImage": {}, "key": "w_768"}, 
61        "tl": {"alternateImage": VideoInfo.Image.ImageTl!, "key": "h_400"}, 
62        "tp": {"alternateImage": VideoInfo.Image.ImageTp!, "key": "w_720"}, 
63        "mobile": {"alternateImage": VideoInfo.Image.ImageM!, "key": "w_596"} }> 
64        <#assign posterImg = leonardo.adaptImage(VideoInfo.Image!, scalingDetails )> 
65 
66        <#assign isYt = (VideoInfo.YoutubeId.getData() != "") > 
67        <#assign isCanto = (VideoInfo.CantoUrl.getData())?has_content && (VideoInfo.CantoUrl.getData() != "") > 
68 
69        <#if (VideoInfo.CantoUrl.getData())?has_content && VideoInfo.CantoUrl.getData() != ""> 
70            <#assign videoStr = VideoInfo.CantoUrl.getData()> 
71        <#elseif VideoInfo.YoutubeId.getData() != ""> 
72            <#assign videoStr = VideoInfo.YoutubeId.getData()> 
73        <#elseif VideoInfo.Video.getSiblings()?has_content> 
74            <#assign videoStr = ""> 
75            <#list VideoInfo.Video.getSiblings() as cur_Video> 
76                <#assign videoFile = cur_Video.getData()> 
77                <#assign videoFileType = cur_Video.VideoType.getData()> 
78                <#if videoStr?? && videoStr != ""> 
79                    <#assign videoStr = videoStr + ","> 
80                </#if> 
81                <#assign videoStr = videoStr + "${themeDisplay.getPortalURL()}" + videoFile> 
82            </#list> 
83        </#if> 
84 
85        <!--Start Module: Plan Highlights--> 
86        <div class="container-full-width padding-bottom padding-top"> 
87            <div class="container"> 
88                <div class="flex-grid-plus-cards video"> 
89                    <div class="left <#if VideoInfo.ImagePosition.getData() == "right">order-lg-2</#if>"> 
90                        <#if VideoInfo.YoutubeId.getData() != ""> 
91                            <div class="video-full-width-container-rounded"> 
92                                <#assign videoId = VideoInfo.YoutubeId.getData()> 
93                                <button 
94                                        type="button" 
95                                        class="video-full-width video-yt" 
96                                        title="play report video" 
97                                        data-video="${videoId}" 
98                                        id="button-video-${videoId}" 
99
100                                    <div class="cover rounded-20"> 
101                                        <#if VideoInfo.Image.getData()?? && VideoInfo.Image.getData() != ""> 
102                                            <#assign scalingDetails = { 
103                                            "desktop": {"alternateImage": {}, "key": "w_768"}, 
104                                            "tl": {"alternateImage": VideoInfo.Image.ImageTl!, "key": "h_400"}, 
105                                            "tp": {"alternateImage": VideoInfo.Image.ImageTp!, "key": "w_720"}, 
106                                            "mobile": {"alternateImage": VideoInfo.Image.ImageM!, "key": "w_596"} }> 
107                                            <#assign posterImg = leonardo.adaptImage(VideoInfo.Image!, scalingDetails )> 
108                                            <picture> 
109                                                <source 
110                                                        srcset="${posterImg.mobile?replace(" ", "%20")!}" 
111                                                        media="(max-width: 576px)" 
112                                                /> 
113                                                <source 
114                                                        srcset="${posterImg.tablet_portrait?replace(" ", "%20")!}" 
115                                                        media="(max-width: 768px)" 
116
117                                                <source 
118                                                        srcset="${posterImg.tablet_landscape?replace(" ", "%20")!}" 
119                                                        media="(max-width: 1024px)" 
120
121                                                <img class="img-fluid" alt="${posterImg.alt_desktop!}" src="${posterImg.desktop?replace(" ", "%20")!}" /> 
122                                            </picture> 
123                                        </#if> 
124 
125                                        <div class="btn-play"> 
126                                            <img 
127                                                    class="icon" 
128                                                    src="${themeDisplay.getPathThemeImages()}/img/generic/button-play.svg" 
129                                                    alt="play" 
130                                            /> 
131                                            <img 
132                                                    class="icon-hover" 
133                                                    src="${themeDisplay.getPathThemeImages()}/img/generic/button-play-hover.svg" 
134                                                    alt="play" 
135                                            /> 
136                                        </div> 
137                                    </div> 
138                                </button> 
139                                <div id="video-${videoId}" class="embed-responsive embed-responsive-16by9" style="display:none;"> 
140                                    <iframe 
141                                            id="youtube-player-${videoId}" 
142                                            width="100%" 
143                                            height="100%" 
144                                            frameborder="0" 
145                                            allow="autoplay; fullscreen; encrypted-media" 
146                                            allowfullscreen 
147                                            playsinline 
148                                            title="<#if TextInfo.Title.getData() != '' ><@leonardo.escapeTitle title=TextInfo.Title.getData()/><#else>video youtube</#if>" 
149                                    ></iframe> 
150                                </div> 
151                            </div> 
152                            <script> 
153                                (function() { 
154                                    const button = document.getElementById("button-video-${videoId}"); 
155                                    const overlay = document.getElementById("video-${videoId}"); 
156                                    const iframe = document.getElementById("youtube-player-${videoId}"); 
157 
158                                    button.addEventListener("click", function() { 
159                                        const videoId = button.dataset.video; 
160 
161                                        iframe.src = "https://www.youtube.com/embed/" + videoId + "?autoplay=1&rel=0"; 
162                                        overlay.style.display = "block"; 
163                                        button.style.display = "none"; 
164                                    }); 
165                                })(); 
166                            </script> 
167                        <#else> 
168                            <@videoBox yt=isYt canto=isCanto video=videoStr poster=posterImg /> 
169                        </#if> 
170                    </div> 
171                    <div class="right component-with-title"> 
172                        <!--Start Module: Highlights Pitch--> 
173                        <div> 
174                            <#if TextInfo.Title.getData() != "" > 
175                                <p class="title title-regular"><@leonardo.escapeTitle title=TextInfo.Title.getData()/></p> 
176                            </#if> 
177                            <#if TextInfo.Title.Description?? && TextInfo.Title.Description.getData() != "" > 
178                                <p class="description body-small"><@leonardo.escapeTitle title=TextInfo.Title.Description.getData()/></p> 
179                            </#if> 
180                        </div> 
181                        <#if TextInfo.Title.Attach.getData() !=''> 
182                            <div class="card-interview centered download"> 
183                                <#list TextInfo.Title.Attach.getSiblings() as node> 
184                                    <#if TextInfo.Title.Attach?? && TextInfo.Title.Attach.getData() != "" && TextInfo.Title.Attach.Label.getData() != ""> 
185                                        <div class="card"> 
186                                            <a href="${TextInfo.Title.Attach.getData()}" target="_blank" class="label-regular" title="${TextInfo.Title.Attach.Label.getData()}"> 
187                                                <span>${TextInfo.Title.Attach.Label.getData()}</span> 
188                                            </a> 
189                                        </div> 
190                                    </#if> 
191                                </#list> 
192                            </div> 
193                        </#if> 
194                       <#if Links.ExternalTargetURL.getData() !='' || Links.LinkTargetPage.getFriendlyUrl() !=''> 
195                        <div class="flex flex-col gap-4"> 
196                            <#list Links.getSiblings() as node> 
197 
198                                <#assign externalUrl = node.ExternalTargetURL.getData()!"" /> 
199                                <#assign internalUrl = node.LinkTargetPage.getFriendlyUrl()!"" /> 
200                                <#assign linkText = node.LinkText.getData()!"" /> 
201 
202                                <#if linkText?has_content && (externalUrl?has_content || internalUrl?has_content)> 
203 
204                                    <#assign url = externalUrl?has_content?then(externalUrl, internalUrl) /> 
205 
206                                    <a href="${url}" 
207                                       target="${node.LinkTargetOpenIn.getData()!}" 
208                                       title="${linkText}" 
209                                       class="card-text-arrow"> 
210                                        <p class="body-medium">${linkText}</p> 
211                                    </a> 
212 
213                                </#if> 
214                            </#list> 
215                        </div> 
216                    </#if> 
217                        <!--End Module: Highlights Pitch--> 
218                    </div> 
219                </div> 
220            </div> 
221        </div> 
222        <!--End Module: Plan Highlights--> 
223    <#else> 
224        <!-- No video selected --> 
225    </#if> 
226<#else> 
227    <#assign siteExpandoBridge = themeDisplay.getScopeGroup().getExpandoBridge() /> 
228    <#assign new_restyle = (siteExpandoBridge.hasAttribute("new-restyle")?then(getterUtil.getBoolean(siteExpandoBridge.getAttribute("new-restyle", false)),false)) /> 
229    <#if new_restyle?? && new_restyle> 
230        <@leonardo.articleInfo .vars "(I3) Video Launch"/> 
231 
232        <#macro videoBox yt canto video poster> 
233 
234            <div class="video-full-width-container-rounded"> 
235                <button 
236                        class="video-full-width" 
237                        title="play report video" 
238                        onclick="playSingleVideo(this)" 
239                        data-video="${video}" 
240
241                    <div class="cover rounded-20"> 
242                        <#if VideoInfo.Image.getData()?? && VideoInfo.Image.getData() != ""> 
243                            <#assign scalingDetails = { 
244                            "desktop": {"alternateImage": {}, "key": "w_768"}, 
245                            "tl": {"alternateImage": VideoInfo.Image.ImageTl!, "key": "h_400"}, 
246                            "tp": {"alternateImage": VideoInfo.Image.ImageTp!, "key": "w_720"}, 
247                            "mobile": {"alternateImage": VideoInfo.Image.ImageM!, "key": "w_596"} }> 
248                            <#assign posterImg = leonardo.adaptImage(VideoInfo.Image!, scalingDetails )> 
249                            <picture> 
250                                <source 
251                                        srcset="${posterImg.mobile!}" 
252                                        media="(max-width: 576px)" 
253                                /> 
254                                <source 
255                                        srcset="${posterImg.tablet_portrait!}" 
256                                        media="(max-width: 768px)" 
257
258                                <source 
259                                        srcset="${posterImg.tablet_landscape!}" 
260                                        media="(max-width: 1024px)" 
261
262                                <img class="img-fluid" alt="${posterImg.alt_desktop!}" src="${posterImg.desktop!}" /> 
263                            </picture> 
264                        </#if> 
265 
266                        <div class="btn-play"> 
267                            <img 
268                                    class="icon" 
269                                    src="${themeDisplay.getPathThemeImages()}/img/generic/button-play.svg" 
270                                    alt="play" 
271                            /> 
272                            <img 
273                                    class="icon-hover" 
274                                    src="${themeDisplay.getPathThemeImages()}/img/generic/button-play-hover.svg" 
275                                    alt="play" 
276                            /> 
277                        </div> 
278                    </div> 
279                </button> 
280            </div> 
281        </#macro> 
282 
283        <#if VideoInfo.Video.getData() != "" ||  VideoInfo.YoutubeId.getData() != "" ||  VideoInfo.CantoUrl.getData() != "" > 
284 
285            <#assign scalingDetails = { 
286            "desktop": {"alternateImage": {}, "key": "w_768"}, 
287            "tl": {"alternateImage": VideoInfo.Image.ImageTl!, "key": "h_400"}, 
288            "tp": {"alternateImage": VideoInfo.Image.ImageTp!, "key": "w_720"}, 
289            "mobile": {"alternateImage": VideoInfo.Image.ImageM!, "key": "w_596"} }> 
290            <#assign posterImg = leonardo.adaptImage(VideoInfo.Image!, scalingDetails )> 
291            <#assign posterImg = leonardo.adaptImage(VideoInfo.Image!, scalingDetails )> 
292 
293            <#assign isYt = (VideoInfo.YoutubeId.getData() != "") > 
294            <#assign isCanto = (VideoInfo.CantoUrl.getData())?has_content && (VideoInfo.CantoUrl.getData() != "") > 
295 
296            <#if (VideoInfo.CantoUrl.getData())?has_content && VideoInfo.CantoUrl.getData() != ""> 
297                <#assign videoStr = VideoInfo.CantoUrl.getData()> 
298            <#elseif VideoInfo.YoutubeId.getData() != ""> 
299                <#assign videoStr = VideoInfo.YoutubeId.getData()> 
300            <#elseif VideoInfo.Video.getSiblings()?has_content> 
301                <#assign videoStr = ""> 
302                <#list VideoInfo.Video.getSiblings() as cur_Video> 
303                    <#assign videoFile = cur_Video.getData()> 
304                    <#assign videoFileType = cur_Video.VideoType.getData()> 
305                    <#if videoStr?? && videoStr != ""> 
306                        <#assign videoStr = videoStr + ","> 
307                    </#if> 
308                    <#assign videoStr = videoStr + "${themeDisplay.getPortalURL()}" + videoFile> 
309                </#list> 
310            </#if> 
311 
312            <!--Start Module: Plan Highlights--> 
313            <div class="container-full-width padding-bottom padding-top"> 
314                <div class="container"> 
315                    <div class="flex-grid-plus-cards video"> 
316                        <div class="left <#if VideoInfo.ImagePosition.getData() == "right">order-2</#if>"> 
317                            <#if VideoInfo.YoutubeId.getData() != ""> 
318                                <div class="video-full-width-container-rounded"> 
319                                    <#assign videoId = VideoInfo.YoutubeId.getData()> 
320                                    <button 
321                                            type="button" 
322                                            class="video-full-width video-yt" 
323                                            title="play report video" 
324                                            data-video="${videoId}" 
325                                            id="button-video-${videoId}" 
326
327                                        <div class="cover rounded-20"> 
328                                            <#if VideoInfo.Image.getData()?? && VideoInfo.Image.getData() != ""> 
329                                                <#assign scalingDetails = { 
330                                                "desktop": {"alternateImage": {}, "key": "w_768"}, 
331                                                "tl": {"alternateImage": VideoInfo.Image.ImageTl!, "key": "h_400"}, 
332                                                "tp": {"alternateImage": VideoInfo.Image.ImageTp!, "key": "w_720"}, 
333                                                "mobile": {"alternateImage": VideoInfo.Image.ImageM!, "key": "w_596"} }> 
334                                                <#assign posterImg = leonardo.adaptImage(VideoInfo.Image!, scalingDetails )> 
335                                                <picture> 
336                                                    <source 
337                                                            srcset="${posterImg.mobile!}" 
338                                                            media="(max-width: 576px)" 
339                                                    /> 
340                                                    <source 
341                                                            srcset="${posterImg.tablet_portrait!}" 
342                                                            media="(max-width: 768px)" 
343
344                                                    <source 
345                                                            srcset="${posterImg.tablet_landscape!}" 
346                                                            media="(max-width: 1024px)" 
347
348                                                    <img class="img-fluid" alt="${posterImg.alt_desktop!}" src="${posterImg.desktop!}" /> 
349                                                </picture> 
350                                            </#if> 
351 
352                                            <div class="btn-play"> 
353                                                <img 
354                                                        class="icon" 
355                                                        src="${themeDisplay.getPathThemeImages()}/img/generic/button-play.svg" 
356                                                        alt="play" 
357                                                /> 
358                                                <img 
359                                                        class="icon-hover" 
360                                                        src="${themeDisplay.getPathThemeImages()}/img/generic/button-play-hover.svg" 
361                                                        alt="play" 
362                                                /> 
363                                            </div> 
364                                        </div> 
365                                    </button> 
366                                    <div id="video-${videoId}" class="embed-responsive embed-responsive-16by9" style="display:none;"> 
367                                        <iframe 
368                                                id="youtube-player-${videoId}" 
369                                                width="100%" 
370                                                height="100%" 
371                                                frameborder="0" 
372                                                allow="autoplay; fullscreen; encrypted-media" 
373                                                allowfullscreen 
374                                                playsinline 
375                                        ></iframe> 
376                                    </div> 
377                                </div> 
378                                <script> 
379                                    (function() { 
380                                        const button = document.getElementById("button-video-${videoId}"); 
381                                        const overlay = document.getElementById("video-${videoId}"); 
382                                        const iframe = document.getElementById("youtube-player-${videoId}"); 
383 
384                                        button.addEventListener("click", function() { 
385                                            const videoId = button.dataset.video; 
386 
387                                            iframe.src = "https://www.youtube.com/embed/" + videoId + "?autoplay=1&rel=0"; 
388                                            overlay.style.display = "block"; 
389                                            button.style.display = "none"; 
390                                        }); 
391                                    })(); 
392                                </script> 
393                            <#else> 
394                                <@videoBox yt=isYt canto=isCanto video=videoStr poster=posterImg /> 
395                            </#if> 
396                        </div> 
397                        <div class="right component-with-title"> 
398                            <!--Start Module: Highlights Pitch--> 
399                            <div> 
400                                <#if TextInfo.Title.getData() != "" > 
401                                    <p class="title title-regular"><@leonardo.escapeTitle title=TextInfo.Title.getData()/></p> 
402                                </#if> 
403                                <#if TextInfo.Title.Description?? && TextInfo.Title.Description.getData() != "" > 
404                                    <p class="description body-small"><@leonardo.escapeTitle title=TextInfo.Title.Description.getData()/></p> 
405                                </#if> 
406                            </div> 
407                            <#if TextInfo.Title.Attach.getData() !=''> 
408                                <div class="card-interview centered download"> 
409                                    <#list TextInfo.Title.Attach.getSiblings() as node> 
410                                        <#if TextInfo.Title.Attach?? && TextInfo.Title.Attach.getData() != "" && TextInfo.Title.Attach.Label.getData() != ""> 
411                                            <div class="card"> 
412                                                <a href="${TextInfo.Title.Attach.getData()}" target="_blank" class="label-regular" title="${TextInfo.Title.Attach.Label.getData()}" download> 
413                                                    <span>${TextInfo.Title.Attach.Label.getData()}</span> 
414                                                </a> 
415                                            </div> 
416                                        </#if> 
417                                    </#list> 
418                                </div> 
419                            </#if> 
420                            <#if Links.ExternalTargetURL.getData() !='' || Links.LinkTargetPage.getFriendlyUrl() !=''> 
421                                <div class="flex flex-col gap-4"> 
422                                    <#list Links.getSiblings() as node> 
423                                        <#if node.ExternalTargetURL.getData() !='' && node.LinkText.getData() !=''> 
424                                            <#assign url = node.ExternalTargetURL.getData() /> 
425                                        </#if> 
426                                        <#if node.LinkTargetPage.getFriendlyUrl() !='' && node.LinkText.getData() !=''> 
427                                            <#assign url = node.LinkTargetPage.getFriendlyUrl() /> 
428                                        </#if> 
429                                        <a href="${url}" target ="${node.LinkTargetOpenIn.getData()}" title="${node.LinkText.getData()}" class="card-text-arrow"> 
430                                            <p class="body-medium">${node.LinkText.getData()}</p> 
431                                        </a> 
432                                    </#list> 
433                                </div> 
434                            </#if> 
435                            <!--End Module: Highlights Pitch--> 
436                        </div> 
437                    </div> 
438                </div> 
439            </div> 
440            <!--End Module: Plan Highlights--> 
441        <#else> 
442            <!-- No video selected --> 
443        </#if> 
444    <#else> 
445        <@leonardo.articleInfo .vars "(I3) Video Launch"/> 
446        <#assign rndNamespace = randomNamespace> 
447        <#assign currentLayoutFriendlyURL = themeDisplay.getLayout().getFriendlyURL()?remove_beginning("/") /> 
448 
449        <#if currentLayoutFriendlyURL == "home"> 
450            <#assign cssForTitle = "plan-highlights"> 
451        <#else> 
452            <#assign cssForTitle = "plan-highlights--investors"> 
453        </#if> 
454 
455        <#macro downloadIcon> 
456            <svg xmlns="http://www.w3.org/2000/svg" width="14" height="18" viewBox="0 0 14 18"> 
457                <path fill="#000" fill-rule="nonzero" d="M6.61 12.763l-2.145-2.24a.58.58 0 0 1 0-.796c.211-.22.551-.22.762 0l1.235 1.29V6.75c0-.31.24-.563.538-.563.297 0 .538.252.538.563v4.267l1.235-1.29c.21-.22.551-.22.762 0a.58.58 0 0 1 0 .796l-2.145 2.24a.526.526 0 0 1-.78 0zM12.62 18H1.383C.62 18 0 17.368 0 16.592V5.037c0-.49.19-.968.52-1.314L3.565.544A1.728 1.728 0 0 1 4.82 0h7.797C13.38 0 14 .631 14 1.407v15.186C14 17.37 13.38 18 12.619 18zM4.82 1.125a.682.682 0 0 0-.496.214L1.282 4.52a.755.755 0 0 0-.205.518v11.555c0 .156.137.283.306.283h11.235c.168 0 .305-.127.305-.282V1.407c0-.155-.137-.282-.305-.282H4.821zm-.783 4.5H2.154a.551.551 0 0 1-.539-.563c0-.31.242-.562.539-.562h1.884c.15 0 .27-.126.27-.281V2.25c0-.31.24-.563.538-.563.297 0 .539.252.539.563v1.969c0 .775-.605 1.406-1.347 1.406zm6.193 9.563H3.769a.55.55 0 0 1-.538-.563.55.55 0 0 1 .538-.563h6.462a.55.55 0 0 1 .538.563.55.55 0 0 1-.538.563z"/> 
458            </svg> 
459        </#macro> 
460        <#macro videoBox yt canto video poster> 
461            <div class="grid grid--d50p grid--tl50p grid--tp100p grid--m100p"> 
462                <div class="plan-highlights--wrapper"> 
463                    <#if canto> 
464                        <div class="leo-video canto-video" 
465                             data-video-data='{ 
466    						&quot;showControls&quot;:true, 
467    						&quot;videoSources&quot;:[ 
468    							"${video}" 
469    						], 
470    						&quot;posters&quot;:{ 
471    							&quot;desktop&quot;:&quot;${poster.desktop!}&quot;, 
472    							&quot;tabletLandscape&quot;:&quot;${poster.tablet_landscape!}&quot;, 
473    							&quot;tabletPortrait&quot;:&quot;${poster.tablet_portrait!}&quot;, 
474    							&quot;mobile&quot;:&quot;${poster.mobile!}&quot; 
475    						}}' 
476                             data-img-url-d="${poster.desktop!}" 
477                             data-img-url-tl="${poster.tablet_landscape!}" 
478                             data-img-url-tp="${poster.tablet_portrait!}" 
479                             data-img-url-m="${poster.mobile!}"> 
480                        </div> 
481                    <#elseif yt> 
482                        <div class="youtube-player-container " 
483                             data-video-id="${video}" 
484                             data-div-id = "${randomNamespace}${video}" 
485                             data-img-url-d="${poster.desktop!}" 
486                             data-img-url-tl="${poster.tablet_landscape!}" 
487                             data-img-url-tp="${poster.tablet_portrait!}" 
488                             data-img-url-m="${poster.mobile!}" 
489                             data-use-no-cookie-domain="true" 
490                             data-play-fullscreen="true" 
491                             data-video-controls="true" 
492                             tabindex="1"> 
493                            <div class="youtube-player" id="${randomNamespace}${video}"></div> 
494                        </div> 
495                    <#else> 
496                        <div class="leo-video" 
497                             data-video-data="{ 
498    						&quot;showControls&quot;:true, 
499    						&quot;videoSources&quot;:[ 
500    							${video} 
501    						], 
502    						&quot;posters&quot;:{ 
503    							&quot;desktop&quot;:&quot;${poster.desktop!}&quot;, 
504    							&quot;tabletLandscape&quot;:&quot;${poster.tablet_landscape!}&quot;, 
505    							&quot;tabletPortrait&quot;:&quot;${poster.tablet_portrait!}&quot;, 
506    							&quot;mobile&quot;:&quot;${poster.mobile!}&quot; 
507    						}}" 
508                             data-img-url-d="${poster.desktop!}" 
509                             data-img-url-tl="${poster.tablet_landscape!}" 
510                             data-img-url-tp="${poster.tablet_portrait!}" 
511                             data-img-url-m="${poster.mobile!}"> 
512                        </div> 
513                    </#if> 
514                </div> 
515            </div> 
516        </#macro> 
517 
518        <#if VideoInfo.Video.getData() != "" ||  VideoInfo.YoutubeId.getData() != "" ||  VideoInfo.CantoUrl.getData() != "" > 
519 
520            <#assign isLeft = (VideoInfo.ImagePosition?? && VideoInfo.ImagePosition.getData() != "" && !(VideoInfo.ImagePosition.getData())?contains("right")) > 
521 
522            <#assign scalingDetails = { 
523            "desktop": {"alternateImage": {}, "key": "w_720"}, 
524            "tl": {"alternateImage": VideoInfo.Image.ImageTl!, "key": "h_695"}, 
525            "tp": {"alternateImage": VideoInfo.Image.ImageTp!, "key": "w_768"}, 
526            "mobile": {"alternateImage": VideoInfo.Image.ImageM!, "key": "w_375"} 
527            }> 
528            <#assign posterImg = leonardo.adaptImage(VideoInfo.Image!, scalingDetails )> 
529 
530            <noscript> 
531                <img src="${posterImg.desktop!}" alt='${posterImg.alt_desktop!}'> 
532                <img src="${posterImg.tablet_landscape!}" alt='${posterImg.alt_tablet_landscape!}'> 
533                <img src="${posterImg.tablet_portrait!}" alt='${posterImg.alt_tablet_portrait!}'> 
534                <img src="${posterImg.mobile!}" alt='${posterImg.alt_mobile!}'> 
535            </noscript> 
536 
537            <#assign isYt = (VideoInfo.YoutubeId.getData() != "") > 
538            <#assign isCanto = (VideoInfo.CantoUrl.getData())?has_content && (VideoInfo.CantoUrl.getData() != "") > 
539 
540            <#if (VideoInfo.CantoUrl.getData())?has_content && VideoInfo.CantoUrl.getData() != ""> 
541                <#assign videoStr = VideoInfo.CantoUrl.getData()> 
542            <#elseif VideoInfo.YoutubeId.getData() != ""> 
543                <#assign videoStr = VideoInfo.YoutubeId.getData()> 
544            <#elseif VideoInfo.Video.getSiblings()?has_content> 
545                <#assign videoStr = ""> 
546                <#list VideoInfo.Video.getSiblings() as cur_Video> 
547                    <#assign videoFile = cur_Video.getData()> 
548                    <#assign videoFileType = cur_Video.VideoType.getData()> 
549                    <#if videoStr?? && videoStr != ""> 
550                        <#assign videoStr = videoStr + ","> 
551                    </#if> 
552                    <#assign videoStr = videoStr + "{&quot;src&quot;:&quot;" + videoFile + "&quot;,&quot;type&quot;:&quot;" + videoFileType + "&quot;}"> 
553                </#list> 
554            </#if> 
555 
556            <!--Start Module: Plan Highlights--> 
557            <div class="section-container section-container--fixed"> 
558                <#if TextInfo.Title.isAnchorEnabled?? && getterUtil.getBoolean(TextInfo.Title.isAnchorEnabled.getData())> 
559                    <#assign labelIsLeft = ((TextInfo.Title.isAnchorEnabled.AnchorText.LabelPosition.getData())!"left") == "left"> 
560                    <div class="section-grid layout--tp-col layout--m-col"> 
561                        <#if !labelIsLeft > 
562                            <div class="grid grid--d50p grid--tl50p grid--tp100p grid--m100p"></div> 
563                        </#if> 
564                        <div class="grid grid--d50p grid--tl50p grid--tp100p grid--m100p"> 
565                            <!--Start Module: Goto--> 
566                            <#if TextInfo.Title.isAnchorEnabled.AnchorText.getData() != "" > 
567                                <a class='goto ${(!labelIsLeft)?then("goto--icon-left","")}' href="javascript:void(0)" title="Scroll to next section">${TextInfo.Title.isAnchorEnabled.AnchorText.getData()}<span class="icon--goto"></span></a> 
568                            </#if> 
569                            <!--End Module: Goto--> 
570                        </div> 
571                        <#if labelIsLeft> 
572                            <div class="grid grid--d50p grid--tl50p grid--tp100p grid--m100p"></div> 
573                        </#if> 
574                    </div> 
575                </#if> 
576                <div class="${cssForTitle}"> 
577                    <div class="section-grid ${(!isLeft)?then('layout--tp-col-reverse layout--m-col-reverse','layout--tp-col layout--m-col')}"> 
578                        <#if isLeft > 
579                            <@videoBox yt=isYt canto=isCanto video=videoStr poster=posterImg /> 
580                        </#if> 
581                        <div class="grid grid--d50p grid--tl50p grid--tp100p grid--m100p"> 
582                            <!--Start Module: Highlights Pitch--> 
583                            <div class="highlights-pitch"> 
584                                <#if TextInfo.Title.getData() != "" > 
585                                    <#if TextInfo.Title.isH1?? && getterUtil.getBoolean(TextInfo.Title.isH1.getData())> 
586                                        <h1 class="highlights-pitch--title"><@leonardo.escapeTitle title=TextInfo.Title.getData()/></h1> 
587                                    <#else> 
588                                        <h2 class="highlights-pitch--title"><@leonardo.escapeTitle title=TextInfo.Title.getData()/></h2> 
589                                    </#if> 
590                                    <#if TextInfo.Title.Description?? && TextInfo.Title.Description.getData() != "" > 
591                                        <p class="highlights-pitch--description"><@leonardo.escapeTitle title=TextInfo.Title.Description.getData()/></p> 
592                                    </#if> 
593                                </#if> 
594                                <#if TextInfo.Title.Attach?? && TextInfo.Title.Attach.getData() != ""> 
595                                    <div class="highlights-pitch--file-downloads"> 
596                                        <#list TextInfo.Title.Attach.getSiblings() as cur_file> 
597                                            <#assign file_info = leonardo.findFileEntryInfo(cur_file.getData()) > 
598                                            <div class="highlights-pitch--file"> 
599                                                <a class="file" 
600                                                   href="${file_info.downloadUrl}" 
601                                                   target="_blank"> 
602                                                    <@downloadIcon /> 
603                                                    <span class="highlights-pitch--file--filename"> 
604    										${(cur_file.Label.getData())!(file_info.title)!} 
605    										</span> 
606                                                </a> 
607                                            </div> 
608                                        </#list> 
609                                    </div> 
610                                </#if> 
611                                <#assign opened = false> 
612                                <#if Links?has_content> 
613                                    <#list Links.getSiblings() as cur_Link> 
614                                        <#assign targetUrl=leonardo.getTargetUrl(cur_Link.ExternalTargetURL, cur_Link.LinkTargetPage)!> 
615                                        <#if targetUrl?has_content> 
616                                            <#assign target=leonardo.getTarget(cur_Link.LinkTargetOpenIn!)!> 
617                                            <#if opened = false> 
618                                                <div class="section-hero-card--targets" > 
619                                                <#assign opened = true> 
620                                            </#if> 
621                                            <div class="section-hero-card--target"> 
622                                                <a class="section-hero-card--target--link" 
623                                                   href="${targetUrl}" 
624                                                   target = "${target}" 
625                                                   title="${cur_Link.LinkText.data!}" > 
626                                                    ${cur_Link.LinkText.data!} 
627                                                    <span class="icon--read-more"></span> 
628                                                </a> 
629                                            </div> 
630                                        </#if> 
631                                    </#list> 
632                                    <#if opened> 
633                                        </div> 
634                                    </#if> 
635                                </#if> 
636                            </div> 
637                            <!--End Module: Highlights Pitch--> 
638                        </div> 
639                        <#if !isLeft > 
640                            <@videoBox yt=isYt canto=isCanto video=videoStr poster=posterImg /> 
641                        </#if> 
642                    </div> 
643                </div> 
644            </div> 
645            <!--End Module: Plan Highlights--> 
646        <#else> 
647            <!-- No video selected --> 
648        </#if> 
649    </#if> 
650</#if> 
Search overlay background

Mobile navigation menu