/*
	Theme Name: beyondbounds
	Theme URI: beyondbounds
	Description: beyondbounds
	Version: 1
	Author: NEUE MILANO
	Author URI: neuemilano.com
	Tags: Blank, HTML5, CSS3
*/


@font-face {
    font-family: 'euclid_circular_blight';
    src: url('/assets/wp-content/themes/beyondbounds/fonts/euclidcircularb-light-webfont.woff2') format('woff2'),
         url('/assets/wp-content/themes/beyondbounds/fonts/euclidcircularb-light-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}
@font-face {
    font-family: 'euclid_circular_bmedium';
    src: url('/assets/wp-content/themes/beyondbounds/fonts/euclidcircularb-medium-webfont.woff2') format('woff2'),
         url('/assets/wp-content/themes/beyondbounds/fonts/euclidcircularb-medium-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}
@font-face {
    font-family: 'euclid_circular_bregular';
    src: url('/assets/wp-content/themes/beyondbounds/fonts/euclidcircularb-regular-webfont.woff2') format('woff2'),
         url('/assets/wp-content/themes/beyondbounds/fonts/euclidcircularb-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

/* EXTRA  *\

/* Colore dei link della lingua non attivi */
.lingua a {
    color: #99715c!important;
}

/* Colore dei link della lingua passaggio mouse */
.lingua a:hover {
    color: #96512b!important;
}

/* Colore del link della lingua attiva */
.lingua a.active {
    color: #96512b!important;
}

.lingua a.eng-link {
    padding-left: 10px;
}

/*------------------------------------*\
    MAIN
\*------------------------------------*/
:root {
    --nero: #000000;
    --beige:#F9F3E8;
	--terra:#B4674E;
}

#dovesiamo figure {
    margin: 0px!important;
}

html {
	scroll-behavior: smooth;
  }

body#contatti,
body#contacts {
    background: #bb764f;
}
body#home{
	background-image: url('/assets/wp-content/uploads/2024/07/bg-home.jpg');
	background-size: cover;
	background-repeat: no-repeat;
}

.bg_terra{
	background: #bb764f;
}
#contatti h3,
#contatti p{
    font-family: 'Archivo', sans-serif;
}
#contatti h3{
    font-weight: bold;
	font-size: 13px;
	padding: 0 20px;
}
#contatti p{
    font-weight: 400;
}

#contatti figure.aligncenter.size-full {
    margin: auto !important;
}

.small_tit {
    text-align: left;
    font-weight: 600;
	font-size: 11px;
	font-family: 'Archivo', sans-serif;
}

.small_tit.with_line:after {
    display: inline-block;
    background: black;
    width: 75%;
    height: 1px;
    right: 0px;
    content: "";
    margin-left: 40px;
}

.big_tit{
	font-weight: 400;
    font-size: 60px;
}

.med_tit{
	font-size: 19px;
	position: relative;
}
.med_tit span {
    width: 0;
    display: inline-block;
    content: "";
}
#mission .med_tit:before{
	display: inline-block;
    background: black;
    width: 0;
    height: 0;
    right: 0px;
    content: "";
	margin-left: -20px;
    margin-top: 9px;
    position: absolute;
    left: 0px;
}
.giustificato{
	text-align: justify;
}

h3.wp-block-heading {
    font-size: 16px;
    font-weight: 500;
}
#team #main_content .wp-block-columns .wp-block-column{
	margin: 0px;
	padding: 0px;
}

#team #lottieCerchi {
    height: 428px!important;
    padding-bottom: 90px;
    padding-top: 45px;
   }

#team #lottieCerchiOrizzontale {
	height: 428px!important;
    padding-top: 50px;
    padding-bottom: 100px;   
}

   #team div#lottieDiamanti {
    height: 428px!important;;
    padding-left: 45px;
    padding-right: 45px;
}

#team .second_col_team .wp-block-column:nth-child(3){
	border-right: thin solid;
}

#team #main_content .wp-block-columns {
    border-bottom: thin solid;
}

#team .wp-block-columns .wp-block-columns.is-layout-flex {
    border: none !important;
}
#team #main_content .wp-block-columns.last_col_team {
    border: none;
}

.second_col_team .is-vertically-aligned-center {
    border: none !important;
}

#about header#menu {
    border-bottom: thin solid;
}

#about.page h1{
	display: none;
}
#about #main_content .wp-block-columns {
    padding: 0px 40px;
}
#contatti #main_content .wp-block-columns {
    min-height: calc(100vh - 283px);
}


#main_content .wp-block-columns.loghi_partner .wp-block-column,
#about #main_content .wp-block-columns .wp-block-column,
#dovesiamo #main_content .wp-block-columns .wp-block-column,
#home #main_content .wp-block-columns .wp-block-column,
#post #main_content .wp-block-columns .wp-block-column.colRight,
#main_content .wp-block-columns .wp-block-column.jourCol,
#main_content.journalPost .wp-block-columns .wp-block-column{
    border: none;
} 
#post #main_content .wp-block-columns .wp-block-column {
    text-align: left;
	padding-right: 20px;
}
#post .wp-block-post-excerpt__excerpt{
	font-size: 26px;
}
#post .taxonomy-category{
	margin-bottom: 40px;
}
#post .taxonomy-category{
	margin-bottom: 40px;
}
#post .taxonomy-category a,
.categJournal span a{
	color: #b27956;
    text-transform: uppercase;
	font-size: 10px;
}
#terminiecondizioni #main_content h1,
#cookiepolicy #main_content h1{
	margin-bottom: 40px;
}
#terminiecondizioni #main_content p,
#cookiepolicy #main_content p{
	width: 94%;
	margin: 1em auto;
}
#terminiecondizioni #main_content p:last-child,
#cookiepolicy #main_content p:last-child{
	margin-bottom: 40px;
}
#cookiepolicy ul{
	list-style-position: inside;
}
.categJournal span{
	padding: 0 10px;
}

#about #main_content .wp-block-columns.first_col .wp-block-column,
#main_content .wp-block-columns.no_margin_col .wp-block-column{
	padding-top: 0px;
	padding-bottom: 60px;
}

#about #main_content .wp-block-columns.first_col .wp-block-image .alignleft{
	margin-top: 15px!important;
}
#about #main_content .wp-block-columns.first_col .wp-block-image .alignleft,
#about #main_content .wp-block-columns.first_col .wp-block-image .alignleft img{
	width: 100%;
}

.about_img img {
    width: 250px;
    margin-top: -30px;
} 

.wp-block-columns.loghi_partner {
    max-width: 800px !important;
    margin: auto;
	padding-bottom: 160px;
}
p.partner_text {
    text-align: center;
    padding-top: 160px;
	padding-bottom: 70px;
    line-height: 110%;
	margin: 0px;
	font-family: 'Archivo', sans-serif;
	font-weight: 400;;
}
.loghi_partner .wp-block-column{
    margin: 0 40px;
}
.loghi_partner .polito_img img{
    margin-top: 10px
}
.loghi_partner .contino_img img{
    margin-top: 20px
}

.about_settori .big_tit{ line-height: 85px;font-family: 'Archivo', sans-serif; font-weight: 400;}

p.partner_text span:after,
.about_settori .big_tit span:after {
    display: inline-block;
    width: 70px;
	margin-left: 5px;
	margin-right: 5px;
    height: 1px;
    background: #a9a9a9;
    content: "";
}
.journalPost h3{
	font-size: 13px;
	text-transform: uppercase;
	font-weight: 600;
	margin-top: 30px;
}
.journalPost h3.mtzero{
	margin-top: 0px;
}
.journalPost .borderbottom{
	border-bottom: 1px solid #000;
}
.wp-block-image img {
    width: 100%;
}
/* global box-sizing */
*,
*:after,
*:before {
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	-webkit-font-smoothing:antialiased;
	font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
}
/* html element 62.5% font-size for REM use */

.otgs-development-site-front-end,
#home_video_mob,
.mob{
	display:none!important
}

#moove_gdpr_cookie_info_bar.moove-gdpr-light-scheme {
    background-color: #f9f3e8 !important;
    border-top: 1px solid #000 !important;
}

html, body{
	margin:0px;
	padding:0px
}

body #menu .lingua ul li {
    font-size: 16px;
}

html {
	font-size:62.5%;
}
body {
	/*font-family: "Archivo", sans-serif; font-optical-sizing: auto; font-weight: 200; font-style: normal; font-variation-settings: "wdth" 200;*/
	font-family: "euclid_circular_bregular", sans-serif;
	background:#ebebeb
}
h1,h2 {
	font-family: "Archivo", sans-serif; font-optical-sizing: auto; font-weight: 400; font-style: normal;
}
#menu nav, .footer, #menu .lingua a{
	font-family: "Archivo", sans-serif; font-optical-sizing: auto; font-weight: 600; font-style: normal;
}
#menu .lingua a{
	font-size: 13px;
}
body p, body ul li{
	margin-top: 0px;
    padding-top: 0px; 
	font-size: 13px;
}

body #menu ul li {
    padding-bottom: 0px;
}


.page #hero_progetto{
	display:none
}

.visibleMob{
	display: none;
}


.align_l{
	text-align: left;
}

.align_l figure {
    padding-bottom: 40px;
}

#about h3 {
    margin-bottom: 5px;
    font-size: 13px;
    margin-top: 20px !important;
}

.videoloop{
	width:100%!important
}

.inner_box.gallery .wp-block-columns .videoloop {
    width: 98.5%!important;
	margin-bottom: -5px;
}

.inner_box.gallery .wp-block-column:nth-child(even) .videoloop {
	 margin-left: 4px;
    width: 98.5%!important;
	margin-bottom: -5px;
}

.inner_box.gallery .wp-block-column:nth-child(odd) .videoloop {
   margin-left: 6px;
    width: 98.5%!important;
	margin-bottom: -5px;

}

.inner_box.gallery.fullvideo .wp-block-column .videoloop {
    width: 99.9%!important;
    margin: auto;
    padding: 0px 5px;
	margin-bottom: -5px;
}
#videoloop{
	position: fixed;
	top: 0;
    left: 0;
    object-fit: cover;
    width: 100%;
    height: 100%;
}

@media only screen and (max-width: 767px) {
  #videoloop {
    height: 93rem !important;
  }
}

.containerHome{
	position: absolute;
    width: 100%;
    height: 100%;
}


#return-to-top {
	display: none;
    position: fixed;
    bottom: 25px;
	z-index: 1;
    right: 25px;
	width: 20px;
    height: 20px;
	cursor: pointer;
    text-decoration: none;
	display: none;
    -webkit-transition: all 0.5s linear;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
	background-image: url('/assets/wp-content/uploads/2024/07/bb-freccia-1.png');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}

/* clear */
.clear:before,
.clear:after {
    content:' ';
    display:table;
}

.clear:after {
    clear:both;
}
.clear {
    *zoom:1;
}
.displaynone{
	display: none !important;
}


/*#archive main,
.page404, body.page #projects,
main .nohero {
    padding-top: 150px;
}*/

#homepage .nohero{
	padding-top:0px
}



#projects .box_flexbox .project{
	width: calc(100% / 3.3);
	position: relative;
	margin-bottom: 4.5%;
}


.box_flexbox{
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-pack: space-between;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-flow: wrap;
    flex-wrap: wrap;
	align-items: center;
}
.circle{
	border: 1px solid #949494;
    border-radius: 50%;
	width: calc(100vh - 293px);
	height: calc(100vh - 293px);
	display: flex;
    align-items: center;
    text-align: center;
	flex-direction: column;
    justify-content: center;
	padding: 0 50px;
}
.circle h1{
	text-transform: uppercase;
	font-weight: bold;
	font-size: 3vh;
}
.circle h2{
	font-size: 2.2vh;
}


#team #main_content .wp-block-column.team_info {
    padding: 20px;
	text-transform: uppercase;
    text-align: left;
}

.team_first_col .wp-block-image{
	margin-bottom: -1px!important;
}

.team_info p {
	padding: 0px;
    margin-bottom: 10px;
    font-weight: 400;
    font-size: 26px;
	font-family: 'Archivo', sans-serif;
}

.team_info.blank_col p{
	visibility: hidden;
}

#team #main_content p.team_ruolo {
    padding: 0px;
    margin: 0px;
    font-size: 14px;
	font-weight: 600;
}

.last_col_team .team_info {
    border-bottom: none !important;
}

.padding_20_left {
    padding-left: 20%;
}
.padding_20_right {
    padding-right: 20%;
}

section#main_content {
    width: 94%;
    margin: auto;
    border: thin solid;
    border-top: none;
}
#homepage section#main_content,
#contatti section#main_content,
#partners section#main_content {
    min-height: calc(100vh - 193px);
}
#homepage section#main_content {
	border-top: 1px solid #000;
}

#main_content .wp-block-columns {
    margin: auto;
	gap:0px!important;
    text-align: center;
	max-width: 100%;
}

#main_content .wp-block-columns .wp-block-column {
    border-left: thin solid;
    padding-top: 30px;
    padding-bottom: 30px;
}
#main_content .wp-block-columns .wp-block-column:first-child {
    border: none;
}

/*-------------------------------------*/


.accordion__item {
    padding-top: 20px;
    padding-bottom: 20px;
    border-top: #000 solid 1px;
}

.accordion__item:last-child{
	border-bottom: #000 solid 1px;
}

.accordion__item .accordion__title {
	position: relative;
	display: block;
	padding: 0px;
	text-decoration: none;
	cursor: pointer;
}

.accordion__item .accordion__title .accordion__arrow {
	position: absolute;
	top: -6px; right: 0px;
	display: inline-block;
	vertical-align: middle;
	width: 25px;
	height: 25px;
	text-align: center;
	line-height: 30px;
	font-size: 30px;
	color:#000;
	border-radius: 50%;
}
.accordion__item .accordion__rotate {
	transform: rotate(225deg);
	top: 0px!important;
	right: 3px!important;
}
.accordion__item .accordion__content {
	padding: 30px 0px;
	display: none;
}
.accordion__item .accordion__arrow-item {
	font-weight: 300;
}
/*-------------------------------------*/

.inner_box{
	margin:auto;
	width: 94%;
	/*max-width: 1280px;*/
}

main .inner_box.gallery,
main .wp-container-core-columns-layout-3{
    max-width: 1280px;
}

img {
	max-width:100%;
	vertical-align:bottom;
}
a {
	color:#000;
	text-decoration:none;
}

a:focus {
	outline:0;
}
a:hover,
a:active {
	outline:0;
}
input:focus {
	outline:0;
	border:1px solid #04A4CC;
}

p.tit{
	letter-spacing: 0px;
	color:var(--nero);
	opacity: 1;
	padding: 0px;
    margin: 0px;
}

/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/


nav ul {
    padding: 0px;
    margin: 0px;
    text-align: left;
}

nav ul li {
	padding-left: 25px;
    display: inline-block;
    list-style: none;
    padding-left: 30px;
    text-transform: uppercase;
   	font-size: 13px;
}

/* Per schermi grandi (es. desktop >1200px) */
@media (min-width: 1366px) {
    nav ul li {
        padding-left: 60px!important;
    }
}

nav ul li.current_page_item,
.current-menu-item a {
    text-decoration: underline;
	color: #5b4a5c;
}

nav ul li:first-child {
    padding: 0px;
}

nav ul li a{
	color: var(--nero);
	font-weight: 600
}

.logo img{
    width: auto;
	height: 45px;
	filter: invert(1);
}

.wpml-ls-legacy-list-horizontal a {
    padding: 0px!important;
}

body.is-sticky header#menu {
	background:none;
	position: fixed;
  
}


body header#menu.is-active img,
body#post.is-sticky header#menu img{
	filter: brightness(0%);
}

#post header#menu.is-active .hamburger-inner::after, #post header#menu.is-active .hamburger-inner, #post header#menu.is-active .hamburger-inner::before, 
#post header#menu.is-active .hamburger-inner::after,
#post.is-sticky header#menu .hamburger-inner::after, #post.is-sticky header#menu .hamburger-inner, #post.is-sticky header#menu .hamburger-inner::before, 
#post.is-sticky header#menu .hamburger-inner::after{
	background: var(--nero);
}
.grid-four{
	width: 25%;
	padding: 40px 25px;
    border-left: 1px solid;
}
.box_journal article:first-child{
    border-bottom: 1px solid #000000;
}
.box_journal article:nth-child(2),
.box_journal article:nth-child(6),
.box_journal article:nth-child(10),
.box_journal article:nth-child(14),
.box_journal article:nth-child(18),
.box_journal article:nth-child(22),
.box_journal article:nth-child(26),
.box_journal article:nth-child(30){
    border-left: 0;
}
.grid-four h2{
	text-transform: uppercase;
	font-size: 18px;
	margin-bottom: 15px;
}
.box_journal{
	align-items: initial !important;
	justify-content: flex-start;
}
.image-right h2,
.image-left h2{
	font-size: 26px;
	text-transform: uppercase;
	margin-top: 0;
}
.box_journal .articleExc{
	font-size: 13px;
}
.image-left .wp-block-columns{
	flex-direction: row-reverse;
}
.readMore{
	display: block;
    margin-top: 50px;
    border: 1px solid;
    width: 100px;
    text-align: center;
    padding: 9px;
    font-size: 11px;
    text-transform: uppercase;
}

/*body#homepage header#menu{
	opacity: 0;
	display: none;
}*/

body#homepage.is-sticky header#menu{
	opacity: 1;
}

body#post.is-sticky header nav ul li a, body#post.is-sticky header .lingua a{
	color:var(--nero);
	font-weight: 600;
}


header#menu {
    padding: 20px 0px;
	-webkit-transition: all .3s;
    -moz-transition: all .3s;
    transition: all .3s;
    opacity: 1;
    -moz-opacity: 1;
    -khtml-opacity: 1;
}

.logo h1 {
    padding: 0px;
    margin: 0px;
	font-size: 0px;
}

.inner_box figure {
    margin: 0px 5px;
}

.inner_box figure.wp-block-image.size-full {
    margin: 0px!important;
}

section#hero_progetto {
    height: 100vh;
    background-attachment: fixed;
    background-size: cover;
    background-position: center;
    margin-bottom: 90px;
}

#hero_progetto .inner-b-align{
	align-items: baseline;
}

.page #hero_progetto .inner-b-align.box_flexbox {
	-ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
}


.page h2{
	margin-top: 0px;
}


#open_menu{
	display: none;
}
/* MENU HAMBURGER */
.hamburger {
	text-align: center;
	padding: 15px 0px;
	display: inline-block;
	cursor: pointer;
	transition-property: opacity, filter;
	transition-duration: 0.15s;
	transition-timing-function: linear;
	font: inherit;
	color: inherit;
	text-transform: none;
	background-color: transparent;
	border: 0;
	margin: 0;
	overflow: visible; }
	
  .hamburger.is-active .hamburger-inner,
	.hamburger.is-active .hamburger-inner::before,
	.hamburger.is-active .hamburger-inner::after,
	.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after  {
	    background-color: #000;}
  
  .hamburger-box {
	width: 45px;
	height: 45px;
	display: inline-block;
	position: relative; }
  
  .hamburger-inner {
	display: block;
	top: 50%;
	margin-top: -1px; }

	.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
	  width: 43px;
	  height: 1px;
	  border-radius:0px;
	  position: absolute;
	  transition-property: transform;
	  transition-duration: 0.15s;
	  transition-timing-function: ease; }
	.hamburger-inner::before, .hamburger-inner::after {
	  content: "";
	  display: block; }
	  .hamburger-inner::before {
		top: -10px;
		transform: rotate(0deg);
	}
	
	.hamburger.is-active .hamburger-box {
		border: thin solid #fff;
		border-radius: 50%;
	}
  /*
	 * Squeeze
	 */
  .hamburger--squeeze .hamburger-inner {
	transition-duration: 0.075s;
	transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
	.hamburger--squeeze .hamburger-inner::before {
	  transition: top 0.075s 0.12s ease, opacity 0.075s ease; }
	.hamburger--squeeze .hamburger-inner::after {
	  transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
	  margin-top: 10px; 
	}
  

	.hamburger--squeeze .hamburger-inner span {
		background: #000;
		display: block;
		width: 43px;
		height: 1px;
		border-radius: 0px;
		position: absolute;
		transition-property: transform;
		transition-duration: 0.15s;
		transition-timing-function: ease;
	}


  .hamburger--squeeze.is-active .hamburger-inner {
	transform: rotate(45deg);
	transition-delay: 0.12s;
	transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
	.hamburger--squeeze.is-active .hamburger-inner::before {
	  top: 0;
	  opacity: 0;
	  transition: top 0.075s ease, opacity 0.075s 0.12s ease; }
	.hamburger--squeeze.is-active .hamburger-inner::after {
	  bottom: 0;
	  transform: rotate(-90deg);
	  transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); 
	}

	.hamburger--squeeze.is-active .hamburger-inner span {
		background: #fff;
	}

	body ul li {
		margin-bottom: 6px;
	}

 /* MENU HAMBURGER */
 
 header.is-active .menu-mobile, header.is-active .menu-mobile ul,
 header .menu-mobile, header .menu-mobile ul{
	display:none;
}

header#menu {
  /*  position: fixed;*/
  width: 94%;
  margin: auto;
	z-index: 1;
	border-left:thin solid; 
	border-right:thin solid; 
}

#post figure.wp-block-image.size-large {
    padding-bottom: 60px;
}

.inner-v-align, .inner-b-align, .menu-mobile ul {
    position: absolute;
    top: 45%;
    left: 50%;
    width: 80%;
    transform: translate(-50%, -50%);
}

.inner-b-align{
	margin:auto;
	width: 94%;
	max-width: 1280px;
	top:inherit;
	bottom: 30px;
	color: var(--beige);
}

.inner-b-align h1, h1{
	font-size: 40px;

}
 


.footer {
    text-align: left;
	color:var(--nero);
	font-size:14px;
	padding-top: 40px;
	padding-bottom: 40px;
	line-height: 28px;
    font-weight: 600;
    border-left: thin solid;
    border-right: thin solid;
    width: 94%;
    margin: auto;
}

footer, footer p, footer a {
    font-size: 10px!important;
}

footer .left a{
	text-decoration: underline;
	padding-right: 30px;
}

footer .right a{
	text-decoration: underline;
	padding-left: 30px;
}

/*------------------------------------*\
    PAGES
\*------------------------------------*/


/*** TICKER ***/

@-webkit-keyframes ticker {
	0% {
	  -webkit-transform: translate3d(0, 0, 0);
	  transform: translate3d(0, 0, 0);
	  visibility: visible;
	}
  
	100% {
	  -webkit-transform: translate3d(-100%, 0, 0);
	  transform: translate3d(-100%, 0, 0);
	}
  }
  
  @keyframes ticker {
	0% {
	  -webkit-transform: translate3d(0, 0, 0);
	  transform: translate3d(0, 0, 0);
	  visibility: visible;
	}
  
	100% {
	  -webkit-transform: translate3d(-100%, 0, 0);
	  transform: translate3d(-100%, 0, 0);
	}
  }

.infinity_text{
	text-align: center;
	font: normal normal normal 55px/66px;
	color: var(--nero);
	display: inline-block;
    height: 3.4rem;
    line-height: 3.4rem;
    white-space: nowrap;
    padding-right: 100%;
    box-sizing: content-box;
    cursor: pointer;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-name: ticker;
    animation-name: ticker;
    -webkit-animation-duration: 90s;
    animation-duration: 90s;
}


.wrapper {
	max-width: 100%;
	overflow: hidden;
  }
  
  .marquee {
	white-space: nowrap;
	overflow: hidden;
	display: inline-block;
	animation: marquee 40s linear infinite;
	font-family: 'Keroine PRO';
	margin-top: 30px;
  }
  
  .marquee p {
	display: inline-block;
	font: normal normal normal 50px/60px "Keroine PRO";
	color: var(--nero)
  }
  
  @keyframes marquee {
	0% {
	  transform: translate3d(0, 0, 0);
	}
	100% {
	  transform: translate3d(-50%, 0, 0);
	}
  }

  
  section#projects {
    margin-bottom: -4.5%;
}

#projects .box_flexbox:after {
    content: "";
    width: calc(100% / 3.3);
}

#projects .box_flexbox .p_info:after{
	display:none
}

  
.page h1, 
#post .titleJournal,
#archive h1{
	font-size: 35px;
	font-weight: 400;
    text-transform: uppercase;
    text-align: center;
    padding: 20px;
	padding-top: 30px;
    margin: 0px;
}

.page h1,
#post .titleJournal,
#archive h1{
	color: var(--nero);
    border-top: thin solid;
    border-bottom: thin solid;
}
#home h1{
	color: #000;
    border-top: 0;
    border-bottom: 0;
	font-weight: bold;
	padding: 0;
	margin-bottom: 20px;
	font-size: 3vh;
}



#post h1{
	font-size: 48px;
	line-height: 50px;
	margin-bottom: 50px;
    text-transform: uppercase;
}


ul#gallery {
    list-style: none;
}

#moove_gdpr_cookie_info_bar p, #moove_gdpr_cookie_info_bar button {
    font-size: 16px!important;
    line-height: 20px!important;
}

#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container{
	padding: 20px 40px;
}

/*** SERVICES ***/

.services_cols{
	text-align: left;
	padding: 80px 50px !important;
}

.services_cols_text{
	text-align: left;
	padding: 0px 50px !important;
	padding-bottom: 80px!important;
}


.services_cols_text h3.wp-block-heading{
	padding-top:0px;
	margin-top:0px
}

.services_cols h2,
.services_cols h3{
	margin-bottom: 40px;
}
.services_cols ul{
    list-style-position: outside;
}
.services_cols ul li{
	margin-bottom: 6px;
}

.button_col ul li{
	margin-bottom: 6px;
	margin-top: 6px;
	width: 32%;
	border: 1px solid;
}
.button_col ul li a{
	display: block;
	width: 100%;
	padding: 15px 10px;
	text-align: center;
	font-size: 13px;
}
.button_col li:hover{
	background-color: #bb764f;
}

.services_third_col{
	border-top: thin solid !important;
}
.blogCol,
.jourCol{
	padding: 30px;
	text-align: left;
}
.blogCol h1,
.jourCol h1{
	margin-top: 0px;
	text-align: left;
}
.colRight{
	border-left: 0;
}
.bg_orange,
body#dovesiamo{
    background-color: #bb764f;
}
.bg_purple{
	background-color: #5c4b5d;
}
.bg_purple h2,
.bg_purple h3
.bg_purple ul,
.bg_purple ul li,
.bg_purple p{
	color: #fff;
}
.services_fourth_col{
	border-top: thin solid;
	background-image: url('/assets/wp-content/uploads/2024/07/bg-services-fourth-col.jpg');
	background-position: top;
	background-size: cover;
}
.jourCol .articleTitle{
	text-transform: uppercase;
    font-size: 26px;
}

/*** dovesiamo ***/

.where_cols p,
.where_cols h3,
.where_cols ul{
	text-align: left;
}
.where_cols ul{
	padding-left: 0;
	list-style: none;
	margin-bottom: 40px;
}
.where_first_col,
.where_second_col,
.where_third_col{
	padding: 40px;
}
.where_cols ul li{
	margin-bottom: 5px;
}
.where_cols h3{
	font-family: "Archivo", sans-serif;
	font-weight: bold;
	font-size: 13px;
}


#education main #main_content {
    min-height: 220px;
}

.hide_section{
	display:none!important
}

.blank_title {
    color: transparent;
}

#servizi h2.wp-block-heading {
    line-height: 35px;
}

.elenco_servizi .services_first_col {
    border-top: thin solid #000 !important;
}

#homepage #lottiehome,
#homepage .smart-page-loader{
	display: none!important;
}
#servizi ul{
	padding-left: 14px;
}
.button_col ul{
	padding-left: 0 !important;
	list-style: none;
    display: flex;
    justify-content: space-between;
}

/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/

@media screen and (min-width:768px) {
	body.is-sticky header#menu {
		padding-top: 7px;
        padding-bottom: 7px;
        margin-left: 3%; 
		height: 50px;
        background: #ebebeb;
        border-bottom: thin solid;
	}
	#servizi.is-sticky header#menu {
		display: none;
	}

	#menu nav ul li:last-child{
		display: none;
	}	

	body.is-sticky header#menu .logo img{
		height: 30px;
	}

	
	#projects .project h2{
		display: none;
	}
	#projects .project .box_info_project h2,
	#projects .project:hover .box_info_project h2{
		display: block;
	}
	
}

@media (max-width: 1100px) {
	.team_info p{
		font-size: 20px;
	}
}


body.is-sticky header#menu {
	border-bottom: thin solid;
}

body#dovesiamo.is-sticky header#menu,
	body#contatti.is-sticky header#menu{
		background: #bb764f
	}


@media (max-width: 781px) {
    #team .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
        flex-basis: 50% !important;
    }
}


@media only screen and (max-width:780px) {

	.blank_title {
		display: none;
	}
	
	.menu-mobile ul {
		left: 20px;
		transform: translate(0px, -50%);
	}

	.hamburger.is-active .hamburger-inner, .hamburger.is-active .hamburger-inner::before, .hamburger.is-active .hamburger-inner::after{
		background-color: #fff!important;
	}	
}

@media only screen and (max-width:768px) {
	
	.services_cols_text {
		padding: 0px 25px !important;
	}
	.services_cols {
		padding: 80px 25px !important;
	}
	.grid-four {
		width: 100%;
		border-left: 0;
		border-bottom: 0;
	}
	.image-left{
		border-top: 1px solid;
	}
	#homepage .wp-block-spacer {
		height: 2em!important;
	}

	#home header#menu.is-active .logo{
		visibility: visible;
	}

	header{
		padding: 0px;
		z-index: 20;
		width: 100%;
		top: 0px;
	}

	body.is-sticky header#menu {
		background: none;
		position: fixed;
		margin: auto;
		width: 94%;
		background: #ebebeb;
		margin-left: 3%;
	}

	header#menu{
		padding: 0px;
	}

	header, header .inner_box{
		height: 75px;
	}

	header.is-active{
		height:100vh
	}

	.team_first_col .wp-block-image {
		margin-bottom: -2px!important;
		}
	
		

		.first_col_team .wp-block-column:nth-child(4) .wp-block-image,
		.last_col_team .wp-block-column:nth-child(4) .wp-block-image{
			margin-bottom: -1px!important;
		}

		.second_col_team .wp-block-column:nth-child(4) .wp-block-image{
			margin-bottom: -4px!important;
		}

		.second_col_team .wp-block-column:nth-child(2) .wp-block-image{
			margin-bottom: 1px!important;}

	.first_col_team .wp-block-column:nth-child(4) {
		order: 3;
		border-left: 0px !important;
	}
	.first_col_team .wp-block-column:nth-child(3) {
		order: 4;
	}



	.second_col_team .wp-block-column:nth-child(1) {
		order: 2;
	}
	.second_col_team .team_first_col{	
		border-left: thin solid #000 !important;
	}
	.second_col_team .wp-block-column:nth-child(2) {
		order: 4;
	}

	.second_col_team .wp-block-column:nth-child(3) {
		order: 3;
		border-left: 0px !important;
	}

	.second_col_team .wp-block-column:nth-child(4) {
		order: 1;
		border-left: 0px !important;
	}

	.last_col_team .wp-block-column:nth-child(3) .wp-block-column,
	.last_col_team .wp-block-column:nth-child(4) .wp-block-column{
		border-bottom: none !important;
	}

	.last_col_team .wp-block-column:nth-child(1) {
		order: 0;
	}
	.last_col_team .wp-block-column:nth-child(2) {
		order: 1;
	}

	.last_col_team .wp-block-column:nth-child(3) {
		order: 4;
		border-bottom:0px!important
	}

	.last_col_team .wp-block-column:nth-child(4) {
		order: 3;
		border-left: 0px !important;
		border-bottom:0px!important
	}

	#servizi h2.wp-block-heading {
		line-height: 30px;
		font-size: 28px!important;
	}

	.services_cols.services_second_col {
		padding-top: 70px !important;
	}


	.first_service .services_cols.services_second_col {
		padding-top: 30px !important;
	}


	.inner_box, .inner-b-align {
		width: 92%;
	}
	
	.team_info {
		padding: 20px 15px!important;
	}

	.team_info p {
		font-size: 16px;
	}

	#team #main_content p.team_ruolo{
		font-size: 12px!important;
	}

	#team .second_col_team .wp-block-column:nth-child(3) {
		border-right: none;
	}

	header#menu {
		-moz-transition:none;
		-moz-opacity:none;
		transition: none;
		-khtml-opacity: none;
	}

	body header#menu.is-active img {
		filter: none;
	}

	.first_col_team .wp-block-column:nth-child(4), .first_col_team .wp-block-column:nth-child(3),
	.second_col_team .wp-block-column:nth-child(2), .second_col_team .wp-block-column:nth-child(3),
	.last_col_team .wp-block-column:nth-child(4), .last_col_team .wp-block-column:nth-child(3) {
		border-top: thin solid;
	}


	body header#menu.is-active,
	body.is-sticky header#menu.is-active {
		background: #000;
        width: 100%;
		margin-left: 0%;
		padding-left: 3%;
}


	
	body p {
		font: normal normal normal 18px/23px;
		
	}

	body#post .progetto_desc{
		gap:0px
	}

	body#post .progetto_desc p{
		margin-block: 0px;
	}

	.progetto_info p {
		width: 50%;
		float: left;
	}

	.marquee{
		margin-top: 0px;
		padding-top: 20px;
		padding-bottom: 25px;
	}

	.progetto_intro, .progetto_desc, p.tit, .marquee p {
		font-size:28px;
		line-height: 32px;
	}


 .page h2, h2.tit_big {
		margin-top: 0px!important;
		font-size:23px;
		line-height: 26px;
	}	
	#servizi .page h2, #servizi h2.tit_big {
		font-size:23px !important;
	}	

	.info_project.box_flexbox {
		display: none;
	}

	section#hero_progetto{
		height: 90vh;
		background-attachment: initial;
		margin-bottom:30px
	}

	section#hero_progetto.mob {
		height: 75vh;
	}


	#open_menu{ display: block;}

	 .page main section {
		padding-top: 0px;
	}

	section#projects {
		padding-top: 90px!important;
	}

	

	header ul {
		display: none;
	}

	.logo img {
		height: 42px;
	}

	#about h2.big_tit {
		text-align: left;
		font-size: 38px;
		line-height: 44px;
	}

	#about .wp-block-image img {
		height: auto !important;
	}
	#about #main_content .wp-block-columns {
		padding: 0px 30px;
	}

	.wp-block-spacer.bg_terra {
		height: 20px !important;
	}
	#about #vision h2.big_tit {
		text-align: right;
	}
	div#about_last_img img {
		width: 320px !important;
	}
	.wp-block-image img {
		margin-bottom: 20px;
	}

	#team .wp-block-image img {
		margin-bottom: 0px!important;
	}
	.about_settori .big_tit {
		font-size: 50px;
	}

	span.hide {
		display: none;
	}

	.small_tit {
		font-size: 18px;
	}

	.small_tit.with_line:after {
		width: 50%;
		position: absolute;
		margin: auto;
		left: 25%;
		margin-top: 10px;
	}
	.med_tit:before{
		display: none;
	}
	.med_tit span {
		width: 80px;
	}

	
	.padding_20_left {
		padding-left: 0px;
		font-size: 18px;
		line-height: 25px;
	}

	#homepage main{
		margin-top: 0px;
	}

	.reverse_col{
		flex-direction: column-reverse;
	}

	.menu-mobile{
		background:#000;
		width: 100%;
		height: 100vh;
		position: fixed;
		left: 0px;
		top: 0px;
		z-index: 1;
		margin-top: 120px;
		display: none;
	}


	header.is-active .menu-mobile, header.is-active .menu-mobile ul{
		display: block;
	}


	.menu-mobile ul{
		margin-top: -90px;
		padding: 0px;
	}

	body #menu .menu-mobile ul li {
        display: block;
        text-align: left;
		font-size: 22px;
        line-height: 25px;
        padding-bottom: 40px;
        text-transform: uppercase;
        font-weight: 700;
    }

	.menu-mobile ul li a{
		color: #fff;
	}
	
	#post h1, .page h1 {
		font-size: 30px;
		line-height: 34px;
	}
	#main_content.journalPost .wp-block-columns .wp-block-column.blogCol {
		border-left: 0;
		padding-top: 20px;
	}
	#main_content.journalPost .wp-block-columns .wp-block-column {
		padding-top: 0;
		padding-bottom: 15px;
	}
	.journalPost .wp-block-post-excerpt{
		margin-bottom: 20px;
	}
	#post .journalPost figure.wp-block-image.size-large {
		padding-bottom: 20px;
	}

	#post h1{		
		margin-bottom: 25px;
	}


	.inner-b-align {
		bottom: 40px;
	}

	
	.progetto_info p, .progetto_info a,
	#post .inner-b-align p {
		font-size:18px;
		line-height:25px;
	}

	.footer{
		padding-bottom: 0px;
		padding-top: 60px;
		font-size: 13px;
		line-height: 18px;
	}

	.foo_tit {
		font-size: 15px;
		line-height: 15px;
	}

	.website {
    	padding-top: 20px;
    	padding-bottom: 40px;	
	}

	body #menu .lingua,
	body #menu .nav {
		display: none;
	}

	.footer .inner_box.box_flexbox div {
		width: 100%;
		padding-bottom: 20px;
		text-align: center;
	}

	body #menu .lingua,
	body #menu .nav {
		display: none;
	}

	.footer .inner_box{
		flex-direction: column;
	}
	.footer .right{
		display: none;
	}
	.visibleMob{
		display: inline-block;
	}

	.mappaMob{
		padding-top:20px
	}

	.hideMob,
	#mission .med_tit:before,
	.med_tit span{
		display: none;
	}
	footer .left a{
		padding-right: 15px;
		font-size: 11px !important;
	}
	#home section#main_content, #contatti section#main_content, #partners section#main_content {
		min-height: calc(100vh - 173px);
	}
	
	.services_first_col{
		padding: 80px 25px 20px 25px !important;
	}
	.services_second_col{
		border-left: none !important;
		padding: 0 25px 80px 25px !important;
	}
	#about .first_col .has-text-align-left{
		margin-bottom: 30px !important;
		padding-right:0px!important
	}
#about .padding_20_right{
	padding-right:0px!important
}
.wp-block-spacer:last-child {
    height: 100px !important;
}
#contatti #main_content .wp-block-columns .wp-block-column {
    border-left: 0;
}
.categJournal{
	display: flex;
    flex-direction: column;
}
.categJournal span {
    padding: 0 0;
    line-height: 0.8;
}

.button_col ul {
    flex-direction: column;
}
.button_col ul li {
    width: 100%;
}

}

@media screen and (max-width:580px) {
    .circle {
		width: calc(100vw - 50px);
		height: calc(100vw - 50px);
		padding: 0 20px;
	}
	.circle h1,
	#home h1{
		font-size: 4vw;
		line-height: 4.5vw;
	}
	.circle h2{
		font-size: 14px;
		line-height: 16px;
	}
	#team #lottieCerchi,
	#team #lottieCerchiOrizzontale, 
	#team div#lottieDiamanti{
		height: 230px !important;
	}

	#team #lottieCerchi {
		padding-bottom: 40px;
		padding-top: 25px;
		}

		#team #lottieCerchiOrizzontale {
			padding-top: 30px;
			padding-bottom: 50px;
			}

			#team div#lottieDiamanti {
				padding-left: 30px;
				padding-right: 30px;
				}	

	.about_settori span {
			display: block;
		}
	
		.about_settori span:after {
			display: none !important;
		}
	
	.inner_box.gallery .wp-block-column:nth-child(even) .videoloop,
	.inner_box.gallery .wp-block-column:nth-child(odd) .videoloop {
    	width: 98%!important;
	}
	
	.gallery {
    margin-bottom: 2em!important;
}
	
 .inner_box.gallery .wp-block-column .videoloop {
    margin-left: 5px;
    width: 98%!important;
} 
	.inner_box.gallery .wp-block-column .videoloop{
		margin-top:0px!important
	}

	
	.flexslider{
		min-height: 300px;
		height: auto!important;
	}
	.info_press h2, .accordion__item .accordion__title h2 {
		font-size: 17px;
		line-height: 25px;
	}

	#press span.data{
		font-size: 14px;
		float: none;
	}

	.foo_press{
		padding-bottom: 0px;
	}

	div#press article {
		padding-bottom: 0px;
	}

	.box_img {
		height: 70vw;
	}
	
	#home_video_mob,
	.mob{
		display: block!important;
	}

	#home_video_desk,
	.desk{
		display:none!important
	}
}

/*------------------------------------*\
    MISC
\*------------------------------------*/

::selection {
	background:var(--terra);
	color:#FFF;
	text-shadow:none;
}
::-webkit-selection {
	background:var(--terra);
	color:#FFF;
	text-shadow:none;
}
::-moz-selection {
	background:var(--terra);
	color:#FFF;
	text-shadow:none;
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.alignnone {
	margin:5px 20px 20px 0;
}
.aligncenter,
div.aligncenter {
	display:block;
	margin:5px auto 5px auto;
}
.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
a img.alignnone {
	margin:5px 20px 20px 0;
}
a img.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.aligncenter {
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.wp-caption {
	background:#FFF;
	border:1px solid #F0F0F0;
	max-width:96%;
	padding:5px 3px 10px;
	text-align:center;
}
.wp-caption.alignnone {
	margin:5px 20px 20px 0;
}
.wp-caption.alignleft {
	margin:5px 20px 20px 0;
}
.wp-caption.alignright {
	margin:5px 0 20px 20px;
}
.wp-caption img {
	border:0 none;
	height:auto;
	margin:0;
	max-width:98.5%;
	padding:0;
	width:auto;
}
.wp-caption .wp-caption-text,
.gallery-caption {
	font-size:11px;
	line-height:17px;
	margin:0;
	padding:0 4px 5px;
}

/*------------------------------------*\
    PRINT
\*------------------------------------*/

@media print {
	* {
		background:transparent !important;
		color:#000 !important;
		box-shadow:none !important;
		text-shadow:none !important;
	}
	a,
	a:visited {
		text-decoration:underline;
	}
	a[href]:after {
		content:" (" attr(href) ")";
	}
	abbr[title]:after {
		content:" (" attr(title) ")";
	}
	.ir a:after,
	a[href^="javascript:"]:after,
	a[href^="#"]:after {
		content:"";
	}
	pre,blockquote {
		border:1px solid #999;
		page-break-inside:avoid;
	}
	
	tr,img {
		page-break-inside:avoid;
	}
	img {
		max-width:100% !important;
	}
	@page {
		margin:0.5cm;
	}
	p,
	h2,
	h3 {
		orphans:3;
		widows:3;
	}
	h2,
	h3 {
		page-break-after:avoid;
	}
}

@media screen and (min-width:581px) and (max-height:580px) {

	.circle{
		padding: 0 25px;
	}

	#home h1 {
		font-size: 2.2vh;
	}

	.circle h2 {
		font-size: 2vh;
	}


}

.lingua a.active {
    color: #d3d3d3; /* grigio chiaro */
}
