/*
To change this license header, choose License Headers in Project Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
*/
/*
    Created on : 30-gen-2020, 17.03.17
    Author     : Spark

    font:
    font-family: 'Work Sans', sans-serif;
    font-family: 'Tienne', serif;

*/


/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}



/* LOADER*/
#loading {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: fixed;
    display: block;
    opacity: 1;
    background:#03132c;
    z-index: 99;
    text-align: center;
}

.loading-complete #loading {
    display:none;
}

.textEffect {
    opacity:0;
    visibility:hidden;
}




.textEffect {
    width:280px;
    height:100px;
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 100;
    transform:translate(-50%, -50%);
    overflow: hidden;
    background:#03132c;
}



.textEffect .line {
    position: absolute;
    top: 50%;
    width: 280px;
    height: 10px;
    background-color: #fff;
    margin-top: -5px;
}

.textEffect .loader-icon {
    width: 40px;
    height: 57px;
    position: absolute;
    top:50%;
    margin-top:-28px;
    left:50%;
    margin-left: -20px;
}

.textEffect .loader-icon img,
.textEffect .loader-logo {
    opacity:0;
}

.textEffect .loader-logo {
    width: 220px;
    height: 22px;
    position:absolute;
    top:50%;
    margin-top:-11px;
    right:0;
}




/* END LOADER*/



* {
    box-sizing: border-box;
}



img{
    display:block;
    max-width:100%;
}

body,
html {
    height: 100%;
    margin:0;
    color: #fff;
    background-color: #001639;
}
/*
body{
    white-space: nowrap;
    transform: none !important;
    transform-style: initial !important;
}*/



._table {
    display:table;
    width: 100%;
    height: 100%;
}

._cell {
    display:table-cell;
    width: 100%;
    vertical-align: middle;
}

h1{

}


h2{
    font-family: 'Tienne', serif;
    font-weight:bold;
    font-size:40px;
    line-height: 45px;
    margin: 0;
}

h3{
    font-family: 'Tienne', serif;
    font-weight:bold;
    font-size:25px;
    line-height:38px;
    margin: 0;
}

h4{

}

p{
    font-family: 'Work Sans', sans-serif;
    font-size:20px;
    line-height:28px;
    margin: 0;
}


.spaceline-wrapper {
    width:100%;
    height:1px;
    background: rgba(243,44,81,0.2);
    position: fixed;
    z-index: 8;
    top:50%;
}



.spaceline{
    position: fixed;
    z-index: 8;
    top:50%;
    width:0px;
    height:3px;
    margin-top:-1px;
    background: #f32c51;
    pointer-events:none;
    transition:all .3s;
}

.spaceline.overlapped {
    z-index:10;
}



.layer-bkg-mobile-prlx{
    height: 110%;
    width: 100%;
    margin-left: 0;
    margin-top: 10%;
    z-index: 5;
    position: fixed;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    transition: all .2s cubic-bezier(0.36, 0.74, 0.65, 0.87);
}

.layer-bkg-prlx{
    height: 105%;
    width: 105%;
    margin-left: -2.5%;
    margin-top: -2.5%;
    z-index: 5;
    position: fixed !important;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/*
.layer-bkg-prlx.layer-bkg-prlx-1{
    background-image: url(../img/bkg_01.png);
}

.layer-bkg-prlx.layer-bkg-prlx-2{
    background-image: url(../img/bkg_02.png);
}

.layer-bkg-mobile-prlx{
    display:none;
    background-image: url(../img/bkg.png);
}*/




/* ary*/
#lines-pink {
    height: 100vh;
    position: fixed;
    width: 100%;
    top:0;
    left:0;
    z-index:3;
    overflow-y: hidden;
    /*display:none;*/
    opacity:0;
}




#lines-pink .pink-waves-one {
    width: 80vw;
    height: 100vh;
    float: right;
}


#pink-waves-background {
    background:url(../img/line-02.svg) no-repeat;
    position: absolute;
    top: 0;
    right: 0;
    z-index:2;
    width: 80vw;
    height:100vh;
    background-size:cover;
   /* -webkit-animation: bouncing-two 5s ease-out infiniteboth;
    animation: bouncing-two 5s ease-out infinite both;*/
}

/*
.pink-waves-one svg {
    height:100vh;
    width:100vh;
}

.pink-waves-one svg path {
    height:100vh;
    width:100vh;
}
*/


/* animations*/
 .curve {
    stroke-width: 1px;
    stroke-opacity: 0;
}
 .curve path {
    transform-origin: 0 0;
}
/* animations*/
 .curve {
    stroke-width: 1px;
    stroke-opacity: 0;
}
 .curve path {
    transform-origin: 0 0;
}
 .curve path:nth-child(1) {
	 animation: curve 15s linear 1.12s infinite alternate;
}

 .curve path:nth-child(2) {
	 animation: curve 15s linear 2.24s infinite alternate;
}

 .curve path:nth-child(3) {
	 animation: curve 15s linear 4s infinite alternate;
}

 .curve path:nth-child(4) {
	 animation: curve 15s linear 4.8s infinite alternate;
}

 .curve path:nth-child(5) {
	 animation: curve 15s linear 6s infinite alternate;
}


.curve path:nth-child(6) {
    animation: curve 15s linear 7.2s infinite alternate;
}

 .curve path:nth-child(7) {
    animation: curve 15s ease-in-out 8.4s infinite alternate;
}


 @keyframes curve {
    0% {
        transform: translateX(10%) translateZ(0) scaleY(1);
        opacity:0;

    }
    10% {
       /* transform: translateX(1%) translateZ(0) scaleY(0.95);
         opacity:0.1;*/

    }
    20% {
        /*transform: translateX(2%) translateZ(0) scaleY(0.95);
         opacity:0.2;*/

    }
    30% {
        /*transform: translateX(3%) translateZ(0) scaleY(0.95);
         opacity:0.3;*/

    }
    40% {
        /*transform: translateX(4%) translateZ(0) scaleY(0.95);*/
         opacity:0.4;

    }
    50% {
        transform: translateX(5%) translateZ(0) scaleY(1);
         opacity:0.5;

    }

    60% {
        /*transform: translateX(6%) translateZ(0) scaleY(0.95);*/
        opacity:0.6;
    }
    70% {
        /*transform: translateX(7%) translateZ(0) scaleY(0.95);*/
         opacity:0.7;

    }
    80% {
        /*transform: translateX(8%) translateZ(0) scaleY(0.95);*/
         opacity:0.8;

    }
    90% {
        /*transform: translateX(9%) translateZ(0) scaleY(0.95);*/
         opacity:0.9;

    }
    100% {
        transform: translateX(10%) translateZ(0) scaleY(1);
        opacity:1;
    }
}

.horizontal-scroll-container {
    position:relative;
    width: 100%;
    height: 100vh;
    /*overflow-x:hidden;*/
    margin:0 !important;
    z-index:9;
    -webkit-overflow-scrolling: touch;
 }

.horizontal-scroll  {
    position: absolute;
    top: 0;
    display: flex;
    /*width: 8265px;*/
    width:7350px;
    margin: auto;
    height: 100vh;
    position:relative;
}



.horizontal-scroll .scroll-child.two,
.horizontal-scroll .scroll-child.three,
.horizontal-scroll .scroll-child.four,
.horizontal-scroll .scroll-child.five,
.horizontal-scroll .scroll-child.six,
.horizontal-scroll .scroll-child.seven {
    width:600px;
    position: relative;
    z-index: 12;
}

.horizontal-scroll .scroll-child.eight  {
    width: 780px;
}















.header-logo-container{position: fixed;z-index: 15;top: 67px;left: 327px;}

.header-logo-container img {
    height: 56px;
}

.scrollMajicFix{
    top:0 !important;
}

.scrollmagic-pin-spacer {
    height:100vh !important;
    overflow:hidden;
    -webkit-overflow-scrolling: touch;
}

.section {
    height: 100vh;
    width: 600px;
    position: relative;
    display: inline-block;
    white-space: initial;
    vertical-align: top;
    white-space: normal;
    z-index: 10;
}

.section.section-animated {
    z-index:12;
}

.section-1{
    width: 1020px;
    margin-left: 247px;
    margin-right: 247px;
    background-image:url('../img/background-blue-opaque.png');
    background-repeat:repeat;
    padding: 80px;
    padding-top: 87px;
    z-index: 9;
    box-sizing: border-box;
    opacity:0;
}

.section .inner-section{
    position: relative;
    height: 100%;
}


.section-1 .inner-section{}

.section-1 .intro-banner-bottom,
.section-1 .intro-banner-top{
    max-width: 630px;
}

.section-1 .intro-banner-top{
    position: absolute;
    left: 0;
    width: 100%;
    bottom: 50%;
    margin-bottom: 50px;
    overflow:hidden;
}

.section-1 .intro-banner-bottom{
    position: absolute;
    left: 0;
    width: 100%;
    top: 50%;
    margin-top: 50px;
    overflow:hidden;
}

.section-1 .intro-banner h3{
    display: block;
    /*min-height: 228px;*/
}

.section-1 .intro-banner p{
    display: block;
    min-height: 228px;
}


.section .container-section{
    padding: 61px 75px 73px;
    background-image:url('../img/background-blue-opaque.png');
    background-repeat:repeat;
    position: relative;
    min-height:430px;
    z-index: 30;
}

.section-2 .container-section{
    margin-bottom: 184px;

}

.section-3 .container-section{
    margin-bottom: 10px;
}

.section-4 .container-section{
    margin-bottom: 210px;
}

.section-5 .container-section{
    margin-bottom: 10px;
}

.section-6 .container-section{
    margin-bottom: 210px;
}

.section-7 .container-section{
    margin-bottom: 10px;
}

.section .section-number{
    position: absolute;
    top: 18px;
    left: -74px;
    width: 59px;
    z-index: 3;
}


.section .title-outer {
    overflow:hidden;
    margin-left: -147px;
    margin-bottom: 80px;
}


.section .description-outer {
    overflow:hidden;
}





.section .section-icon{
    position: absolute;
    left: -82px !important;
    bottom: 60px !important;
    top: auto  !important;
}

.section-1 .section-icon{
    width: 140px;
}

.section-2 .section-icon{
    width: 140px;
    z-index: 30;
}

.section-3 .section-icon{
    width: 147px;
    left: -107px  !important;
    bottom: 57px  !important;
}

.section-4 .section-icon{
    width: 140px;
    left: -109px !important;
}

.section-5 .section-icon{
    width: 122px;
    left: -92px !important;
}

.section-6 .section-icon{
    width: 140px;
    left: -110px !important;
}

.section-7 .section-icon{
    width: 163px;
    left: -122px !important;
}

.scroll-child.two{
    margin-right: 230px;
}

.scroll-child.three{margin-right: 230px;}

.scroll-child.four{margin-right: 230px;}

.scroll-child.five{margin-right: 230px;}

.scroll-child.six{margin-right: 230px;}

.scroll-child.seven{margin-right: 230px;}

.scroll-child.eight{
    width: 780px;
}

.scroll-child.eight.reduce-index {
    z-index:2;
}


.section.section-8 {
    width:100%;
}



.section-8 .inner-section{
    position:relative;
    height:100%;
    background-image:url('../img/background-blue-opaque.png');
    background-repeat:repeat;
    text-align: center;
    font-size: 0;
}

.section-8 .section-title{
    margin: 0;
    margin-bottom: 85px;
    font-size: 40px;
    line-height: 38px;
    margin-top: 29px;
}

.section-8 .contact-line{
    display: block;
    height: 3px;
    background: #f32c51;
}

.section-8 .contact-info{
    display: inline-block;
    vertical-align: middle;
    margin: 90px 30px 0;
}

.section-8 .contact-info .contact-icon{
    position: relative;
    left: 0;
    bottom: 0;
    display: inline-block;
    vertical-align: middle;
    width: 60px;
}

.section-8 .contact-info p{
    display: inline-block;
    vertical-align: middle;
    color: #fff;
    margin-left: 20px;
}

.mobile-spaceline{
    display:none;
}

.section.section-pre-contatti{
    display:none;
}

.section.section-1 .wrapper_line_mobile   {
    display:none;
}


.section.section-1 .wrapper_line_mobile .line-only-mobile {
    display: block;
    position: absolute;
    bottom: 150px;
    left: 50%;
    width: 4px;
    margin-left: -2px;
    height: 100px;
    overflow: hidden;
    transition: all .3s;
    z-index: 10;
}



.section.section-1 .wrapper_line_mobile .line-only-mobile:before {
    content: "";
    position: absolute;
    top: 0;
    width: 100%;
    left: 0;
    height: 0%;
    content:"";
    -webkit-animation: line_animation 3s cubic-bezier(0.92, 0.04, 0.24, 0.4) infinite;
    animation: line_animation 3s cubic-bezier(0.92, 0.04, 0.24, 0.4) infinite;
    background: #f32c51;
}


@keyframes line_animation {
    0% {
        top:0;
        height:0;
    }
    40% {
        top:0;
        height:100%;
    }
    70% {
        top:100%;
        height:100%;
    }
    100% {
        top:100%;
        height:0;
    }
}
@-webkit-keyframes line_animation {
    0% {
        top:0;
        height:0%;
    }
    50% {
        height:100%;
    }
    90% {
        top:100%;
    }
    100% {
        top:100%;
    }
}

/* for low height resolutions*/




@media screen and (max-width: 1440px){

   /* .horizontal-scroll {
        width:7116px;
    }
*/

.section {
     width:500px;
}

.horizontal-scroll .scroll-child.two,
.horizontal-scroll .scroll-child.three,
.horizontal-scroll .scroll-child.four,
.horizontal-scroll .scroll-child.five,
.horizontal-scroll .scroll-child.six,
.horizontal-scroll .scroll-child.seven    {
width:500px;
}

/*
.section .container-section {
    min-height:358px;
}
*/
.section.section-1 {
    width:900px;
}

h2 {
    font-size:30px;
}

.section .section-icon {
    width: 110px;
}

p {
    font-size:16px;
}







.section-2 .container-section{
    margin-bottom: 160px;

}

.section-4 .container-section{
    margin-bottom: 160px;
}


.section-6 .container-section{
    margin-bottom: 160px;
}




}



@media screen and (max-width:1440px) and (max-height: 900px) and (orientation:landscape) {
    .header-logo-container{
        top:30px;
    }

    .horizontal-scroll {
        width:7050px;
    }

    .section .title-outer {
        margin-bottom:40px;
    }

    .section-2 .container-section,
    .section-4 .container-section,
    .section-6 .container-section {
        margin-bottom:100px;
    }
}





@media screen and (max-height: 768px) and (orientation:landscape) {


    .header-logo-container {
        top:35px;
    }

    .section.section-1 {
        width: 800px;
        padding-top:100px;
    }


    .section-1 .intro-banner-bottom {
        top:50%;
    }

    .section .title-outer {
        margin-bottom:60px;
    }

    .section .section-number {
        width:45px;
        left:-65px;
    }

    .section .title-outer {
        margin-left:-100px;
    }


    h3 {
        font-size:22px;
    }

    h2 {
        font-size:28px;
    }

    .section .section-icon {
        width: 100px;
    }

    p {
        font-size:15px;
    }


    .section .container-section {
        min-height:350px;
        padding: 51px 35px 53px;
    }

    .section-2 .container-section{
        margin-bottom: 50px;

    }

    .section-4 .container-section{
        margin-bottom: 50px;
    }


    .section-6 .container-section{
        margin-bottom: 50px;
    }




}

/* ----------- iPad Pro 10.5" ----------- */

/* Landscape */

@media only screen
  and (min-device-width: 1112px)
  and (max-device-width: 1112px)
  and (orientation: landscape)
  and (-webkit-min-device-pixel-ratio: 2) {

    .horizontal-scroll{
        width: 7395px;
    }

}


/* ----------- iPad Pro 12.9" ----------- */

@media only screen
  and (min-device-width: 1366px)
  and (max-device-width: 1366px)
  and (orientation: landscape)
  and (-webkit-min-device-pixel-ratio: 2) {

    .horizontal-scroll{
        width: 7106px;
    }
}




@media only screen
  and (min-device-width: 768px)
  and (max-device-width: 1024px)
  and (orientation: landscape)
  and (-webkit-min-device-pixel-ratio: 2) {
    .horizontal-scroll{
        width: 7435px;
    }
}



@media screen and (max-width: 1023px) and (orientation: portrait) {

#lines-pink {
    top: 0;
    position: fixed;
    display: block;
    left: 0;
    height: 100%;
}


#lines-pink .pink-waves-one,
#pink-waves-background{
    width:200vw;
}




.spaceline-wrapper {
    top: 0;
    left: 50%;
    height: 100%;
    width: 1px;
}

.spaceline {
    top: 0;
    width: 4px;
    height: 0px;
    margin-top: -1px;
    left: 50%;
    margin-left: -2px;
}

.section.section-1 .wrapper_line_mobile  {
    display:block;
}

.section-1 .inner-section {
    padding-bottom: 150px;
     height: auto;
}


.header-logo-container {
    position: absolute;
    top: 30px;
    width: 279px;
    left: 50%;
    margin-left: -140px;
}

.section-1 .intro-banner p {
    min-height:inherit;
}


.horizontal-scroll-container {
    width:100%;
    height:auto;
}

.horizontal-scroll {
    width:100%;
    display:block;
    height:auto;
}

.section .section-number {
    top: -80px;
    left: -15px;
}

.section .title-outer {
    margin-left: 0;
    margin-bottom: 0;
    position: absolute;
    top: -26px;
    left: -15px;
    z-index: 3;
}


    .section-1 .intro-banner.intro-banner-top,
    .section-1 .intro-banner.intro-banner-bottom {
        position:relative;
    }

    .section {
        height:auto;
        width:100%;
    }

    .section.section-8 {
        opacity:1;
    }

    .section.section-1 {
        margin:0;
        width:100%;
        padding-top: 200px;
        height:100vh;
        box-sizing: border-box;
    }

    .scroll-child {
        margin:30% auto;
    }

    .scroll-child.one {
        margin-top:0;
    }

    .horizontal-scroll .scroll-child.two,
    .horizontal-scroll .scroll-child.three,
    .horizontal-scroll .scroll-child.four,
    .horizontal-scroll .scroll-child.five,
    .horizontal-scroll .scroll-child.six,
    .horizontal-scroll .scroll-child.seven {
        width:75%;
        margin-left:auto;
        margin-right:auto;
    }


    .section .description-outer {
        display: table-cell;
        height: 100%;
        vertical-align: middle;
        padding: 120px 30px;
        padding-top: 90px;
    }


    .section .container-section {
        margin-bottom:0;
        min-height: inherit;
         padding:0px;
    }

    .section .section-icon {
        bottom: -44px !important;
        right:0 !important;
        left:inherit !important;
    }


    .horizontal-scroll .scroll-child.eight {
        width: 100%;
        margin-bottom: 0;
    }

    .section-8 .contact-info {
        width:100%;
        margin:0;
    }

    .section-8 .contact-info a {
        display: block;
    }

    .section-8 .contact-info a:first-child {
        margin-bottom:40px;
    }


    .section-8 .contact-info p {
        width: 180px;
        text-align: left;
    }


    .section-8 .contact-line {
        display:none;
    }



    .section-8 .inner-section {
        padding:100px 0;
    }

}

@media screen and (max-width: 640px){

.section-1 .inner-section {
    padding-bottom: 80px;
}

.section.section-1 .wrapper_line_mobile .line-only-mobile {
    height:45px;
}

.header-logo-container img {
    height: 36px;
    margin: 0 auto;
}


    p {
        font-size:15px;
        line-height:1.67em;
    }

    h2,
    .section-8 .section-title{
        font-size: 26px;
        line-height: 1.08em;
    }

    .section-8 .section-title {
        margin-bottom: 40px;
    }

    .scroll-child {
        margin: 40% auto;
    }

    .section .section-number {
        top: -70px;
        width: 47px;
    }

    .section .description-outer {
        padding: 90px 20px;
        padding-top:75px;
    }


    .section.section-1 {
        padding-left:30px;
        padding-right:30px;
        padding-bottom: 45px;
        padding-top:30%;
    }

    .section.section-1 ._cell{
       vertical-align: top;
    }

    .section-1 .intro-banner h3 {
        font-size: 20px;
        line-height: 30px;
    }






    .section .section-icon {
        width:100px;
    }

    .horizontal-scroll .scroll-child.two,
    .horizontal-scroll .scroll-child.three,
    .horizontal-scroll .scroll-child.four,
    .horizontal-scroll .scroll-child.five,
    .horizontal-scroll .scroll-child.six,
    .horizontal-scroll .scroll-child.seven {
        width:275px;
    }


    .section-8 .inner-section {
        padding: 80px 0;
    }

    /*.section-8 .contact-info{
        display: block;
        text-align: left;
        margin: 20px 0 0;
    }
    .section-8 .contact-info .contact-icon{
        width: 42px;
    }
    .section-1 .intro-banner h3 {
       font-size: 20px;
       line-height: 30px;
    }
    .section .section-number img{
        height:100%;
    }*/
}



@media screen and (max-width: 450px){

    .section-1 .intro-banner h3 {

    }


}


@media screen and (max-width: 375px){
    .section.section-1 .wrapper_line_mobile .line-only-mobile {
        bottom:50px;
    }
}