@import url('extras.css');
@import url('forms.css');
@import url('col.css');
@import url('12cols.css');

/*---------------------------------------------*\
    FONTS:
    font-family: 'Raleway', sans-serif;
    font-family: 'Playfair Display', serif;
\*---------------------------------------------*/

* { margin:0; padding:0; font:15px/1.25 sans-serif; font-weight:300; color:#1f2f49; z-index:1; -webkit-text-size-adjust: none; font-family: 'Raleway', sans-serif; }

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

html, body { min-height:100%; height:100%; width:auto; }
html > body  {min-height:100%; height:100%; width:auto; }
html { }
body {background:#ffffff; }

h1,h2,h3,h4,h5,h6 {line-height:1em; color:#1f2f49; padding:0;  margin-bottom:10px; text-align:left; }
h1 *, h2 *, h3 *, h4 *, h5 *, h6 * {line-height:1em; font-size:inherit; color:inherit; font-family:inherit; }

h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover {line-height:1em; background:none }

h1 {font-size:34px; }
h2 {font-size:30px; }
h3 {font-size:26px; }
h4 {font-size:22px; }
h5 {font-size:16px; }
h6 {font-size:14px; }

p {margin-bottom:15px;}
a {
  cursor: pointer;
  text-decoration: none;
  color: #e2d838;
  -webkit-transition: all 0.25s ease-in-out 0s;
  transition: all 0.25s ease-in-out 0s; }
a:hover {color:#1f2f49;}
hr {height:1px; border:0; border-bottom:1px dotted #ccc; margin:10px 0;}
a:visited, a:link {outline:none;}
a img {border:0;}
p.err {color:red; margin-bottom:10px}

em {font-style:italic}

strong, strong *, * strong {font-weight:bold !important; }
input {margin:0; padding:0;}
form p { margin:0; padding:0;}

ul { list-style-position:inside; margin:0; padding:0; }
ol li { list-style-type: decimal; list-style-position: outside; margin-left:15px }

label {color:#fff;}
select {-webkit-appearance:none; }

.hide {display:none}
.err {color:#f12 !important; }
strong.err {font-size:inherit; padding:0;}
h3.err {font-size:30px; padding:0;}

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

input:focus, select:focus {color:#444; outline:none; }
select:-moz-focusring { color: transparent;   text-shadow: 0 0 0 #000; }

.clearfix:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
.clearfix { display: inline-block; }
* html .clearfix { height: 1%; }
.clearfix { display: block; }
div.clear { clear:both; }

.centered-element{
    display: block;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
}


.btn-more{ 
    display: inline-block;
    border: 3px solid #e2d838;
    color: #222a38;
    font-size: 16px;
    text-align: center;
    padding: 10px 15px;
    text-transform: uppercase;
    font-weight: 400;
    line-height: 1em;
    -webkit-transition: all 0.25s ease-in-out 0s;
    transition: all 0.25s ease-in-out 0s;
}
.btn-more:hover{ background-color: #e2d838; }

.btn-more.dark{ 
    display: inline-block;
    border: 3px solid #222a38;
    background-color: #222a38;
    color: #ffffff;
}
.btn-more.dark:hover{ background-color: #ffffff; color: #222a38; }


.btn-writeus{ 
    display: inline-block;
    color: #ffffff;
    background-color: #222a38;
    font-size: 20px;
    text-align: center;
    padding: 13px 60px;
    text-transform: uppercase;
    font-weight: 700;
    line-height: 1em;
    -webkit-transition: all 0.25s ease-in-out 0s;
    transition: all 0.25s ease-in-out 0s;
}
.btn-writeus:hover{ background-color: #e2d838; color: #222a38; }

/*---------------------------------------------*\
                   layout 
\*---------------------------------------------*/
#wrapper { width:100%; }
.yellow{ color: #e2d838; font-size: inherit; font-weight: inherit; font-family: inherit; }
.content-wrapper{ width: 100%; max-width: 1400px; margin: auto; }

#nav-icon{
    width: 50px;
    height: 40px;
    position: absolute;
    margin: 0 40px;
    right: 0;
    top: 20px;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    -o-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
    cursor: pointer;
}

#nav-icon span{
  display: block;
  position: absolute;
  height: 6px;
  width: 100%;
  background: #2B3340;
  border-radius: 9px;
  opacity: 1;
  left: 0;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .25s ease-in-out;
  -moz-transition: .25s ease-in-out;
  -o-transition: .25s ease-in-out;
  transition: .25s ease-in-out;
}

#nav-icon span:nth-child(1) {top: 0px;}
#nav-icon span:nth-child(2),#nav-icon span:nth-child(3) {top: 15px;}
#nav-icon span:nth-child(4) {top: 31px;}
#nav-icon.open span:nth-child(1) {top: 18px;width: 0%;left: 50%;}
#nav-icon.open span:nth-child(2) {-webkit-transform: rotate(45deg);  -moz-transform: rotate(45deg);  -o-transform: rotate(45deg);  transform: rotate(45deg);}
#nav-icon.open span:nth-child(3) {  -webkit-transform: rotate(-45deg);  -moz-transform: rotate(-45deg);  -o-transform: rotate(-45deg);  transform: rotate(-45deg);}
#nav-icon.open span:nth-child(4) {  top: 18px;  width: 0%;  left: 50%;}




#header{ width: 100%; position: fixed; top: 0; background-color: #ffffff; padding-top: 20px; padding-bottom: 20px; z-index: 999; -webkit-transition: all 0.25s ease-in-out 0s; transition: all 0.25s ease-in-out 0s; }
#header #logo{ float: left; padding: 0 40px; }
#header #logo .logo-w{ display: none; }
#header #logo .logo-scroll{ display: block; }
#header #menu{ display: none; }
#header #menu.open{ display: block; }

#header #menu #menu-content ul{ list-style: none;  padding-top: 80px;}
#header #menu #menu-content ul li{ padding: 10px 10px; text-align: center;border-top: 1px solid #eee; }
#header #menu #menu-content a{ color: #2B3340; }
#header #menu #menu-content a:hover{ color: #e2d838; }
#header #menu #menu-content .active a{ color: #e2d838; }


.header-image{ position: relative; z-index: 0; min-height: 600px; background-position: center; background-size: cover; background-repeat: no-repeat; }
.header-image .txt-content{ position: absolute; z-index: 5; text-align: center; top: 75px; left: 0; width: 100%; padding: 25px; }
.header-image .txt-content h2{ color: #ffffff; text-align: center; text-transform: uppercase; font-weight: 700; font-size: 30px; line-height: 1.5em; }
.header-image .txt-content span.separator{ background-color: #fff; width: 80%; max-width: 725px; height: 3px; display: block; margin: 28px auto; }
.header-image .txt-content h4{ color: #e2d838; text-align: center; font-family: 'Playfair Display', serif; font-size: 20px; line-height: 1.5em; }
.header-image .txt-content p{ color: #ffffff; font-family: 'Playfair Display', serif; font-size: 16px; margin-top: 15px; }


.main-content{ background-color: #222a38; padding: 80px 30px; }
.main-content h3{ color: #ffffff; text-align: left; font-family: 'Playfair Display', serif; font-size: 25px; line-height: 1.5em; }

.main-content article{ border-top: 3px solid #e2d838; margin-top: 30px; padding: 30px 0 0 0; text-align: justify; }
.main-content article *{ color: #ffffff; line-height: 1.5em; }
.main-content article * a{color: #e2d838;}
.main-content article .col{ padding-right: 1%; }
.main-content article .col:last-child{padding-right: 0;}

.contact-page{ padding: 50px 0; }
.contact-page .main-content{ background-color: #ffffff; padding: 0 30px; }
.contact-page .main-content h3{ color: #222a38; }
.contact-page .main-content article *{ color: #222a38; }

.download-area{ padding: 80px 0; text-align: center; }
.download-area .dl-box{text-align: center; width: 100%; display: inline-block; min-height: 200px;}
.download-area .dl-box img{width: inherit;display: inline; margin-bottom: 15px;}
.download-area .dl-box span.label{ font-family: 'Playfair Display', serif; font-size: 18px; font-weight: 700; }

.download-area.dark{ background-color: #222a38; border-bottom: 3px solid #ffffff; }
.download-area.dark .dl-box span.label{ color: #ffffff; }

.cta-fullbox{ margin: 50px 0; padding-left: 30px; }
.cta-fullbox h2{ font-size: 30px; font-weight: 900; padding-top: 30px; }
.cta-fullbox.box-dark h2, .cta-fullbox.box-dark p{ color: #ffffff; }
.cta-fullbox p{ font-size: 18px; font-family: 'Playfair Display', serif; margin-top: 15px; margin-bottom: 35px; font-weight: 700; line-height: 1.5em; }
.cta-fullbox span.separator{ display: block; width: 100%; height: 3px; background-color: #222a38; margin: 25px 0;}
.cta-fullbox.box-dark span.separator{ background-color: #ffffff; }

.cta-fullbox .btn-more{ margin-bottom: 30px; }

.cta-fullbox.box-dark{ background-color: #273041; margin: 0; }
.cta-fullbox.box-dark .btn-more{ color: #ffffff; }
.cta-fullbox.box-dark .btn-more:hover{ color: #222a38; }



.contact-box{ padding: 150px 25px; text-align: center; }
.contact-box h2{font-size: 30px; font-weight: 900; text-align: center; text-transform: uppercase;}
.contact-box p{ font-size: 22px; font-family: 'Playfair Display', serif; margin-top: 15px; margin-bottom: 35px; font-weight: 700; line-height: 1.5em; }
.contact-box span.separator{ background-color: #222a38; width: 80%; max-width: 725px; height: 3px; display: block; margin: 28px auto; }

.contact-box.dark{ background-color: #222a38; }
.contact-box.dark h2{color: #ffffff;}
.contact-box.dark p{ color: #ffffff; }
.contact-box.dark span.separator{ background-color: #ffffff; }
.contact-box.dark .btn-writeus{ color: #222a38; background-color: #ffffff;}
.contact-box.dark .btn-writeus:hover{ background-color: #e2d838; color: #222a38; }



.box-link-area .box-link{ margin: 70px 0; }
.box-link-area .box-link .box{ position: relative;overflow: hidden; }

.box-link-area .box-link .box .txt{ width: 100%; position: relative; padding: 30px 10% 60px 10%; }
.box-link-area .box-link .box .txt.left{ text-align: left; }
.box-link-area .box-link .box .txt.right{ text-align: right; }

.box-link-area .box-link .box .txt h3, .box-link-area .box-link .box .txt p{ line-height: 1.5em; font-size: 26px; font-family: 'Playfair Display', serif; font-weight: 700; }
.box-link-area .box-link .box .txt.right h3, .box-link-area .box-link .box .txt.right p{ text-align: right; }
.box-link-area .box-link .box .txt p{  color: #e2d838; }
.box-link-area .box-link .box .txt article *{ font-family: 'Raleway', sans-serif; color: #222a38; font-size: 14px; font-weight: 400; }
.box-link-area .box-link .box .txt span.separator{ background-color: #222a38; width: 100%; height: 3px; display: block; margin: 20px 0; }

.box-link-area .box-link .box .btn-more{ position: absolute; bottom: 4px; }
.box-link-area .box-link .box .btn-more.right{ right: 10%; }
.box-link-area .box-link .box .btn-more.left{ left: 10%; }

.box-link-area .box-link .box .hover-layer{ position: absolute; z-index: 5; background-color: rgba(34, 42, 56, 0.8); width: 100%; height: 100%; top: 0; left: 0; -webkit-transition: all 0.25s ease-in-out 0s; transition: all 0.25s ease-in-out 0s; }
.box-link-area .box-link .box .hover-layer>span{ position: absolute; bottom: 40px; right: 20px; color: #ffffff; font-family: 'Raleway', sans-serif; font-size: 120px; font-weight: 400; line-height: 0; }
.box-link-area .box-link:hover .box .hover-layer{ width: 0; }

.box-link-area .box-link .box .dl-box{ margin: 40px 0 20px 0; }
.box-link-area .box-link .box .dl-box a.dl-file{ color: #1f2f49; display: block; margin-bottom: 10px; }
.box-link-area .box-link .box .dl-box a.dl-file i.fa{ color: #1f2f49; -webkit-transition: all 0.25s ease-in-out 0s;  transition: all 0.25s ease-in-out 0s;}
.box-link-area .box-link .box .dl-box a.dl-file:hover,
.box-link-area .box-link .box .dl-box a.dl-file:hover i.fa{ color: #e2d838; -webkit-transition: all 0.25s ease-in-out 0s;  transition: all 0.25s ease-in-out 0s;}
.box-link-area .box-link .box .dl-box a.dl-file i.fa{margin-right: 15px; font-size: 30px;}

.product-area .product{ margin: 70px 0; }
.product-area .product .box{ position: relative; }
.product-area .product .box .txt{ width: 100%; position: relative; padding: 0 10%; }
.product-area .product .box .txt h3{ line-height: 1.5em; font-size: 26px; font-weight: 700; }
.product-area .product .box .txt p{ }
.product-area .product .box .txt span.separator{ background-color: #222a38; width: 100%; height: 3px; display: block; margin: 20px 0; }


.portfolio-category{ width: 100%; background-color: #222a38; text-align: center; }
.portfolio-category .menu-voice{ display: inline-block; padding: 30px 60px; }
.portfolio-category .menu-voice a{ color: #ffffff; line-height: 1.5em; font-size: 35px; font-family: 'Playfair Display', serif; font-weight: 400; }
.portfolio-category .menu-voice.active a,
.portfolio-category .menu-voice a:hover{ color: #e2d838; }


.partners-area{  }
.partners-area .box{ padding: 5%; }
.partners-area .box img{ width: initial; padding: 15px; }
.partners-area .box .txt{ border-top: 3px solid #222a38; padding: 15px; }
.partners-area .box .txt h4{ font-size: 14px; text-transform: uppercase; font-weight: 700; }
.partners-area .box .txt p{ font-size: 14px; }

#form{ padding: 30px; margin-bottom:50px; }

#footer{ background-color: #222a38; padding: 30px 25px 0px 25px; border-top: 1px solid #ffffff; }
#footer img.logo-footer{ margin-bottom: 30px; width: auto; }
#footer img.logo-footer.logo-right{ height: 155px; }
#footer .col{ position: relative; }
#footer .col.logo-r{ text-align: center; }
#footer .txt{ padding-top: 10px; color: #ffffff; }
#footer .col:first-child .txt{ padding-top: 0; }
#footer .txt *{font-weight: 700; font-size: 14px;}

#footer .txt p,
#footer .txt a:hover,
#credits a:hover{color: #ffffff;margin-bottom: 5px;}

#credits{ background-color: #222a38; text-align: center; padding: 30px; }

.map-container{ margin-top: 120px; }
.init-map { height: 100%; min-height: 580px; width: 100%; display: block; }



@media screen and (min-width: 600px){ 
    .header-image .txt-content{ top: 25%; }
}

@media screen and (min-width: 768px){
    .download-area .dl-box{width: 50%;}
    .centered-element {
        display: -webkit-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        -webkit-align-items: center;
        align-items: center;
    }
    
    .cta-fullbox h2{padding: 0;}
    .cta-fullbox .btn-more{ margin-bottom: 0; }
}

@media screen and (min-width: 980px){
    
    #nav-icon{ display: none; }
    
    #header{ background-color: transparent; padding-top: 60px; padding-bottom: 40px; }
    #header #logo .logo-w{ display: block; }
    #header #logo .logo-scroll{ display: none; }
    #header #menu{ float: right; display: block; }
    #header #menu #menu-content ul{ list-style: none; padding-top: 0; }
    #header #menu #menu-content ul li{ float: left; padding: 10px 10px; border-top: 0; }
    #header #menu #menu-content ul li:after{ content: "|"; display: inline-block; margin-left: 15px; color: #ffffff; }
    #header #menu #menu-content ul li:last-child:after{ content: ""; }
    #header #menu #menu-content a{ color: #ffffff; }

    #header.scroll{ background-color: #ffffff; }
    #header.scroll #logo .logo-w{ display: none; }
    #header.scroll #logo .logo-scroll{ display: block; }
    #header.scroll #menu #menu-content a,
    #header.scroll #menu #menu-content ul li:after{ color: #222a38; }
    #header.scroll #menu #menu-content .active a{ color: #e2d838; }
       
    .header-image{ min-height: 600px; }
    
    .box-link-area .box-link .box .txt{padding: 0 10%;}
    
    .download-area .dl-box{width: 25%;}

    .map-container{ margin-top: 80px; }
    
    #footer .col.logo-r{ text-align: right; }
    #footer .txt {padding-top: 67px;}
    
}

@media screen and (min-width: 1200px){
    
    .header-image .txt-content{ top: 40%; }
    .header-image .txt-content h2{ font-size: 40px; }
    .header-image .txt-content span.separator{ background-color: #fff; width: 80%; max-width: 725px; height: 3px; display: block; margin: 28px auto; }
    .header-image .txt-content h4{ font-size: 30px; }
    .header-image .txt-content p{ font-size: 25px; }
    
    .header-image{ min-height: 800px; }
    
    .cta-fullbox h2{ font-size: 40px; }
    .cta-fullbox p { font-size: 23px; }
    
}
/*********************************************
----------- Iubenda  -----------------
*********************************************/
#iubenda-cs-banner .iubenda-banner-content * {color: white !important;}
