/* Clean runtime glue for the sanitised original Elementor markup. */
/* Mobile spacing comes directly from the recovered page stylesheet. */
/* Legacy internal links stay plain when their repaired URL becomes HTTPS. */
body.igu-reference-layout .elementor .elementor-widget-text-editor a[data-igu-legacy-link="plain"]{padding:0!important;background:transparent!important;color:#073a7c!important;font-weight:inherit!important;text-transform:none!important;border:0!important;}
.elementor .elementor-widget-text-editor a[data-igu-legacy-link="plain"]::after{display:none!important;content:none!important;}

html,body{margin:0;padding:0}
html.no-js .elementor-invisible{visibility:visible!important}
html.igu-original-js .elementor-invisible{visibility:hidden}

/* Elementor sticky behavior, recreated without Elementor JS. */
@media (min-width:1025px){
  .elementor-element-f6916da{position:sticky!important;top:0!important;z-index:9999!important}
  .elementor-nav-menu--main li.igu-menu-open>ul.sub-menu{display:block!important;visibility:visible!important;opacity:1!important}
}
@media (max-width:1024px){
  .elementor-element-577269c{position:sticky!important;top:0!important;z-index:9999!important}
  .elementor-element-577269c nav.elementor-nav-menu--dropdown.elementor-nav-menu__container{display:none!important}
  .elementor-element-577269c nav.elementor-nav-menu--dropdown.elementor-nav-menu__container.elementor-active{display:block!important}
  .elementor-element-577269c nav.elementor-nav-menu--dropdown.elementor-nav-menu__container ul.sub-menu{display:none!important}
  .elementor-element-577269c nav.elementor-nav-menu--dropdown.elementor-nav-menu__container li.igu-submenu-open>ul.sub-menu{display:block!important}
  .elementor-element-577269c .elementor-menu-toggle.elementor-active .elementor-menu-toggle__icon--open{display:none!important}
  .elementor-element-577269c .elementor-menu-toggle:not(.elementor-active) .elementor-menu-toggle__icon--close{display:none!important}
}

/* Replace unavailable legacy Vamtam icon-font glyphs with pure CSS. */
body:not(.igu-reference-layout) .vamtam-theme-search{display:inline-block!important;position:relative!important;width:22px!important;height:22px!important;font-size:0!important;line-height:1!important}
body:not(.igu-reference-layout) .vamtam-theme-search:before{content:""!important;position:absolute!important;left:1px!important;top:1px!important;width:13px!important;height:13px!important;border:2px solid currentColor!important;border-radius:50%!important;box-sizing:border-box!important}
body:not(.igu-reference-layout) .vamtam-theme-search:after{content:""!important;position:absolute!important;width:9px!important;height:2px!important;background:currentColor!important;transform:rotate(45deg)!important;left:13px!important;top:15px!important;transform-origin:left center!important;border-radius:2px!important}
body:not(.igu-reference-layout) .vamtam-theme-arrow-right{display:inline-block!important;position:relative!important;width:20px!important;height:14px!important;font-size:0!important;line-height:1!important;vertical-align:middle!important}
body:not(.igu-reference-layout) .vamtam-theme-arrow-right:before{content:""!important;position:absolute!important;left:0!important;top:6px!important;width:16px!important;height:2px!important;background:currentColor!important}
body:not(.igu-reference-layout) .vamtam-theme-arrow-right:after{content:""!important;position:absolute!important;right:0!important;top:3px!important;width:7px!important;height:7px!important;border-top:2px solid currentColor!important;border-right:2px solid currentColor!important;transform:rotate(45deg)!important;box-sizing:border-box!important}

/* Known placeholders inherited from the original footer have no verified URL. */
.elementor-location-footer a[href="#"]{pointer-events:none!important;cursor:default!important}

/* Search popup: Elementor originally injected a modal wrapper in JS. */
.igu-original-search-modal{position:fixed;inset:0;z-index:100000;display:none;background:rgba(0,0,0,.24);align-items:flex-start;justify-content:center;overflow:auto}
.igu-original-search-modal.is-open{display:flex}
.igu-original-search-modal__panel{position:relative;width:100%;background:#fff;box-shadow:0 18px 50px rgba(0,0,0,.22);animation:iguOriginalSlideDown .2s ease both}
.igu-original-search-modal__close{position:absolute;top:18px;right:28px;z-index:4;width:44px;height:44px;border:0;background:transparent;color:#292929;font:300 36px/1 Montserrat,sans-serif;cursor:pointer}
.igu-original-search-modal .elementor-7592{width:100%}
@keyframes iguOriginalSlideDown{from{opacity:0;transform:translateY(-28px)}to{opacity:1;transform:none}}
body.igu-original-search-open{overflow:hidden}

/* Motion FX transforms are kept on inner containers so entrance animations can
   continue using the outer Elementor node's transform property. */
.igu-mouse-track-target{will-change:transform;transition:transform .10s linear}
.igu-scroll-track-target{will-change:transform}

@media (prefers-reduced-motion:reduce){
  .elementor-invisible{visibility:visible!important}
  .animated,.igu-mouse-track-target,.igu-scroll-track-target{animation:none!important;transition:none!important;transform:none!important}
}
/* Shared header and search repair; also used by the isolated original home. */
.elementor-nav-menu--main .menu-item-has-children { position:relative; }
.elementor-nav-menu--main .sub-menu { width:320px!important; min-width:280px!important; max-width:calc(100vw - 48px)!important; left:0!important; right:auto!important; top:100%!important; }
.elementor-nav-menu--main .sub-menu a { white-space:normal!important; overflow-wrap:normal; line-height:1.4!important; padding:13px 18px!important; }
.elementor-nav-menu--main > ul > li:last-child > .sub-menu { left:auto!important; right:0!important; }
.elementor-nav-menu--main .sub-menu .sub-menu { top:0!important; left:100%!important; }
.elementor-nav-menu--main > ul > li:last-child .sub-menu .sub-menu { right:100%!important; left:auto!important; }
.igu-original-search-modal.is-open { display:flex!important; align-items:center; justify-content:center; }
.igu-original-search-modal__panel { width:min(760px,calc(100% - 48px)); max-height:90vh; overflow:auto; background:#073a7c; padding:70px 36px 40px; position:relative; }
.igu-original-search-modal__panel .elementor-7592 { display:block!important; width:100%; position:static!important; }
.igu-search-content label { color:white; display:block; font-weight:700; margin-bottom:20px; font-size:28px; }
.igu-search-content .igu-search-fields { display:flex; gap:12px; }
.igu-search-content input { width:100%; min-width:0; background:white; color:#282828; padding:16px; border:2px solid white; border-radius:0; font-size:18px; }
.igu-search-content button { padding:16px 24px; background:#ffbc39; color:#282828; font-weight:700; border:0; }
.igu-original-search-modal__close { position:absolute; top:12px; right:16px; color:white; background:transparent; border:0; font-size:34px; }
:is(.igu-content,.igu-original-search-modal) :focus-visible { outline:3px solid #ffbc39; outline-offset:4px; }

@media(max-width:1024px){.elementor-nav-menu--dropdown .sub-menu{position:static!important;width:100%!important;min-width:0!important;margin:0!important;box-shadow:none!important}.elementor-nav-menu--dropdown .sub-menu a{white-space:normal!important;line-height:1.4!important;min-height:44px}.elementor-nav-menu--dropdown .sub-menu .sub-menu a{padding-left:36px!important}}
@media(max-width:767px){.igu-search-content .igu-search-fields{flex-direction:column}.igu-original-search-modal__panel{padding:64px 24px 28px}}
.igu-original-search-modal .igu-original-search-modal__close{display:block!important;color:white!important;background:transparent!important;font-size:34px!important;line-height:1!important;padding:0!important;border:0!important;text-decoration:none!important;}

.elementor-nav-menu--main .sub-menu{margin:0!important;}

/* Client corrections, 20 September 2026: continuous headings and consistent editorial links. */
@media(max-width:767px){.elementor-element-577269c img.attachment-full{object-fit:contain!important;}}
body.igu-reference-layout.igu-page-commissioni .elementor .elementor-widget.elementor-widget-text-editor a,
body.igu-reference-layout.igu-page-internazionalizzazione .elementor .elementor-widget.elementor-widget-text-editor a {
 text-transform:none!important;
}
.igu-page-contatti .elementor-widget-text-editor a[href^="mailto:"] {
 text-transform:none!important;font-weight:400!important;color:#073a7c!important;
 overflow-wrap:anywhere;
}
.home .elementor-element-e56a04c h2,.home .elementor-element-6530c26 h2 {
 letter-spacing:-.035em!important;white-space:nowrap!important;font-size:clamp(34px,5.5vw,76px)!important;line-height:1.1!important;
}
.home .elementor-element-1151c78 h1 {
 letter-spacing:-.035em!important;white-space:nowrap!important;font-size:clamp(44px,12vw,110px)!important;line-height:1.1!important;
}
@media(min-width:1025px){
 .home .elementor-element-9095b58,.home .elementor-element-ed86f18{display:none!important;}
 .home .elementor-element-5d512aa>.elementor-container{flex-direction:column!important;align-items:center!important;}
 .home .elementor-element-0f98115{width:100%!important;}
 .home .elementor-element-0f98115>.elementor-widget-wrap{justify-content:center!important;padding:0!important;}
 .home .elementor-element-3f87abf{width:100%!important;max-width:100%!important;}
 .home .elementor-element-3f87abf h1{font-size:clamp(100px,13vw,180px)!important;line-height:1!important;letter-spacing:-.035em!important;white-space:nowrap!important;text-align:center!important;}
 .home .elementor-element-3f87abf>.elementor-widget-container{transform:none!important;margin:0 0 28px!important;}
 .home .elementor-element-a01053c{width:100%!important;max-width:620px!important;}
 .home .elementor-element-a01053c>.elementor-widget-wrap{padding:0!important;text-align:center!important;}
 .home .elementor-element-a01053c .elementor-heading-title{text-align:center!important;}
 .home .elementor-element-a01053c .elementor-button-wrapper{text-align:center!important;}
}


@media(max-width:1024px){.elementor-element-577269c nav.elementor-nav-menu--dropdown.elementor-nav-menu__container{position:fixed!important;left:0!important;right:0!important;top:var(--igu-menu-top,140px)!important;width:100vw!important;max-width:100vw!important;max-height:calc(100dvh - var(--igu-menu-top,140px));overflow-y:auto!important;margin:0!important;padding:12px 0!important;background:#fff;z-index:10000;}.elementor-element-577269c nav.elementor-nav-menu--dropdown a{padding:14px 24px!important;white-space:normal!important;line-height:1.4!important;}.elementor-element-577269c nav.elementor-nav-menu--dropdown .sub-menu{background:#f1f4fa!important;}.elementor-element-577269c nav.elementor-nav-menu--dropdown .sub-menu a{padding-left:40px!important;}}

