/*
Theme Name: 	NF
Description: 	Responsive WordPress Theme.
Version:     	1.0
Author:     	Mauro Mandelli
Author URI:
Site:
Text Domain: 	nakedpress
Domain Path: 	/languages
Tags:        	grid-layout, blog, custom-menu, featured-images, right-sidebar
License:    	GNU General Public License v3.0
License URI:	http://www.gnu.org/licenses/gpl-3.0.html

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/


body, html { margin: 0; padding: 0; height: 100vh;background: #fafafa;}
body.admin-bar .navbar-fixed-top { position: fixed; top: 32px; z-index: 1000;}

/* ------------------------------------------------------------------------- *
/* ! Base */
/* ------------------------------------------------------------------------- */

body{font-family: lato; color:#000}

/* ! Transitions */

.transition-fade {  transition: 0.4s;  opacity: 1; }
html.is-animating .transition-fade { opacity: 0; }

.preloader{background: #fff url('img/oval.svg') no-repeat center center; background-size: 200px;  position: fixed;top:0;left:0;width: 100%;height: 100%;z-index: 9999;}

@font-face {
  font-family: 'Neue Montreal';
  src: url('fonts/NeueMontreal-Medium.woff2') format('woff2'),
  url('NeueMontreal-Medium.woff') format('woff');
}

.scroll-container{overflow:hidden;}
.container{ margin: 0 auto; max-width: 1200px;}
.grid{padding: 0 20px;}


/* ! Typography */

p{ font-size: 18px;line-height: 28px;}

h1, h2, h3, h4 {font-family: 'Neue Montreal';}

.headyear{font-size: 120px;margin: 0 0 20px 0; }
.headline{font-size: 90px;margin: 0 0 20px 0; }
.subheadline{font-size: 60px;margin: 0 0 20px 0; }
.title{font-size: 50px;margin: 0 0 20px 0; }
.subtitle{font-size: 25px;margin: 0 0 20px 0; }

@media (max-width: 768px) {
  .headyear{font-size: 60px;}
  .headline{font-size: 50px;}
  .subheadline{font-size: 40px;}
  .title{font-size: 25px;}
  .subtitle{font-size: 20px;}
}

/* ! Helpers */

.margin-top{margin-top: 50px!important;}
.margin-bottom{margin-bottom: 50px!important;}
.margin-right{margin-right: 50px!important;}
.margin-left{margin-left: 50px!important;}
.margin-top-big{margin-top: 150px!important;}
.margin-bottom-big{margin-bottom: 150px!important;}

@media (max-width: 768px) {

  .margin-top-big{margin-top: 50px!important;}
  .margin-bottom-big{margin-bottom: 50px!important;}

  .margin-bottom-xs-small{margin-bottom: 20px!important;}
}

.img-res{width: 100%;}
.opacity-2{opacity: 0.2;}
.opacity-5{opacity: 0.5;}

.padding-all{padding: 20px;}
.padding-none{padding: 0px;}
.padding-left{padding-left: 20px;}
.padding-right{padding-right: 20px;}
.padding-left-big{padding-left: 40px;}
.padding-right-big{padding-right: 40px;}

@media (max-width: 768px) {
  .margin-bottom-xs{margin-bottom: 50px!important;}

  .padding-left-xs-none{padding-left: 0;}
  .padding-right-xs-none{padding-right: 0;}
}

.uppercase{text-transform: uppercase;}

.order-1{order: 1;}
.order-2{order: 2;}

@media (max-width: 768px) {
  .order-xs-1{order: 1;}
  .order-xs-2{order: 2;}
}


.text-red{color:#ed1d24}
.text-grey{color:#888;}

body{transition: all 1s cubic-bezier(.215, .61, .355, 1);}
.bg-red{background: #FF284F;}
.bg-yellow{background: #FFCC01;}
.bg-green{background: #09F4A5;}

figure.wp-block-image{ margin: 0;}
.wp-block-image img{ object-fit: cover; max-width: unset;width: 100%;aspect-ratio: unset;height: auto;}


/* Link color */
a{ color: #ed1d24;  text-decoration: none;transition: all .3s cubic-bezier(.215, .61, .355, 1);}
/*a:focus, a:hover {}*/


/* ! Button */

.button{display: inline-block;color:#ed1d24; border: 3px solid #ed1d24; padding: 10px 20px;margin-top: 15px;text-align: center;position: relative;overflow: hidden;transition: all 0.3s cubic-bezier(0.28, 0.44, 0.49, 1);}
.button:before{content: ' '; width: 100%; height: calc(100% + 0.2rem); background: #ed1d24; z-index: -1;position: absolute; bottom: 0; left: 0; transform: translateY(100%);transition: all 0.3s cubic-bezier(0.28, 0.44, 0.49, 1);}
.button:hover:before{transform: translateY(0%);}
.button:hover{color:#fff!important;}


/* ! Button Frame  */
.button-frame{display: inline-block;color:#ed1d24; padding: 20px 60px 20px 40px; text-decoration: none; font-size: 18px;margin-top: 15px;text-align: center;position: relative;transition: all 0.3s cubic-bezier(0.28, 0.44, 0.49, 1);}

.button-frame:after,
.button-frame:before{content: " "; border: 2px solid #ed1d24; position: absolute; top:0; left:0; bottom:0; right:0;transition: all 0.3s cubic-bezier(0.28, 0.44, 0.49, 1);}

.button-frame:after{transform: translate(3px, 3px);}
.button-frame:before{transform: translate(-3px, -3px);}

.button-frame:hover:after,
.button-frame:hover:before{transform: translate(0px, 0px);}

.button-frame span{position: relative;}
.button-frame span:after{ content: " "; width: 30px;height: 30px;position: absolute;right: -40px;top:-3px;background: url(img/arrow-right-red.svg) no-repeat center center;transition: all 0.3s cubic-bezier(0.28, 0.44, 0.49, 1);}
.button-frame:hover span:after{right: -50px;}

.button-frame--small{padding: 10px 20px;font-size: 16px;}

.button-frame--white{color: #fafafa;}
.button-frame--white:after,
.button-frame--white:before{border: 2px solid #fafafa;}
.button-frame--white span:after{ background: url(img/arrow-right-white.svg) no-repeat center center;}

/*
header,
main,
article,
aside,
section,
footer{ margin-bottom: 20px;padding: 20px}



header{border: 1px solid red;}
main{border: 1px solid blue}
article{border: 1px solid blue;}
aside{border: 1px solid red;}
section{border: 1px solid blue;}
footer{border: 1px solid red;}


@media (min-width: 900px) {
  .container { display: flex; flex-wrap: wrap; }
  .container main{ flex: 2.5; }
  .container aside { flex: 1; }
} */


/* --------------------------------------------------------------------------------------------------------------------------- */
/* ! Header */
/* --------------------------------------------------------------------------------------------------------------------------- */


.fixed{position: fixed;z-index: 10;width: 100%;
  background: rgb(250,250,250);
  background: linear-gradient(180deg, rgba(250,250,250,1) 0%, rgba(250,250,250,0) 100%);}
.header{display: flex; justify-content: space-between;width: 100%;top:0; max-width: 1200px; margin: 0 auto;}

.header__icon{display: none;width: 130px;position: relative;color:#fff;}

.header__cta,
.header__logo{width: 130px;}
.header__cta img{width: 32px;margin-left: 16px;}
.header__logo img{width: 100%;transition: all .5s cubic-bezier(.215, .61, .355, 1);transform-origin: left top;}
.header__logo img.scroll{transform: scale(.5);}
.header__cta{display: block;padding: 10px;text-align: center;margin-top: 15px;}

.header__cta .button{width: 100%;}


.site-nav{padding: 0;list-style-type: none;position: relative;}
.site-nav > li {display: inline-block;}
.site-nav > li a{display: block;padding: 20px; /*color:#000; opacity: 0.5; */text-decoration: none;text-transform: uppercase;font-weight: bold;font-size: 14px;letter-spacing: 0.33px;position: relative;}
@media (min-width: 768px) {
  .has-cover .site-nav > li a{color:#fff;}
}

.site-nav > li a::after{content: ' ';position: absolute;bottom: 0;left: 0;width: 0%;height: 3px;background: #ed1d24;transition: all .3s cubic-bezier(.215, .61, .355, 1);}

@media (max-width: 768px) {
  .site-nav > li a::after{background: #fff;}
}

.site-nav > li a:hover::after{width: 100%;}

.logo{display: block;padding: 10px;text-align: center;margin-top: 15px;}

/* Active state */
.header__menu{position: relative;}

.site-nav > li.active a::after{width: 100%;}
.line-menu{position: absolute;height: 2px; background: #3DE99E; bottom:10px;}

@media (max-width: 768px) {
  .line-menu{display: none;}
}


/* ! Social icons */
.social-icons{width: 100px;position: fixed;bottom:50%; transform: translateY(50%);right:30px; z-index: 1;}
.social-icons a{width: 100%;display: block;padding: 20px;text-align: center;}
.social-icons a img{width: 30px;}

@media (max-width: 768px) {
  .social-icons{display: none;}
}

/* ! Bottom icons */
.bottom-icon-left,
.bottom-icon-right{position: fixed;bottom:0;width: 100px;height: 100px;z-index: 999; text-align: center;line-height: 100px;cursor: pointer}

@media (max-width: 768px) {
  .bottom-icon-right{width: 100%;height: 60px;}

}

.bottom-icon-left img,
.bottom-icon-right img{width: 40px;position: absolute;}

.bottom-icon-left{left:20px;}
.bottom-icon-right{right:20px;z-index: 1000}


@media (max-width: 768px) {
  .bottom-icon-left img,
  .bottom-icon-right img{width: 25px;position: relative;}
  .bottom-icon-left{left:0px;}
  .bottom-icon-right{right:0px;}
}

/* ! Download icon */

.download-icon a{
  /*background-image: linear-gradient(rgb(255, 255, 255), rgba(237, 28, 36, 0.2), #ed1c24e6);*/
  background-color: #ed1d24;
  border: none;
  border-radius: 100%;
  padding: 1em;
  width: 80px;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  overflow: hidden;
  position: relative;
}

.download-icon a img{
  transition: all .3s cubic-bezier(.215, .61, .355, 1);
}


.download-icon a::before{content: ' ';position: absolute;top: 0;left: 0;background: url(img/icons/text.svg) no-repeat center center;width: 60px;height: 60px;}

.download-icon a:hover img{
  transform: translateY(5px);
}

.download-icon a span{transform: translateX(100%);}

@media (max-width: 768px) {
  .download-icon a{
    border-radius: 0%;width: 100%;height: 60px;
  }
  .download-icon a span{transform: translateX(10px);}
}

/* ! Search icon */

.search-button{
  width: 70px;
  height: 70px;
  position: relative;
  transition: all 0.3s cubic-bezier(.215, .61, .355, 1);
}

.search-button:before{
  content: " ";
  position: absolute;
  top:22.5%;
  right: 23.5%;
  width: 0;
  background: #000;
  height: 4px;
  transform: rotate(-45deg);
  transform-origin: right top;
  margin-top:-2px;
}


.search-button:after{
  content: " ";
  position: absolute;
  bottom:22.5%;
  right: 23.5%;
  width: 25%;
  background: #000;
  height: 4px;
  transform: rotate(45deg);
  transform-origin: right bottom;
  margin-top:-2px;
}

.search-icon{
  position: absolute;
  top:20%;
  left:20%;
  width: 50%;
  height: 50%;
  border-radius: 50%;
  border: 4px solid #000;
}


.search-button--active:before,
.search-button--active:after{width: 77.5%}

.search-button--active .search-icon{
  height: 0;
  width: 0;
  border-color:transparent;
}

.search-button:before,
.search-button:after,
.search-button .search-icon{transition: all 0.3s ease-in-out;}

@media (max-width: 768px) {
  .search-button{width: 45px;height: 45px;top: 20px;right: -30px;}
}

/* ! Search Panel */

.search-panel{
  background: #fff;
  transition: all 0.5s cubic-bezier(.215, .61, .355, 1);
  height: 0vh;
  opacity: 0;
  position: fixed; top:0; left:0; z-index: 999; width: 100%; overflow: hidden;
}

#searchInput{border-bottom: 4px solid #ccc; background: #fff; font-size: 50px;padding: 30px;}

.search-result{display: flex; margin-top: 20px;}
.thumbnail-small{width: 40px;height: 40px;margin: 10px 10px 0 0;}

.search-panel--open{
  height: 100vh;
  opacity: 1;
}





/* ! Bubble  */
.bubble{height: 60px;width: 60px; position: absolute; background: #eee; border-radius: 100%}

.bubble--1{top:3%; left:-7%; background: #ed1d24;width: 254px;height: 254px;}
.bubble--2{top:1%; right:-7%; background: #ed1d24;width: 204px;height: 204px;}
.bubble--3{bottom:1%; right:-7%; background: #ed1d24;width: 354px;height: 354px;}
.bubble--4{bottom:10%; left:10%; background: #ed1d24;width: 154px;height: 154px;}

@media (max-width: 768px) {

  .bubble--1{ left:-50%;}
  .bubble--2{ right:-27%;}
  .bubble--3{ right:-80%;}
  .bubble--4{ left:-20%;}

}

/* ! Dot  */

.dot{height: 30px;width: 30px;position: absolute;}
.dot:before{content: ' '; width: 30px;height: 30px;background: #eee;border-radius: 100%;position: absolute;top:0; left:0; transition: all 0.6s cubic-bezier(.17,.67,.3,1.33);transform: scale(0);transition-delay: 1s}
.dot.is-inview:before{transform: scale(1);}

.dot--1::before{background: #fafafa;}
.dot--2::before{background: #fafafa;}
.dot--3::before{background: #fafafa;}
.dot--4::before{background: #fafafa;}


.dot--1{top:10%; left:20%}
.dot--2{top: 20%; right: 10%;}
.dot--3{bottom: 20%;right: 20%;}
.dot--4{bottom: 40%;left: 13%;}

/* ! Scroll Down */
.scroll-down-icon{width: 100px; height: 100px;position: absolute;bottom: 0; left:50%; margin-left: -50px;display: block;}
.line-center{background: #FFFFFF; width: 3px; height: 0px; opacity: 0;position: absolute;left:50%; margin-top: 10px; animation: vertical_line_growth 4s cubic-bezier(.215, .61, .355, 1) infinite; }
.line-center span{position: absolute;bottom:-20px;width: 100px;display: block;left:-50px;text-align: center;color:#FFFFFF; text-transform: uppercase;font-size: 11px;}

@keyframes vertical_line_growth {
  0% { height: 0; opacity: 0;}
  20% { height: 0; opacity: 0;}
  40% { height: 0; opacity: 1;}
  60% { height: 30px; opacity: 1;}
  80% { height: 30px; opacity: 1;}
  100% { height: 30px; opacity: 0;}
}


/* Has Cover */

.has-cover .header .button{color:#fff; border-color: #fff}
.has-cover .logo{filter: invert(1);}
.scroll-down.has-cover .site-nav > li a{color:#000;}
.scroll-down.has-cover .header .button{color:#000; border-color: #000}
.scroll-down.has-cover .logo{filter: invert(0);}

.has-cover .line-center{background: #fff;}
.has-cover .line-center span{color:#fff;}

@media (max-width: 768px) {

  .header__icon{display: block;}
  .header__menu{position: absolute;top:0; left:0; width: calc(100% - 130px); height: 100vh;background: #ed1d24; transform: translateX(-100%);transition: all 1s cubic-bezier(.215, .61, .355, 1);z-index: 999}
  .header__menu--open{ transform: translateX(0%);box-shadow: 0 5px 20px rgba(0,0,0,.05);}
  .site-nav li{width: 100%;}
  .site-nav li a{width: 100%;display: block;color:#fff;font-size: 23px;}

  .icon-hamburger{ width: 30px;height: 30px;position: absolute;top:20px; right:20px}
  .icon-hamburger span {height: 4px;width: 100%; position: absolute; background: #ed1d24; top: 11px; transition: all 0.2s ease-in-out;}
  .icon-hamburger span:before,
  .icon-hamburger span:after{height: 4px;width: 100%; position: absolute; background: #ed1d24; content: ' '; margin-top: -10px; transition: all 0.3s cubic-bezier(.215, .61, .355, 1);}
  .icon-hamburger span:after{margin-top: 10px}

  .has-cover .icon-hamburger span,
  .has-cover .icon-hamburger span:before,
  .has-cover .icon-hamburger span:after{background: #fff;}

  .icon-hamburger--open span{background: transparent!important;}
  .icon-hamburger--open span:before{transform: rotate(45deg);margin-top: 0;}
  .icon-hamburger--open span:after{transform: rotate(-45deg);margin-top: 0;}

  .scroll-down .icon-hamburger span,
  .scroll-down .icon-hamburger span:before,
.scroll-down .icon-hamburger span:after{/*background: #000;*/}

  .logo{width: 100px;overflow: hidden;}

}






/* ------------------------------------------------------------------------- *
/* ! Modules */
/* ------------------------------------------------------------------------- */




/* ! Cover */

.cover{height: 100vh;position: relative; background: #333;display: flex; width: 100%; align-items: center;z-index: 0;background-size: cover !important;}
.cover__content{color:#fff; padding: 20px;width: 100%; text-align: center;position: relative; z-index: 1}
.cover:before{content: ' ';width: 100%;height: 100%;/*background: #000;*/position: absolute;top:0; left:0; z-index: 0; opacity: 0.5}

.cover .headline span,
.cover .title {
  text-shadow: 0px 4px 3px rgba(0,0,0,0.4),0px 8px 13px rgba(0,0,0,0.1),0px 18px 23px rgba(0,0,0,0.1);
}


/* ! Cover Text */

.cover-text{height: 100vh;position: relative; display: flex; width: 100%; align-items: center;z-index: 0}
.cover-text__content{color:#000; padding: 20px;width: 100%; text-align: center;position: relative; z-index: 1}


/* ! Intro text */

.intro-text{padding: 150px 0 50px 0;}
@media (max-width: 768px) {
  .intro-text{padding: 100px 0 0 0;}
}
.intro-text h1{ min-width: 700px;}
@media (max-width: 768px) {
  .intro-text h1{ min-width: unset;}
}

/* ! Panel */

.panel{padding: 100px 0;position: relative;}
.panel__img img{height: 80vh; width: 100%;max-width: 550px; display: block; margin: 0 auto;object-fit: cover}
.panel__text{max-width: 550px; display: flex; width: 100%; height: 100%; align-items: center;padding: 20px;}

@media (max-width: 768px) {
  .panel__text{padding: 20px 0;}
}

.panel--grey{background: #eee;}

@media (min-width: 768px) {

  .panel--text-left .subheadline{ width: 140%; position: relative;z-index: 10}
  .panel--text-right .subheadline{ width: 140%; position: relative;z-index: 10;position: relative; left:-30%;}

}


.panel--text-white h3,
.panel--text-white p,
.panel--text-white .button-frame{color:#fff}
.panel--text-white .button-frame:after,
.panel--text-white .button-frame:before{border: 2px solid #fff;}
.panel--text-white .button-frame span:after{background: url(img/arrow-right-white.svg) no-repeat center center;}

/* ! Panel Info */
.panel-info{position: relative;padding: 200px 0 300px 0;background: #fff;}
.panel-info__image{width: 100%;height: 500px;object-fit: cover}
.panel-info .headline{mix-blend-mode: difference; color:#fff; }
.panel-info__intro{text-transform: uppercase;letter-spacing: 2px;text-align: center;padding-right: 0;}
.vertical-separator{width: 2px;height: 80px;background: #000;margin: 40px auto;}

@media (min-width: 768px) {

  .headline--right{margin-top:250px; }
  .headline--left{margin-top:100px; text-align: right;  }

  .panel-info .button-frame{position: absolute;top:100px; left: 30px;}

  .panel-info .col-33:nth-child(2){
    order: -1;
  }

}

/* ! News */
.news__intro{text-align: center;}
.news__item{padding: 20px;margin-top: 40px;}
.date{font-weight: bold;font-size: 14px;padding-left: 30px;position: relative}
.date:after{position: absolute;content: " "; height: 3px; width: 25px;position: absolute;left:0; top: 12px;background: #000}

@media (max-width: 768px) {
  .news__item{margin-top: 0px;}
}

/* ! Panel Cta */

.panel-cta{padding: 200px 0;position: relative;}
.panel-cta__content{max-width: 900px; margin: auto; text-align: center; position: relative;z-index: 10}



/* ! Media Affix */

.media-affix{padding: 200px 0 300px 0;}
.media-affix__item{position: relative;margin-bottom: 200px;position: relative;}
.media-affix__image{width: 250px;height: 400px;position: absolute;top:0; left:0;z-index: 0; object-fit: cover}

.media-affix__text{position: relative; z-index: 1}
.media-affix__item h4{font-size: 35px;z-index: 1; position: relative; margin-left: 230px;margin-bottom: 20px;padding-top: 40px;}
.media-affix__item h4 a{transition: all 1s cubic-bezier(.215, .61, .355, 1);transform: scale(1);display: block;}
.media-affix__item h4 a:hover{transform: scale(1.1);}

.media-affix__item p,
.media-affix__item ul{margin-left: 280px;list-style-type: none;padding: 0;}

.media-affix__item ul li{padding: 10px;}
.media-affix__item ul li span{display: inline-block; position: relative; width: 32px;height: 32px;border-radius: 100%;padding: 4px;margin-right: 5px;top:5px}



.media-affix .button-frame{position: absolute; top:380px; left:60px;}

@media (max-width: 768px) {
  .media-affix{padding-bottom: 50px;}
  .media-affix__image{width: 160px;}

  .media-affix__item h4{margin-left: 140px;}
  .media-affix__item p,
  .media-affix__item ul{margin-left: 180px;}

}

/* ! Banner SPONSOR */
.sponsor-gallery{background: #ED1E24;
background: -webkit-linear-gradient(left, #ED1E24, #FAFAFA);
background: -moz-linear-gradient(left, #ED1E24, #FAFAFA);
background: linear-gradient(to right, #ED1E24, #FAFAFA);}

.sponsor-gallery-item{padding: 30px 15px;color: #fafafa;}

.sponsor-gallery-item h3.title{margin-bottom: 0;}

.logo-gallery{background: #fff;}

.logo-gallery-item{padding: 15px;}

/* ! Società */
.societa_article{justify-content: space-between;}

.societa_article h3{
  background: #ED1E24;
  background: -webkit-linear-gradient(left, #ED1E24, #FAFAFA);
  background: -moz-linear-gradient(left, #ED1E24, #FAFAFA);
  background: linear-gradient(to right, #ED1E24, #FAFAFA);
  color: #fafafa;
  padding: 20px;
}

.societa_image::before{
  /*content: ' ';
  width: 100%;
  height: 351px;
  background: rgba(250, 250, 250, 0.1);
  background: -webkit-linear-gradient(top, rgba(250, 250, 250, 0), rgba(250, 250, 250, 1));
  background: -moz-linear-gradient(top, rgba(250, 250, 250, 0), rgba(250, 250, 250, 1));
  background: linear-gradient(to bottom, rgba(250, 250, 250, 0), rgba(250, 250, 250, 1));
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  transition: all .3s cubic-bezier(.215, .61, .355, 1);*/
}

.societa_image img {width: 100%;object-fit: cover;object-position: top center;height: 350px;}
@media (max-width: 768px) {
  .societa_article > .col-30 {display: none;}
}

/* ! Storia */
.storia_anno{z-index: 1;}
.storia_anno__destra h3{display: flex; justify-content: flex-end;}

@media (max-width: 768px) {
  .storia_anno_order-1{order: 1;}
  .storia_testo_order-2{order: 2;}
}




/* ! Organigramma */
.organigramma_row {display: flex;}
@media (max-width: 768px) {
  .organigramma_row{flex-direction: column;}
}

.organigramma_image img {box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;width: 200px;}
@media (max-width: 768px) {
  .organigramma_image img{width: 100%;}
}

.organigramma_info {}
@media (max-width: 768px) {
  .organigramma_info {padding-left: 0px;}
}

.organigramma_info p {margin-bottom: 0;}

.organigramma_info h3{position: relative;}
  .organigramma_info h3::after{content: ' ';position: absolute;width: 100%;height: 3px; bottom: -8px; background: #ED1E24;
    background: -webkit-linear-gradient(left, #ED1E24, #FAFAFA);
    background: -moz-linear-gradient(left, #ED1E24, #FAFAFA);
    background: linear-gradient(to right, #ED1E24, #FAFAFA);}

/* ! Sede */
.sede_row{display: flex;flex-direction: column;}
.sede_image img {box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;width: 98%;height: 150px;object-fit: cover;object-position: center;}
.sede_posizione{display: flex;justify-content: flex-end;}
.sede_posizione img{width: 32px; margin-left: 16px;}

.sede_left{padding-right: 10px;}
.sede_right{text-align: right;padding-left: 10px;}

@media (max-width: 768px) {
  .sede_image img {width: 100%;}

  .sede_left{padding-right: 0px;margin-bottom: 50px;}
  .sede_right{text-align: left;padding-left: 0px;margin-bottom: 50px;}
}

.sede_right .organigramma_info h3::after{
  left: 0;

  background: #ED1E24;
  background: -webkit-linear-gradient(left, #FAFAFA, #ED1E24);
  background: -moz-linear-gradient(left, #FAFAFA, #ED1E24);
  background: linear-gradient(to right, #FAFAFA, #ED1E24);
}

/* ! Documenti */
.box-documenti {border: 3px solid #ED1E24; padding: 16px;height: 220px;position: relative;width: 90%;margin: 0 auto;;}
.box-documenti .download-link {display: inline-block;}
.box-documenti .download-link::after{content: ' ';position: absolute;right: 8px;bottom: 8px;width: 28px;height: 28px;background: url(img/icons/download-cloud-red.svg) no-repeat center center;transition: all 0.3s cubic-bezier(0.28, 0.44, 0.49, 1);}

.box-documenti .download-link:hover::after{transform: translateY(5px);}



/* ! Squadra */
.squadra_documenti{
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #ED1E24;
  background: -webkit-linear-gradient(left, #ED1E24, #FAFAFA);
  background: -moz-linear-gradient(left, #ED1E24, #FAFAFA);
  background: linear-gradient(to right, #ED1E24, #FAFAFA);
  padding: 20px;
  margin-bottom: 20px;
  transition: all .3s cubic-bezier(.215, .61, .355, 1);
}

.squadra_documenti:hover{box-shadow: rgb(0 0 0 / 8%) 0px 4px 12px;}
.squadra_documenti h4{color: #fafafa;margin-bottom: 0;}

.squadra_documenti__file span {position: relative;margin-right: 25px;}
.squadra_documenti__file span::after{content: ' ';position: absolute;right: -25px;top: 0;width: 20px;height: 20px;background: url(img/icons/chevrons-down-r.svg) no-repeat center center;transition: all 0.3s cubic-bezier(0.28, 0.44, 0.49, 1);}

.squadra_documenti:hover .squadra_documenti__file span::after{transform: translateY(5px);}

@media (max-width: 768px) {
  .col-risultati{margin-bottom: 20px;}
}

.squadra_separator{height: 2px;width: 100%;background: #ED1E24;
  background: -webkit-linear-gradient(left, #ED1E24, #FAFAFA);
  background: -moz-linear-gradient(left, #ED1E24, #FAFAFA);
  background: linear-gradient(to right, #ED1E24, #FAFAFA);
  margin-bottom: 20px;
}
/*.squadra_separator__small{height: 1px;width: 100%;background: #ed1d24;margin-bottom: 20px;}*/

.squadra_text h3{font-size: 50px;margin: 0 0 20px 0; }

@media (max-width: 768px) {
  .squadra_text h3{font-size: 25px;}
}

.squadra_list > ul{list-style: none;padding-left: 0;margin: 0;}
.squadra_list > ul > li{display: flex; justify-content: space-between;}
.squadra_list > ul > li > h4{margin-right: 30px;}

@media (max-width: 768px) {
  .squadra_list > ul > li{flex-direction: column;margin-bottom: 15px;}
  .squadra_list > ul > li > h4,
  .squadra_list > ul > li > p{margin-bottom: 0;}
}

/* ! Settore giovanile */
.sg-gallery .slick-track{display: flex;align-items: flex-start;}
.settore_giovanile_article{justify-content: space-between;}

.settore_giovanile_image{box-shadow: rgba(0, 0, 0, 0.08) 0px 4px 12px;transition: all .1s cubic-bezier(.215, .61, .355, 1)}

.settore_giovanile_card a { display: inline-block; position: relative;}
.settore_giovanile_card a:after {
  content: ' ';
  position: absolute;
  left: 0;
  top: 0;
  width: 0%;
  height: 5px;
  background: #ed1d24;
  transition: all .5s cubic-bezier(.215, .61, .355, 1);
}
.settore_giovanile_card a:hover::after{width: 100%;}

.settore_giovanile_image::before{
  content: ' ';
  width: 100%;
  height: calc(100% - 2px);
  background: rgba(250, 250, 250, 0.1);
  background: -webkit-linear-gradient(top, rgba(250, 250, 250, 0), rgba(0, 0, 0, 0.6));
  background: -moz-linear-gradient(top, rgba(250, 250, 250, 0), rgba(0, 0, 0, 0.6));
  background: linear-gradient(to bottom, rgba(250, 250, 250, 0), rgba(0, 0, 0, 0.6));
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  transition: all .3s cubic-bezier(.215, .61, .355, 1);
}


.settore_giovanile_image {overflow: hidden;}
.settore_giovanile_image img { width: 100%; height: 300px; object-fit: cover;}

.settore_giovanile_text h3{margin-top: -150px;margin-left: 20px;position: relative;}

@media (max-width: 768px) {
  .settore_giovanile_text h3.title{font-size: 50px;}
}

/* ! Contatti */
.contatti-banner {
  background: #ED1E24;
  background: -webkit-linear-gradient(left, #ED1E24, #FAFAFA);
  background: -moz-linear-gradient(left, #ED1E24, #FAFAFA);
  background: linear-gradient(to right, #ED1E24, #FAFAFA);padding-top: 40px;
}

.contatti-banner-content h3,
.contatti-banner-content span{color: #fafafa;}



/* ------------------------------------------------------------------------- *
/* ! Breadcrumb */
/* ------------------------------------------------------------------------- */
.breadcrumb {
  display: flex;
  list-style: none;
  padding-left: 0;
  margin-top: 0;
  margin-bottom: 0;
  justify-content: flex-start;
  align-items: center;
}

.breadcrumb > li{
  margin-right: 15px;
}

.breadcrumb > li > a{
  display: inline-block;
  position: relative;
}

.breadcrumb > li > a::after{
  content: '>';
  position: absolute;
  right: -12px;
  top: 0;
}



/* ------------------------------------------------------------------------- *
/* ! Index */
/* ------------------------------------------------------------------------- */

/* Home Title */
.home-title { position: absolute; top:-9999px; color: #fff; font-size: 12px;}

.page-min-height{min-height: 60vh}

.single-post .intro-text{padding-top: 10px;}

.article-horizontal{padding: 0 0 50px 0;}
.article-horizontal .col-30{padding-right: 20px;}



/* ------------------------------------------------------------------------- *
/* ! Sidebar */
/* ------------------------------------------------------------------------- */

.sidebar{padding: 20px;}



/* ------------------------------------------------------------------------- *
/* ! Footer */
/* ------------------------------------------------------------------------- */

.footer{position: relative;padding: 100px;display: block;
  background: #fafafa;
}
.footer__logo{width: 50px;height: auto;}
.horizontal-separator{height: 2px;width: calc(100% - 80px);position: absolute;top: 24px; right: 0;background: #ed1d24;}
.footer__final-text{text-align: center;margin-top: 80px;}

.footer__social img{width: 25px;margin-right: 15px;}

ul.footer__menu{list-style: none;padding-left: 0;}

.footer p,
ul.footer__menu > li > a {font-size: 16px;line-height: 24px;}

.test{
  transition: all 1s cubic-bezier(.215, .61, .355, 1);
  transform: translateY(20px);
}

@media (max-width: 991px) {
  .footer{padding: 50px;}
}

@media (max-width: 768px) {
  .footer{padding: 10px;}
}


/* ! Dark Mode */

.site-container.dark{background: #000; color:#fff;transition: 0.4s;}

.dark .site-nav > li a,
.dark .headeline,
.dark .subhealine,
.dark .title,
.dark .subtitle,
.dark .cover-text__content{color:#fff}

.dark .social-icons a img{filter: invert(1);}

.dark .bottom-icon-left img,
.dark .bottom-icon-right img{filter: invert(1);}
.dark .logo img{filter: invert(1);}


.dark .button-frame{color:#fff}
.dark .button-frame:after,
.dark .button-frame:before { border: 2px solid #fff;}
.dark .button-frame span:after{background: url(img/arrow-right-white.svg) no-repeat center center }


.dark .button {color: #fff; border: 3px solid #fff;}

.dark .bubble{background: #29875D!important;}
.dark .footer__logo{filter: invert(1);}

.dark .horizontal-separator,
.dark .vertical-separator,
.dark .date:after {background: #fff;}

.dark .panel-info{background: #000;}

@media (max-width: 768px) {
  .dark .header__menu{background: #333!important;}
}


.dark .icon-hamburger span {background: #fff;}
.dark .icon-hamburger span:before,
.dark .icon-hamburger span:after{background: #fff;}

.dark .panel--grey{background: #333;}

.dark .search-button:before,
.dark .search-button:after{background: #fff;}

.dark .search-icon{border-color:#fff}

.dark .search-panel{background: #333;}
.dark #searchInput{border-bottom: 4px solid #666; background: #333; color:#fff}



/* ----------------------------- */
/* ! -- Smarthphone */
/* ----------------------------- */

@media (max-width: 767px) {

  body.admin-bar .navbar-fixed-top { top: 42px;}

}


/* --------------------------------------------------------------------------------------------------------------------------- */
/* WordPress Default Styles */
/* --------------------------------------------------------------------------------------------------------------------------- */


/* Pagination */
.pagination { margin: 40px 0 40px 0; padding: 0; width: 100%; }
.pagination span,
.pagination a { float: left; margin: 0 10px 10px 0; padding: 14px 19px; border: 1px solid #ddd; }

/* Gallery */
.gallery { float: left; margin: 20px 0 20px 0; width: 103.55%; }
.gallery-item { float: left; width: 33.333333%; text-align: center; }
.gallery img { margin: 0 10% 0 0; width: 90%; height: auto; border: none!important; }
.gallery-caption { width: 90%;margin:10px 0 0 0;}

/* Image */
.alignleft { float: left; margin-right: 20px; margin-bottom: 10px; max-width: 97%; height: auto; }
.alignright { float: right; margin-bottom: 10px; margin-left: 20px; max-width: 97%; height: auto; }
.aligncenter { display: block; margin: 0 auto; max-width: 97%; height: auto; }
.alignnone { max-width: 97%; height: auto; }

/* img responsive */
.img-res{width: 100%;height: auto;}

/* video responsive */
.video-container {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  padding-top: 25px;
  height: 0;
}
.video-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* Table */
table {border-collapse: collapse;margin: 40px 0; width:100%;}
table, th, td {border: 1px solid #ddd;padding:10px; font-size: 18px;text-transform: capitalize;}
table  tr:first-child td {font-weight: 900; text-transform: uppercase; background: #eee; padding:12px 8px;}

/* Image Caption */
.wp-caption { margin-top: 1.5rem;margin-bottom: 0px; padding: 10px; max-width: 97%; border: 1px solid #ddd; text-align: center; }
.wp-caption img { margin: 0; padding: 0; width: 100%!important; height: auto; border: 0 none; }
.wp-caption p.wp-caption-text { margin: 0; padding: 8px; font-size: 1em; line-height: 17px; }

/* Stiky */
.sticky { border-right: 3px solid #eee; border-bottom: 3px solid #ddd; }

/* Search */
.search-form {background: #eee;}
.search-form input[type=text]{ width: 80%; color: #333; }
.search-form button{float:right;padding:10px 15px 0 0;border: none; background: none;padding: 11px;}

/* Contact Form 7 */
.wpcf7 label{width:100%}

/* Comments */
/*#comments{ border-top: 3px solid #ed1d24; padding-top: 1em;}*/
.comment-form-author,
.comment-form-email,
.comment-form-url { float: left; margin-top: 20px; margin-right: 3%; width: 30.3333333%; }
.comment-form-author input,
.comment-form-email input,
.comment-form-url input { width: 100%; }

ol.commentlist { margin: 0 0 1em; padding: 0; list-style: none; text-indent: 0; }
ol.commentlist li.comment { padding: 1em; border-top: 1px solid #eee; }
ol.commentlist li.comment div.vcard cite.fn { text-transform: uppercase; font-size: 14px; }
ol.commentlist li.comment div.vcard img.avatar { float: left; margin: 6px 1em 1em 0; border-radius: 50px; }
ol.commentlist li.comment div.comment-meta { font-size: 12px; }
ol.commentlist li.comment ul { margin: 0 0 1em 2em; }
ol.commentlist li.comment div.reply { margin-left: 80px; font-size: 11px; }
ol.commentlist li.comment div.reply a { font-weight: bold; }
ol.commentlist li.comment ul.children { margin: 1em 0 0; list-style: none; text-indent: 0; }
ol.commentlist li.comment ul.children li.depth-2 { margin: 0 0 .25em .25em; border-left: 3px solid #ed1d24; box-shadow: none;}
ol.commentlist li.comment ul.children li.depth-3 { margin: 0 0 .25em .25em; border-left: 3px solid #ed1d24; box-shadow: none;}
ol.commentlist li.comment ul.children li.depth-4 { margin: 0 0 .25em .25em; border-left: 3px solid #ed1d24; box-shadow: none;}
ol.commentlist li.even,
ol.commentlist li.odd { background: #fff; border: none; box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px; margin-bottom: 30px;}
ol.commentlist li.parent { border-left: 1px solid #eee; }
ol.commentlist li.bypostauthor .fn { font-weight: bold; }
ol.commentlist li img{max-width: 97%;}

input[type=text],
input[type=email] { width: 100%;margin-right: 10px; padding: 10px; border: none; background: #fafafa; -webkit-appearance: none;border-radius: 0;font-size: 14px;box-shadow: rgb(100 100 111 / 20%) 0px 7px 29px 0px;padding: 20px; font-size: 18px;}
textarea { padding: 10px; width: 100%; border: none; background: #fafafa; -webkit-appearance: none;border-radius: 0;font-size: 14px;box-shadow: rgb(100 100 111 / 20%) 0px 7px 29px 0px;padding: 20px;font-size: 18px;}
input[type=submit] { margin-top: 10px; padding: 15px 20px; color: #fff; text-transform: uppercase; background: #333; border:none; font-size: 14px;}
#comments { width: 100%; }

.wpcf7-list-item{margin-left: 0;}

.button-contacts{cursor: pointer;background-color: #fafafa !important; color: #ed1d24 !important;padding: 20px 50px !important;border: 2px solid #ed1d24 !important;font-weight: bold;}

/* Calendar Widget */
#wp-calendar { width: 100%; }
#wp-calendar a { padding: 0; border: none; }
#wp-calendar caption,
.screen-reader-text { padding-bottom: 10px; color: #000; text-align: left; text-transform: uppercase; font-weight: 700; font-size: 14px; }
#wp-calendar thead { font-size: 10px; }
#wp-calendar thead th { padding-bottom: 10px; }
#wp-calendar tbody { color: #aaa; }
#wp-calendar tbody td { padding: 8px; border: 1px solid #fff; background: #f5f5f5; text-align: center; }
#wp-calendar tbody td:hover { background: #fff; }
#wp-calendar tbody .pad { background: none; }
#wp-calendar tfoot #next { text-align: right; text-transform: uppercase; font-size: 10px; }
#wp-calendar tfoot #prev { padding-top: 10px; text-transform: uppercase; font-size: 10px; }

/* functional stuff */

.clearfix:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0;
}
* html .clearfix             { zoom: 1; } /* IE6 */
*:first-child+html .clearfix { zoom: 1; } /* IE7 */

/* ! Grid System */

.grid { margin: 0 auto; max-width: 1200px; display: flex; flex-flow: row; flex-wrap: wrap;}
.grid--center{justify-content: center;}

.col{ flex: 1;}

[class*='col-'] { position: relative;}

.col-20{ width: 20%; }
.col-25{ width: 25%; }
.col-30{ width: 30%; }
.col-33{ width: 33.33%; }
.col-40{ width: 40%; }
.col-50{ width: 50%; }
.col-60{ width: 60%; }
.col-70{ width: 70%; }
.col-80{ width: 80%; }
.col-90{ width: 90%; }
.col-100{ width: 100%; }

@media (max-width: 991px) {

  .tab-20 { width: 20%; }
  .tab-25 { width: 25%; }
  .tab-33 { width: 33.33%; }
  .tab-50 { width: 50%; }
  .tab-100 { width: 100%; }
}

@media (max-width: 768px) {
  [class*='col-'] { width: 100%;}
  .sma-20 { width: 20%; }
  .sma-25 { width: 25%; }
  .sma-33 { width: 33.33%; }
  .sma-50 { width: 50%; }
  .sma-100 { width: 100%; }

  .sma-hide{display:none}
}


*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}



/* ! Animations */

.fade-left{opacity: 0; transition: all 1s cubic-bezier(.215, .61, .355, 1); transform: translateX(-30%);transition-delay: 0.5s}
.fade-left.is-inview{opacity: 1;transform: translateX(0px)}

.fade-right{opacity: 0; transition: all 1s cubic-bezier(.215, .61, .355, 1); transform: translateX(30%);transition-delay: 0.5s}
.fade-right.is-inview{opacity: 1;transform: translateX(0px)}

.fade-up{opacity: 0; transition: all 1s cubic-bezier(.215, .61, .355, 1); transform: translateY(30%);transition-delay: 0.5s}
.fade-up.is-inview{opacity: 1;transform: translateY(0px)}


.fade-up-small{opacity: 0; transition: all 1s cubic-bezier(.215, .61, .355, 1); transform: translateY(50px);transition-delay: 0.5s}
.fade-up-small.is-inview{opacity: 1;transform: translateY(0px)}

.fade-down{opacity: 0; transition: all 1s cubic-bezier(.215, .61, .355, 1); transform: translateY(-30%);transition-delay: 0.5s}
.fade-down.is-inview{opacity: 1;transform: translateY(0px)}

.fade{opacity: 0; transition: all 1s cubic-bezier(.215, .61, .355, 1); transition-delay: 0.5s}
.fade.is-inview{opacity: 1;}

.reveal-top{height: 0; overflow: hidden; transition: all 1.5s cubic-bezier(.215, .61, .355, 1); transition-delay: 0.5s}
.reveal-top.is-inview{height: 100%;}

.reveal-left{width: 0; overflow: hidden; transition: all 1.5s cubic-bezier(.215, .61, .355, 1); transition-delay: 0.5s}
.reveal-left.is-inview{width: 100%;}

.zoom-in{opacity: 0; transform:scale(1.2); transition: all 1s cubic-bezier(.215, .61, .355, 1); transition-delay: 0.5s}
.zoom-in.is-inview{opacity: 1;transform:scale(1);}

.zoom-out{opacity: 0; transform:scale(0); transition: all 0.6s cubic-bezier(.215, .61, .355, 1);}
.zoom-out.is-inview{opacity: 1;transform:scale(1);}

.zoom-fade-right{opacity: 0; transform:scale(0.8); transition: all 0.6s cubic-bezier(.215, .61, .355, 1);}
.zoom-fade-right.is-inview{opacity: 1;transform:scale(1);}

.text-reveal{overflow: hidden;display: block;}
.text-reveal b{display: inline-block;will-change: transform; transform: translate3d(0,100%,0); transition: all 1.2s cubic-bezier(.4, .0, .0, 1);}

.text-reveal.is-inview b{transform: none;}


.marker{position: relative}
.marker:after{position: absolute;height: 9px;background: #ed1d24;bottom:2px; left:0; width: 0; content: " "; animation: subliner 5s cubic-bezier(.215, .61, .355, 1) infinite;}

.marker--1:after{animation-delay: 0.5s}
.marker--2:after{animation-delay: 1s; background: #FFCC01;}
.marker--3:after{animation-delay: 1.5s; background: #49EEA5;}

@keyframes subliner {
  0% {width: 0;opacity: 1}
  25% {width: 0;}
  50% {width: 100%;opacity: 1}
  75% {width: 100%;opacity: 1}
  100% {width: 100%;opacity: 0}
}


.delay-1{transition-delay: .1s!important}
.delay-2{transition-delay: .2s!important}
.delay-3{transition-delay: .3s!important}
.delay-4{transition-delay: .4s!important}
.delay-5{transition-delay: .5s!important}
.delay-6{transition-delay: .6s!important}
.delay-7{transition-delay: .7s!important}
.delay-8{transition-delay: .8s!important}
.delay-9{transition-delay: .9s!important}
.delay-10{transition-delay: 1s!important}
.delay-11{transition-delay: 1.1s!important}
.delay-12{transition-delay: 1.2s!important}
.delay-13{transition-delay: 1.3s!important}
.delay-14{transition-delay: 1.4s!important}
.delay-15{transition-delay: 1.5s!important}
.delay-16{transition-delay: 1.6s!important}
.delay-17{transition-delay: 1.7s!important}
.delay-18{transition-delay: 1.8s!important}
.delay-19{transition-delay: 1.9s!important}
.delay-20{transition-delay: 2s!important}
