@import url('reset.css');

::-moz-selection{ background-color: #ececec; color: #333;}
::selection{ background-color: #ececec; color: #333;}

a {text-decoration: none; color: #b84d43; cursor: pointer;}
a:hover {color: #777;}

body {
  font-family: 'IBM Plex Sans', sans-serif;
  background: #FFF;
  color: #777;
  font-size: 15px;
  line-height: 26px;
  letter-spacing: 0;
  font-weight: 400;
  -webkit-text-size-adjust: 100%;
}

ul li, ol li {font-weight: inherit;}

h1 {font-size: 14px; line-height: 21px; font-weight: 400; color: #b84d43; font-family: 'IBM Plex Sans', sans-serif; text-transform: uppercase; letter-spacing: 5px; margin-bottom: 20px;}
h2 {font-size: 31px; line-height: 45px; font-weight: 500; font-family: 'IBM Plex Sans', sans-serif; color: #b84d43; margin-bottom: 20px;}
h3 {font-size: 12px; line-height: 21px; font-weight: 400; color: #b84d43; font-family: 'IBM Plex Sans', sans-serif; text-transform: uppercase; letter-spacing: 4px; margin-bottom: 10px;}
h4 {font-size: 13px; line-height: 21px; font-weight: 500; letter-spacing: 0.5px; font-family: 'IBM Plex Sans', sans-serif; color: #b84d43; margin-bottom: 5px; text-transform: uppercase;}

strong {font-weight: 600}

#cookieChoiceInfo {bottom: 0; top: inherit !important; font-size: 10px; line-height: 15px; padding-top: 10px !important; font-family: Helvetica, Arial, sans-serif;}
#cookieChoiceInfo a#cookieChoiceDismiss {margin-left: 8px !important;}

a.bottone {position: relative; height: auto; overflow: hidden; border-radius: 5px; background: #b84d43; font-weight: 400; font-size: 14px; line-height: 21px; font-family: 'IBM Plex Sans', sans-serif; letter-spacing: 0.5px; color: white; width: 180px; display: inline-block; text-align: center; padding: 12px 0;}
a.bottone:hover {background: #a32b20;}



#video-home {position: absolute;top:0;left:0;right:0;bottom:0;z-index: 1; overflow: hidden;}
#video-placeholder.foto-bg {background: url(/frontend/img/videocallback.jpg) center center; position: absolute; position: absolute; z-index: 3; top: 0; left: 0;right: 0; bottom: 0;}





/* --------------------------------------------------------------------------
        CSS BASE
--------------------------------------------------------------------------- */

.only-mobile {display: none;}
.not-mobile {display: block;}

.wrapper {position: relative; height: auto; overflow: hidden; width: 100%; max-width: 1140px; margin: 0 auto; padding: 0 20px;}

#top {position: relative; height: auto; overflow: hidden; padding-top: 20px;}
#top .wrapper, #top .wrapper .not-mobile {text-align: center;}

#lang, #lang-mobile {position: absolute; height: auto; overflow: hidden; font-size: 12px; margin-top: 29px; left: 0; color: #FFF;}
#lang a, #lang-mobile a {color: #FFF;}
#lang a:hover, #lang-mobile a:hover {color: #CCC;}
#lang-mobile {z-index: 4; left: 20px; top: 16px;}

#header {position: relative; height: auto; overflow: hidden;}

#menu-mobile {display: none;}
#menu {position: relative; height: auto; overflow: hidden; display: inline-block;}
#menu ul {position: relative; height: auto; overflow: hidden; padding-left: 0}
#menu ul li {font-family: 'Nunito Sans', sans-serif; line-height: 87px; font-weight: 400; position: relative; height: auto; overflow: hidden; list-style: none; display: inline-block; margin: 0 16px; vertical-align: middle;}
#menu ul li a {position: relative; height: auto; overflow: hidden; color: #fff;font-size: 14px; letter-spacing: 1px; font-weight: 400;}
#menu ul li:hover, #menu ul li a:hover, #menu ul li.active a {color: #b84d43;}
.logo a img {width: 90px;}

#logo-mobile {position: absolute; top: 20px; width: 100%; z-index: 3; text-align: center;}
#logo-mobile a {display: inline-block;}
#logo-mobile a img {width: 90px;}

.bottone-top {margin-top: 20px;}
.social-top {margin-top: 31px;margin-left: 20px;}
.social-top a {display: inline-block;}
.social-top a img {width: 12px;}
.social-top a:last-child {margin-left: 8px;}

.top-right {position: absolute; right: 0; top: 0;}
#top {position: relative; z-index: 3;}
#gradient {position: absolute; z-index: 2; top: 0; left: 0; right: 0; bottom: 0;
-webkit-box-shadow: inset 0px 100px 200px -10px rgba(0,0,0,0.60);
-moz-box-shadow: inset 0px 100px 200px -10px rgba(0,0,0,0.60);
box-shadow: inset 0px 100px 200px -10px rgba(0,0,0,0.60);
background: rgba(0, 0, 0, 0.2);}

#galleria.galleria-home {width: 100%; top: 0;position: absolute !important;z-index: 1; background: #333}
/*#galleria.galleria-home .galleria-container img {opacity: 0.75 !important}*/

#galleria-title-container {z-index: 3; color: white; font-weight: 500; font-size: 52px; line-height: 62px; position: relative; margin-top: 140px;}
.galleria-title {width: 100%; max-width: 640px; padding-left: 40px;}

#header, #galleria.galleria-home {height: 600px}

#main-content {padding: 70px 0 80px 0;}

.medium-wrapper {width: 100%; max-width: 800px; margin: 0 auto;}
.align-center, .align-center p, .align-center h2, .align-center h3 {text-align: center;}

#prod-gallery-container {position: relative; height: auto; overflow: hidden; padding-top: 50px;}
body#page-credits .medium-wrapper img {display: inline-block;}

body#page-privacy-e-cookie .medium-wrapper.align-center, body#page-termini-e-condizioni .medium-wrapper.align-center,
body#page-privacy-e-cookie .medium-wrapper.align-center p, body#page-termini-e-condizioni .medium-wrapper.align-center p,
body#page-termini-e-condizioni .medium-wrapper.align-center h3,
body#page-about .medium-wrapper.align-center p,body#page-about .medium-wrapper.align-center h3 {text-align: left;}

.bottone.bottone-terms {margin-left: 10px}


/* --------------------------------------------------------------------------
        HOME
--------------------------------------------------------------------------- */

#logo-home {z-index: 3; position: absolute; width: 100%; text-align: center; margin-top: 20px;}
#logo-home img {width: 100%; max-width: 250px;}

#page-home #menu ul li.logo {display: none;}
#logo-home .social-home {text-align: center; margin-top: 20px;}
#logo-home .social-home a {display: inline-block; margin: 0 3px;}
#logo-home .social-home a img {width: 15px;}


/* --------------------------------------------------------------------------
        CAMERE
--------------------------------------------------------------------------- */

.camera-container {position: relative; height: auto; overflow: hidden;}
.camera-pic {position: relative; height: auto; overflow: hidden;}
.camera-pic img {width: 100%; display: block;}
.camera-desc {position: relative; height: auto; overflow: hidden; text-align: left;}
.camera-desc p {text-align: left; margin-bottom: 6px;}
.camera-container h3 {font-weight: 600; letter-spacing: 2px; margin-top: 15px; text-align: left;}

.camera-row h2 {margin-bottom: 0;}
.camera-prezzo {color: #b84d43; padding: 30px 0 28px 0;}
.camera-pic {}
.camera-descbreve {}
.camera-desc {}

.path {text-transform: uppercase;font-size: 10px;}
.path span.raquo {padding: 0 2px;}

.text-top {margin-bottom: 30px;}


/* --------------------------------------------------------------------------
        ATTIVITA'
--------------------------------------------------------------------------- */

h2.h2-with-path {margin-bottom: 0;}
.attivita-content {margin-top: 15px;}


/* --------------------------------------------------------------------------
        BLOG
--------------------------------------------------------------------------- */

.blog-wrapper {width: 100%; max-width: 980px; margin: 0 auto;}
.blog-post-container h3 {font-size: 25px; line-height: 35px; font-weight: 500; font-family: 'IBM Plex Sans', sans-serif; color: #b84d43; margin-bottom: 10px; text-transform: none; letter-spacing: 0; margin-top: 0;}
.camera-data {font-size: 10px; text-transform: uppercase; line-height: 12px;}
.blog-post-container .camera-pic {margin-bottom: 15px;}
.text-top-blog {margin-bottom: 50px;}


/* --------------------------------------------------------------------------
        Call To Action
--------------------------------------------------------------------------- */

#call-to-action {position: relative; height: auto; overflow: hidden; background: #f9f8fc; padding: 100px 0; background-position: center center;}
#call-to-action .call-to-action-text {text-align: center; font-size: 38px; line-height: 40px; font-weight: 500; color: #FFF; font-family: 'IBM Plex Sans', sans-serif; letter-spacing: 0;}
#call-to-action a.bottone {margin-top: 20px;}
.vertical-align-middle {display: inline-block; vertical-align: middle;}
#call-to-action p {margin: 0;}
#call-to-action .vertical-align-middle {text-align: center;}
#map-container {background: #fafafa;}
#overlay-calltoaction {position: absolute;top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.1);}


#mappa-iframe {height: 400px;}


/* --------------------------------------------------------------------------
        FOOTER
--------------------------------------------------------------------------- */

#footer {position: relative; height: auto; overflow: hidden; font-size: 12px; letter-spacing: 0.5px; padding: 40px 0 20px 0; line-height: 23px;}

#footer strong {color: #333; font-weight: 500;}
#footer a {color: #aaa;}
#footer a:hover {color: #333;}
#footer img {width: auto !important;}
#footer img.logo-footer {width: 60px !important}

#footer ul {padding-left: 0;}
#footer ul li {list-style: none;text-align: left;} 
#footer ul li a {color: #999;}
#footer ul li a:hover {color: #333;}

#social-footer {text-align: right;}
#social-footer a {display: inline-block; margin-left: 10px;}
#social-footer a img {width: 13px !important}

#privacy-credits {clear: both; margin-top: -5px;}


/* --------------------------------------------------------------------------
        Newsletter
--------------------------------------------------------------------------- */

#mc_embed_signup {background: transparent !important;}
#mc_embed_signup input.email {border: none !important; background: #fafafa; color: #9b9b9b !important; font-size: 10px !important; width: 100% !important; padding-left: 10px !important;}
#mc_embed_signup input.button {font-size: 11px !important; width: 100% !important;}
#mc_embed_signup .button {background-color: #b84d43 !important; color: #FFF !important;}
#mc_embed_signup .button:hover {background-color: #a32b20 !important;}
#mc_embed_signup {margin-left: -5px !important;}


/* --------------------------------------------------------------------------
        FORM
--------------------------------------------------------------------------- */

label {font-size: 12px; text-align: center; font-family: 'Open Sans', sans-serif; font-weight: 600; color: #222; letter-spacing: 0;}
input {position: relative; height: auto; overflow: hidden; width: 100%; border: 1px solid #E7E7E7; background: #FFF; font-size: 14px; letter-spacing: 1px; color: #8E8E8E; padding: 15px 20px 15px 20px; display: block; margin-bottom: 15px; font-family: 'Open Sans', sans-serif; font-weight: 400; border-radius: 4px;}
textarea {position: relative; height: auto; overflow: hidden; display: block; width: 100%; font-size: 13px; border: 1px solid #E7E7E7; letter-spacing: 1px; background: #FFF; padding: 15px 20px 15px 20px; height: 200px; margin-bottom: 15px; color: #8E8E8E; font-family: 'Open Sans', sans-serif; font-weight: 400; border-radius: 4px;}

input.submit {cursor: pointer; position: relative; height: auto; overflow: hidden; background: #b84d43; font-weight: 400; font-size: 14px; line-height: 21px; font-family: 'IBM Plex Sans', sans-serif; letter-spacing: 0.5px; width: 200px; display: inline-block; text-align: center; padding: 12px 0; color: white;}
input.submit:hover {background: #a32b20;}
input:focus, select:focus, textarea:focus, button:focus {outline: none;}


/* --------------------------------------------------------------------------
        FADE IN / FADE OUT
--------------------------------------------------------------------------- */

.js .hideme {opacity: 0;}


/* --------------------------------------------------------------------------
        Responsive patterns
--------------------------------------------------------------------------- */

.col-r-1 {width: 8.33%;}
.col-r-2 {width: 16.66%;}
.col-r-3 {width: 25%;}
.col-r-4 {width: 33.33%;}
.col-r-5 {width: 41.66%;}
.col-r-6 {width: 50%;}
.col-r-7 {width: 58.33%;}
.col-r-8 {width: 66.66%;}
.col-r-9 {width: 75%;}
.col-r-10 {width: 83.33%;}
.col-r-11 {width: 91.66%;}
.col-r-12 {width: 100%;}

[class*="col-r-"] {float:left; padding: 15px; position: relative; height: auto; overflow: hidden;}
[class*="col-r-"] p img {width: 100% !important; height: auto !important;}
.row::after {content: ""; clear: both; display: block;}

/* ---- MASONRY ---- */
.masonry {column-count: 2; column-gap: 0.3em; }
.item {width: 100%; position: relative !important; left: auto !important; right: auto !important; top: auto !important; bottom: auto !important;break-inside: avoid; padding: 10px;}
.item img {width: 100%; display: block; padding-bottom: 0.3em;}


/* --------------------------------------------------------------------------
        HAMBURGER
--------------------------------------------------------------------------- */

.hamburger{padding:15px;padding-right:0;display:inline-block;cursor:pointer;transition-property:opacity,filter;transition-duration:.15s;transition-timing-function:linear;font:inherit;color:inherit;text-transform:none;background-color:transparent;border:0;margin:0;overflow:visible;}
.hamburger:hover{opacity:.7}
.hamburger.is-active {position: fixed; right: 20px;}
.hamburger.is-active:hover{opacity:.7}
.hamburger.is-active .hamburger-inner,.hamburger.is-active .hamburger-inner::before,.hamburger.is-active .hamburger-inner::after{background-color:#555}
.hamburger-box{width:30px;height:24px;display:inline-block;position:relative}
.hamburger-inner{display:block;top:50%;margin-top:-2px}
.hamburger-inner,.hamburger-inner::before,.hamburger-inner::after{width:30px;height:2px;background-color:#FFF;border-radius:4px;position:absolute;transition-property:transform;transition-duration:.15s;transition-timing-function:ease}
.hamburger-inner::before,.hamburger-inner::after{content:"";display:block}
.hamburger-inner::before{top:-10px}
.hamburger-inner::after{bottom:-10px}
.hamburger--spring .hamburger-inner{top:2px;transition:background-color 0 .13s linear}
.hamburger--spring .hamburger-inner::before{top:10px;transition:top .1s .2s cubic-bezier(0.33333,0.66667,0.66667,1),transform .13s cubic-bezier(0.55,0.055,0.675,0.19)}
.hamburger--spring .hamburger-inner::after{top:20px;transition:top .2s .2s cubic-bezier(0.33333,0.66667,0.66667,1),transform .13s cubic-bezier(0.55,0.055,0.675,0.19)}
.hamburger--spring.is-active .hamburger-inner{transition-delay:.22s;background-color:transparent!important}
.hamburger--spring.is-active .hamburger-inner::before{top:0;transition:top .1s .15s cubic-bezier(0.33333,0,0.66667,0.33333),transform .13s .22s cubic-bezier(0.215,0.61,0.355,1);transform:translate3d(0,10px,0) rotate(45deg)}
.hamburger--spring.is-active .hamburger-inner::after{top:0;transition:top .2s cubic-bezier(0.33333,0,0.66667,0.33333),transform .13s .22s cubic-bezier(0.215,0.61,0.355,1);transform:translate3d(0,10px,0) rotate(-45deg)}


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


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

  /* ---- FLEXBOX ---- */
  .flexbox-container {display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-moz-box-orient:vertical;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-moz-box-align:start;-ms-flex-align:start;-webkit-align-items:flex-start;align-items:flex-start}
  .flexbox-container .first-div{-webkit-box-ordinal-group:2;-moz-box-ordinal-group:2;-ms-flex-order:2;-webkit-order:2;order:2}
  .flexbox-container .second-div{-webkit-box-ordinal-group:1;-moz-box-ordinal-group:1;-ms-flex-order:1;-webkit-order:1;order:1}

  .masonry {column-count: 2;}


}


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

  .only-mobile {display: block;}
  .not-mobile {display: none;}

  .masonry {column-count:1;}
  [class*="col-r-"] {float: none; padding: 0 0 15px 0 !important; width: 100%;}
  [class*="col-r-"]:last-child {padding-bottom: 0 !important;}

  #footer, #footer [class*="col-r-"], #footer h4 {text-align: center;}
  #footer {font-size: 12px;}
  #footer .newsletter-footer {text-align: center;}
  #mc_embed_signup {max-width: 80%; margin: 0 auto; position: relative; display: inline-block; width: 100%;}
  #social-footer {text-align: center;}
  #privacy-credits {text-align: center;}

  #call-to-action p {text-align: center;}

  .item {padding: 10px 0 0 0;}

  #header, #galleria.galleria-home {height: 350px;}

  .galleria-title {padding: 0; max-width: 100%}

  .top-right {display: none;}
  #galleria-title-container {font-size: 33px;line-height: 44px;margin-top: 150px;}

  #show-hide-menu {position: absolute; right: 20px; display: block; top: 32px; z-index: 999; cursor: pointer; display: block !important;}

  #menu {display: none;}
  #menu-mobile {display: none;
    position: fixed;
    left: 0;
    right: 0;
    z-index: 8;
    background: rgba(255, 255, 255, 0.9);
    top: 0;
    bottom: 0;
  }
  #menumobile-bottom {position: absolute; bottom: 0; text-align: center;
    width: 100%;
    bottom: 20px;}
  #main-content {padding: 40px 0;}
#main-content iframe {width: 100%; height: 250px;}
  #menu-mobile ul {margin: 0; padding: 0;}
  #menu-mobile ul li { display: block; text-align: center; width: 100%; padding: 10px 0; margin: 0;}
  #menu-mobile ul li, #menu-mobile ul li a {font-size: 24px; line-height: 31px; text-decoration: none; display: block; color: #555;}
  #menu-mobile ul li a:hover, #menu-mobile ul li.active a {color: #b84d43;}
  #menu-mobile ul li.logo {display: none;}
  #footer {padding: 30px 0;}
  .bottone.bottone-terms {margin-left: 0; display: block;}
  #logo-home {margin-top: 40px;}

  body#page-home #logo-mobile {display: none;}
  #video-placeholder.foto-bg {background: url(/frontend/img/videocallback-mobile2.jpg) center center;}

}