body {
  font-family: 'Roboto', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  position: relative;
  width: 100%;
  height: 100%;
  color: white;
  background-color: #fff;
}

html {
  width: 100%;
  height: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'Roboto', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-weight: 500;
  margin: 0 0 35px;
  letter-spacing: 1px;
  text-transform: uppercase;
color: #000;
}

p {
  font-size: 16px;
  line-height: 1.5;
  margin: 0 0 25px;
  font-family: 'Roboto', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

.text300 {
	font-weight: 300;
	font-family: 'Roboto', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

/*inizio side menu*/
/*header new*/
.header-menu {
	display: flex; 
	background: #fff; 
	padding: 15px; 
	width: 100%;
	height: 130px;
	position: fixed;
	z-index: 3;
}

/* Side Menu */
#sidebar-wrapper {
  position: fixed;
  z-index: 2;
  right: 0;
  width: 250px;
  height: 100%;
  transition: all 0.4s ease 0s;
  transform: translateX(250px);
  background: #1d1d1b;
  border-left: 1px solid rgba(255, 255, 255, 0.1);
	    margin-top: 15px;
}

.sidebar-nav {
  position: absolute;
  top: 0;
  width: 250px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.sidebar-nav li.sidebar-nav-item a {
  display: block;
  text-decoration: none;
  color: #fff;
  padding: 20px;
	font-family: 'Roboto', 'sans-serif';
	font-size: 1.5rem;
}

.sidebar-nav p.sidebar-nav-item {
  display: block;
  text-decoration: none;
  color: #fff;
  padding: 20px 20px 10px 20px;
	font-family: 'Roboto', 'sans-serif';
	font-size: 1.5rem;
	margin-bottom: 0;
}

.sidebar-nav li.sidebar-nav-item-2nd a {
  display: block;
  text-decoration: none;
  color: #fff;
 padding: 8px 40px;
    font-family: 'Roboto', 'sans-serif';
    font-size: 1.2rem;}

.last-2nd {margin-bottom: 10px;}


.sidebar-nav li a:hover {
  text-decoration: none;
  color: #fff;
  background: rgba(255, 255, 255, 0.1);
}

.sidebar-nav li a:active,
.sidebar-nav li a:focus {
  text-decoration: none;
}

.sidebar-nav > .sidebar-brand {
  font-size: 1.2rem;
  background: rgba(52, 58, 64, 0.1);
  height: 80px;
  line-height: 50px;
  padding-top: 15px;
  padding-bottom: 15px;
  padding-left: 15px;
}

.sidebar-nav > .sidebar-brand a {
  color: #fff;
}

.sidebar-nav > .sidebar-brand a:hover {
  color: #fff;
  background: none;
}

#sidebar-wrapper.active {
  right: 250px;
  width: 250px;
  transition: all 0.4s ease 0s;
}

.menu-toggle {
  position: fixed;
  right: 2.5%;
  top: 40px;
  width: 50px;
  height: 50px;
  text-align: center;
  color: #000;
  background: #fff;
  line-height: 50px;
  z-index: 999;
}

.menu-toggle:focus, .menu-toggle:hover {
  color: #000;
}

.menu-toggle:hover {
  background: #fff;
}

.menu-toggle img {
	max-width: 100%;
}

/*fine side menu*/


@media screen and (max-height: 450px) {
  .sidenav {padding-top: 15px;}
  .sidenav a {font-size: 18px;}
}



@media (min-width: 768px) {
  p {
    font-size: 18px;
    line-height: 1.6;
    margin: 0 0 35px;
  }
}

a {
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  color: #000;
}
a.collab {
	color: #000;
    text-decoration: underline;	
}

a:focus, a:hover {
  text-decoration: none;
  /*color: #1d9b6c;*/
  color: #666;
}

#mainNav {
  font-family: 'Roboto', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  margin-bottom: 0;
  text-transform: lowercase;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  background-color: black;
}

#mainNav .navbar-toggler {
  font-size: 14px;
  padding: 11px;
  color: white;
  border: 0 solid white;
}

.navbar-brand {
  font-weight: 700;
	padding-top: 0;
	padding-left:.3125rem;
	
	transition: all 1s;
}

.navbar-brand img {
	max-width: 100%;
	height: auto;
}

.hide {
    opacity:0;

}
.show {
    opacity:1;
}

#mainNav a {
  color: #000;
}
#mainNav a:hover {
  /*color: #1D809C;*/
  color: #666;
}

#mainNav .navbar-nav .nav-item {
  -webkit-transition: background 0.3s ease-in-out;
  -moz-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
	display: inline-flex;
}

#mainNav .navbar-nav .nav-item:hover {
  color: fade(white, 80%);
  outline: none;
  background-color: transparent;
}

#mainNav .navbar-nav .nav-item:active, #mainNav .navbar-nav .nav-item:focus {
  outline: none;
  background-color: transparent;
}

/*------ MODAL CAROUSEL -------*/
.modal-dialog {
    width: 60%;
	max-width: 60%;
	margin: 10vh auto;
}
.modal-content {
	border-radius: 0;
	border: 0;
}

.carousel-inner>.item>img {
	max-width: 100%;
	margin: 0 auto;
}



@media (min-width: 992px) {
  #mainNav {
    padding-top: 10px;
    padding-bottom: 10px;
    -webkit-transition: background 0.3s ease-in-out, padding-top 0.3s ease-in-out, padding-bottom 0.3s;
    -moz-transition: background 0.3s ease-in-out, padding-top 0.3s ease-in-out, padding-bottom 0.3s;
    transition: background 0.3s ease-in-out, padding-top 0.3s ease-in-out, padding-bottom 0.3s;
    letter-spacing: 1px;
    border-bottom: none;
    background: #ffffff;
  }
  #mainNav.navbar-shrink {
    padding-top: 10px;
    padding-bottom: 10px;
    border-bottom: 0px solid rgba(255, 255, 255, 0.3);
    /*background: rgba(29,128,156,0.8);*/
    background: rgba(255,255,255,0.8);
  }
  #mainNav .nav-link.active {
    outline: none;
    background-color: rgba(255, 255, 255, 0.3);
  }
  #mainNav .nav-link.active:hover {
    color: white;
  }
  

.navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 0.8rem;
    padding-left: 0.8rem;}
	

}

.navbar-expand-lg .navbar-nav .nav-link:hover {color: #1D809C}

.masthead {
  display: table;
  width: 100%;
  height: auto;
  padding: 200px 0;
  text-align: center;
  color: white;
  background-image: none;
  /*background-color: #f4b83f;
  background: url("../img/bg-masthead-bw.jpg") no-repeat top center scroll;*/
  background-color: #e3e8db;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.masthead-portfolio {
  display: table;
  width: 100%;
  height: auto;
  padding: 150px 0 20px;
  background-color: #ffffff;
}

p.category {
 text-align: center;
 color: #666;
 font-size: 1rem;
}

.masthead .intro-body {
  display: table-cell;
  vertical-align: middle;
}

.container {
	max-width: 97%;
}

.masthead .intro-body .container {
	padding-top: 150px;
	max-width: 86%;
	padding-bottom: 60px;
}


.logo-main {
		width: auto;
	}
	

.masthead .intro-body .brand-heading {
	text-align: left;
    font-size: 2.5rem;
    text-transform: none;
    color: #000;
    font-weight: 400;
    line-height: 1.2;
	margin-top: 40px;
	font-family: 'Roboto', 'Helvetica Neue', Helvetica, Arial, sans-serif;

}

.masthead .intro-body .intro-text {
  font-size: 18px;
    color: #000
}

/*img.giffona {
    image-resolution: 72dpi;
    max-width: 100%;
}*/

.scroll-to-top {
	color: #fff;
    right: 10px;
    bottom: 20px;
    position: fixed;
    background: rgba(255,255,255,0.4);
    padding: 8px 15px;
}


.reverse {
		flex-direction: row;
	}



@media (min-width: 768px) {
  .masthead {
    height: 100%;
    padding: 0;
  }
/*  .masthead .intro-body .brand-heading {
    font-size: 100px;
  }*/
  .masthead .intro-body .intro-text {
    font-size: 22px;
  }
}

.btn-circle {
  font-size: 26px;
  width: 55px;
  height: 55px;
  margin-top: 15px;
  line-height: 45px;
  -webkit-transition: background 0.3s ease-in-out;
  -moz-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
  color: #000;
  border: 2px solid #000;
  border-radius: 100% !important;
  background: transparent;
}
.btn-circle .fa {color: #000}

.btn-circle:focus, .btn-circle:hover {
  color: white;
  outline: none;
  background: rgba(255, 255, 255, 0.1);
}

.content-section {
  padding-top: 120px;
  padding-bottom: 120px;
}

section#works {padding-bottom: 0;}
section#single-work {padding-top: 0; padding-bottom: 50px;}

.big-link {
	font-weight: 600;
    font-size: 1.5rem;
}

.work-section {
  color: #000;  
  background-color: #ffffff;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.box-lavori h3 {
	margin-top: 12px;
	margin-bottom: 3px;
	text-transform: none;
	width: 100%;
	font-weight: 500;
}

.box-lavori h4 {
	text-transform: lowercase;
	font-size: 1rem;
	margin-bottom: 20px;
	font-weight: 400;
	width: 100%;
	color:#666;
}
.box-lavori img {
	width: 100%;
}

.col-lg-12 .box-lavori {
	margin-bottom: 60px;
}

.pad-bot {
	padding-bottom: 20%;
}

.pad-top {
	padding-top: 25%;
}
.pad-top-half {
	padding-top: 12%;
}
.txt-mezzo {
	width: 60%;
} 
.flex-txt {
	display: inline-flex;
	flex-wrap: wrap;
	flex-direction: row;
}
p.txt-right {
	text-align: right;
	flex: auto;
}

.pad-right {
	padding-right: 20px;
}


h2.titolo-sezione {
	font-size: 6rem;
	text-align: right;
	text-transform: lowercase;
	color:#000;
	font-weight: 400;
	font-family: 'Roboto', 'Helvetica Neue', Helvetica, Arial, 'sans-serif';
	margin-bottom: 20px;
}

section#single-work h2.titolo-sezione {
	margin-bottom: 15px;
}

h3.sottotitolo-sezione {
	text-align: right;
	color:#000;
	font-weight: 400;
	font-family: 'Roboto', 'Helvetica Neue', Helvetica, Arial, 'sans-serif';
	margin-bottom: 20px;
}

.sticky-col {
	position: sticky;
	top: 160px;
}

.scroll-col {
	
}

.motto {
	text-align: center;
	font-family: 'EB Garamond', serif;
	font-size: 3rem;
	margin: 40px 0;
	text-transform: none;
}

#map {
  width: 100%;
  height: 300px;
}

@media (min-width: 992px) {
  .content-section {
    padding-top: 120px;
    padding-bottom: 120px;
  }
  #map {
    height: 350px;
  }
}

.btn {
  font-family: 'Quicksand', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-weight: 400;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  text-transform: uppercase;
  border-radius: 0;
}

.btn-default {
  color: #42DCA3;
  border: 1px solid #42DCA3;
  background-color: transparent;
}

.btn-default:focus, .btn-default:hover {
  color: black;
  border: 1px solid #42DCA3;
  outline: none;
  background-color: #42DCA3;
}

ul.banner-social-buttons {
  margin-top: 0;
}

@media (max-width: 1199px) {
  ul.banner-social-buttons {
    margin-top: 15px;
  }
}

@media (max-width: 767px) {
  ul.banner-social-buttons li {
    display: block;
    margin-bottom: 20px;
    padding: 0;
  }
  ul.banner-social-buttons li:last-child {
    margin-bottom: 0;
  }
	
}


.riga-icone {
	margin: 0;
	max-width: 15%;
}

img.ico-soc {
	width: 22px;
}


footer {
  padding: 50px 0;
}

footer p {
  font-size: 14px;
  margin: 0;
	font-weight: 300;
}

::-moz-selection {
  background: #fcfcfc;
  background: rgba(255, 255, 255, 0.2);
  text-shadow: none;
}

::selection {
  background: #ffc200;
  background: rgba(255, 194,0, 0.3);
  text-shadow: none;
}

img::selection {
  background: transparent;
}

img::-moz-selection {
  background: transparent;
}

/*about*/
#chi-siamo {
    background-color: #00b59a;
    color: #000;
}
#chi-siamo p a {color: #2199b0}
#chi-siamo p a:hover {color: #1b758e}

#chi-siamo .col-sx {
    width: 50%;
    float: left;
    margin-bottom:80px
}

#cosa-facciamo {
	background-color: #ff4740;
}

#obiettivo {
	background-color: #ffc200;
}


/*contact*/

#contact {
    background-color: #000;
    /*background-color: #2199b0*/
    padding-top: 80px;
  padding-bottom: 60px;
}

#contact h3 {
	text-transform: lowercase;
	color: #fff;
}

#contact p {
    color: #fff;
	font-weight: 300;
   }
#contact p a {
    /*color: #f4b83f;*/
    color: #fff;
    text-decoration: underline;
	font-weight: 300;
   }
#contact p a:hover {
    /*color: #e5a72b;
    color: #1b758e*/
    color: #666
    }
      
#contact .btn-default {
    /*color: #f4b83f;
    border-color: #f4b83f*/
color: #fff;
    border-color:#fff

}
#contact .btn-default:hover {
    /*color: #1D809C;
    border-color: #f4b83f;
background-color:  #f4b83f;*/
     color: #000;
    border-color: #fff;
background-color:  #fff;
}





/*footer*/
footer {
    /*background-color: #2199b0*/
background-color: #000;
    padding: 30px 0 30px 0
}

.nologo {text-transform: none}
/*.nav-item {font-size: 0.9rem}*/

.btn-group-lg>.btn, .btn-lg {font-size: 1rem}



/***/
/*animate in*/

.spacer {height: 100px}

.section--code {
    background-color: #fafafa;
    
}

.testini {padding: 5% 5%;}

.testini h3 {
	font-size: 3.6rem;
	text-transform: lowercase;
}

p.logone {
	text-align: center;
	margin-bottom: 0;
	
	padding-top: 2vh;
}

.logone img {
	max-width: 100%;
}

hr.divider {
    border-bottom: 1px solid;
    margin: 30px 0
}

h2.big-letter {
    color: #000;
    font-size: 200px;
    text-transform: none;
    text-align: center;
    border-bottom: 0px solid;
    font-family: 'EB Garamond','Times new Roman', 'serif';
    font-weight: 500;
    margin-bottom: 0;
}

h6.pronun {
    font-size: 20px;
    font-weight: 300;
    text-align: center;
    text-transform: lowercase;
}

pre.pre-paragrafo{
    margin-bottom: 0;
    height: 300px;
background-color: yellow;
overflow: unset;
}

ul.text {
	color: #000;
	font-size: 1.75rem;
	font-family: 'Roboto', 'Helvetica Neue', Helvetica, Arial, 'sans-serif';
	list-style: none;
    padding: 0;	
}
p.text {
	word-wrap: break-word;
    color: #000;
	font-size: 1.5rem;
	font-family: 'Roboto', 'Helvetica Neue', Helvetica, Arial, 'sans-serif';
	line-height: 1.5;
}

p.marg-10 {
	margin-bottom: 10px;
}
p.text-2 {
	padding-left: 20px;
}


/*accordion*/
.collapse-header p.text {
	margin: 0;
}
.collapse-body {
	padding: 10px 0 40px 30px;
}
.collapse-body p {
	margin: 0;
}

button {
	background-color: transparent;
	border: 0;
}
button:focus {
	outline: none;
}


.full-height {
	min-height: 86vh;
}


@media only screen and (min-device-width: 767px) and (max-device-width: 1024px) {
	.masthead .intro-body .brand-heading {
		font-size: 2rem;
	}
	p.text {
		font-size: 1.2rem;
	}
	.full-height {
		min-height: 75vh;
		padding-top: 40px;
	}
	
	#contact .mx-auto {
		margin:0 !important;
	}
	.testini {padding: 0 5% 10%;}
	
	h2.titolo-sezione {
		font-size: 3rem;
		display: block;
		line-height: 1;
	}
	
}

@media only screen and (max-device-width: 815px) {
	
	.navbar-brand {
		width: 64px;
	}
	
	.sidebar-nav li.sidebar-nav-item-2nd a {
		padding: 6px 30px;
	}
	
	
	.header-menu {
		height: 100px;
	}
	.menu-toggle {
		top: 25px;
		width: 40px;
	}
		
	.masthead {
		padding: 130px 0 60px;
	}
	.masthead .intro-body .container {
		padding-top: 0;
		padding-bottom: 0;
	}
	.masthead .intro-body .brand-heading {
		font-size: 1.2rem;
	}
	
	.pad-top {padding-top: 0;}
	.pad-bot {padding-bottom: 0;}
	.box-lavori {margin-bottom: 10px;}
	
	.col-lg-12 .box-lavori {
	margin-bottom: 10px;
}
	
	
	h2.titolo-sezione {
		font-size: 2rem;
		display: block;
		line-height: 1;
	}
	
	.testini h3 {
    	font-size: 2.8rem;
		margin: 0 0 10px;
	}

	
	p.text {
		font-size: 1.2rem;
	}
	
	.spacer {
		display: none;
	}
	
	.reverse {
		flex-direction: column-reverse;
	}
	
		.full-height {
		padding-top: 0px;
	}
	
	p.category {
	font-size: 0.8rem;
	margin-top: 20px;
}
		.riga-icone {
    margin: 0 auto 30px;
    max-width: 100%;
}
	
	
}

@media only screen and (max-device-width: 815px) and (orientation: portrait) {
	.logo-main {
		width: 90%;
	}
	
}

@media only screen and (max-width: 740px) {
	.sovra-cont {max-width: 90%}    
}

