/*!***********************************************************************************************************************************************************************************************************!*\
  !*** css ../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../node_modules/postcss-loader/dist/cjs.js!../node_modules/sass-loader/dist/cjs.js!./components/testimonial/testimonial.scss ***!
  \***********************************************************************************************************************************************************************************************************/
/** GLOBALS **/
/************
/** VARIABLES
/****************************************/
/*
$grids: (
    'default': $mobile_base,
    'switches': (
        $mobile_switch: $mobile_base,
        $tablet_switch: $tablet_base,
        $max_switch: $max_base
    ),
    'definitions': (
        $mobile_base: (
            'columns': 8,
            'column': 44,
            'gutter': 14,
            'fix': false
        ),
        $tablet_base: (
            'columns': 12,
            'column': 56,
            'gutter': 22,
            'fix': false
        ),
        $max_base: (
            'columns': 12,
            'column': 139,
            'gutter': 54,
            'fix': true
        )
    )
);
*/
/* EASING */
/* Font settings */
/************
/** COLOR VARIABLES
/****************************************/
/* **************************** */
/* Pimcore-editmode used colors */
/* **************************** */
/* **************************** */
/************
/** DEFINITION OF OWN MIXINS
/****************************************/
/* stylelint-disable */
.testimonial {
  --testimonial-spacing-top: 20px;
  --testimonial-spacing-right: 0;
  --testimonial-image-size: 31.4666666667vw;
  margin: 0;
  display: flex;
  flex-direction: column;
  position: relative;
  padding-right: var(--testimonial-spacing-right);
  gap: 40px 0;
}
@media only screen and (min-width: 768px) {
  .testimonial {
    --testimonial-spacing-top: 36px;
    --testimonial-image-size: 19.0104166667vw;
    gap: 24px 0;
    min-height: calc(var(--testimonial-image-size) + var(--testimonial-spacing-top));
  }
}
@media only screen and (min-width: 1440px) {
  .testimonial {
    --testimonial-image-size: 11.71875vw;
  }
}
@media only screen and (min-width: 1680px) {
  .testimonial {
    --testimonial-image-size: 196px;
  }
}

@media only screen and (min-width: 768px) {
  .testimonial--has-image {
    --testimonial-spacing-right: 21.875vw;
  }
}
@media only screen and (min-width: 1440px) {
  .testimonial--has-image {
    --testimonial-spacing-right: 14.5833333333vw;
  }
}

.testimonial__quote {
  order: 2;
  position: relative;
  padding-top: var(--testimonial-spacing-top);
  font-family: "Playfair Display", Arial, sans-serif;
  font-size: 1.5rem;
  line-height: 140%;
  font-style: italic;
}
@media only screen and (min-width: 768px) {
  .testimonial__quote {
    order: 1;
  }
}

.testimonial__cite {
  order: 1;
  display: flex;
  flex-direction: row;
  font-style: normal;
  gap: 0 var(--grid-gutter);
}
@media only screen and (min-width: 768px) {
  .testimonial__cite {
    order: 2;
  }
}

.testimonial__person {
  display: flex;
  flex-direction: column;
  justify-content: center;
  flex-grow: 1;
  padding-block: 5px;
}

.testimonial__name {
  display: block;
  font-family: "Oswald", Arial, sans-serif;
  font-weight: 400;
  line-height: 120%;
  font-size: 1.5rem;
}
@media only screen and (min-width: 768px) {
  .testimonial__name {
    font-size: 2rem;
  }
}
@media only screen and (min-width: 1024px) {
  .testimonial__name {
    font-size: 2.25rem;
  }
}

.testimonial__subtitle {
  color: var(--testimonial-subtitle-color);
  display: block;
  margin-top: 8px;
  font-family: "Oswald", Arial, sans-serif;
  font-weight: 400;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-size: 1.125rem;
  line-height: 150%;
}

.testimonial__icon {
  opacity: 0.4;
  display: block;
  position: absolute;
  top: 0;
  left: -7px;
  width: 50px;
  height: 40px;
}
.testimonial__icon svg {
  width: 100%;
  height: auto;
}
@media only screen and (min-width: 1024px) {
  .testimonial__icon {
    left: -16px;
    width: 76px;
    height: 60px;
  }
}

.testimonial__image {
  width: var(--testimonial-image-size);
  height: var(--testimonial-image-size);
  margin-inline: unset;
  flex-shrink: 0;
  flex-grow: 0;
}
.testimonial__image img {
  border-radius: 50%;
}
@media only screen and (min-width: 768px) {
  .testimonial__image {
    position: absolute;
    top: var(--testimonial-spacing-top);
    right: 0;
  }
}
