@-webkit-keyframes spin {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

@keyframes spin {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

.paragraph--type--taxonomy-cards .field_taxonomy_term {
  display: flex;
  flex-flow: row wrap;
  margin: 1em 0;
  justify-content: center; }

.view-content:has(.taxonomy-card) {
  display: flex;
  flex-flow: row wrap;
  margin: 4em 0 2em;
  justify-content: center; }

.view-content .views-row {
  display: contents; }

.taxonomy-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  border: 2px solid #dddddd;
  padding: 1em;
  background: #ffffff;
  height: 100%;
  min-height: 270px;
  justify-content: space-around;
  width: 20%;
  margin: 1em; }
  .taxonomy-card:hover {
    border: 2px solid #ff4c00; }
  .taxonomy-card .taxonomy-card__image {
    max-width: 160px; }
  @media (max-width: 1024px) {
    .taxonomy-card {
      width: 45%;
      margin: 0.5em; } }
  @media (max-width: 544px) {
    .taxonomy-card {
      margin: 0.25em; } }

.taxonomy-card__title {
  margin-top: 1em;
  text-align: center; }
  .taxonomy-card__title h3.name {
    font-size: 1rem;
    text-transform: inherit;
    margin-bottom: 0; }

.taxonomy-card__text {
  opacity: 0;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: center;
  background-color: rgba(0, 0, 0, 0.9);
  color: #ffffff;
  line-height: 1.5em;
  padding: 0 1.5em;
  transition: opacity 0.4s;
  font-weight: 300; }
  .taxonomy-card__text:hover {
    opacity: 1; }

a:focus .taxonomy-card__text {
  opacity: 1; }

/** Fake a tiled row. This will be handled by Drupal View or content-type field. */
.pl-js-pattern-example .taxonomy-card {
  width: 48%; }
  @media screen and (min-width: 992px) {
    .pl-js-pattern-example .taxonomy-card {
      width: 23%; } }
