.content .quote {
  margin: 4em auto;
  color: #ffffff;
  background-color: #dc0000;
  padding: 4em 7em;
  max-width: 80%;
  position: relative;
  border-top-left-radius: 1em;
  border-bottom-right-radius: 1em;
}
.content .quote .quote-mark {
  background-color: #ffffff;
  position: absolute;
  padding: 1em;
  width: 6em;
  height: 6em;
}
.content .quote .quote-mark .mark {
  width: 100%;
  height: 100%;
  background-image: url("/images/pages/quotation-marks.svg");
  background-repeat: no-repeat;
  background-position: center;
  filter: brightness(0) saturate(100%) invert(25%) sepia(62%) saturate(6911%) hue-rotate(352deg) brightness(79%) contrast(126%);
}
.content .quote .quote-mark.begin {
  left: -2em;
  bottom: -2em;
  border-top-right-radius: 2em;
}
.content .quote .quote-mark.begin .mark {
  transform: rotateZ(180deg);
}
.content .quote .quote-mark.end {
  right: -2em;
  top: -2em;
  border-bottom-left-radius: 2em;
}
.content .quote .quote-text {
  font-family: cursive, serif;
  font-weight: normal;
  font-size: 1.7em;
  line-height: 1.2em;
  font-style: italic;
}
.content .quote .quote-author {
  text-align: right;
  font-size: 0.9em;
  font-style: normal;
  color: #ffffff;
  margin-top: 1em;
}
.content .quote .quote-author a:link,
.content .quote .quote-author a:visited {
  color: inherit;
}
@media (max-width: 768px) {
  .content .quote {
    margin: 3em auto;
    max-width: 95%;
    padding: 3em 4em;
  }
  .content .quote .quote-mark {
    padding: 0.8em;
    width: 5em;
    height: 5em;
  }
  .content .quote .quote-mark.begin {
    left: -1.5em;
    bottom: -1.5em;
    border-top-right-radius: 1.5em;
  }
  .content .quote .quote-mark.end {
    right: -1.5em;
    top: -1.5em;
    border-top-left-radius: 1.5em;
  }
}
.portfolio .summary {
  float: left;
  max-width: 50%;
  box-shadow: 0px 0px 5px 3px rgba(0, 0, 0, 0.3);
  -webkit-box-shadow: 0px 0px 5px 3px rgba(0, 0, 0, 0.3);
  margin: 0 2em 1em 0;
  padding: 0.5em 0.2em;
  background: #fbfbfb;
}
.portfolio .summary table td {
  padding: 0.3em 1em;
  vertical-align: top;
  line-height: 1.2em;
}
.portfolio .summary table td:first-of-type {
  max-width: 40%;
}
.portfolio .summary table td:nth-of-type(2) {
  padding-inline-start: 0;
}
.portfolio .summary table td.strong {
  font-weight: bold;
}
.portfolio .summary table td.italic {
  font-style: italic;
}
.portfolio .summary table td ul {
  padding-inline-start: 1em;
  list-style-type: disc;
  list-style-position: outside;
}
.portfolio .text.first-block {
  padding-top: 5em;
}
.portfolio .text.outro .device {
  font-style: italic;
}
.portfolio .store-badges {
  text-align: center;
  margin-bottom: 2em;
  display: flex;
  justify-content: center;
  column-gap: 2em;
  row-gap: 1em;
  flex-wrap: wrap;
}
.portfolio .store-badges a img {
  height: 80px;
  max-width: 90%;
}
.portfolio .ad {
  margin-top: 2em;
}
@media (max-width: 768px) {
  .portfolio .summary {
    margin-inline: 0;
    max-width: 100%;
    width: 100%;
    float: none;
  }
  .portfolio .summary table {
    width: 100%;
    max-width: 100%;
  }
  .portfolio .summary table td {
    padding-inline: 0.5em;
  }
  .portfolio .summary table td:first-of-type {
    max-width: 200px;
  }
  .portfolio .summary table td:last-of-type {
    padding-inline-start: 0;
  }
  .portfolio .text.first-block {
    padding-top: 2em;
  }
}
