@import url('reset.css');

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

a {text-decoration: none; color: #000; cursor: pointer;}
a:hover {color: #CCC;}

body {
  font-family: 'Open Sans', sans-serif;
  background: #FFF;
  color: #aaaaaa;
  font-size: 13px;
  line-height: 24px;
  letter-spacing: 0;
  font-weight: 400;
  -webkit-text-size-adjust: 100%;
}

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

h1 {font-size: 22px; line-height: 28px; font-weight: 400; color: #000; font-family: 'Open Sans', serif; margin-bottom: 15px;}
h2 {font-size: 31px; line-height: 31px; font-weight: 400; color: #000; font-family: 'Open Sans', serif; margin-bottom: 20px;}
h3 {font-size: 19px; line-height: 26px; font-weight: 400; color: #000; font-family: 'Open Sans', serif; margin-bottom: 10px;}
h4 {font-size: 18px; line-height: 25px; font-weight: 400; color: #000; font-family: 'Open Sans', serif; margin-bottom: 10px;}

strong {font-weight: 500; color: #333;}

#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; background: #efefef; font-size: 13px; line-height: 21px; font-family: 'IBM Plex Sans', sans-serif; letter-spacing: 0; color: #333; width: 200px; display: inline-block; text-align: center; padding: 12px 0;}
a.bottone:hover {background: #d2d2d2;}


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

.only-mobile {display: none;}
.not-mobile {display: block;}
.galleria-loader {display: none !important;}

#main-content {position: relative; height: auto; overflow: hidden; padding: 40px 20px;}
.wrapper {position: relative; height: auto; overflow: hidden; margin: 0 auto; max-width: 1060px; width: 100%; padding: 0 20px;}

#main-content .wrapper {max-width: 1060px;}

#social, #social a {display: inline-block;}
#social a:first-child {margin-right: 5px;}
#menu {display: inline-block;}
#menu ul {list-style: none; padding: 0;}
#menu ul li {display: inline-block; margin-right: 30px;}
#menu ul li a {font-size: 13px; color: #a0a0a0; font-weight: 300}
#menu ul li.active a, #menu ul li a:hover {color: black;}
#menu ul li.active a {font-weight: 400}
#lang, #lang a {font-size: 10px; font-weight: 300}

#header {position: relative; height:  auto; overflow: hidden; margin-top: 50px;}
#header .wrapper {text-align: center;}
#logo {position: absolute; bottom: 0; top: 0; z-index: 4; width: 60px; left: 0; right: 0; margin-left: auto; margin-right: auto;  text-align: center;}
#logo a {display: inline-block;}
.header-left, .header-right {display: inline-block; position: relative; height: auto; overflow: hidden; height: 60px !important;}
#logo img {max-width: 60px;display: inline-block;}
.header-left {border-top: 1px solid #CCC; padding-left: 0 !important}
.header-right {border-bottom: 1px solid #CCC; text-align: right;}

#menu {margin-top: 3px; vertical-align: top;}
#social {margin-top: 5px;}

.payoff {line-height: 18px; font-size: 13px; margin-top: -1px;}
.payoff, #menu, #social {z-index: 3;}

.fixed {position: fixed; bottom: 120px;}

.displayblock {display: block; width: 100%;}

body#page-credits #main-content, body#page-credits #main-content p, body#page-credits #main-content div, body#page-credits #main-content h1, body#page-credits #main-content img {text-align: center;}
body#page-credits #main-content img {display: inline-block;}



/* --------------------------------------------------------------------------
        Altro
--------------------------------------------------------------------------- */

#galleria {height: 580px;}
.row-profilo, .row-contatti {margin: -15px;}
.progetto-pic img {width: 100%;}


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

#footer {position: relative; height: auto; overflow: hidden; margin-top: 0; font-size: 11px; margin-bottom: 50px; line-height: 11px;}
#footer a {color: inherit;}
#footer a:hover {color: #000;}


/* --------------------------------------------------------------------------
        PROGETTI
--------------------------------------------------------------------------- */

.row.single-project {margin: -15px;}
#elenco-progetti{margin: 0 -15px; position: relative; height: auto; overflow: hidden;}

.hover-element {background: rgba(255, 255, 255, 0.8); opacity: 0; position: absolute; width: 100%; height: 100%; left: 0; top: 0; text-align: center; right: 0; bottom: 0;}
.hover-element:hover {opacity: 1;}
.hover-element:hover .hover-title {color: black;}
.hover-title {text-align: center; color: black; font-size: 13px; position: relative; font-weight: 400;}
.hover-title h3 {font-size: 13px; text-align: center; margin: 0; line-height: inherit;}
.hover-a {display: block; width: 100%; height: 100%;}

.progetto-pic {position: relative; overflow: hidden}
.award {position: absolute; top: 0; right: 15px;}
.award img {width: 24px !important;}
.award span {position: absolute; top: 4px; right: 9px; color: white; font-size: 10px; font-weight: 600;}


/* --------------------------------------------------------------------------
        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: #efefef !important; color: #9b9b9b !important;}
#mc_embed_signup .button:hover {background-color: #d2d2d2 !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,select{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;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;height:200px;margin-bottom:15px;color:#8E8E8E;font-family:'Open Sans',sans-serif;font-weight:400;border-radius:4px}

input.submit{margin-top:15px;cursor:pointer;position:relative;height:auto;overflow:hidden;background:#000;font-size:12px;line-height:21px;font-weight:600;font-family:'Work Sans',sans-serif;letter-spacing:1px;color:#fff;width:200px;display:inline-block;text-align:center;padding:12px 0;border:0}
input.submit:hover{background:#333}
input:focus,select:focus,textarea:focus,button:focus{outline:none}

select{cursor:pointer;display:inline-block;font:inherit;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none}
select.classic{background-image:linear-gradient(45deg,transparent 50%,blue 50%),linear-gradient(135deg,blue 50%,transparent 50%),linear-gradient(to right,skyblue,skyblue);background-position:calc(100% - 20px) calc(1em + 2px),calc(100% - 15px) calc(1em + 2px),100% 0;background-size:5px 5px,5px 5px,2.5em 2.5em;background-repeat:no-repeat}
select.minimal{background-image:linear-gradient(45deg,transparent 50%,gray 50%),linear-gradient(135deg,gray 50%,transparent 50%),linear-gradient(to right,#ccc,#ccc);background-position:calc(100% - 20px) calc(1.7em + 2px),calc(100% - 15px) calc(1.7em + 2px),calc(100% - 2.5em) 1.2em;background-size:5px 5px,5px 5px,1px 1.5em;background-repeat:no-repeat}


/* --------------------------------------------------------------------------
        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.masonry-2 {column-count: 2; column-gap: 0.3em; }
.masonry.masonry-3 {column-count: 3; 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}
.item img {width: 100%; display: block;}


/* --------------------------------------------------------------------------
        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}

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

  .masonry.masonry-2 {column-count: 1;}
  .masonry.masonry-3 {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;}

  #galleria {height: 280px;}

  #elenco-progetti,  .row.single-project, .row-profilo, .row-contatti {margin: 0;}
  .photo-list img, .progetto-pic img {width: 100%;}

  .fixed {position: relative; bottom: auto;}
  #menu {padding: 6px 0;}
  #logo {position: relative; bottom: auto; top: auto;}
  .header-left, .header-right {height: auto !important}
  .header-left {display: none;}
  #header .header-right {text-align: center; padding-bottom: 15px !important;}
  #social {display: block; text-align: center;}

  #menu ul li {margin-right: 20px;}
  #menu ul li:last-child {margin-right: 0}

  #footer .left, #footer .right {text-align: center; float: none; line-height: 25px;}

  .progetto-titolo-mobile {padding: 10px 0 15px 0;}

}
