@import url("_reset.css");
@import url("_columns.css");
@import url("_sections.css");
@import url("_modules.css");
@import url("_plugins.css");
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&family=Raleway:ital,wght@0,100..900;1,100..900&display=swap');

/* struttura */
html { font-family: "Raleway", sans-serif; font-size:16px; background:var(--css-html-bg-color);  }
#wrapper { position:relative; z-index:1; width:100%; overflow:hidden; letter-spacing:.3px; margin:0 auto; max-width:2560px; }
.innerTpl { position:relative; max-width: var(--css-innerTpl-max-width); margin:0 auto; }
.hide-desktop { display:none; }
::-webkit-scrollbar              { background:#EEE; width:10px; height:5px; }
::-webkit-scrollbar-button       { }
::-webkit-scrollbar-track        { }
::-webkit-scrollbar-track-piece  { }
::-webkit-scrollbar-track-piece:start {  }
::-webkit-scrollbar-thumb        { background:var(--css-color-active); }
::-webkit-scrollbar-thumb:window-inactive { }
::-webkit-scrollbar-button:horizontal:decrement:hover {}
::-webkit-scrollbar-corner       { }
::-webkit-resizer                { }

/* testi */
h1, h2, h3, h4, .title, .subtitle, .text { position:relative; -webkit-font-smoothing: antialiased; word-wrap: break-word; font-smoothing: antialiased; }
h1, h2, h3, h4, .title { font-family: "Outfit", sans-serif; margin-bottom:35px; }
h1,
.title { font-size:2.75rem; line-height:3.25rem; font-weight:700; color: var(--css-font-title-color); }
h2,
.subtitle { font-size:2rem; line-height:2.5rem; font-weight:700; color: var(--css-font-subtitle-color); }
h3 { font-size:1.75rem; line-height:2.25rem; font-weight:600; color: var(--css-font-subtitle-color); }
h4 { font-size:1.5rem; line-height:2rem; font-weight:600; color: var(--css-font-subtitle-color); }
.kicker { font-size:1.375rem; line-height:1.5rem; font-weight:400; color: var(--css-font-text-color); margin-bottom: 50px; text-transform: uppercase; }
.text { font-size:1.2rem; line-height:1.75rem; color: var(--css-font-text-color); }
.text p { margin:0 0 15px 0; }
.text img { max-width:100% !important; height:auto !important; }
.title a,
.subtitle a,
.text a { color: var(--css-font-text-link-color); border-bottom:1px solid var(--css-font-text-link-color); -webkit-transition: .25s ease-in-out; -moz-transition: .25s ease-in-out; -o-transition: .25s ease-in-out; transition: .25s ease-in-out;  }
.title a:hover,
.subtitle a:hover,
.text a:hover { border-color:transparent; }
.title ul li,
.subtitle ul li,
.text ul li { list-style-type:disc; margin-left:25px; }
.title ol li,
.subtitle ol li,
.text ol li { list-style-type:decimal; margin-left:25px; }
strong, b { font-weight:700; }
em, .em { font-style:italic; }

/* misc */
hr { background:#DDD; height:1px; color:#DDD; border:0; margin:20px 0; width:100%; }
hr:after { content: ""; display: block; clear:both; }
.fa, .fab, .fad, .fal, .far, .fas { color:var(--css-button-color); font-size:24px; position:relative; margin:0 3px; }
.button { font-size:0.875rem; text-transform:uppercase; padding:15px 45px 15px; margin:25px 0 0 0; text-align:center; display:inline-block; color:#FFF; cursor:pointer; border:0; background:var(--css-button-color); -webkit-transition: .5s ease-in-out; -moz-transition: .5s ease-in-out; -o-transition: .5s ease-in-out; transition: .5s ease-in-out; }
.button:hover { background:var(--css-button-color-active); }
.button.right { float:right; }
.transition-050 { -webkit-transition: .5s ease-in-out; -moz-transition: .5s ease-in-out; -o-transition: .5s ease-in-out; transition: .5s ease-in-out; }
.transition-025 { -webkit-transition: .25s ease-in-out; -moz-transition: .25s ease-in-out; -o-transition: .25s ease-in-out; transition: .25s ease-in-out; }
#goToTop { position:fixed; z-index:3; right:-51px; bottom:45px; border:0; width:48px; height:48px; background:var(--css-button-color); display:block; cursor:pointer; text-align:center; opacity: 0.5; border-radius:50%; }
#goToTop:hover { background:var(--css-color-active); opacity: 1; }
#goToTop i { color:#FFF; line-height:48px; font-size:30px; }
#goToTop:hover i { color:#FFF; }	
#easyMessage { position:fixed; top:0px;  z-index:990; width:100%; height:100%;  }
#easyMessage .bg { z-index:991; position:absolute; top:0; left:0; width:100%; height:100%; background:#FFF; opacity:0.7;  }
#easyMessage .content { z-index:991; position:absolute; top:30%; width:500px; left:calc(50% - 300px);  padding:25px; background:#FFF; min-height:100px; border:1px solid #DDD; }
#easyMessage .content .close { position:absolute; z-index:991;  top:20px; right:20px; cursor:pointer; font-size:30px; color:#BBB; }
#easyMessage .content .close:hover { color:#005da7; }
#easyMessage .content .title { font-size:1.25rem; line-height:1.5rem; margin:0 0 20px 0; max-width:calc(100% - 40px); color:#005da7; }
#easyMessage .content .text { font-size:1.05rem; line-height:1.85rem; color:#666; }

/* header */
.header { position:relative; width:100%; z-index:5; background:var(--css-header-bg-color); }
.header:after { content: ""; display: block; clear:both; }
.header .column { height:100px; -webkit-transition: .5s ease-in-out; -moz-transition: .5s ease-in-out; -o-transition: .5s ease-in-out; transition: .5s ease-in-out; overflow:visible;  }
.header .column img.logo { margin-top:20px; max-height:60px; -webkit-transition: .5s ease-in-out; -moz-transition: .5s ease-in-out; -o-transition: .5s ease-in-out; transition: .5s ease-in-out;  }
.header .text { font-size:1rem; float:right; margin:47px 100px 0 0; color:#999; }
body.scrolled .header .text { margin-top:25px; }
.header .text a { color:#999; border-color:#DDD; padding-bottom:2px; }
.header .text a:hover {  border-color:transparent; }

.header .navOpenButton-wrapper { position: relative; float:right; text-align: center; width: 100px; height: 80px; padding: 10px; margin:0 0px 0 0;  }
    body[alternative-header="1"] .header .navOpenButton-wrapper { background: #FFF; }
    body.scrolled .header .navOpenButton-wrapper { background: none; }
.header .navOpenButton { display: inline-block; margin: 12px 0 0 0; width: 60px; height: 40px; position: relative; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); cursor: pointer; }
.header .navOpenButton span { display: block; position: absolute; height: 3px; width: 100%;  background:var(--css-button-color); border-radius:1px; opacity:1; left: 0; writing-mode: vertical-lr; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); }
.header .navOpenButton:hover span { width: 60px; }
.header .navOpenButton span:nth-child(1) { top: 0px; width: 60px; }
.header .navOpenButton span:nth-child(2) { top: 12px; width: 40px; left:20px; }
.header .navOpenButton span:nth-child(3) { top: 24px; width: 48px; left:12px; }
.header .navOpenButton:hover span:nth-child(1) { left:0; width: 60px; }
.header .navOpenButton:hover span:nth-child(2) { left:0; width: 60px; }
.header .navOpenButton:hover span:nth-child(3) { left:0; width: 60px; }
.header .navOpenButton.open span:nth-child(1) { width:50px; left:5px; top: 10px; -webkit-transform: rotate(135deg); -moz-transform: rotate(135deg); -o-transform: rotate(135deg); transform: rotate(135deg); }
.header .navOpenButton.open span:nth-child(2) { opacity: 0; }
.header .navOpenButton.open span:nth-child(3) { width:50px; left:5px; top: 10px; -webkit-transform: rotate(-135deg);  -moz-transform: rotate(-135deg); -o-transform: rotate(-135deg); transform: rotate(-135deg); }	

.header .navOpenButton-wrapper .label-menu { text-transform: uppercase; font-size: .95rem; position: absolute; bottom: 20px; left: 0; right: 0; margin: auto; }
    .header .navOpenButton-wrapper:hover .label-menu { color:  var(--css-color-active); font-weight:700; }
body.scrolled .header .navOpenButton-wrapper .label-menu { right:-15px; }

.header .chooseLang { float: right; margin:35px 175px 0 0;  }
.header .chooseLang .label-lingua { text-transform: uppercase; font-size: .95rem; display:inline-block; color:var(--css-color-active); margin:0 10px 0 0; position:relative; top:-1px; }
.header .chooseLang a { font-size:1.3rem; color:var(--css-color-active); display:inline-block; margin:0 10px; }
.header .chooseLang a:hover { font-weight:600; }
.header .chooseLang a.selected { font-weight:600; border-bottom:1px solid var(--css-color-active);  }
    
    body[alternative-header="1"] .header .chooseLang .label-lingua { color:#FFF; }
    body[alternative-header="1"] .header .chooseLang a { color:#FFF; }
    body[alternative-header="1"] .header .chooseLang a.selected { border-color:#FFF;  }
    
    body.scrolled .header .chooseLang { margin-top:25px; }
    body.scrolled .header .chooseLang .label-lingua { color:var(--css-color-active); }
    body.scrolled .header .chooseLang a { color:var(--css-color-active); font-size:1.2rem; }
    body.scrolled .header .chooseLang a.selected{ border-color:var(--css-color-active); }

body.scrolled .header { position:fixed; background: #FFF; box-shadow: 0 0 15px 1px rgb(0 0 0 / 20%); }
body.scrolled .header .column { height:80px; }
body.scrolled .header .column img.logo { margin-top:15px; max-height:50px; }
body.scrolled .header .navOpenButton { margin-top:5px; }
body.scrolled .header .navOpenButton-wrapper { background: transparent; height: 60px; }
body.scrolled .header .navOpenButton-wrapper .label-menu { bottom: 15px; }

body[alternative-header="1"] .header { position:fixed; left:0; top:0; width:100%; z-index:5; background:#00000020; }
body[alternative-header="1"] .header .column img.logo { filter: brightness(0) invert(1); }

body.scrolled[alternative-header="1"] .header { background:#FFF; }
body.scrolled[alternative-header="1"] .header .column img.logo { filter: brightness(1) invert(0); }


/* nav */
#navMobileBg { display:none; position:fixed; z-index:3; top:0; left:0; height:100%;  background:var(--css-color-active); width:100%; }

#navMobile { position:fixed; top:0; top:-100%; z-index:4; width:100%; height:100%; overflow-y:auto; }
#navMobile .menu { padding:120px 8% 75px 8%; margin:0 auto; text-align: center; }
#navMobile .menu ul {   }
#navMobile .menu ul li { position:relative; }
#navMobile .menu ul li:first-child { padding-top:0; }
#navMobile .menu ul li.l1 { margin-top:10px; }
#navMobile .menu ul li.l1[attr="0"]:after { content:""; display:none; }
#navMobile .menu ul li a { color:#FFF; }
#navMobile .menu ul li.l1 { padding:5px 0; }
#navMobile .menu ul li.l1 a {  font-size:4.25rem; line-height:5rem; font-weight: 300; }
#navMobile .menu ul li a:hover { color:#CCC;   }
#navMobile .menu ul.l2 { margin:0; padding:10px 0 25px 40px;  }
#navMobile .menu ul li.l2 { padding:6px 0;}
#navMobile .menu ul li.l2 a { font-size:2.5rem; line-height:3.5rem;  font-weight: 300; }
#navMobile .menu ul li.selected a { font-weight: 300; }
#navMobile .menu ul li .open { display:inline-block; margin:0 0 0 10px;  position:relative; top:-4px; cursor:pointer; opacity:0.7; }
#navMobile .menu ul li .open:after { content: "\f078"; font-family: "Font Awesome 6 Pro"; font-weight:900; font-size: 16px; color:#FFF; line-height:1.75rem; }
#navMobile .menu ul li .open.active:after { content: "\f077"; }
#navMobile .menu ul li .open:hover { opacity:1; }
#navMobile .navOpenButton { z-index:10; top:40px; right:8%; width: 60px; height: 40px; position: absolute; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); cursor: pointer; }
#navMobile .navOpenButton span { display: block; position: absolute; height: 3px; width: 60px;  background: #FFF; opacity: 1; left: 0; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); }
#navMobile .navOpenButton:hover span { background:#FFF; }
#navMobile .navOpenButton.open span:nth-child(1) { width:50px; top: 10px; -webkit-transform: rotate(135deg); -moz-transform: rotate(135deg); -o-transform: rotate(135deg); transform: rotate(135deg); }
#navMobile .navOpenButton.open span:nth-child(2) { opacity: 0; }
#navMobile .navOpenButton.open span:nth-child(3) { width:50px; top: 10px; -webkit-transform: rotate(-135deg);  -moz-transform: rotate(-135deg); -o-transform: rotate(-135deg); transform: rotate(-135deg); }	

#navMobile .chooseLang { position:absolute; left:4%; top:40px;  }
#navMobile .chooseLang .label-lingua { text-transform: uppercase; font-size:1rem; display:inline-block; margin:0 15px 0 0; position:relative; top:-1px; color:#FFF; }
#navMobile .chooseLang a { font-size:1.3rem; color:#FFF; display:inline-block; margin:0 5px; padding-bottom:2px; }
#navMobile .chooseLang a.selected { font-weight:600; border-bottom:1px solid #FFF;  }


#nav2 { margin:0 auto 30px auto; }
#nav2:after { content: ""; display: block; clear:both; }
#nav2 .c10 { border-top:1px solid #000; border-bottom:1px solid #000; padding:15px 0; }
#nav2 ul { }
#nav2 ul li { display:inline-block; }
#nav2 ul li.sep { margin:0 20px; width:1px; background:#000; height:15px; }
#nav2 ul li.sep:nth-child(2) { display:none; }
#nav2 ul li.parent { margin:0 30px 0 0; }
#nav2 ul li.lv2 a,
#nav2 ul li.parent a { font-size:0.95rem; line-height:1.75rem; color:#000; font-weight:700; }
#nav2 ul li.parent a { background:var(--css-color-active); padding:5px 7px; text-transform:uppercase; }
#nav2 ul li.lv2 a:hover { border-bottom:1px solid #000; }
#nav2 ul li.lv2 a.selected { color:#FFF; background:#000; padding:5px 7px; }
#nav2 ul li.lv2 a.selected:hover { border-bottom:0; }


/* footer */
#footer { background:var(--css-footer-bg-color); padding:80px 0 100px 0; margin:50px 0 0 0;  }
#footer:before { content: ""; display: block; clear:both; }
#footer:after { content: ""; display: block; clear:both; }
#footer .c4 { padding-right: 4%; }
#footer .text { font-size:1rem; line-height:1.75rem; color:#FFF; }
#footer .title a, 
#footer .text a { color:#FFF; border-bottom:1px solid #FFFFFF50; padding-bottom: 2px; }
#footer .title a:hover, 
#footer .text a:hover { border-bottom:1px solid #FFF; }

#footer .social { float:right; padding:0; }
#footer .social .text { font-size:1rem; font-weight:700; margin:8px 20px 0 0; float:left; text-transform:uppercase; }
#footer .social i { color:#FFFFFF90; position:relative; font-size:30px; text-align:center; padding:6px 5px 4px 6px; }
#footer .social i:hover { color:#FFF; }
#footer .social i a { position:absolute; top:0; left:0; width:100%; height:100%; }		

#incipit  { background:var(--css-footer-bg-color); padding: 15px 0; text-align: center; }
#incipit .text { font-size: 0.9rem; line-height: 1.5rem; color: #AAA; }
#incipit .text a { color: #AAA; border-color:#ccc; }
#incipit .text a:hover { color: #FFF; border-color: transparent;}	

/* form */
form { position:relative; }
form .column { padding:0 0 30px 0; }	

section.section input,
section.section select,
section.section textarea,
section.section label {  font:400 16px/45px "Outfit", sans-serif; position:relative; color:var(--css-font-text-color); -webkit-box-sizing:border-box; box-sizing: border-box; }
section.section input,
section.section select,
section.section textarea { border:1px solid #DDD; width:100%; padding:0 15px; margin:0 0 15px 0;  }
section.section input.on,
section.section select.on,
section.section textarea.on { border-left:4px solid #F00; }		
section.section input,
section.section select { height:45px; }	
section.section input.on,
form select.on {  }
section.section label .mandatory { display:inline; color:var(--css-font-text-color); font-weight:700; font-size:20px; line-height:45px; }
section.section textarea { height:100px;}
section.section input.checkbox { width:20px; height:20px; border:1px solid #CCC; }

/* template */ 
#template { position:relative; z-index:1; width:100%; height:100%; margin:0; padding-top:0;  }
    body.scrolled #template { padding-top: 80px; }

body[alternative-header="1"][preview="1"] #template { padding-top: 100px; }

/* sezioni */

/* Juicer */

.section.social-wall { padding:75px 0; background:#FFF; }

.section.social-wall  .container { z-index: 2; position: relative; top: -470px; }
.section.social-wall h1 {position: relative;color: rgba(251,251,251,1);font-size: 177px;z-index: 1;font-weight: 900; top: -300px;left: 80px;}
.section.social-wall h1.referral { display:none; }
.section.social-wall .juicer-ad { display:none; }
.section.social-wall .j-stacker-wrapper { margin-top:60px; }
.section.social-wall .j-poster-meta { position:absolute; top:0; width:100%; background:#FFF; }
.section.social-wall .j-text-container { margin-top:56px; }
.section.social-wall .juicer-feed .j-paginate { color:#FFF; border:0; background:#003366; padding:12px 20px; }
.section.social-wall .juicer-feed .j-paginate:hover { background:#999; color:#FFF;  }
.section.social-wall .j-message p { color:#777; font-weight: 400;  }
.section.social-wall .j-meta { margin-bottom: 7px; }
.section.social-wall .j-meta a { color:#003366; }
.section.social-wall .j-meta a:hover { color:#999; }
.section.social-wall .j-meta a.j-social { font-size: 2rem; } 

.section.social-wall .juicer-feed.modern li.feed-item:hover { background:#003366; }
.section.social-wall .juicer-feed.modern li.feed-item:hover h3, 
.section.social-wall .juicer-feed.modern li.feed-item:hover .j-date,
.section.social-wall .juicer-feed.modern li.feed-item:hover .j-meta a,
.section.social-wall .juicer-feed.modern li.feed-item:hover  .j-message p { color: #FFF; }



@media (max-width: 1921px) {

/* testi */

/* header */
    body.scrolled .header .chooseLang { margin-top:30px; }
/* nav */	

/* sezioni */

}

@media (max-width: 1441px) {

/* testi */

/* struttura */	
#wrapper .innerTpl { max-width:100%; }	

/* header */
    .header .chooseLang { margin-right:125px; }
/* nav */	

/* sezioni */

}

@media (max-width: 1281px) {

/* struttura */	
html { font-size: 14px; }

/* header */
body.scrolled .header .navOpenButton-wrapper .label-menu { right:-18px; }
    
/* nav */	

/* sezioni */

}

@media (max-width: 1025px) {



/* struttura */	
html { font-size: 13px; }
.hide-desktop  { display:block; }
.hide-tablet { display:none; }	

/* nav */

/* header */	
    .header .column img.logo { margin-top:25px; }
    body.scrolled .header .column img.logo { margin-top: 15px; }
    body.scrolled .header .navOpenButton-wrapper .label-menu { right:-20px; }
    .header .chooseLang { margin-right:50px; }
    .header .chooseLang .label-lingua { margin-right:5px; }
    
/* footer */

/* sezioni */

    .section.social-wall h1 {display: none;}
    .section.social-wall .container {top: 0;}    
}



@media only screen 
and (min-device-width : 768px) 
and (max-device-width : 1024px) 
and (orientation : portrait) { 

}

@media (max-width: 769px) {

/* testi */

/* struttura */	
html { font-size: 12px; }

/* nav */
#nav2 .c10 { overflow-x: auto;  }
#nav2 ul { width:max-content; }

/* misc */	
hr { margin:15px 0; }

/* header */
    .header .column img.logo { margin-top:30px; }
    body.scrolled .header .column img.logo { margin-top: 20px; }
    body.scrolled .header .navOpenButton-wrapper .label-menu { right:-25px; }
    .header .chooseLang { margin-right:30px; }
    .header .chooseLang a { margin:0 5px; }

/* footer */
#incipit .text p { text-align: center !important; }

/* sezioni */


/* footer */	
#footer { padding:75px 0 100px; margin:30px 0 0 0; }
#footer .tp12 { padding:25px 0; text-align:center; }
#footer .social { float:none; }
#footer .social .text { display:block; float:none; margin:0 0 -5px 0; }
}

@media (max-width: 641px) {

/* struttura */	
html { font-size: 14px; }	
.hide-desktop  { display:block; }
.hide-tablet { display:block; }
.hide-mobile { display:none; }

/* misc */	
#easyMessage .content { top:15%; width:calc(90% - 50px); left:5%; }

/* testi */
.kicker { line-height:1.75rem; }

/* header */	    
.header .text { display:none; }
.header .column { height:80px; }
.header .navOpenButton-wrapper { height: 60px; width:70px;  }
.header .navOpenButton { margin-top: 8px; }
.header .navOpenButton-wrapper .label-menu { bottom:10px; }
    body.scrolled .header .column img.logo { margin-top: 30px; }
    body.scrolled .header .navOpenButton { margin-top:8px; }
    body.scrolled .header .navOpenButton-wrapper .label-menu { bottom:10px; right:-20px; }
.header .chooseLang { display:none; }

/* nav */		
#navMobile .menu { padding-top:100px; }
#navMobile .menu ul li.l1 a {  font-size:2.5rem; line-height:3rem;}
#navMobile .menu ul li.l2 a { font-size:2rem; line-height:3rem; }    

/* footer */
#footer .c3 { min-height:auto;  }

/* sezioni */

}

@media (max-width: 321px) {

}


