/*
Theme Name: 	GB Pro
Description: 	Responsive WordPress Theme based on Boostrap and Font Awesome.
Version:     	1.1.0
Author:     	Giuseppe Biondo
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.
*/


/* -------------------------------------------------------------------------------- */
/* ! Base */
/* -------------------------------------------------------------------------------- */
html, body {height: 100vh;}
body{color:#000; font-family: Lato;}
/* body{color:#000; font-family: 'Poppins'; font-weight: 400;} */

.home-title {margin-left: -500%;}



/* ! Transitions */
.transition-fade {transition: 0.3s; 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('fonts/NeueMontreal-Medium.woff') format('woff');
}




.scroll-container {overflow: hidden;}
.grid {padding: 0 22px;}

[data-scroll-section] {display: block; position: relative;}

.wp-block-image img {height: auto;}

@media (max-width: 520px) {
  .blocks-gallery-grid,
  .blocks-gallery-item
{display: block; width:100%!important;}
}




/* ! Typography */
a {text-decoration: none; color: #1f4094;}
p {font-size: 22px; line-height: 33px;}

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


.headline {font-size: 100px; margin: 0 0 20px 0;}
.subheadline {font-size: 60px; margin: 0 0 20px 0;}
.title {font-size: 40px; margin: 0 0 20px 0;}
.subtitle {font-size: 32px; margin: 0 0 20px 0;}



/* ! Helpers */
.margin-top {margin-top: 50px!important;}
.margin-right {margin-right: 50px!important;}
.margin-left {margin-left: 50px!important;}
.margin-bottom {margin-bottom: 50px!important;}
.margin-top-big {margin-top: 150px!important;}
.margin-bottom-big {margin-bottom: 150px!important;}
.margin-auto {margin-left: auto; margin-right: auto;}
.img-res {width: 100%;}
.padding-all {padding: 20px;}
.text-red {color: #FF274F;}
.text-center {text-align: center;}


body {transition: all 1s cubic-bezier(.215, .61, .355, 1);}
.bg-blue {background: #08086d;}
.bg-yellow {background: #D5D6FF;}






/* ! Animations */
.img-animation {opacity: 0; transition: all 1s cubic-bezier(.215, .61, .355, 1); transform:scale(1.5); transition-delay: 0.5s;}
.my-cool-animation {opacity: 1; transform: scale(1);}

.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-left-cover {opacity: 0; transition: all 1s cubic-bezier(.215, .61, .355, 1); transform: translateX(-30%);}
.fade-left-cover.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(0%);}

.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(0%);}

.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 1.5s 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 2s cubic-bezier(.215, .61, .355, 1);}
.zoom-out.is-inview{opacity: 1; transform: scale(1);}

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

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

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

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

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

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

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

.marker--1:after{animation-delay: 0.5s;}
.marker--2:after{animation-delay: 1s; background: #3858c9;}
.marker--3:after{animation-delay: 1.5s; background: #9b4bcf;}

@keyframes subliner{

  0% {width: 0; opacity: 1;}
  25%{width: 0; opacity: 1;}
  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-15 {transition-delay: 1.5s!important;}
.delay-20 {transition-delay: 2s!important;}





/* ! Header */
.fixed {position: fixed; z-index:10; width: 100%;}
.header {display: flex; justify-content: space-between; width: 100%; top: 0; padding: 0 80px; margin: 0 auto; transition: all 1s cubic-bezier(.215, .61, .355, 1);}



.header__logo {z-index: 999;}
.header__logo img {width: 140px; transition: all 1s cubic-bezier(.215, .61, .355, 1);}
.header__icon {display: none; width: 68px; position: relative; color: #fff;}

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


.site-nav {list-style-type: none; padding: 0; position: relative;}
.site-nav > li {display: inline-block;}
.site-nav > li a {font-size: 16px; text-decoration: none; font-weight: bold; padding: 20px; display: block; color: #fff; transition: all 1s cubic-bezier(.215, .61, .355, 1);}
.scroll-down .site-nav > li a {color:#000;}


/* Submenu */
.submenu {position: absolute; top: 50px; left: 111px; list-style-type: none; padding-left: 0; display: none; width: 180px; font-size: 13px; background: #74747417;}
.submenu li a {padding: 8px 0;}
.submenu li a:hover {color:#010a72; background: #30ef9a;}
.servizi {padding: 20px;}
.servizi:hover .submenu {display: block;}





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


/* active state */
.line-menu {position: absolute; height: 6px; background: #3DE99E; bottom: 21px; border-radius: 25px;}
.scroll-down .line-menu {bottom: 8px;}
.active a {opacity: 1!important;}
.header__menu {position: relative;}




/* Button */
.button {display: inline-block; color: #000; border: 3px solid black; padding: 10px 20px; margin-top: 20px; text-align: center; position: relative; overflow: hidden; transition: transform 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: block; color: #000; padding: 12px 15px; font-size: 15px; width: 145px; margin: 28px auto 0 auto; 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: ' '; position: absolute; top:0; left:0; right:0; bottom: 0; border: 2px solid #1e4096; 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--small {padding: 10px 20px; font-size:16px;}


/* Button Move*/
.button-frame--move {animation: zoom 3s infinite ease-in-out; width: 215px; padding: 15px 0; font-weight: bold; transition: all 0.7s cubic-bezier(.215, .61, .355, 1);}

@keyframes zoom{

  0% {transform: scale(1);}
  20%{transform: scale(1);}
  50%{transform: scale(1.1);}
  80%{transform: scale(1);}
  100% {transform: scale(1);}

}




/* Scroll down */
.scroll-down-icon {width: 100px; height: 100px; position: absolute; bottom: 0; left: 50%; margin-left: -50px; display: block;}
.line-center {width: 4px; height: 0px; opacity: 0; background: #3de99e; border-radius:25px; position: absolute; left: 50%; margin-top: 10px; animation: vertical_line_growth 4s cubic-bezier(.215, .61, .355, 1) infinite;}
.line-center span {position: absolute; width: 100px; bottom: -20px; display: block; left: -50px; text-align: center; color: #000; 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;}
.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);} */


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


/* ! cover text   MOD*/
.cover-text{height: 101vh; position: relative; display: flex; width: 100%; align-items: center; z-index: 0; margin-top: -82px;}
/* .cover-text__content{padding: 20px; color: #000; text-align: center; width: 100%; z-index: 1; position: relative;} */
.cover-text__content{padding-left: 9%; color: #000; text-align: left; width: 100%; z-index: 1; position: relative;}
.cover-text__content p {padding: 0; color: #000;}


/* ! Intro text */
.intro-text {padding: 100px 0 50px 0;}
.intro-text h1 {min-width: 700px;}


/* ! Geometric figures*/
.geometric-figure {position: absolute;}
.square-1 {width: 26px; height: 26px; top: 18%; left: 19%; border: 4px solid #F8FF49;}
.square-2 {width: 26px; height: 26px; bottom: 12%; right: 23%; border: 4px solid #F8FF49;}
.circle-1 {width: 35px; height: 35px; bottom: 12%; left: 23%; border: 5px solid #38FF73; border-radius: 100%;}
.circle-2 {width: 50px; height: 50px; top: 50%; right: 6%; border: 7px solid #38FF73; border-radius: 100%;}
.triangle-1 {width: 0; height: 0; top: 50%; left: 6%; border-left: 25px solid transparent; border-right: 25px solid transparent; border-bottom: 42px solid #806DFF;}
.triangle-2{width: 0; height: 0; top:18%; right: 19%; border-left: 15px solid transparent; border-right: 15px solid transparent; border-bottom: 26px solid #806DFF;}


/* Dark button */
.bottom-icon-left {position: fixed; bottom: 25px; left: 85px; z-index: 999; cursor: pointer;}




/* !Presentation*/
.presentation-container {margin-top: 250px; margin-bottom: 50px; text-align: center;}
.presentation-container .col-80 {margin-left: auto; margin-right: auto; display: block;}



/* ! Panel */
.panel {padding: 200px 0; position: relative;}
.panel h3 {font-size: 50px;}
.panel p {font-size: 22px;}
.panel__img img {height: 670px; width: 100%; display: block; object-fit: cover; margin: 0 auto;}
.panel__text {max-width: 550px; display: flex; width: 100%; height: 100%; align-items: center; padding: 20px;}

.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--grey {background: #eee;}



/* Servizi*/
.service-container {padding: 100px 50px;}
.service-container h2 {margin-bottom: 85px;}
.service {margin: 15px auto 80px;}
.service__image img {width: 100%; height: 175px; object-fit: contain; margin-left: auto; margin-right: auto; display: block;}
.service__title {text-align: center; font-size: 22px;}
.service__presentation > p {text-align: center; padding: 0 24px; font-size: 20px; line-height: 26px; }




/* ! 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; left: 0; top: 12px; background: #000;}


/* ! Panel cta */
.panel-cta {padding: 100px 0 150px; position: relative;}
.panel-cta__content {max-width: 900px; margin: auto; text-align: center; position: relative; }
.panel-cta__content h3 {font-size: 70px;}
.panel-cta p {font-size: 25px; margin-bottom: 50px;}



/* ! Media affix */
.media-affix {padding: 150px 0 400px 0;}
.author img {width: 330px; height: auto; margin-left: auto; margin-right: auto; display: block;}
.author__title {text-align: center; font-size: 34px;}

.media-affix__skills {margin-bottom: 40px; }
.media-affix__skills--1 {margin-top: 550px;}
/* test */
/* .media-affix__image {height: 80px; padding-left: 40px;} */
.div__image {display: block;position: absolute;  width: 175px ;height: 80px; top: 0; left: 0 }
.media-affix__skills {display: block; position: relative; height: 80px;}
.media-affix__image {height: 100%; padding-left: 40px; display: block;}
.media-affix__text{
  font-family: "Neue Montreal";
  font-weight: bold;
  display: block;
  font-size: 30px;
  position: absolute;
  width: 250px;
  height: 35px;
  top: 50%;
  left: 170px;
  margin-top: -19px;}



/* Portfolio CTA */
.banner-portfolio {height: 75vh; background: #232323; padding: 50px; display: flex; align-items: center; position: relative;}
.polygon-top {position: absolute; top: -2px; left: 0; width: 100%;}
.polygon-bottom {position: absolute; bottom: -2px; left: 0; width: 100%;}
.banner-portfolio__text {width: 70%; margin: 0 auto;}
.banner-portfolio__text h3 {color: #fff; margin-bottom: 30px;}


.button-portfolio {
    padding-top: 15px;
    color: #fff;
    background: transparent;
    border-radius: 30px;
    margin: 0px auto;
    display: block;
    width: 200px;
    height: 55px;
    text-align: center;
    border: 3px solid #fff;
    position: relative;
    transition: all 0.5s ease-in-out;
    font-weight: bold;
}

.button-portfolio:before {content:' '; position: absolute; background: url(img/icons/chevrons-right.svg) center center; width: 30px; height: 30px; background-size: cover; right: 24px; top: 10px; filter: invert(1); transition: all 0.5s ease-in-out;}
.button-portfolio:hover {padding-right: 15px; background: #1f40948c;}
.button-portfolio:hover:before {right:15px;}





/* !Footer */
.footer {position: relative; padding: 0 80px 60px; display: block; height: 200px;}
.footer .grid {padding: 0; max-width: none;}
.footer__logo {width: 110px; height: auto; position: relative; top: -18px;}
.horizontal-separator {height: 2px; width: calc(100% - 138px); background: #000; position: absolute; top:10px; right: 0;}
.footer__final-text {text-align: center; margin-top: 30px ;font-size: 18px;}
.footer__menu {text-align:center; margin-top: -14px;}
.footer__menu .site-nav {margin-top: 0; }
.footer__menu .site-nav li {width: initial; display: inline-block;}
.footer__menu .site-nav li a {padding: 5px 25px;}



/* Pagina servizi */
.servizi-page p,
.servizi-page ul {font-size: 22px; line-height: 1.75em; margin: 50px 0;}
.servizi-page {margin-right:auto; margin-left: auto;}
.servizi-page h2 {font-size: 32px; color: #04289c; text-align: center; margin: 95px 0 50px;}
.servizi-page h2:after {content:" "; display: block; width: 300px; height: 1px; background: #747474; margin: 18px auto;}

.servizi-page h3 {font-size: 25px; margin: 90px 0 50px; color: #04289c;}





/* Pagina contatti */
.contact-page {margin-bottom: 50px!important;}
.contact-intro {margin: 100px 0;}
.address,
.contact-column {padding: 40px 25px 25px;}
.address p {font-size: 20px; line-height: 35px;}
.wpcf7-form p {margin: 0 0 15px;}

.wpcf7 input[type="email"],
.wpcf7 input[type="text"],
.wpcf7-form textarea {padding: 15px 20px; border: 1px solid #7f7f7f; width:100%; font-size: 20px;}

.wpcf7 form.sent .wpcf7-response-output {padding: 12px; border: 3px solid #46b450; font-size: 18px; text-align: center; background: #e6f8d8; color: #081888;}

.wpcf7-list-item-label {font-size: 16px;}
.wpcf7-submit {padding: 10px 28px!important; background: #4848a0; color: #fff; border-radius: 49px; width: 140px;}

.container-colonne-contatti img {width: 100%; height: auto;}





/* Pagina Portfolio*/
.grid-portfolio h3{display: block; margin-top: 85px; margin-bottom: 0; text-align: center; width: 100%; font-size: 30px;}
.grid-portfolio p {display: block; margin-bottom: 100px; text-align: center; width: 100%;}






/* -------------------------------------------------------------------------------- */
/* ! Isotope */
/* -------------------------------------------------------------------------------- */
.grid-isotope {width: 94%; margin-top: 50px; position: relative;}

@media (min-width: 768px) {
  .grid-isotope {height: 1400px!important;}
}

@media (min-width: 1123px) {
  .grid-isotope {height: 1100px!important;}
}


/* ---- isotope button ---- */

.button-select {
  display: inline-block;
  padding: 10px 18px;
  margin-bottom: 10px;
  background: #EEE;
  border: none;
  border-radius: 7px;
  background-image: linear-gradient( to bottom, hsla(0, 0%, 0%, 0), hsla(0, 0%, 0%, 0.2) );
  color: #222;
  font-family: sans-serif;
  font-size: 16px;
  text-shadow: 0 1px white;
  cursor: pointer;
}

.button-select:hover {
  background-color: #8CF;
  text-shadow: 0 1px hsla(0, 0%, 100%, 0.5);
  color: #222;
}

.button-select:active,
.button-select.active {
  background-color: #2c4fa8;
}

.button-select.active {
  color: white;
  text-shadow: 0 -1px hsla(0, 0%, 0%, 0.8);
}

.button-select:active {
  box-shadow: inset 0 1px 10px hsla(0, 0%, 0%, 0.8);
}

/* ---- isotope button-group ---- */

.button-group {width: 100%; text-align: center;}

.button-group:after {
  content: '';
  display: block;
  clear: both;
}

.button-group .button-select {
  border-radius: 0;
  margin-left: 0;
  margin-right: 1px;
}

.button-group .button-select:first-child { border-radius: 0.5em 0 0 0.5em; }
.button-group .button-select:last-child { border-radius: 0 0.5em 0.5em 0; }



/* clear fix */
.grid-isotope:after {
  content: '';
  display: block;
  clear: both;
}

/* ---- .element-item ---- */


.element-item {
  position: absolute;
  width: 350px;
  height: 225px;
  margin: 5px;
  border: 1px solid rgb(4 64 120);
  box-shadow: -6px 9px 4px -2px #07257980;
  margin-bottom: 50px;
}

.element-item__image {
  position: absolute;
  width: 100%;
  height: 100%;
  overflow:hidden;

}

.element-item__title {
  position: absolute;
  width: 240px;
  text-align: center;
  bottom: -15px;
  font-size: 19px;
  background: #e6e6fd;
  margin-left: -120px;
  left: 50%;
  box-shadow: 0px 6px 6px -2px #616161;
  font-weight: bold;
  color: #2a2a2a;
  padding: 4px;
}




.element-item__image:hover:before {
transform: translateY(0%);


} */

.element-item:hover {cursor:pointer;}





.element-item img {
  width:100%;
  height: auto;
  transition: all 1s cubic-bezier(.215, .61, .355, 1);
}

.element-item img:hover {
  transform: scale(1.2);

}




/* ! Single Portfolio */
.main-portfolio {margin-top: 150px!important;}
.single-portfolio h3 {margin-top: 90px; font-size: 22px;}
.portfolio ul li {font-size: 22px; margin-bottom: 15px;}
.single-portfolio .site-nav > li a {color:#000;}

.single-portfolio__title {text-align: center; text-transform: uppercase; margin: 60px 0 70px;}
.single-portfolio__subtitle {font-size: 30px; text-transform: uppercase; margin: 100px 0 65px; color: #222;}
.single-portfolio__img {width: 80%; height: auto; margin-left: auto; margin-right: auto; display: block;}
.portfolio-cta {font-size: 25px; line-height: 33px; text-align: center; margin: 100px 0 55px;}
.single-portfolio .button-portfolio {width: 335px; padding-top: 0; text-transform: uppercase; margin-bottom: 80px; background: #434396;}
.img-colonne .wp-block-column {margin: 0;}

/* Cookie banner */
/* .cc-banner.cc-bottom {background: #fff;} */
.cky-consent-bar-trigger {border-radius:5px;}



/* ! Pagina cookie e Pagina Policy*/
.privacy-policy h1,
.post-363 h1{font-size: 80px;}

.privacy-policy p, 
.privacy-policy ul{line-height: 24px;}

.privacy-policy p {font-size: 14px; }

.post-363 .intro-text h1,
.privacy-policy .intro-text h1 {min-width: inherit;}
.cky-audit-table-element {height: 1075px;}


/*Google recaptcha*/
.grecaptcha-badge {display:none!important; width: 0px!important;}




/* ! Dark mode */
.site-container.dark {background: #000; color: #fff;}
.dark .site-nav > li a {color: #fff;}
.dark .header__logo img {filter: brightness(0);}
.dark .footer__logo {filter: brightness(8);}

.dark .cover {filter: invert(1);}
.dark .cover:before {width:0px;}
.dark .cover__content h1 {color: #fff; filter: invert(1);}
.dark .single-portfolio__title h1,
.dark .single-portfolio__subtitle {color: #fff;}

/* .dark .site-nav > li a,
.dark .headline,
.dark .subheadline,
.dark .title,
.dark .subtitle,
.dark .cover-text__content {color: #fff;} */

.dark .cover-text {filter: invert(1);}
.dark .bottom-icon-left 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 {filter: invert(1);}

.dark .header__cta .button {color: #fff; border-color: #fff;}

.dark .header__menu--open li a {color: #fff!important;}


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

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

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

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

.dark .polygon-top,
.dark .polygon-bottom {filter: invert(1);}

.dark .banner-portfolio {background: #fff;}
.dark .banner-portfolio__text h3 {color: #000;}
.dark .button-portfolio {border-color: #000; color: #000;}
.dark .button-portfolio:before {filter: invert(0);}
.dark .button-portfolio:hover {background: transparent;}

.dark .button-frame--move:hover {filter: drop-shadow(0px 0px 25px red);}

.single-portfolio .dark .button-portfolio {background: #fff;}
.single-portfolio .dark .button-portfolio:hover {background: #fffefed9;}

.dark .address p {color:#000;}




.test-height {height: 500px;}





@media (min-width: 768px) {
  body {overflow: hidden;}


  /* header */
  .header__cta {display: none;}
	
   .dark .header__logo img {filter: brightness(10);}

  .scroll-down .header {background: rgb(255 255 255 / 80%); transition: all 1s cubic-bezier(.215, .61, .355, 1);}
  .scroll-down .dark .header {background: rgb(0 0 0 / 85%); transition: all 1s cubic-bezier(.215, .61, .355, 1);}
  .scroll-down .header .site-nav > li a {padding: 9px 20px;}
  .scroll-down .header .header__logo img {width: 100px;}


  /* Panel */
  .panel--text-left h3 {width: 140%; position: relative; z-index: 10;}
  .panel--text-right h3 {width: 150%; position: relative; z-index: 10; position: relative; left: -30%;}


  /* ! Panel info */
  .panel-info .col-33:nth-child(2) {order: -1;}
  .panel-info .button-frame {position: absolute; top: 100px; left:30px;}
  .headline--right {margin-top: 250px;}
  .headline--left {text-align: right; margin-top: 100px;}

}


@media (max-width: 768px) {
  /* ! typography */
  .headline {font-size: 60px;}
  .title {font-size: 30px;}
  .subtitle {font-size: 23px;}
  .subheadline {font-size: 40px;}


  /* ! header */
  .header {padding: 0 10px; background: #fff;}
  .scroll-down .header {background: rgb(255 255 255 / 80%); transition: all 1s cubic-bezier(.215, .61, .355, 1);}
  .header__icon {display: block; }
  .header__menu {width: calc(100% - 108px); height: 100vh; background: #fff; position: absolute; top: 0px; left:-7px; transform: translateX(-100%); transition: all 1s cubic-bezier(.215, .61, .355, 1); box-shadow: 4px 3px 7px grey;}
  .header__menu--open {transform: translateX(0%);}
  .site-nav li {width: 100%;}
  .header__menu--open .site-nav li a {width: 70%; display: block; color:#000; padding: 20px 45px 20px 30px; border-bottom: 1px solid #ccc; margin: 0 auto;}
  .header__menu--open .site-nav li:first-of-type a {border-top: 1px solid #ccc;}


  .dark .header__menu {background: #333;}

  .icon-hamburger {width: 30px; height: 30px; position: absolute; top:28px; right: 20px;}

  .icon-hamburger span {width: 100%; height: 4px; position: absolute; top: 11px; transition: all 0.2s ease-in-out;}
  .icon-hamburger span:after,
  .icon-hamburger span:before {content: ' '; width: 100%; height: 4px; position: absolute; 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:after,
  .has-cover .icon-hamburger span:before {background: #000;} */

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


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


  /* Cover*/
  .cover {top: 59px;}
  .headline span {margin-bottom: 10px;}


  /* active state*/
  .line-menu{display: none;}


  /* menu */
  .site-nav {margin-top: 160px;}
  .submenu {position: relative; display: block; width: 100%; top: 0; left: 0; margin: 14px 0 0 6px;}
  .submenu li a {padding: 11px 0;}
  .servizi {padding: 0px 20px 0;}



  /* ! Bottom icon */
  .bottom-icon-left img {width: 25px;}
  .bottom-icon-left {left: 30px; bottom: 8px;}




  /* ! Media affix */
  .media-affix {padding-bottom: 50px; padding-top: 15px;}
  .media-affix__item h4 {margin-left: 140px;}
  .media-affix__skills--1 {margin-top: 80px;}
 .media-affix__skills {margin-left: 8%;}

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


  /* Panel */
   .panel {padding: 100px 0;}
   .panel__img img {margin-top: 50px;}
   .panel--text-right {padding-bottom: 0px;}
   .panel--text-right__wrap {display: flex!important; flex-wrap: wrap-reverse!important;}


   /* Service */
   .service-container {padding: 250px 0 100px;}


   /* Panel Cta*/
   .panel-cta {padding: 100px 0;}


  /* Footer */
  .footer {padding: 0 10px;}


  /* Pagina contatti*/

.contact-intro {margin: 50px 0;}
  .wp-block-columns.container-colonne-contatti {display: block!important;}
  .address,
  .contact-column {padding: 100px 25px 25px; margin-left: 0!important;}

}







/* Background hero query*/
@media (min-width: 770px) and (max-width: 1130px) {
  .cover-text {background-position-x: 12%!important;}
}








@media (max-width: 520px) {



  /* Animations */
  .fade-up {transform: translateY(10%);}


  /* header */
  .logo {width: 60px; margin-top: 10px; margin-bottom: 4px;}
  .header__logo img {width: 100px;}
  .header__cta .button {padding: 8px 20px; margin-top: 10px;}
  .icon-hamburger {top:20px;}


  /* cover */
  .triangle-1,
  .circle-2 {display: none;}

  .square-1 {top: 17%; left: 17%;}
  .square-2 {bottom: 17%; right: 20%; }
  .circle-1 {bottom: 25%; left: 11%;}
  .triangle-2{top:19%; right: 25%;}

  .bottom-icon-left {bottom: 35px; left: 35px;}
  .cover {height: 360px;}
  .cover__content h1 {font-size: 45px;}
  .cover-text__content > h2 > span:nth-child(3) {display: block; width: 200px;}
  .cover-text {background-position-x: center!important;}


  /* presentation */
  .presentation-container {margin-top: 90px; margin-bottom: 0;}


  /* media affix */
  .div__image {width:142px; height: 60px;}
  .media-affix__text {
    font-size: 26px;
    width: 160px;
    height: 26px;
    top: 50%;
    left: 105px;
    margin-top: -26px;
}

  .media-affix__image {padding-left: 20px}
  .media-affix__skills {margin-left: 0;}
  .author img {width: 100%; height: 290px; object-fit: contain;}


  /* panel */
  .panel h3 {font-size: 40px; }
  .panel--text-left {padding: 50px 0;}
  .panel__img img {height: 450px;}



  /* Banner portfolio */
  .banner-portfolio {height: 450px; padding: 35px;}
  .banner-portfolio__text {width: 100%;}


  /* panel cta */
  .panel-cta__content h3 {font-size: 40px; }
  .panel-cta p {font-size: 21px; margin-bottom: 33px;}
  .button-frame--move {width: 170px; padding: 13px 0;}


  /* Footer */
  .footer {height: 150px;}
  .footer__logo {width: 75px; top: 0;}
  .horizontal-separator {width: calc(100% - 88px); top: 20px; height: 1px;}
  .footer__final-text {font-size: 15px!important; width: 250px; line-height: 24px; margin-left: auto; margin-right: auto; margin-top: 0;}
  .footer__final-text p {font-size: 14px;}
  .footer__menu {font-size: 15px; margin-top: 0;}
  .footer__menu .site-nav li a {padding: 5px 15px;}


  /* Pagina Contatti*/
  .contact-page {margin-bottom: 0px !important;}

  .wpcf7 input[type="email"],
  .wpcf7 input[type="text"],
  .wpcf7-form textarea {padding: 8px;}

  .address .has-background {padding: 15px;}
  .address p {font-size: 18px; line-height: 25px;}

  .address,
  .contact-column {padding: 5px 25px;}

  .contact-image img {object-fit: contain;}
  .container-colonne-contatti img {height: 140px;}
  .wp-block-column.address {margin-top: 50px;}


  /* Pagina servizi */
  .servizi-page {padding: 0 11px;;}
  .servizi-page p,
  .servizi-page ul {font-size: 20px; line-height: 1.6em; }

  .servizi-page ul {padding-left: 30px;}
  .servizi-page h2 {font-size: 28px;}
  .servizi-page h2:after {width: 170px;}


  /* portfolio */
  /* .grid-portfolio h3 {margin-top: 20px;} */
  .grid-portfolio p {margin-bottom: 75px;}
  .grid-isotope {margin-top: 40px; width: 94%!important;}
  .button-group {text-align: center;}
  .element-item {width: 97%;}
  .element-item img {height: 100%;}



  /* single portfolio*/
  .main-portfolio {margin-top: 80px!important;}
   .single-portfolio__title {margin: 30px 0 40px;}
  .single-portfolio p,
  .single-portfolio ul li {font-size: 20px; line-height: 26px;}

   .single-portfolio .footer__menu ul li a{font-size: 15px; }
  .single-portfolio__img {width: 100%;}
  .single-portfolio__subtitle {font-size: 22px; margin: 80px 0 22px;}
  .single-portfolio h3 {margin-top: 80px;}
  .portfolio-cta {font-size: 23px!important; line-height: 31px!important;}



  /* Pagina privacy policy e cookie policy*/
	.privacy-policy .intro-text,
	.post-363 .intro-text {padding: 70px 0 30px;}

	.privacy-policy .intro-text h1,
	.post-363 .intro-text h1 {font-size: 45px;}


}




@media (max-width: 370px) {

	/* portfolio */
	.element-item {height: 190px;}


}
































/* ! 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-70{ width: 70%; }
.col-80{ width: 80%; }
.col-100{ width: 100%; }

@media (max-width: 991px) {
  .tab-20 { width: 20%; }
  .tab-25 { width: 25%; }
  .tab-33 { width: 33.33%; }
  .tab-40{ width: 40%; }
  .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-40{ width: 40%; }
  .sma-100 { width: 100%; }

  .sma-hide{display:none}
}







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