@import url('reset.css');

::-moz-selection{ background-color: #777; color: #FFF;}
::selection{ background-color: #777; color: #FFF;}

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

body {
    background-color: #fff;
    font-family: 'Open sans', sans-serif;
    color: #7c7c81;
    font-size: 14px;
    line-height: 26px;
    letter-spacing: 0;
    font-weight: 400;
    -webkit-text-size-adjust: 100%;
}

ul li, ol li {font-weight: 400}

h1 {font-size: 12px; line-height: 21px; font-family: 'PT Sans', sans-serif; font-weight: 600; color: #000;  margin: 7px auto; letter-spacing: 0; text-transform: uppercase; letter-spacing: 2px;}
h1.h1-inside {font-size: 20px; line-height: 25px; font-family: 'Open Sans', sans-serif; font-weight: 400; color: #333; margin: 0; letter-spacing: 0; margin-bottom: 15px; text-transform: none;}
h2 {font-size: 20px; line-height: 30px; font-family: 'Open Sans', sans-serif; font-weight: 400; color: #333; margin-bottom: 15px;}
h3 {font-size: 20px; line-height: 30px; font-family: 'Open Sans', sans-serif; font-weight: 400; color: #333; margin-bottom: 15px;}
h4 {font-size: 13px; line-height: 23px; font-family: 'PT Sans', sans-serif; font-weight: 400; color: #999;  margin: 0 0 20px 0; letter-spacing: 0; text-transform: uppercase; letter-spacing: 2px;}
h5 {font-size: 13px; line-height: 23px; font-family: 'Open Sans', sans-serif; color: #999;  margin: 0 auto 10px auto; letter-spacing: 2px; text-transform: uppercase; font-weight: 700; display: block;}

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

#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;}

.iubenda-tp-btn[data-tp-float]:not([data-tp-anchored]) {
  display: none !important;
 }
.iubenda-tp-btn[data-tp-float]:not([data-tp-anchored]), .iubenda-cs-brand-badge {display: none !important;} .iubenda-tp-alert-btn[data-tp-float][data-tp-float=bottom-right], .iubenda-tp-alert-btn[data-tp-float][data-tp-float=top-right], .iubenda-tp-btn:not(.iubenda-floatable-tb-btn)[data-tp-float][data-tp-float=bottom-right], .iubenda-tp-btn:not(.iubenda-floatable-tb-btn)[data-tp-float][data-tp-float=top-right], .iubenda-uspr-btn[data-tp-float][data-tp-float=bottom-right], .iubenda-uspr-btn[data-tp-float][data-tp-float=top-right] {display: none !important}


#social, #menu {display: inline-block;}
#social {margin-left: 40px; top: -6px; position: relative;}
.social a img {width: 28px;}


.banner-home {margin-top: 30px}
.banner-home img {width: 100%;}
.banner-home img:first-child {margin-bottom: 15px;}


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

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

#side {position: fixed; height: 100%; overflow: hidden; width: 300px; padding: 50px; float: left;}

#main-content {position: relative; height: auto; overflow: hidden;}
.wrapper {position: relative; height: auto; margin: 0 auto; overflow: hidden; max-width: 1200px; padding: 20px; width: 100%;}
.first-wrapper {padding: 30px 20px 0 20px;}
.wrapper-sotto-galleria {padding-top: 30px;}
.wrapper-home-sotto-galleria {padding-bottom: 0;}
.blog-first .path .wrapper {    margin-top: 35px;
    padding: 0 20px;}

.spacer {position: relative; height: auto; overflow: hidden; padding: 41px;}

#top, #logo, #menu-container {position: relative; height: auto; overflow: hidden;}

#top {position: fixed; top: 0; width: 100%; background-color: white; z-index: 99;}
#spacer {position: relative; margin-top: 87px;}

#menu {position: relative; height: auto; overflow: hidden; margin-top: 18px;}
#menu ul {position: relative; height: auto; overflow: hidden; padding: 0; margin: 0; display: block;}
#menu ul li {position: relative; height: auto; overflow: hidden; display: inline-block; margin: 0 0 0 30px;}
#menu ul li a {font-size: 13px; line-height: 21px; font-family: 'PT Sans', sans-serif;  position: relative; height: auto; overflow: hidden; display: block; color: #777; font-weight: 500; text-transform: uppercase; letter-spacing: 1px;}
#menu ul li a:hover, #menu ul li.active a {color: #000;}

#menu ul.main li a {font-weight: 400;}
#menu ul.main {margin-bottom: 20px;}

#estratto .estratto-testo {font-size: 29px; color: #7c7c81; font-weight: 300; line-height: 42px; letter-spacing: 1.5px; margin-top: 12px; position: relative; height: auto; overflow: hidden;}
.estratto-testo strong {font-weight: 300}
.estratto-testo span {color: inherit !important;}
#estratto h1 {text-align: center;}
#estratto .estratto-testo p, #estratto .estratto-testo h1, #estratto .estratto-testo h2 {text-align: left !important;}
#estratto h3 {font-weight: 300;}
#estratto h3 span {color: inherit;}

#hover-galleria {
    position: absolute;
    top: 190px;
    text-align: center;
    font-size: 31px;
    line-height: 41px; 
    color: white;
    z-index: 23;
    text-shadow: 1px 1px 8px rgba(0, 0, 0, 0.9);
    font-style: italic;
    font-weight: 300;
    width: 100%;
}
#hover-galleria .hover-wrapper {text-align: center;}

.row.row-home-nomargin {margin: 15px -15px 15px -15px;}


.galleria {position: relative; height: auto; overflow: hidden; display: block; max-height:460px; height: 460px; background: #f8f8f8;}
.galleria-blog {height: 300px;}
.galleria-loader {display: none !important;}
.mappa {position: relative; height: auto; overflow: hidden; display: block; max-height:460px; height: 460px;}

.path {position: relative; height: auto; overflow: hidden; color: black; display: block; font-size: 10px; text-transform: uppercase; font-family: 'PT Sans', sans-serif; padding: 30px 0; margin-top: -60px;
    background: #f9f9f9;}
.path span.raquo{position: relative; margin: 0 5px;}
.path a {color: #777;}
.path a:hover {color: black;}
.path .wrapper {padding: 0 20px;}

.col-group-home-articoli div {overflow: hidden;}
.col-group-home-articoli div:nth-child(1), .col-group-home-articoli div:nth-child(2) {margin-top: 0;}

.circolare-container, .circolare-icon, .circolare-content {position: relative; height: auto; overflow: hidden;}
.circolare-content {margin-left: 30px;}
.circolare-icon {width: 30px; margin-top: 3px;}
.circolare-container .read-more {line-height: 18px}
.circolare-container {margin-bottom: 10px;}
.circolare-container:last-child {margin-bottom: 0}

.col-r-home.col-r-9 {padding: 0 20px 0 0 !important}
.col-r-home.col-r-3 {padding: 0 0 0 20px !important}

ul.archivio-ul {padding: 0; margin-bottom: 30px;}
ul.archivio-ul li {list-style: none; margin: 0 15px 0 0; display: inline-block;}

#logo {position: absolute;top: 10px;}
#logo img {width: 390px;}
#login input {max-width: 300px;}
#login input#submit {background: #3d7bad; color: #FFF; color: white !important; text-align: center; cursor: pointer;}
#login input#submit:hover {background: #22669c}

.masonry .item img {width: 100% !important; height: auto !important;}
.masonry .item {border-bottom: 1px solid #e6e6e6; padding-bottom: 15px; margin-bottom: 30px;}
.masonry .item p {text-align: left !important}


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

#blog-wrapper {position: relative; height: auto; overflow: hidden; margin-bottom: 0;}

.blog-content.col-r-9 {padding: 0; font-size: 15px; line-height: 27px; padding-right: 80px;}
.blog-sidebar.col-r-3 {padding: 0;}
.blog-sidebar, .blog-sidebar li, .blog-sidebar h2 {text-align: left;}

h2.h2-margin-top {margin-top: 20px;}

ul.sidebar-ul {padding: 0; font-size: 13px; line-height: 25px;}
ul.sidebar-ul li {list-style: none; margin-bottom: 5px}
ul.sidebar-ul li:last-child() {margin-bottom: 0}


.blog-sidebar a {color: inherit;}
.blog-sidebar a:hover, .blog-sidebar li.active a {color: black; font-weight: 500}

.articolo-container {margin-bottom: 30px;}
.col-group-home-articoli .articolo-content {max-height: 190px;}
.articolo-container:last-child {margin-bottom: 0;}
.read-more {font-size: 11px; text-transform: uppercase; font-family: 'PT Sans', sans-serif;}



.preview-blog {padding-right: 20px !important;}
.preview-blog img {width: 100%;}

#cerca-form {margin-bottom: 25px;}
#cerca-form .flex {display: flex;}
#cerca-form input {margin: 0 !important;}

.small-link {font-size: 12px;}

/* --------------------------------------------------------------------------
        PARTNER
--------------------------------------------------------------------------- */

.partner-container {position: relative; height:  auto; overflow: hidden; margin: 50px 0;}
.partner-pic {position: relative; height:  auto; overflow: hidden;}
.partner-pic img {width: 100%;}
.partner-content {position: relative;height: auto;overflow: hidden;}
.partner-content h3 {
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 1px;
    font-weight: 600;
    margin-top: 10px;
    margin-bottom: 10px;
}






.articolo-container {border-bottom: 1px solid #e6e6e6; padding-bottom: 30px; margin-bottom: 30px;}
.articolo-container:last-child {border-bottom: 0}

.col-group-home-articoli .articolo-container {border-bottom: 1px solid #e6e6e6; padding-bottom: 30px; margin-bottom: 30px;}




/* --------------------------------------------------------------------------
        RSS
--------------------------------------------------------------------------- */

#id_boxtitle {display: none !important}
.aw-tools ul {padding: 0; margin: 0;}
.aw-tools ul li {list-style: none; height: 225px; min-height: 225px;}

.aw-tools ul li {
/*  padding: 1em;
  margin-bottom: 1em;  */
  padding: 0 1em 0 0;
  position: relative;  overflow: hidden;
}

@media screen and (min-width: 44em) {
  .aw-tools ul li {
    float: left;
    width: 50%;
    overflow: hidden;
  }
}

.aw-tools [id*="titolo-"] {font-size: inherit !important; color: inherit !important; font-style: inherit !important; font-weight: inherit !important;}
.aw-tools [id*="titolo-"]:nth-child(1) {font-size: 10px !important; letter-spacing: 1px; color: #888 !important; text-transform: uppercase !important;}
.aw-tools [id*="titolo-"]:nth-child(2) {font-size: 20px !important; line-height: 25px !important; font-family: 'Open Sans', sans-serif !important; font-weight: 400 !important; color: #333 !important; margin-bottom: 15px !important;}
.aw-tools [id*="testo-"]:nth-child(3) {color: #7c7c81 !important; font-size: 14px !important; line-height: 26px !important; letter-spacing: 0 !important; font-weight: 300 !important;}


ul.tuttocamere {padding-left: 0}
ul.tuttocamere li {list-style: none; margin-bottom: 15px;}
ul.tuttocamere li:last-child {margin-bottom: 0;}
ul.tuttocamere li a {font-weight: 300;}
ul.tuttocamere li a b {font-weight: inherit;}

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

#footer {position: relative; height: auto; overflow: hidden; font-size: 13px; background: #f8f8f8; padding-top: 40px;}
#footer .subfooter {font-size: 10px; position: relative; height: auto; overflow: hidden; margin-top: 5px}
#footer .main-footer {position: relative; height: auto; overflow: hidden;}
#footer .right {text-align: right;}
#footer .wrapper {padding: 0 20px 50px 20px;}


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

label {font-size: 12px; text-align: center; font-family: 'Open Sans', sans-serif; font-weight: 300; color: #555; text-transform: uppercase; letter-spacing: 2px;}
input {position: relative; height: auto; overflow: hidden; width: 100%; border: 1px solid #999; 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 #999; 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 {background: #000; color: #FFF; border: 0; border-radius: 4px; cursor: pointer; font-weight: bold; text-transform: uppercase; font-size: 13px; padding: 11px 0 9px 0; width: 150px; text-align: center; -webkit-appearance: none; letter-spacing: 7px; font-weight:400; font-family: 'Open Sans', sans-serif;}
input.submit:hover {background: #333;}
input:focus, select:focus, textarea:focus, button:focus {outline: none;}

iframe {height: 100%; width: 100%}

input, select, textarea {color: #555 !important; font-weight: 400 !important; }
input.submit {color: white !important;}

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

label{font-size:12px;text-align:center;font-weight:600;color:#222;letter-spacing:0}
input,select{border:1px solid #999;background:#FFF;padding:15px 20px;position:relative;height:auto;overflow:hidden;width:100%;display:block;margin-bottom:15px;border-radius:4px}
textarea{border:1px solid #999;background:#FFF;padding:15px 20px;position:relative;height:auto;overflow:hidden;display:block;width:100%;height:200px;margin-bottom:15px;border-radius:4px}

input,select,textarea {font-size:14px;letter-spacing:1px;color:#8E8E8E;font-weight: 400;line-height: 21px;font-family: inherit; font-weight:400;}


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

select{cursor:pointer;display:inline-block;-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 + 0px),calc(100% - 15px) calc(1.7em + 0px),calc(100% - 2.5em) 1em;background-size:5px 5px,5px 5px,1px 1.5em;background-repeat:no-repeat}

input.checkbox {-webkit-appearance: checkbox !important; padding: 0; cursor: pointer;}
input.checkbox {width: auto; margin-right: 10px; float: left; top: 4px;}


.no-list ul {padding-left: 0; margin-left: 0}
.no-list ul li {list-style: none;}


/* --------------------------------------------------------------------------
        Responsive: 2 colonne = width
--------------------------------------------------------------------------- */

.col-group-two img {width: 100%; display: block;}

.col-group-two > div {
/*  padding: 1em;
  margin-bottom: 1em;  */
  padding: 0 1em 0 0;
  position: relative;  overflow: hidden;
}

@media screen and (min-width: 44em) {
  .col-group-two {
    overflow: hidden;
  }
  .col-group-two > div {
    float: left;
    width: 50%;
    overflow: hidden;
  }
}


/* --------------------------------------------------------------------------
        Responsive: 3 colonne = width
--------------------------------------------------------------------------- */

.col-group-three {text-align: center; padding-bottom: 1px;}

.col-group-three img {width: 100%; display: block;}

.col-group-three > div {
  padding: 0 1em;
  position: relative;  overflow: hidden;
}

@media screen and (min-width: 50em) {
  .col-group-three {
    overflow: hidden;
  }
  .col-group-three > div {
    vertical-align: top;
    display: inline-block;
    width: 32.333333%;
    padding: 1em 0.5em 0 0.5em;
  }
}


/* --------------------------------------------------------------------------
        Responsive: 4 colonne = width
--------------------------------------------------------------------------- */

.col-group-four {text-align: center;}

.col-group-four > div {
  padding: 1em;
}

.col-group-four img {width: 100%; display: block;}

@media screen and (min-width: 44em) {
  .col-group-four {
    overflow: hidden;
  }
  .col-group-four > div {
    float: left;
    width: 50%;
  }
  .col-group-four > div:nth-child(odd) {
    clear: left;
  }
}
@media screen and (min-width: 64em) {
  .col-group-four > div {
    width: 25%;
  }
  .col-group-four > div:nth-child(odd) {
    clear: none;
  }
}


/* --------------------------------------------------------------------------
        Responsive: 5 colonne = width
--------------------------------------------------------------------------- */

.col-group-five {
  overflow: hidden;
}

@media screen and (min-width: 44em) {
  .col-group-five > div {
    float: left;
    width: 50%;
  }
  .col-group-five > div:nth-child(odd) {
    clear: left;
  }
}

@media screen and (min-width: 50em) {
  .col-group-five > div {
    float: left;
    width: 33.3333333%;
  }
  .col-group-five > div:nth-child(3n+1) {
    clear: left;
  }
  .col-group-five > div:nth-child(odd) {
    clear: none;
  }
}

@media screen and (min-width: 70em) {
  .col-group-five > div {
    width: 20%;
  }
  .col-group-five > div:nth-child(odd), .col-group-five > div:nth-child(3n+1) {
    clear: none;
  }
}


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

.js .hideme {opacity: 0;}
.js .hideme.animation-slide-up {position: relative; top: 20px;}


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

.row::after {content: ""; clear: both; display: block;}

/* ---- MASONRY ---- */
.masonry {column-count: 3; column-gap: 3em; }
.item {display: inline-block; margin: 0 0 1em; width: 100%;}





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


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

  .col-group-two > div {padding: 0}

  .col-r-9,.col-r-3 {width: 100%; padding: 0;}
  .col-r-3.col-r-grid {position: relative; width: 100%; padding: 0 2em; right: 0;}
  .col-r-grid div p {text-align: center;}

  #top .wrapper {overflow: inherit; height: 77px; padding: 20px 0;}

  #top, #logo, #menu-container {overflow: visible;}
  #logo {    margin-left: 20px;}
  #menu-container {position: absolute; width: 100%; top: -1px;}
  #menu {    overflow: visible;}
  #menu ul {height: auto; display: block; width: 100%; display: none; padding: 0; float: none; top: 60px; position: relative; z-index: 2;}
  #menu ul li { display: block; text-align: center; width: 100%; padding: 15px 0; margin: 0; background: rgba(255,255,255,0.97); border-top: 1px solid #EAEAEA;}
  #menu ul li, #menu ul li a {font-size: 18px; line-height: 28px; text-transform: none; text-decoration: none; display: block;}
  #menu ul li.last {border-bottom: 1px solid #EAEAEA}
  #show-hide-menu {position: absolute; right: 20px; display: block; top: 30px; z-index: 9;}

  .blog-content.col-r-9 {padding-right: 0}

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

  .row.row-home-nomargin {margin: 5px;}


}


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

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

  .masonry {column-count:1;}

  .col-group-home-articoli div {overflow: hidden;}

  #main-content .wrapper:first-child {padding-top: 30px;}

  #estratto .estratto-testo {font-size: 21px; line-height: 27px; letter-spacing: 1px;}
  .blog-sidebar, .blog-sidebar li, .blog-sidebar h2 {text-align: left;}

  .aw-tools ul li {height: auto; min-height: auto; margin-bottom: 30px;}
  .col-r-home.col-r-3 {padding: 20px 0 0 0 !important;}
  .col-r-home.col-r-9 {padding: 0 !important;}

  #footer .left, #footer .right {text-align: center; float: none;}
  #footer .subfooter .left {margin-bottom: -7px;}

  #blog-wrapper img {width: 100% !important; height: 100% !important;}
  #logo {    top: 12px;}
  #logo img {width: 250px; height: auto;}

  .blog-first .path .wrapper {margin: 0;}

  #hover-galleria {font-size: 21px;line-height: 31px;}

  #estratto h2, #estratto h3, #estratto h1 {text-align: left !important}

  .blog-sidebar {margin-bottom: 30px}

  .preview-blog {padding-right: 0 !important; margin-bottom: 15px;}

  #cerca-form {margin-bottom: 0}
  .blog-first {margin-bottom: 10px !important}

  #social {top: 22px; position: absolute; right: 70px; z-index: 4;}
  #menu {display: block;}
  #show-hide-menu {top: 28px;}

  .img100 img {width: 100% !important; height: auto !important;}
}

@media screen and (max-width: 506px) {
  #hover-galleria {font-size: 24px;line-height: 34px; margin-top: -22px}
}
