* {
  box-sizing: border-box;
}

.wrapper {
  margin: 80px auto 0px;
  background-color: #fff;
}

.cards {
  padding: 15px;
  display: flex;
  flex-flow: row wrap;
}

.card {
  font-weight: 200;
  margin: 15px;
  width: calc((100% / 3) - 30px);
  transition: all 0.2s ease-in-out;
  border:none;
  background:none;
}

.card__expander p {
    text-align: left;
}

.card ul {
    padding-left: 16px;
}

@media screen and (max-width: 991px) {
  .card {
    width: calc((100% / 2) - 30px);
  }
}
@media screen and (max-width: 767px) {
  .card {
    width: 100%;
	margin: 0px;
	margin-bottom: 15px;
  }
.card.is-expanded .card__expander {
    padding: 10px !important;
}  
.servizi-carousel {
    padding-bottom: 30px !important;
}
.card p {
    margin-bottom: 0px !important;
}
.boxCat {
    margin-bottom: 0px !important;
}
}

@media screen and (min-width: 0px) and (max-width: 499px) {
.card__inner {
    height: 270px !important;
}	
}

@media screen and (min-width: 500px) and (max-width: 539px) {
.card__inner {
    height: 290px !important;
}
.wrapper {
    margin: 80px 30px 0px;
}
.cards {
    padding: 45px;
}
}

@media screen and (min-width: 540px) and (max-width: 575px) {
.card__inner {
    height: 385px !important;
}
.wrapper {
    margin: 80px 30px 0px;
}
.cards {
    padding: 35px;
}
.card {
    margin-bottom: 30px;
}
.card:last-child{
    margin-bottom: 0px;
}	
}

@media screen and (min-width: 576px) and (max-width: 767px) {
.card__inner {
    height: 390px !important;
}
.wrapper {
    margin: 80px 30px 0px;
}
.cards {
    padding: 30px;
}
.card {
    margin-bottom: 30px;
}
.card:last-child{
    margin-bottom: 0px;
}	
}

@media screen and (min-width: 768px) and (max-width: 991px) {
.card__inner {
    height: 300px !important;
}
.card p {
    margin-bottom: 0px !important;
}
.boxCat {
    margin-bottom: 0px !important;
}
}

@media screen and (min-width: 992px) and (max-width: 1199px) {
.card__inner {
    height: 270px !important;
}	
}

.card:hover .card__inner {
  background-color: rgba(7,102,51,1);
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.card__inner {
  height: 330px;
  width: 100%;
  padding: 30px 0px;
  position: relative;
  cursor: pointer;
  color: #eceef1;
  font-size: 1.5em;
  text-transform: uppercase;
  text-align: center;
  transition: all 0.2s ease-in-out;
}
.trasparenza{
	background: rgba(0,0,0,0.5);
    top: 41%;
    position: relative;
}
.card svg {
    top: 0.75px;
    position: relative;
}
.card__inner:after {
  transition: all 0.2s ease-in-out;
}

.stampadigitale{
	background-image: url(../images/icone_servizi/ST_DIG_riquadro.jpg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position-x: 50%;
	background-position-y: 50%;
}

.fotografia{
	background-image: url(../images/icone_servizi/FOTOGR_riquadro.jpg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position-x: 50%;
	background-position-y: 50%;
}
.packaging{
	background-image: url(../images/icone_servizi/PACK_riquadro.jpg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position-x: 50%;
	background-position-y: 50%;
}

.prestampa{
	background-image: url(../images/icone_servizi/PREST_riquadro.jpg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position-x: 50%;
	background-position-y: 50%;
}

.fotoritocco{
	background-image: url(../images/icone_servizi/FOTORIT_riquadro.jpg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position-x: 50%;
	background-position-y: 50%;
}

.web{
	background-image: url(../images/icone_servizi/_web-adv01.jpg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position-x: 50%;
	background-position-y: 50%;
}

.servizi-carousel {
    padding-bottom: 0px;
}

.card__expander {
  transition: all 0.2s ease-in-out;
  background-color: rgba(245,245,245,1);
  width: 100%;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
.card__expander svg {
  font-size: 0.75em;
  position: absolute;
  top: 10px;
  right: 10px;
  cursor: pointer;
}
.card__expander svg:hover {
  opacity: 0.9;
}
.card.is-collapsed .card__inner:after {
  content: "";
  opacity: 0;
}
.card.is-collapsed .card__expander {
  max-height: 0;
  min-height: 0;
  overflow: hidden;
  margin-top: 0;
  opacity: 0;
}
.card.is-expanded .card__inner {
  background-color: rgba(7,102,51,1);
}

.card.is-expanded .card__inner:after {
  content: "";
  opacity: 1;
  display: block;
  height: 0;
  width: 0;
  position: absolute;
  bottom: 0px;
  left: calc(50% - 15px);
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-bottom: 15px solid rgba(255,255,255,1);
}

.card.is-expanded .card__inner:before {
  content: "";
  opacity: 1;
  display: block;
  height: 0;
  width: 0;
  position: absolute;
  bottom: -30px;
  left: calc(50% - 15px);
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-bottom: 15px solid rgba(245,245,245,1);;
}

.card.is-expanded .card__expander {
  max-height: 1000px;
  min-height: 200px;
  overflow: visible;
  margin-top: 29px;
  padding:30px;
  opacity: 1;
}
.card.is-expanded:hover .card__inner {
  -webkit-transform: scale(1);
          transform: scale(1);
}
.card.is-inactive .card__inner {
  pointer-events: none;
  opacity: 0.5;
}
.card.is-inactive:hover .card__inner {
  background-color:rgba(7,102,51,1);
  -webkit-transform: scale(1);
          transform: scale(1);
}

@media screen and (min-width: 992px) {
  .card:nth-of-type(3n+2) .card__expander {
    margin-left: calc(-100% - 30px);
  }

  .card:nth-of-type(3n+3) .card__expander {
    margin-left: calc(-200% - 60px);
  }

  .card:nth-of-type(3n+4) {
    clear: left;
  }

  .card__expander {
    width: calc(300% + 60px);
  }
}
@media screen and (min-width: 768px) and (max-width: 991px) {
  .card:nth-of-type(2n+2) .card__expander {
    margin-left: calc(-100% - 30px);
  }

  .card:nth-of-type(2n+3) {
    clear: left;
  }

  .card__expander {
    width: calc(200% + 30px);
  }
}
