/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/*************** ADD CUSTOM CSS HERE.   ***************/


.absolute-footer, html {
  background-color: #fff !important;
}

h1{font-size:clamp(34px,4.8vw,70px);line-height:1.1em;letter-spacing: -0.04em}
h2{font-size:clamp(32px,3.6vw,56px);line-height:1.2em;letter-spacing: -0.04em}
.h2 h3{font-size:clamp(32px,3.6vw,56px) !important;line-height:1.2em;letter-spacing: -0.04em; font-weight: 500 !important}

.h3 h2{font-size:clamp(24px,2vw,22px) !important;line-height:1.1em;font-weight:400 !important;letter-spacing: -0.04em}


h3{font-size:clamp(24px,2vw,22px);line-height:1.1em;font-weight:400!important;letter-spacing: -0.04em}
h4{font-size:clamp(24px,2vw,22px);line-height:1.1em;font-weight:400!important;letter-spacing: -0.04em}
h5{font-size:25px; font-weight:300!important;letter-spacing: -0.03em}


p {letter-spacing: -0.02em}
.text a, p a {text-decoration: underline !important}

.bianco h1, .bianco h2, .bianco h3, .bianco h4, .bianco p ,.bianco li{color: #f5f5f5}
.rosso > p {color: #E3251A !important;}
.small p {font-size: 16px}
.big p {font-size: 25px; font-weight: 500; line-height: 1.2em; }


/*Header*/


.has-transparent .nav-dark .nav > li > a,.has-transparent .nav-dark .nav > li > a:hover {color: hsla(0,0%,100%,1); }
/*.nav-dark .nav > li > a, .nav-dark .nav > li > a:hover,.stuck .nav-dark .nav > li > a, .stuck .nav-dark .nav > li > a:hover {color: hsla(0,0%,100%,1); color: #000}*/

.header-main  {border-bottom: 1px solid #E3251A }
.home .has-transparent .header-main {border-bottom: none}
.home .has-transparent .stuck .header-main {border-bottom: 1px solid #E3251A }

.nav-dropdown {font-size: 15px !important;font-family: "DM Sans", sans-serif;margin-left: -5px;}

.header:not(.transparent) #mega-menu-wrap-primary #mega-menu-primary > li:first-child>a {color: #E3251A !important;}

.home #mega-menu-wrap-primary #mega-menu-primary > li:first-child>a {color:#fff !important;}
#mega-menu-wrap-primary #mega-menu-primary > li:first-child>a {color:#E3251A !important;}

.header-top .nav > li { margin: 0 10px;  }
.header-top .icon {color: #444; font-size: 1.2em !important;}

.header-social-icons .follow-icons{position:relative; display:flex;align-items:center;}
.header-social-icons .follow-icons>a{position:relative;display:flex;align-items:center;justify-content:center; width:37px; padding:0;}
.header-social-icons .follow-icons>a:not(:last-child)::after{content:"";position:absolute;top:-13px;bottom:-10px;right:0;width:1px;background:#d1d1d1;}
.header-social-icons .follow-icons::before,.header-social-icons .follow-icons::after{content:"";position:absolute;top:-13px;bottom:-10px;width:1px;background:#d1d1d1;}
.header-social-icons .follow-icons::before{left:-0.1em;}
.header-social-icons .follow-icons::after{right:0;}

.header-social-icons .icon-facebook{transform:translateX(-2px);}
.header-social-icons .icon-linkedin{transform:translateX(-5px);}
.header-social-icons .icon-youtube{transform:translateX(-3px);}


.wpml-ls-current-language { position:relative; z-index:1; }
.wpml-ls-current-language::before { content:""; position:absolute; top:0; bottom:0; left:-12px; right:-12px; z-index:-1; }
.wpml-ls-current-language>a { position:relative; z-index:2; cursor:pointer; }


.wpml-ls-current-language>a{display:inline-flex!important;align-items:center;gap:10px;padding:0!important;}
.wpml-ls-current-language>a>i{display:none!important;}
.wpml-ls-current-language>a::after{content:""; width:10px; height:10px; border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:rotate(45deg) translateY(-3px); transition:transform .2s; margin-top: -2px;}
.wpml-ls-current-language:hover>a::after{transform:rotate(225deg) translate(-2px,-1px);}
.wpml-ls-current-language>.sub-menu{display:block!important;position:absolute!important;top:100%!important;left:0!important;min-width:0!important;width:auto!important;margin:0!important;padding: 0  0!important; background:transparent!important; border:0!important;box-shadow:none!important;opacity:0;visibility:hidden;pointer-events:none;transform:none!important;}
.wpml-ls-current-language:hover>.sub-menu{opacity:1;visibility:visible;pointer-events:auto;}
.wpml-ls-current-language>.sub-menu{padding:0!important;}
.wpml-ls-current-language>.sub-menu>li{margin-top:8px!important;}
.wpml-ls-current-language>.sub-menu>li{display:block!important;padding:0!important;text-align:left!important;}

.wpml-ls-current-language>.sub-menu>li>a{display:block!important; margin:0!important; padding:0!important; min-width:0!important; background:transparent!important; text-align:left!important; color:inherit!important; color: #444 !important}

.home .wpml-ls-current-language>.sub-menu>li>a{ color: #fff !important}

.stuck .wpml-ls-current-language>.sub-menu>li>a{color:#444444 !important;}


.etichetta p {display:inline-flex; align-items:center; justify-content:center ;margin:0;color:#757575; text-transform:uppercase; font-family: "Dm Mono"; margin-bottom: 20px; font-size: 14px}

.etichetta.bianca p {color:#fff; }

.home .header-logo{display:none!important;}
.home .header-logo-dark{display:block!important;}
.home .header-wrapper.stuck .header-logo {display:block!important;}
.home .header-wrapper.stuck .header-logo-dark {display:none!important;}
body:not(.home) .header-logo {display:block!important;}
body:not(.home) .header-logo-dark {display:none!important;}

.stuck {background-color:rgba(255,255,255,1) !important}

.rounded8 img, .rounded8 > .col-inner, .rounded8 {border-radius: 8px;}
.rounded32 > .col-inner, .rounded32 {border-radius: 32px;}


.transparent #logo img, #logo img, html .stuck #logo img { max-height: 54px !important;}
.header:not(.transparent) .header-nav-main.nav > li > a {color: #444444 !important;}
.header-nav a {font-size: 14px !important; text-transform: uppercase !important; font-weight: 500 !important;}

.header-nav .button {font-size: 14px !important; font-weight: 600 !important;}



.video .section-bg-overlay{background:linear-gradient(to bottom,rgba(29,2,2,0) 0%,#1D0202 100%) !important;pointer-events:none;}
.header-wrapper.stuck, .layout-shadow #wrapper { box-shadow: 1px 1px 10px rgba(0,0,0,.0);}

.header #top-bar, .header #masthead  {padding: 0 25px;}

.icon-box.featured-box { display: flex; align-items: center; }
.icon-box.featured-box .icon-box-img { margin-bottom: 0; }
.icon-box.featured-box .icon-box-text p { margin: 0; }

.cta-contatti a {color: #444 !important}
.cta-contatti a:hover {color: #e3251a !important}

/*Video*/
.video .section-content {z-index: 2 !important}
.video-bg.fill {object-fit:cover !important; object-position:left center !important;}
.video-overlay.no-click {pointer-events:none;}
.video-toggle {position:absolute; left:50%; transform:translateX(-50%); bottom:40px; z-index:50; display:inline-flex; align-items:center; gap:12px; padding:0; border:none; background:none; color:#fff; cursor:pointer; margin:0; text-transform: none !important}
.video-toggle__label {display:inline-flex !important; align-items:center; height:22px; padding-left:12px; margin-left:4px; border-left:1px solid rgba(255,255,255,.75); font-size:16px; line-height:1; color:#fff; }
.video-toggle__label .label-play {display:none;}
.video-toggle.is-paused .video-toggle__label .label-pause {display:none;}
.video-toggle.is-paused .video-toggle__label .label-play {display:inline;}
.video-toggle__icon {width:18px; height:22px; display:inline-flex; align-items:center; justify-content:center; background:none; border-radius:0; position:relative;}
.video-toggle__icon::before {display:none;}
.video-toggle svg {width:18px; height:18px; fill:#fff; display:block;}
.video-toggle .icon-play {display:none;}
.video-toggle.is-paused .icon-pause {display:none;}
.video-toggle.is-paused .icon-play {display:block;}
.video-toggle:focus-visible {outline:2px solid #fff; outline-offset:4px;}



/*Post*/

.sts-post-header > .row, .sts-post-body > .row { max-width: 1040px; }
.sts-post-header  {min-height: 350px; background: #f7f7f7}

.sts-post-header > .row { min-height: 300px; align-items: flex-end; }

.sts-post-header .col-inner { padding-bottom: 0px; }

.sts-post-header h1 {font-size:clamp(34px,4.8vw,56px);line-height:1.1em;letter-spacing: -0.04em}

.sts-post-meta {margin: 30px 0px}
.sts-post-meta { display: flex; gap: 30px; }

.sts-related-posts {margin: 50px 0px}

.sts-post-featured { width: 100%; height: 640px; overflow: hidden; }

.sts-post-featured img { display: block; width: 100%; height: 100%; object-fit: cover; }


/*Mega menu*/


.home #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {color: #fff;}

.home .stuck #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {color: #444;}


.mega-sub-menu a {border-radius: 8px; margin:6px !important; line-height: 1.3em !important; }
.mega-sub-menu {margin-left: -10px !important}
#mega-menu-wrap-top_bar_nav .mega-sub-menu {margin-top: 6px !important}

.mega-sub-menu .mega-menu-item .mega-sub-menu {margin-left: 10px !important}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu {margin-left: 10px;}
  
.mega-menu-link{display:flex; align-items:center;}

#mega-menu-primary .mega-menu-link .mega-indicator{display:flex; align-items:center; justify-content:center; margin-left:10px;}
#mega-menu-primary .mega-menu-link .mega-indicator{position:relative; top:7px !important;}
#mega-menu-primary .mega-sub-menu .mega-menu-link .mega-indicator{display: none !important}

#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-item-has-children > a.mega-menu-link > span.mega-indicator::after {width: 24px; height: 24px;}

#mega-menu-wrap-primary #mega-menu-primary li.mega-menu-item-has-children > a.mega-menu-link > span.mega-indicator {
margin: 0 0 0 2px;}



.mega-menu-flyout > .mega-sub-menu > .mega-menu-item > .mega-menu-link{padding-left:15px!important; background-image:radial-gradient(circle,#E3251A 0 5px,transparent 5.5px)!important; background-size:0 0!important; background-position:15px center!important; background-repeat:no-repeat!important; transition:padding-left .5s cubic-bezier(.22,1,.36,1)!important;}
.mega-menu-flyout > .mega-sub-menu > .mega-menu-item > .mega-menu-link:hover{padding-left:32px!important; background-size:10px 10px!important;}

.mega-menu-flyout > .mega-sub-menu > .mega-menu-item > .mega-sub-menu > .mega-menu-item > .mega-menu-link{padding-left:15px!important; background-image:radial-gradient(circle,#E3251A 0 5px,transparent 5.5px)!important; background-size:0 0!important; background-position:15px center!important; background-repeat:no-repeat!important; transition:padding-left .5s cubic-bezier(.22,1,.36,1)!important;}
.mega-menu-flyout > .mega-sub-menu > .mega-menu-item > .mega-sub-menu > .mega-menu-item > .mega-menu-link:hover{padding-left:35px!important; background-size:10px 10px!important;}


#mega-menu-wrap-top_bar_nav #mega-menu-top_bar_nav > li.mega-menu-item > a.mega-menu-link{font-weight: 400 !important;}

#mega-menu-top_bar_nav .mega-menu-link .mega-indicator{position:relative; top:3px !important;}
#mega-menu-top_bar_nav #mega-menu-primary li.mega-menu-item-has-children > a.mega-menu-link > span.mega-indicator::after {width: 24px; height: 24px;}


/*Footer*/
.logo-footer img {width: 183px}
#footer p, #footer .icon-box-text a, #footer .icon-box-text, #footer a {font-size: 16px; color: #fff  }
.social-icons i {font-size: 1em !important;}

#footer .payoff p {font-size: 18px}

#footer ul li {border-top: 0px;}
#footer a:hover {text-decoration: underline}
#footer .menu {margin: -16px 0px 0px 0px}
#footer .display p, #footer .display a{font-size: 16px; text-decoration: none !important}
.absolute-footer {display: none}

#menu-menu-servizio-it, #menu-menu-servizio-eng, #menu-menu-servizio { display: flex; gap: 20px; padding: 0; margin: 0; list-style: none; justify-content: flex-start; margin-top: -4px;}


#footer .social-icons .button.is-outline {background-color:rgba(255,255,255,0.0) ;border: none; border-color: rgba(255,255,255,0.0)}
#footer .social-icons .button.is-outline:hover {background-color:rgba(255,255,255,0) !important ; border-color: rgba(255,255,255,0.5) !important}
#footer .social-icons a {width: 48px !important; height: 48px !important; font-size: 20px !important}
#footer .social-icons {margin-top: -15px}
#footer .section-bg.fill {overflow:hidden;}
#footer .section-bg.fill img {width:100%;height:100%;object-fit:cover;object-position:top center;}



.menu-menu-lingue-container .menu{margin: 0; padding: 0; list-style: none;}
.menu-menu-lingue-container .menu > li{position: relative; display: flex; align-items: center; gap: 6px; margin: 0; padding: 0;}
.menu-menu-lingue-container .menu > li > a{display: flex; align-items: center; gap: 12px; margin: 0; padding: 0; color: #fff; text-decoration: none;}
.menu-menu-lingue-container .menu > li > a::before{content: ""; display: block; width: 28px; height: 28px; flex: 0 0 28px; background: url('/wp-content/themes/flatsome-child/assets/img/mondo.svg') center center/contain no-repeat;}
.menu-menu-lingue-container .toggle{display: flex; align-items: center; justify-content: center; width: 24px; height: 24px; min-width: 24px; min-height: 24px; margin: 0; padding: 0 !important; background: transparent !important; border: 0 !important; box-shadow: none !important; opacity: 1; position: static; transform: none !important;}
.menu-menu-lingue-container .toggle i{display: block; width: 24px; height: 24px; margin: 0; padding: 0; font-size: 20px; line-height: 24px; color: #fff; transform: rotate(0deg); transform-origin: center; transition: transform .25s ease !important;}
.menu-menu-lingue-container .menu > li[aria-expanded="true"] > .toggle i{transform: rotate(180deg) !important;}
.menu-menu-lingue-container .sub-menu{display: none; position: absolute; top: calc(100% + 10px); left: 40px; margin: 0; padding: 0; min-width: max-content; list-style: none; background: transparent; border: 0 !important; box-shadow: none !important;}
.menu-menu-lingue-container .menu > li[aria-expanded="true"] > .sub-menu{display: block;}
.menu-menu-lingue-container .sub-menu li{margin: 0; padding: 0; border: 0 !important;}
.menu-menu-lingue-container .sub-menu a{display: block; margin: 0; padding: 0; color: #fff; text-decoration: none;}
.menu-menu-lingue-container .sub-menu::before,.menu-menu-lingue-container .sub-menu::after,.menu-menu-lingue-container .sub-menu li::before,.menu-menu-lingue-container .sub-menu li::after,.menu-menu-lingue-container .sub-menu a::before,.menu-menu-lingue-container .sub-menu a::after{display: none !important; content: none !important; border: 0 !important;}

.menu-menu-lingue-container .menu > li > a{flex: 0 0 auto !important;}
.menu-menu-lingue-container .toggle{margin-left: 6px !important;}

/*Button*/

.button span { line-height: 1.2;}

.button:hover, .dark .button.is-form:hover, input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover { box-shadow: inset 0 0 0 0px rgba(0,0,0,0);}

.button.white::after{ content:""; position:absolute; left:0; bottom:0; width:100%; height:1px; background:#E3251A; transform:scaleX(0); transform-origin:left; transition:transform .3s ease;}

.button.white:hover::after{transform:scaleX(1);}
.button.white {background:none !important; border:none !important;padding:0 !important;line-height: 3.2em; text-decoration: none !important}

.button, #footer .button {font-family: "DM Sans"; font-weight: 600; font-size: 14px; height: 50px ; line-height: 46px; letter-spacing: -0.01em; text-transform: uppercase }

.success {border: 2px solid #fff;background-color: #fff; color: #E3251A !important; }
.success:hover {background-color: transparent; color: #fff !important; border: 2px solid #fff;}

.alert {border: 2px solid #E3251A;background-color: #fff; color: #E3251A !important; }
.alert:hover {background-color: #E3251A; color: #fff !important; border: 2px solid #E3251A;}

.primary {border: 2px solid; border-color: #E3251A;background-color:#E3251A; color: #fff !important; }
.primary:hover {background-color: transparent;  box-shadow: none;color: #E3251A !important; border: 2px solid #E3251A;}

.secondary {border: 1px solid; border-color: #34A853;background-color:#34A853; color: #fff !important; }
.secondary:hover {background-color: transparent; color: #34A853 !important; border: 1px solid #34A853;}



#header .stuck .success, .page-template-default .header-button .success, .single .success{border: 2px solid; border-color: #E3251A !important;background-color:#E3251A !important; color: #fff !important; }
#header .stuck .success:hover, .page-template-default .header-button .success:hover {background-color: #fff !important; color: #E3251A !important; border: 2px solid #E3251A !important; box-shadow: none !important}

.white.button.is-outline {color: #444 !important; text-transform: none; font-size: 18px}

.bannerini-red .white.button.is-outline { font-size: 17px}
.white.button.is-outline:hover {background:none !important;box-shadow: inset 0 0 0 100px rgba(0,0,0,0);}


.back-to-top {height: auto !important; line-height: 0px !important}


.galleria .flickity-slider > .img { width: 950px !important; min-width: 950px !important; max-width: 950px !important; margin-right: 20px !important; }
.galleria .img-inner { height: 700px; overflow: hidden; }
.galleria .img-inner img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; }

@media (min-width: 550px) and (max-width: 849px) {
.galleria .flickity-slider > .img { width: 650px !important; min-width: 650px !important; max-width: 650px !important;}
}

.video iframe { border-radius: 8px; overflow: hidden; }

.progetti-pagination { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; width: 100%; margin-top: 50px;border: 1px solid transparent; }
.progetti-pagination-prev { justify-self: start; }
.progetti-pagination-next { justify-self: end; }
.progetti-pagination-prev a, .progetti-pagination-next a { display: flex; align-items: center; gap: 20px; color: #444; }
.progetti-pagination-count { text-align: center; }
.pagination-arrow { transition: background-color .3s ease, color .3s ease, border-color .3s ease;display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 8px; background: #ef281d; color: #fff; font-size: 30px; line-height: 1; }

.progetti-pagination a:hover .pagination-arrow { background: #fff; color: #ef281d; border: 1px solid #ef281d; }

@media (max-width: 800px) {
.progetti-pagination-prev a span:not(.pagination-arrow), .progetti-pagination-next a span:not(.pagination-arrow) { display: none; }
}

.post-item {margin-bottom: 40px}

.sts-news-filter { margin-bottom: 60px; }
.sts-news-filter > strong { display: block; margin-bottom: 16px; }
.sts-news-filter-options { display: flex; align-items: center; flex-wrap: wrap; gap: 22px 28px; }
.sts-news-filter-options label { display: inline-flex; align-items: center; gap: 8px; margin: 0; font-weight: 400; cursor: pointer; }
.sts-news-filter-options input[type="radio"] { appearance: none; -webkit-appearance: none; width: 20px; height: 20px; min-width: 20px; margin: 0; position: relative; border: 1px solid #ef281d; border-radius: 50%; background: #fff; cursor: pointer; }
.sts-news-filter-options input[type="radio"]:checked::after { content: ""; position: absolute; width: 10px; height: 10px; top: 4px; left: 4px; border-radius: 50%; background: #ef281d; }



.slider-nav-light .flickity-prev-next-button{width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;max-width:48px!important;max-height:48px!important;padding:0!important;background:rgba(255,255,255,.1)!important;border:1px solid; border-color: rgba(255,255,255,0.2) !important;border-radius:50%!important;box-sizing:border-box;box-shadow:none!important;outline:0!important; opacity: 1}
.slider-nav-light .flickity-prev-next-button .flickity-button-icon{width:30px!important;height:30px!important;}
.slider-nav-circle .flickity-prev-next-button:hover .arrow,.slider-nav-circle .flickity-prev-next-button:hover svg{fill:#fff!important;background:transparent!important;border-color:#efefff!important;}
.slider-nav-light .flickity-prev-next-button:before,.slider-nav-light .flickity-prev-next-button:after{display:none!important;}
.slider-nav-light .flickity-prev-next-button svg,.slider-nav-light .flickity-prev-next-button path{border:0!important;outline:0!important;box-shadow:none!important;stroke:none!important;}

.social-icons .button {height: auto}

.button.cerchio { width: 48px; height: 48px; min-width: 48px; min-height: 48px; padding: 0 !important; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; background: rgba(255,255,255,.1); border: 1px solid ; border-color: rgba(255,255,255,.2); box-sizing: border-box; }

.button.cerchio span { display: none; }

.button.cerchio::before { content: "\f107"; font-family: "fl-icons"; font-size: 20px; line-height: 1; color: currentColor; transform: rotate(-90deg); }


#gs_logo_area_49:not(.verticaltickerdown):not(.verticalticker) .gs_logo_container {margin-right: -100px;}
#gs_logo_area_49:not(.verticaltickerdown):not(.verticalticker) .gs_logo_container { margin-left: -100px;}
#gs_logo_area_49:not(.verticaltickerdown):not(.verticalticker) .gs_logo_single--wrapper {padding: 46px;}


/*Soluzioni*/

.soluzioni .flickity-viewport {width:calc(100% + ((100vw - 100%) / 2)); max-width:none; overflow:visible !important; -webkit-clip-path:inset(-100vw -100vw -100vw 0); clip-path:inset(-100vw -100vw -100vw 0); margin-left:-10px;}
.slider-style-container .flickity-slider > :not(.is-selected) {opacity:1;}
.soluzioni .slider-wrapper {width:100%; max-width:100%; margin-right:0; overflow:visible !important;}
.soluzioni .slider {overflow:visible !important;}

.soluzioni .flickity-prev-next-button {top:auto !important; bottom:-55px !important; width:42px !important; height:40px !important; margin:0 !important; padding:0 !important; border:2px solid #E3251A !important; border-radius:14px !important; background:#E3251A !important; box-shadow:none !important; opacity:1 !important; visibility:visible !important; transform:none !important;}
.soluzioni .flickity-prev-next-button svg {max-width:69% !important; max-height:69% !important; fill:#fff !important;}
.soluzioni .flickity-prev-next-button .arrow {fill:#fff !important;}

.soluzioni h3 a {color:#111111 !important; text-decoration:underline; font-size:23px; transition:color .35s ease;}
.soluzioni h3 a:hover {color:#E3251A !important;}

.soluzioni .img-inner {position:relative; overflow:hidden;}
.soluzioni .img-inner img {display:block; width:100%; opacity:1; transition:opacity .35s ease;}
.soluzioni .slider-hover-video {position:absolute; top:0; left:0; z-index:2; width:100%; height:100%; object-fit:cover; opacity:0; pointer-events:none; transition:opacity .35s ease;}


.soluzioni .video-attivo .img-inner img {opacity:0;}
.soluzioni .video-attivo .slider-hover-video {opacity:1;}
.soluzioni .flickity-slider > .row > .col > .col-inner:hover h3 a {color:#E3251A !important;}

.slider-hover-video{border-radius:8px;}

.soluzioni .flickity-prev-next-button:hover {background:#fff !important; border-color:#E3251A !important;}
.soluzioni .flickity-prev-next-button:hover svg {fill:#E3251A !important;}
.soluzioni .flickity-prev-next-button:hover .arrow {fill:#E3251A !important;}

.soluzioni .flickity-prev-next-button.previous {left:0 !important; right:auto !important;}
.soluzioni .flickity-prev-next-button.next {left:auto !important; right:0 !important;}

.soluzioni .flickity-page-dots {bottom:-38px !important; display:flex !important; align-items:center !important; justify-content:center !important; gap:6px !important;}
.soluzioni .flickity-page-dots .dot {width:10px !important; height:10px !important; margin:0 !important; border:0 !important; border-radius:50% !important; background:#f49490 !important; opacity:1 !important;}
.soluzioni .flickity-page-dots .dot.is-selected {background:#E3251A !important;}

.soluzioni .slider-hover-video {background:#000;}

.soluzioni.fonois .video-attivo .img-inner img { opacity: 1 !important; }
.soluzioni.fonois .slider-hover-video { display: none !important; }

.soluzioni.fonois .image-zoom img { transition: transform .5s ease !important; }
.soluzioni.fonois .image-zoom:hover img { transform: scale(1.08); }


/*Progetti*/

.progetti h3 a {color:#111111 !important; text-decoration:underline; font-size:23px;}
.progetti h3 a:hover {color:#E3251A !important;}

.progetti .col-inner:hover h3 a {color:#E3251A !important;}

.progetti .col {padding-bottom:30px;}
.progetti .progetto-media {position:relative; display:block; width:100%; height:380px; overflow:hidden; border-radius:8px;}
.progetti .progetto-image, .progetti .progetto-video {position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover;}
.progetti .progetto-image {z-index:2; opacity:1; transition:opacity .35s ease;}
.progetti .progetto-video {z-index:1; opacity:0; transition:opacity .35s ease;}
.progetti .col-inner:hover .progetto-image {opacity:0;}
.progetti .col-inner:hover .progetto-video {opacity:1;}
.progetti h3 {margin:16px 0 0;}


/*Rassegna*/

.rassegna-single-links { display: flex; align-items: center; gap: 35px; flex-wrap: wrap;margin-bottom: 50px; }

.rassegna-single-links a { display: inline-flex; align-items: center; gap: 10px; color: #333 !important; text-decoration: none; }

.rassegna-single-links a:hover { color: #333 !important; }

.rassegna-single-links img { width: 20px; height: 20px; display: block; flex-shrink: 0; }

.rassegna-single-links span { line-height: 1; }


.rassegna-single-hero-content > .row, .rassegna-single-breadcrumb .row, .rassegna-single-content > .row{ max-width: 1040px; }
.rassegna-single-hero-content h1 {font-size:clamp(34px,4.8vw,56px);line-height:1.1em;letter-spacing: -0.04em; color: #fff}

.rassegna-single-content {margin-top: 80px}

.rassegna-single-hero { height: 450px; background-size: cover; background-position: center; position: relative; }
.rassegna-single-hero-content { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; padding-bottom: 0px; }
.rassegna-single-logo img { max-width: 280px; height: auto; display: block; }

.rassegna-single-meta-row { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-top: 10px; }

.rassegna-single-actions { display: flex; align-items: center; gap: 35px; }

.rassegna-download, .rassegna-share-toggle { display: inline-flex; align-items: center; gap: 10px; color: #444; font-size: 18px; font-weight: 400; text-transform: none; margin: 0; padding: 0; background: none; border: 0; box-shadow: none; min-height: 0; line-height: 1; cursor: pointer; }

.rassegna-download img, .rassegna-share-toggle img { width: 24px; height: 24px; object-fit: contain; }

.rassegna-share-toggle { font-family: inherit; }

.rassegna-share { position: relative; }

.rassegna-share-icons { position: absolute; top: calc(100% + 10px); right: 0; z-index: 20; background: #E3251A; padding: 12px 14px; border-radius: 32px; box-shadow: 0 8px 24px rgba(0,0,0,.12); white-space: nowrap; }
.rassegna-share-icons .social-icons { display: flex; gap: 6px; flex-wrap: nowrap; }
.rassegna-share-icons .social-icons a { margin: 0; }

.rassegna-single-text { margin-top: 20px; }


.rassegna-online-link { display: inline-flex; align-items: center; gap: 10px; color: #444; }

.rassegna-online-link img { width: 24px; height: 24px; object-fit: contain; }

.social-icons .is-outline {color: #fff;}

@media (max-width: 849px) {
.rassegna-single-meta-row { flex-direction: column; align-items: flex-start; }
.rassegna-single-actions { justify-content: flex-start; }
}



.sts-rassegna-archive { width: 100%; }

/* PRIMO PIANO */
.rassegna-featured { display: grid; grid-template-columns: 175px minmax(0,1fr) 130px; grid-template-rows: auto 1fr; column-gap: 25px; row-gap: 25px; align-items: center; padding: 30px 45px; margin-bottom: 60px; border: 1px solid #ddd; border-radius: 8px; }
.rassegna-featured-label { grid-column: 1; grid-row: 1; align-self: start; color: #ef281d; }
.rassegna-featured-logo { grid-column: 1; grid-row: 2; align-self: center; }
.rassegna-featured-content { grid-column: 2; grid-row: 1 / 3; align-self: center; }
.rassegna-featured-link { grid-column: 3; grid-row: 1 / 3; align-self: center; text-align: right; }

/* LOGHI */
.rassegna-featured-logo img, .rassegna-item-logo img { display: block; max-width: 120px; max-height: 70px; width: auto; height: auto; }

/* TESTI */
.rassegna-date { margin-bottom: 12px; font-size: 13px; }
.rassegna-featured-content h3, .rassegna-item-content h3 { margin: 0 0 14px; }
.rassegna-featured-content h3 a, .rassegna-item-content h3 a { color: inherit; }
.rassegna-excerpt { font-size: 15px; }
.rassegna-featured-link a, .rassegna-item-link a { color: inherit; font-weight: 600; }

/* LISTA */
.rassegna-list { width: 100%; }
.rassegna-item { position: relative; display: grid; grid-template-columns: 180px minmax(0,1fr) 130px; align-items: center; gap: 25px; padding: 25px 0; border: 0; }
.rassegna-item::after { content: ""; position: absolute; left: 50%; bottom: 0; width: 100vw; height: 1px; background: #ddd; transform: translateX(-50%); }
.rassegna-item-link { text-align: right; }

.rassegna-featured, .rassegna-item { cursor: pointer; }
.rassegna-featured-link a, .rassegna-item-link a { transition: color .3s ease; }
.rassegna-featured:hover .rassegna-featured-link a, .rassegna-item:hover .rassegna-item-link a { color: #ef281d; }

.rassegna-featured:hover .button.white::after, .rassegna-item:hover .button.white::after { transform: scaleX(1); }

@media (max-width: 849px) {

.sts-rassegna-archive .rassegna-featured { display: flex !important; flex-direction: column !important; align-items: stretch !important; gap: 22px !important; padding: 28px 25px !important; }
.sts-rassegna-archive .rassegna-featured-label { width: 100% !important; }
.sts-rassegna-archive .rassegna-featured-logo { width: 100% !important; }
.sts-rassegna-archive .rassegna-featured-logo img { max-width: 180px; }
.sts-rassegna-archive .rassegna-featured-content { width: 100% !important; }
.sts-rassegna-archive .rassegna-featured-content h3 { width: 100% !important; }
.sts-rassegna-archive .rassegna-excerpt { width: 100% !important; }
.sts-rassegna-archive .rassegna-featured-link { width: 100% !important; text-align: left !important; margin-top: 5px !important; }
.sts-rassegna-archive .rassegna-featured-link a { display: inline-block !important; text-align: left !important; }

.sts-rassegna-archive .rassegna-item { display: flex !important; flex-direction: column !important; align-items: flex-start !important; gap: 18px !important; padding: 30px 20px !important; }
.sts-rassegna-archive .rassegna-item-logo { width: 100% !important; }
.sts-rassegna-archive .rassegna-item-content { width: 100% !important; }
.sts-rassegna-archive .rassegna-item-link { width: 100% !important; text-align: left !important; margin-top: 0 !important; }
.sts-rassegna-archive .rassegna-item-link a { display: inline-block !important; text-align: left !important; }

.sts-rassegna-archive .button {width: auto !important}


}

/*Varie*/


.applicazioni .col-inner { position: relative; background-color: #edf1f5 !important; transition: background-color .3s ease; }
.applicazioni .col-inner:hover { background-color: #dce3e9 !important; }
.applicazioni a { color: #111111 !important; text-decoration: none !important; }
.applicazioni a::after { content: ""; position: absolute; inset: 0; z-index: 10; }

.scelte-fonois .col-inner { background: rgba(255, 255, 255, .10); border: 1px solid rgba(255, 255, 255, .60); }



@media (min-width:850px){
section.fissa>div.section-content>div.row>div.col:first-child>div.col-inner{position:-webkit-sticky;position:sticky;top:180px;z-index:9999;}
}

.fissa a{color: #444}



.fase-tag { display: inline-block; color: #E3251A; background: #FFEEED; padding: 0px 8px; font-size: 16px; border-radius: 8px;margin-bottom: 20px}
.fase-tag p { margin: 0; }

.fase-tit h3{color: #E3251A; font-size: 25px}


.sopra-breadcrumbs {margin-top: -62px;}
.bkg-right .section-bg .bg {width: 34% !important;
  height: auto !important;
  left: auto !important;
  right: 100px !important;
  top: 49% !important;
  transform: translateY(-50%);}

.bkg-left .section-bg .bg {width: 500px !important; height: auto !important; left: 0px !important; right: auto !important; top: 75% !important; transform: translateY(-50%);}

.bkg-left2 .section-bg .bg {  width: 500px !important;  height: auto !important;  left: 0px !important; right: auto !important;  top: 64% !important;  transform: translateY(-50%);}

.bkg-right2 .section-bg .bg {width: 650px !important; height: auto !important; left: auto !important; right: 0px !important; top: 45% !important; transform: translateY(-50%);}

.bannerini-red:hover > .col-inner {background-color: #FFCDCA !important}
.bannerini-red:hover .button.white::after{transform:scaleX(1);}

.blog-post-inner .is-divider {display: none}
.blog-post-inner .post-title {font-size: 25px; }

.icon-box-top{display:flex;align-items:center;gap:16px;}

.icon-box-top .icon-box-img{margin:0!important;flex-shrink:0;}
.icon-box-top .icon-box-text{display:flex;align-items:center; line-height: 1.2em}
.icon-box-top .icon-box-text p{margin:0;}

.left-dx > .col-inner{padding-left:calc((100vw - 1300px) / 2 + 0px); padding-right:60px;}

/*.breadcrumb {background-color:#fff;}*/
.breadcrumb a, .breadcrumb span {font-size: 18px; color: #1F0202 !important ; letter-spacing: -0.03em;}
.breadcrumb .col-inner {margin: 16px 0px -14px 0px; color: #1F0202 !important}
.breadcrumb_last {font-weight: bold}

.header-inner .nav li:last-child { margin-right: 10px !important;}

.logo-left .logo { margin-right: 10px;}

.header-button-1 {margin-left: 0px !important}

/*Form*/

.form-preventivo{width:100%;}
.form-row{display:flex; gap:16px; width:100%;}
.form-field{position:relative; width:50%; margin-bottom:24px;}
.form-preventivo .form-field-full{width:100%;}
.form-field label{display:block; margin-bottom:10px; color:#444;}
.form-field label span{color:#E3251A;}
.form-field input,.form-field select,.form-field textarea{width:100%; margin:0; padding:0 14px; border:0; border-radius:10px; background:#FFF; box-shadow:none;}
.form-field input,.form-field select{height:56px;}
.form-field textarea{height:175px; padding-top:14px; resize:vertical;}
.form-field select{appearance:none; -webkit-appearance:none; padding-right:45px; cursor:pointer; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='8' viewBox='0 0 14 8'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%23E3251A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 18px center; background-size:14px 8px;}
.form-field .wpcf7-form-control-wrap{display:block;}
.privacy-field{margin-bottom:25px;}
.privacy-field .wpcf7-list-item{margin:0;}
.privacy-field label{display:flex; align-items:flex-start; gap:10px;}
.privacy-field input[type="checkbox"]{width:17px; height:17px; margin:2px 0 0; flex:0 0 17px;}
.privacy-field p{margin:8px 0 0;}
.privacy-field a{text-decoration:underline;}
.form-submit input{width:100%; height:54px; margin:0; border:0; border-radius:10px; background:#E3251A; color:#FFF; cursor:pointer; font-size: 14px; font-weight: 600}
.wpcf7-spinner{display:none;}
.wpcf7-not-valid-tip{margin-top:5px;}

.form-field input[type="file"] { height:auto; padding:0; background:transparent; border-radius:0; }

.wpcf7 .wpcf7-not-valid-tip { background-color: #e3251a; color: #fff; opacity: .8;margin-top: 0px;}
.wpcf7 .wpcf7-not-valid-tip::after {border: 10px solid rgba(227, 37, 26, 0); border-bottom-color: rgba(227, 37, 26, 0);
border-bottom-color: #e3251a;}


.newsletter{position:relative; width:100%;}
.newsletter .wpcf7-form-control-wrap{display:block; width:40%; margin:0 auto;}
.newsletter input[type="email"]{width:100%; height:56px; margin:0; padding:0 130px 0 22px; border:2px solid #fff; border-radius:30px; background:rgba(255,255,255,.12); box-shadow:none; box-sizing:border-box; color:#fff;}
.newsletter input[type="email"]::placeholder{color:rgba(255,255,255,.75); opacity:1;}
.newsletter input[type="email"]:focus{border:2px solid #fff; outline:0; box-shadow:none;}
.newsletter input[type="submit"]{position:absolute; top:0; right:30%; width:108px; height:56px; margin:0; padding:0; border:0; border-radius:30px; background:#fff; color:#444; box-shadow:none; cursor:pointer;font-size: 14px; font-weight: 600}

.newsletter input[type="submit"]:hover{background:#E3251A; color:#fff; }

@media (max-width: 550px) {
.icon-box.icon-box-top { display: flex !important; flex-direction: column !important; align-items: center !important; }
.icon-box.icon-box-top .icon-box-img { margin: 0 auto 15px !important; }
.icon-box.icon-box-top .icon-box-text { width: 100%; text-align: center !important;  display: block!important}
.icon-box.icon-box-top .icon-box-text p { text-align: center !important; }
}

@media only screen and (max-width: 48em) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/

.fissa .button, .blog-post-inner .button {width: auto !important}

.transparent .header-main {height: 70px !important}


#gs_logo_area_49:not(.verticaltickerdown):not(.verticalticker) .gs_logo_container {margin-right: -15px;}
#gs_logo_area_49:not(.verticaltickerdown):not(.verticalticker) .gs_logo_container { margin-left: -15px;}
#gs_logo_area_49:not(.verticaltickerdown):not(.verticalticker) .gs_logo_single--wrapper { padding: 10px;}

.soluzioni .flickity-viewport {margin-left: -10px}
.soluzioni .slider-wrapper .flickity-prev-next-button {display: block;}
.soluzioni .flickity-page-dots {bottom: -8px!important; }
.soluzioni .flickity-prev-next-button {bottom: -25px!important;}

.progetti h3 a, .soluzioni h3 a {font-size:20px;}

.riga-dx .col-inner .is-border {border: 0px !important}

.icon-box-left .icon-box-img + .icon-box-text {padding-left: 0.2em;}

.social-icons {margin-left: auto !important; margin-right: auto !important;text-align: center !important;}

.button {width: 100%;}

.back-to-top {width: auto !important;}

.header #top-bar, .header #masthead  {padding: 0 0px;}

.bkg-right .section-bg .bg, .bkg-right2 .section-bg .bg, .bkg-left .section-bg .bg, .bkg-left2 .section-bg .bg {display: none}

:is(#override, .galleria) .flickity-slider > .img { width: 85vw !important; min-width: 85vw !important; max-width: 85vw !important; margin-right: 10px !important; }
.galleria .img-inner { width: 100% !important; height: 300px; }
.galleria .img-inner img { width: 100% !important; height: 100% !important; max-width: 100% !important; object-fit: cover; }

.sts-post-featured { width: 100%; height: 360px; overflow: hidden; }
.sts-post-header  {min-height: 250px; background: #f7f7f7}

.newsletter .wpcf7-form-control-wrap{display:block; width:100%; margin:0 auto;}
.newsletter input[type="submit"]{position:absolute; top:0; right:0%; width:108px; height:56px; margin:0; padding:0; border:0; border-radius:30px; background:#fff; color:#444; font-weight:500; box-shadow:none; cursor:pointer;}

}

@media (min-width:1950px){
.bkg-right .section-bg .bg {width: 25% !important; }
}

@media (max-width:1300px){

.nav-dark .nav > .nav-icon > a:hover {color: #E3251A}
.nav > li > a > i.icon-menu {font-size: 2.4em;}
#header .header-inner .hide-for-medium { display: none !important; }
#header .header-inner .show-for-medium { display: flex !important;}
.off-canvas .nav-vertical > li > a {padding-bottom: 10px;  padding-top: 10px;}
.off-canvas:not(.off-canvas-center) .nav-vertical .sub-menu .sub-menu li > a {padding-left: 36px;}
.off-canvas-right.dark .mfp-content {background-color:  rgba(29,2,2,.85) !important;}
.mfp-content .nav > li a {font-size: 0.9em; text-transform: uppercase}

.mfp-wrap, .mfp-container, .mfp-close { mix-blend-mode: normal !important; filter: none !important; }
.mfp-ready .mfp-close {opacity: 1; top: 15px; right: 15px}
.mfp-content .nav-sidebar {margin-top: 50px}
.dark .nav > li > a, .dark .nav-vertical > li > ul li a {color: #fff}
.home .nav-dark .nav > li > a {color: #fff}

.nav-dark .nav > li > a, .stuck .nav-dark .nav > li > a {color: #E3251A}

.sidebar-menu .nav-slide-header button {font-size: 0.9em !important}
.sidebar-menu .toggle{opacity: 1!important; margin-right: 13px}
.sidebar-menu .toggle i{opacity: 1!important; color: #fff!important; font-size: 1.8em !important}
.sidebar-menu .toggle i::before{opacity: 1!important; color: #fff!important;}

.mobile-sidebar-levels-1 .nav-slide > li > .sub-menu, .mobile-sidebar-levels-1 .nav-slide > li > ul.children {margin-bottom: 80px }

.mfp-wrap.dark {color: #fff !important;}

.nav-sidebar.nav-vertical > li + li {border-top: none;}

.nav-vertical li li.menu-item-has-children > a {color: #fff; font-size: 0.9em; font-weight: 400; text-transform: uppercase;}

.header-social-icons .follow-icons{gap:12px;}
.header-social-icons .follow-icons>a{width:auto;padding:0;}
.header-social-icons .follow-icons>a:not(:last-child)::after,.header-social-icons .follow-icons::before,.header-social-icons .follow-icons::after{display:none!important;}
.header-social-icons .icon-facebook,.header-social-icons .icon-linkedin,.header-social-icons .icon-youtube{transform:none!important;}

.mfp-content .social-icons i {font-size: 1.6em !important;}

}



@media (max-width:850px){

.bannerini-red .row > .col{flex-basis:100%!important;max-width:100%!important;width:100%!important;}
.icon-box-top .icon-box-text .text{text-align:center!important;}
.icon-box-top{display:block!important;text-align:center;}
.icon-box-top .icon-box-img{margin:0 auto 20px!important;}
.icon-box-top .icon-box-text{display:block;text-align:center;}
.text-right{text-align:center!important;}
.button{margin:0px auto 0;}

}


@media(max-width:549px){
#header .stuck .header-main {height: 70px !important;}
.header #top-bar, .header #masthead  {padding: 0 0px;}
.form-row{display:block;}
.form-field{width:100%;}
}



@media (min-width: 850px) and (max-width: 1150px) {
  #masthead .hide-for-medium { display: none !important; }
  #masthead .show-for-medium { display: block !important; }
  #masthead .header-inner { display: flex !important; }
  #masthead .show-for-medium.flex-right { display: flex !important; margin-left: auto; }
  #masthead .mobile-nav { display: flex !important; align-items: center; }
  #masthead .nav-icon { display: block !important; }
  
}
