
.search-filters {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  padding: 20px 0;
  position: relative;
}
.event-grid-filters {
  margin-bottom: 40px;
}
.faceted-filter {
  position: relative;
  z-index: 999;
  margin: 0 25px 1em 0;
}
.portfolio_sorts > ul,
.portfolio_sorts > ul > li,
.faceted-filter > ul,
.faceted-filter > ul > li {
  list-style: none!important;
  margin: 0;
}
.faceted-filter ul {
  visibility: hidden;
  position: absolute;
  top: 100%;
}
.portfolio_sorts ul,
.faceted-filter ul {
  background: #fbfbfb;
  padding: 9px 8px 7px;
  box-shadow: 1px 2px 6px rgba(0,0,0,.3);
  font-size: .9em;
}
.faceted-filter li {
  min-width: 12em;
  padding: 2px 0;
}
.faceted-filter li > label {
  display: block;
  padding: .25em 0 .25em 28px;
  text-indent: -28px;
  font-weight: 300;
  user-select: none;
  color: #15274D;
  color: var(--color-titles);
  visibility: hidden;
  opacity: 0;
  transition: opacity .2s .1s;
}
.faceted-filter.open li > label {
  visibility: visible;
  opacity: 1;
}
.faceted-filter li > label > input[type="checkbox"] {
  vertical-align: baseline;
  transform: scale(1.4) translate(2px, 0);
  margin: 0 8px 0 0!important;
  width: 20px;
}
.faceted-filter .filter-title {
  text-transform: uppercase;
  transition: .3s;
}
.search-filters input[type="search"],
.faceted-filter .filter-title {
  padding: .5em 1.75em .5em 1em;
  display: block;
  background: #ebeced;
  border: 1px solid #2A4F9F;
  color: #2A4F9F;
  position: relative;
}
.faceted-filter.selected .filter-title:hover,
.faceted-filter .filter-title:hover {
  color: #fff;
  background-color: var(--color-dark);
}
.faceted-filter .filter-title::after {
  font-family: "FontAwesome";
  content: '\f107';
  padding: 2px 0;
  position: absolute;
  right: 10px;
}
.faceted-filter.selected .filter-title {
  background: #ccc;
  color: var(--color-titles);
  border-color: currentColor;
}
.portfolio_sorts > a,
.filter-title {
  user-select: none;
  cursor: pointer;
}
.faceted-filter.open .filter-title::after {
  transform: rotate(180deg);
}
.faceted-filter.wide > ul {
  width: 98vw;
  max-width: 960px;
}
.faceted-filter > ul > li {
  display: inline-block;
  margin-bottom: .2em;
  line-height: 1.3;
}
.faceted-filter:not(.wide) > ul {
  max-height: 400px;
  max-height: min(450px, 85vh);
  width: 20em;
  width: max-content!important;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
}
@media screen and (min-width:400px) {
  .faceted-filter.wide > ul {
    columns: 2;
  }
}
@media screen and (min-width:690px) {
  .faceted-filter.wide > ul {
    columns: 3;
  }
}
@media screen and (min-width:1036px) {
  .faceted-filter.wide > ul {
    columns: 4;
    width: auto;
  }
}
@media screen and (max-width:480px) {
  .search-filters {
    display: block;
  }
  .filter,
  .text-filter,
  .faceted-filter {
    margin-right: 0!important;
  }
  .faceted-filter > ul {
    position: static!important;
  }
  .faceted-filter.faceted-filter > ul {
    width: auto!important;
  }
}


.search-filters button.reset {
  border: 1px solid;
	border-radius: 99%;
  color: #111;
  color: var(--color-primary);
  font-size: 1rem;
  width: 2em;
  height: 2em;
  box-sizing: border-box;
  padding: .1em;
  line-height: 1;
  cursor: pointer;
  margin: 0 .2rem;
  user-select: none;

  position: relative;
  white-space: nowrap;
  text-indent: 200%;
  overflow: hidden;
  transition: transform .3s;
}
.search-filters button.reset:focus,
.search-filters button.reset:active {
  outline: none;
  color: var(--color-titles);
  border-color: currentColor;
  background: rgba(0,0,0,.1);
}
.search-filters button.reset:hover,
.search-filters button.reset:focus,
.search-filters button.reset:active {
  transform: rotate(180deg);
}
button.reset::after {
  display: block;
  position: absolute;
  content:  '\f021';

  width: 2em;
  height: 10rem;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);

  font: 1.5rem/10rem 'fontAwesome';
  text-indent: 0;
}
.reset-button-label {
  /* font-size: .9em; */
  color: var(--color-primary);
  cursor: pointer;
  user-select: none;
  margin-right: 25px;
  margin-bottom: 16px;
  display: flex;
  align-items: center;
  align-self: center;
  line-height: 1;
  text-transform: uppercase;
}


.search-filters .text-filter,
.portfolio-txtsearch {
  margin-right: 25px;
}
.search-filters input[type="search"],
.portfolio-txtsearch > input {
  background-color: #fafbfc;
  color: #000;
  font-family: inherit;
  padding-right: .4em;
  margin-bottom: 1.1em!important;
}
.search-filters input[type="search"]::placeholder,
.portfolio-txtsearch > input::placeholder {
  font-weight: 300;
}

.portfolio_sorts {
  margin: 0 0 1em auto;
  position: relative;
  min-width: 6em;
  color: var(--color-primary);
}
.portfolio_sorts > a {
  display: block;
  padding-bottom: .4em;
  color: inherit;
  border: 1px solid;
  padding: .5em 2em .5em .5em!important;
  background-color: #fafbfc;
  font-weight: 300;
}
.portfolio_sorts > a:hover {
  color: inherit;
}
.portfolio_sorts > a:after {
  right: 8px;
}
.portfolio_sorts > ul {
  margin-right: 5px;
  width: 75%;
  width: calc(100% - 5px);
  position: absolute;
  visibility: hidden;
  opacity: 0;
  z-index: -1;
  transition: .2s .4s;
}
.portfolio_sorts li > label {
  padding: 4px 2px!important;
  display: block;
  user-select: none;
  font-weight: 300;
}
.portfolio_sorts:hover > ul,
.portfolio_sorts > a:active + ul,
.portfolio_sorts > a:focus + ul {
  visibility: visible;
  opacity:1;
  z-index: 1000;
  transition: .2s 0s;
}
.selected-tags {
  width: 100%;
  flex: 1 0 100%;
  padding: 20px 0;
}


/* Lista Portfolio */
.portfolio-items > .element {
  margin-bottom: 20px;
}
.portfolio-items > .element[class*="vc_span"] {
  padding-left: 0;
  padding-right: 0;
}
.portfolio-items .port_item_details {
  color: #182C41;
  padding-left: 4%;
  padding-right: 4%;
}
.portfolio-items .portfolio_title {
  font-size: 1.4em;
  font-weight: 700;
  color: inherit;
}
.portfolio-items .portfolio_title > a {
  color: inherit;
}
.portfolio-items .portfolio_meta {
  font-size: .67em;
}
.portfolio-items .pf_tags {
  font-weight: 300;
}
.portfolio-items .pf_cats {
  color: #15274D;
}
.portfolio_title > a::after {
  display: block;
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
}
.portfolio_title > a:hover::after {
  background-color: rgba(0,0,0,.2);
}
.portfolio-items > .element:hover > .port_item_details,
.portfolio-title > a:hover {
  color: #15274D;
}
@media screen and ( min-width:768px ) {
  .portfolio-items > .element.vc_span3:nth-child(4n+1),
  .portfolio-items > .element.vc_span4:nth-child(3n+1),
  .portfolio-items > .element.vc_span6:nth-child(2n+1) {
    margin-left: 0;
    clear: left;
  }
}


/* Carousel */
.nm_carousel {
  width: 100%;
  position: relative;
}
.nm_textslider-item,
.nm_carousel .nm_carousel-item {
  width: 290px;
  float: left;
  display: block;
}

.nm_carousel .prev,
.nm_carousel .next {
  position: absolute;
  left: 0;
  width: 32px;
  height: 48px;
  top: 50%;
  margin: -24px 0 0 0;
  cursor: pointer;
  color: #15274D;
}
.nm_carousel .prev:after,
.nm_carousel .next:after {
  content: '\f104';
  font: 48px/1 fontAwesome;
}
.nm_carousel .next {
  left: auto;
  right: 0;
  text-align: right;
  margin: -24px 0 0 0;
}
.nm_carousel .next:after {
  content: '\f105';
}

.nm_carousel::after {
  content: '';
  display: table;
  clear: both;
}


/* Carousel 2 */
.nm_textslider {
  padding: 10px 5%;
}
.nm_textslider > .wrp {
  max-width: 1170px;
  margin: auto;
}
.nm_textslider .prev {
  left: 1.5%;
}
.nm_textslider .next {
  right: 1.5%;
}

.nm_textslider {
  background: #ebeced;
  color: #182C41;
}
.nm_textslider .caroufredsel_wrapper .nm_carousel-track[style] { /* solo dopo js */
  display: flex;
}
.nm_textslider .caroufredsel_wrapper .nm_carousel-track[style] > .nm_carousel-item {
  flex: 1 0 100%;
}
.nm_textslider-item {
  padding: 30px;
  width: 100%;
  display: flex;
  align-items: center;
  font-weight: 300;
  position: relative;
}
.nm_textslider-item > .ts_item-header {
  flex: 0 0 35%;
  margin-right: 5%;
}
.nm_textslider-item > .ts_item-content {
  flex: 1 1 60%;
}
.ts_item-content ul > li {
  display: list-item;
  list-style: disc outside;
  margin: 0 0 .5em 1em;
}
.ts_item-title {
  font-weight: 300;
  font-size: 1.5em;
  line-height: 1.2;
}
.ts_item-title > a {
  color: inherit;
}
.ts_item-subtitle {
  font-weight: 800;
  font-size: .9em;
  line-height: 1.2;
  max-width: 16em;
}
.ts_item-title > a::after {
  display: block;
  position: absolute;
  left: 0; right: 0; top: 0; bottom: 0;
  content: '';
}

@media screen and ( max-width:480px ) {
  .nm_textslider-item {
    flex-wrap: wrap;
  }
  .nm_textslider-item > .ts_item-header,
  .ts_item-content{
    flex-basis: 100%;
  }
}

/* Lista Post in griglia */
.post-grid .element {
  margin-bottom: 30px;
}

.post-grid .img {
  margin-bottom: 4px;
}
.nm_post_carousel .item_details,
.post-grid .item_details {
  color: #15274D;
  padding: 16px;
  font-weight: 300;
}
.post-grid .post_title,
.post-grid .post_title > a {
  color: inherit;
}
.nm_post_carousel .post_title,
.post-grid .post_title {
  font-size: 1.15em;
  margin-bottom: .2em;
}
.nm_post_carousel .post_meta,
.post-grid .post_meta {
  font-size: .7em;
  text-transform: uppercase;
}
.nm_post_carousel .post_excerpt,
.post-grid .post_excerpt {
  font-size: .95em;
  margin-top: .6em;
}
.post-grid .read-more {
  margin: 15px 0;
  text-align: center;
}
.post-grid .read-more .btn {
  border-style: solid;
  border-color: #2179C0;
  border-color: var(--color-accent);
  color: #000;
}
.post_meta > div:not(:last-child)  {
	margin-right: .5em;
}
.post_meta > .cats,
.post_meta > .tags {
	display: inline;
}
.post_meta > .cats + .tags::before {
	content: '\007C';
	margin-right: .6em;
}


/* Post Carousel */
.nm_post_carousel li.element {
  float: left;
  display: block;
  width: 100%;
}
.nm_post_carousel .img {
  margin-bottom: 15px;
}
.nm_post_carousel .item_details {
  padding: 10px 80px 10px 15px;
}
.nm_post_carousel .next,
.nm_post_carousel .prev {
  top: auto;
  bottom: 80px;
  right: 0!important;
  left: auto;
  width: 32px;
  height: 32px;
  margin: 0;
  border: 1px solid #15274D;
  text-align: center;
  background: #fff;
}
.nm_post_carousel .prev {
  right: 34px!important;
}
.nm_post_carousel .next::after,
.nm_post_carousel .prev::after {
  font:20px/30px FontAwesome;
}
.nm_post_carousel .post_title,
.nm_post_carousel a {
  color: inherit;
}

.nm_post_carousel .ctrls {
  position: absolute;
  height: 100%;
  top: 0;
  right: 0;
  padding: 53% 0 0;
}
.nm_post_carousel .ctrls .next,
.nm_post_carousel .ctrls .prev {
  top: auto;
  bottom: auto;
}
.nm_post_carousel.no-img .ctrls {
  padding-top: 10px;
}


/* Lista prodotti */
.nmproducts-grid-items {
	display: flex;
	flex-wrap: wrap;
}

.nmproducts-grid-items .masonry_post_wrapper {
	height: 100%;
}
.nmproducts-grid-items .element {
  min-height: 350px;
}
.nmproducts-grid-items img.size-blog_tn {
  aspect-ratio: 240/113;
}

.masonry_ctn.blog_masonry > .msg {
	margin-left: 30px;
}