.card-viu--interactive:hover .card-viu__cta-icon {
  -webkit-animation-name: animated-link;
          animation-name: animated-link;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
  -webkit-animation-timing-function: cubic-bezier(0.19, 0.84, 0.55, 0.91);
          animation-timing-function: cubic-bezier(0.19, 0.84, 0.55, 0.91);
}

.card-viu--interactive:hover .card-viu__cta-icon {
  -webkit-animation-name: animated-link;
          animation-name: animated-link;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
  -webkit-animation-timing-function: cubic-bezier(0.19, 0.84, 0.55, 0.91);
          animation-timing-function: cubic-bezier(0.19, 0.84, 0.55, 0.91);
}

.card-viu {
  background-color: transparent;
  border-radius: 0 0 2px 2px;
  -webkit-box-shadow: 0 0 0 transparent;
          box-shadow: 0 0 0 transparent;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: relative;
  -webkit-transition: background-color 0.25s cubic-bezier(0.19, 0.84, 0.55, 0.91), -webkit-box-shadow 0.25s cubic-bezier(0.19, 0.84, 0.55, 0.91);
  transition: background-color 0.25s cubic-bezier(0.19, 0.84, 0.55, 0.91), -webkit-box-shadow 0.25s cubic-bezier(0.19, 0.84, 0.55, 0.91);
  transition: box-shadow 0.25s cubic-bezier(0.19, 0.84, 0.55, 0.91), background-color 0.25s cubic-bezier(0.19, 0.84, 0.55, 0.91);
  transition: box-shadow 0.25s cubic-bezier(0.19, 0.84, 0.55, 0.91), background-color 0.25s cubic-bezier(0.19, 0.84, 0.55, 0.91), -webkit-box-shadow 0.25s cubic-bezier(0.19, 0.84, 0.55, 0.91);
  will-change: box-shadow;
}

.card-viu::after {
  will-change: width;
  background-color: var(--color-primary);
  content: '';
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 8px;
  -webkit-transition: width 0.75s cubic-bezier(0.19, 0.84, 0.55, 0.91);
  transition: width 0.75s cubic-bezier(0.19, 0.84, 0.55, 0.91);
  width: 0;
}

.card-viu__media {
  overflow: hidden;
  position: relative;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.card-viu__media--16-9 {
  padding: 1.2em 1.2em 0;
}

.card-viu__media--16-9 img {
  aspect-ratio: 16/9;
  -o-object-fit: scale-down;
     object-fit: scale-down;
  -o-object-position: center bottom;
     object-position: center bottom;
  width: 100%;
}

@supports not (aspect-ratio: 16/9) {
  .card-viu__media--16-9 {
    padding: 56.25% 0 0;
  }
  .card-viu__media--16-9 img {
    padding: 1.2em 1.2em 0;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    max-height: 100%;
    width: auto;
    margin: 0 auto;
  }
}

.card-viu__media--21-10 {
  padding: 1.2em 1.2em 0;
}

.card-viu__media--21-10 img {
  aspect-ratio: 21/10;
  -o-object-fit: scale-down;
     object-fit: scale-down;
  -o-object-position: center bottom;
     object-position: center bottom;
  width: 100%;
}

@supports not (aspect-ratio: 21/10) {
  .card-viu__media--21-10 {
    padding: 47.61% 0 0;
  }
  .card-viu__media--21-10 img {
    padding: 1.2em 1.2em 0;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    max-height: 100%;
    width: auto;
    margin: 0 auto;
  }
}

.card-viu__media--21-9 {
  padding: 1.2em 1.2em 0;
}

.card-viu__media--21-9 img {
  aspect-ratio: 21/9;
  -o-object-fit: scale-down;
     object-fit: scale-down;
  -o-object-position: center bottom;
     object-position: center bottom;
  width: 100%;
}

@supports not (aspect-ratio: 21/9) {
  .card-viu__media--21-9 {
    padding: 42.85% 0 0;
  }
  .card-viu__media--21-9 img {
    padding: 1.2em 1.2em 0;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    max-height: 100%;
    width: auto;
    margin: 0 auto;
  }
}

.card-viu__media--rounded figure {
  max-width: 75%;
  margin: 0 auto;
}

.card-viu__media--rounded figure img {
  border-radius: 50%;
}

.card-viu__media--darkened img {
  will-change: filter;
  -webkit-filter: brightness(0.8);
          filter: brightness(0.8);
  -webkit-transition: -webkit-filter 0.75s cubic-bezier(0.19, 0.84, 0.55, 0.91);
  transition: -webkit-filter 0.75s cubic-bezier(0.19, 0.84, 0.55, 0.91);
  transition: filter 0.75s cubic-bezier(0.19, 0.84, 0.55, 0.91);
  transition: filter 0.75s cubic-bezier(0.19, 0.84, 0.55, 0.91), -webkit-filter 0.75s cubic-bezier(0.19, 0.84, 0.55, 0.91);
}

.card-viu__promoted {
  background-color: var(--color-primary);
  bottom: 9.4em;
  color: var(--color-white);
  padding: .2em 1em;
  position: absolute;
}

@media (min-width: 992px) {
  .card-viu__promoted {
    bottom: 7em;
  }
}

.card-viu__shape {
  position: absolute;
  bottom: 1.2em;
  left: 1.2em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.card-viu__shape .shape {
  --shape-size: 2.2em;
}

.card-viu__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 1.067em 1.2em 2em;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  position: relative;
  overflow: hidden;
}

.card-viu__content > *:last-child {
  margin-bottom: 0;
}

.card-viu__date {
  font-size: 0.9em;
}

.card-viu__title {
  color: var(--color-grey-800);
  font-family: var(--font-primary);
  font-size: 1.2em;
  font-weight: 400;
  line-height: 1.44;
  margin: 0 0 .8em;
  will-change: color;
  -webkit-transition: color .25s;
  transition: color .25s;
  display: -webkit-box;
  -webkit-line-clamp: var(--card-viu-title-clamp, none);
  -webkit-box-orient: vertical;
  overflow: hidden;
}

@media (min-width: 992px) {
  .card-viu__title {
    font-size: 1.33em;
    line-height: 1.27;
  }
}

.card-viu__subtitle {
  color: var(--color-grey-900);
  font-family: var(--font-primary);
  font-size: .933em;
  font-weight: 700;
  letter-spacing: .14px;
  line-height: 1.3;
  margin-bottom: .533em;
}

.card-viu__description {
  margin-bottom: 1.733em;
}

@media (min-width: 992px) {
  .card-viu__description {
    margin-bottom: 1.444em;
  }
}

.card-viu__description--truncated:hover .card-viu__long-description {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
}

.card-viu__short-description {
  color: var(--color-grey-900);
  font-family: var(--font-primary);
  font-size: .933em;
  line-height: 1.5;
  font-style: var(--card-viu-short-description-font-style, normal);
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

@media (min-width: 992px) {
  .card-viu__short-description {
    line-height: 1.3;
  }
}

.iphone.safari .card-viu__short-description > p:first-child,
.firefox .card-viu__short-description > p:first-child {
  text-overflow: ellipsis;
  word-wrap: break-word;
  margin: 0;
}

.iphone.safari .card-viu__short-description > p:not(:first-child),
.firefox .card-viu__short-description > p:not(:first-child) {
  display: none;
}

.firefox .card-viu__short-description > p:first-child {
  max-height: 6em;
}

.iphone.safari .card-viu__short-description > p:first-child {
  max-height: 5.625em;
}

.card-viu__long-description {
  opacity: 0;
  visibility: hidden;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  left: 50%;
  max-height: 85%;
  position: absolute;
  top: 0;
  -webkit-transform: translate(-50%, -5%);
          transform: translate(-50%, -5%);
  -webkit-transition: opacity 0.25s cubic-bezier(0.19, 0.84, 0.55, 0.91), -webkit-transform 0.5s cubic-bezier(0.19, 0.84, 0.55, 0.91);
  transition: opacity 0.25s cubic-bezier(0.19, 0.84, 0.55, 0.91), -webkit-transform 0.5s cubic-bezier(0.19, 0.84, 0.55, 0.91);
  transition: opacity 0.25s cubic-bezier(0.19, 0.84, 0.55, 0.91), transform 0.5s cubic-bezier(0.19, 0.84, 0.55, 0.91);
  transition: opacity 0.25s cubic-bezier(0.19, 0.84, 0.55, 0.91), transform 0.5s cubic-bezier(0.19, 0.84, 0.55, 0.91), -webkit-transform 0.5s cubic-bezier(0.19, 0.84, 0.55, 0.91);
  width: 90%;
}

.card-viu__long-description-icon {
  --triangle-size: 1em;
  -webkit-clip-path: polygon(50% 10%, 0% 100%, 100% 100%);
          clip-path: polygon(50% 10%, 0% 100%, 100% 100%);
  background-color: var(--color-grey-200);
  width: var(--triangle-size);
  height: var(--triangle-size);
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}

.card-viu__long-description-inner {
  background-color: var(--color-grey-200);
  border-radius: 8px;
  -webkit-box-shadow: 0 4px 6px 0 var(--color-grey-400);
          box-shadow: 0 4px 6px 0 var(--color-grey-400);
  color: var(--color-grey-700);
  font-size: .8em;
  font-style: var(--card-viu-long-description-font-style, normal);
  max-height: 100%;
  overflow-y: auto;
  padding: 1.2em;
  text-align: center;
}

.card-viu__long-description-inner::-webkit-scrollbar {
  width: 4px;
}

.card-viu__features {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 1.933em;
}

.card-viu__features li {
  border-right: 0.067em solid var(--color-grey-400);
}

.card-viu__features li:last-child {
  border-right: none;
}

.card-viu__features .card-feature {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: .533em;
  padding: 1em;
  text-align: center;
}

@media (min-width: 992px) {
  .card-viu__features .card-feature {
    padding: .5em;
  }
}

.card-viu__features .card-feature--start {
  --gp-icon-content: var(--icon-calendar);
}

.card-viu__features .card-feature--places {
  --gp-icon-content: var(--icon-seats);
}

.card-viu__features .card-feature--duration {
  --gp-icon-content: var(--icon-clock);
}

.card-viu__features .card-feature--ects {
  --gp-icon-content: var(--icon-credit-bubbles);
}

.card-viu__features .card-feature--oficial {
  --gp-icon-content: var(--icon-credit-hat);
}

.card-viu__features .card-feature--language {
  --gp-icon-content: var(--icon-briefcase);
}

.card-viu__features .card-feature--price {
  --gp-icon-content: var(--icon-currency-eur);
}

.card-viu__features .card-feature--modality {
  --gp-icon-content: var(--icon-computer);
}

.card-viu__features .card-feature__icon {
  --gp-icon-color: var(--color-secondary-superlight);
  --gp-icon-font-size: 1.4em;
}

.card-viu__features .card-feature__feature {
  font-size: .867em;
}

.card-viu__cta-icon {
  --gp-icon-color: var(--color-primary);
  --gp-icon-font-size: 1.067em;
  -ms-flex-item-align: start;
      align-self: flex-start;
  margin-top: auto;
  opacity: 0;
  -webkit-transition: opacity .25s ease;
  transition: opacity .25s ease;
  visibility: hidden;
}

.card-viu__cta-full-card {
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  background-color: transparent;
  -webkit-box-shadow: none;
          box-shadow: none;
  border: none;
}

.card-viu--2-0 {
  background-color: var(--color-white);
  -webkit-box-shadow: 0 8px 25px 0 rgba(115, 115, 115, 0.19);
          box-shadow: 0 8px 25px 0 rgba(115, 115, 115, 0.19);
}

@media (min-width: 0) and (max-width: 991px) {
  .card-viu--2-0 .card-viu__title {
    text-align: center;
  }
}

@media (min-width: 0) and (max-width: 991px) {
  .card-viu--2-0 .card-viu__content {
    padding: 1.067em 1.2em;
  }
}

@media (min-width: 0) and (max-width: 991px) {
  .card-viu--2-0 .card-viu__description {
    display: none;
  }
}

[data-theme] .card-viu--2-0 {
  background-color: transparent;
}

.card-viu--interactive:hover {
  background-color: var(--color-white);
  -webkit-box-shadow: 0 8px 25px 0 rgba(115, 115, 115, 0.19);
          box-shadow: 0 8px 25px 0 rgba(115, 115, 115, 0.19);
  cursor: pointer;
}

.card-viu--interactive:hover::after {
  width: 100%;
}

.card-viu--interactive:hover .card-viu__media img {
  -webkit-filter: brightness(1);
          filter: brightness(1);
}

.card-viu--interactive:hover .card-viu__title {
  color: var(--color-primary);
}

.card-viu--interactive:hover .card-viu__cta-icon {
  opacity: 1;
  visibility: visible;
}

[data-theme] .card-viu--interactive:hover {
  background-color: transparent;
  -webkit-box-shadow: none;
          box-shadow: none;
}

[data-theme='dark'] .card-viu__title, [data-theme='dark'] .card-viu__subtitle {
  color: var(--color-grey-200);
}

[data-theme='dark'] .card-viu__short-description,
[data-theme='dark'] .card-viu__features .card-feature__feature {
  color: var(--color-grey-400);
}

/*# sourceMappingURL=../../maps/molecules/cards/card-viu.css.map */
