.reviews-component .review-card {
    border-radius: 8px;
}

.reviews-component .review-card .card-title {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
    letter-spacing: 0;
    text-transform: unset;
}

.reviews-component .review-card .card-text {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
}

.reviews-component .review-card span {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
    font-size: 13px;
}

.card-title {
    margin-right: 30px;
}

.card-text {
    --line-clamp: 3;
}

.read-more__text {
    position: relative;
    overflow: hidden;
    max-height: 5rem;
}

.review-card .card-text.open .read-more__text {
    max-height: unset;
}

.read-more {
    outline: 0;
    box-shadow: none;
    border: 0;
    background-color: unset;
    font-size: 0.75rem;
    text-decoration: underline;
    font-weight: 700;
}

.read-more span {
    cursor: pointer;
    font-size: 0.75rem;
    font-weight: 700;
    text-decoration: underline;
}

.reviews-component .prev-arrow, .reviews-component .next-arrow {
    background-color: #999999;
    color: #FFFFFF;
    border: none;
    border-radius: 50%;
    align-self: center;
    padding: 8px;
    transform: translateY(-50%);
}

.reviews-component .prev-arrow {
    left: 14px;
    z-index: 2;
}

.reviews-component .next-arrow {
    right: 14px;
    z-index: 2;
}

.reviews-component .svg-icon__chevron-left:before {
    content: "";
    mask-image: url("data:image/svg+xml,%3Csvg aria-hidden='true' focusable='false' data-prefix='fas' data-icon='chevron-left' class='svg-inline--fa fa-chevron-left fa-w-10' role='img' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath fill='currentColor' d='M34.52 239.03L228.87 44.69c9.37-9.37 24.57-9.37 33.94 0l22.67 22.67c9.36 9.36 9.37 24.52.04 33.9L131.49 256l154.02 154.75c9.34 9.38 9.32 24.54-.04 33.9l-22.67 22.67c-9.37 9.37-24.57 9.37-33.94 0L34.52 272.97c-9.37-9.37-9.37-24.57 0-33.94z'%3E%3C/path%3E%3C/svg%3E");
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg aria-hidden='true' focusable='false' data-prefix='fas' data-icon='chevron-left' class='svg-inline--fa fa-chevron-left fa-w-10' role='img' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath fill='currentColor' d='M34.52 239.03L228.87 44.69c9.37-9.37 24.57-9.37 33.94 0l22.67 22.67c9.36 9.36 9.37 24.52.04 33.9L131.49 256l154.02 154.75c9.34 9.38 9.32 24.54-.04 33.9l-22.67 22.67c-9.37 9.37-24.57 9.37-33.94 0L34.52 272.97c-9.37-9.37-9.37-24.57 0-33.94z'%3E%3C/path%3E%3C/svg%3E");
    width: 1em;
    height: 1em;
    background-color: currentColor;
}

.reviews-component .svg-icon__chevron-right:before {
    content: "";
    mask-image: url("data:image/svg+xml,%3Csvg aria-hidden='true' focusable='false' data-prefix='fas' data-icon='chevron-left' class='svg-inline--fa fa-chevron-left fa-w-10' role='img' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath fill='currentColor' d='M34.52 239.03L228.87 44.69c9.37-9.37 24.57-9.37 33.94 0l22.67 22.67c9.36 9.36 9.37 24.52.04 33.9L131.49 256l154.02 154.75c9.34 9.38 9.32 24.54-.04 33.9l-22.67 22.67c-9.37 9.37-24.57 9.37-33.94 0L34.52 272.97c-9.37-9.37-9.37-24.57 0-33.94z'%3E%3C/path%3E%3C/svg%3E");
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg aria-hidden='true' focusable='false' data-prefix='fas' data-icon='chevron-left' class='svg-inline--fa fa-chevron-left fa-w-10' role='img' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath fill='currentColor' d='M34.52 239.03L228.87 44.69c9.37-9.37 24.57-9.37 33.94 0l22.67 22.67c9.36 9.36 9.37 24.52.04 33.9L131.49 256l154.02 154.75c9.34 9.38 9.32 24.54-.04 33.9l-22.67 22.67c-9.37 9.37-24.57 9.37-33.94 0L34.52 272.97c-9.37-9.37-9.37-24.57 0-33.94z'%3E%3C/path%3E%3C/svg%3E");
    width: 1em;
    height: 1em;
    background-color: currentColor;
    transform: rotate(180deg);
}

.reviews-component .svg-icon__google:after, .average-widget .svg-icon__google:after {
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 48 48' style='height: 1.6rem;' class='review-logo position-absolute top-0 end-0 m-3'%3E%3C!-- TODO: Load in as icon and move inline styling to dedicated CSS file --%3E%3Cdefs%3E%3Cpath id='a' d='M44.5 20H24v8.5h11.8C34.7 33.9 30.1 37 24 37c-7.2 0-13-5.8-13-13s5.8-13 13-13c3.1 0 5.9 1.1 8.1 2.9l6.4-6.4C34.6 4.1 29.6 2 24 2 11.8 2 2 11.8 2 24s9.8 22 22 22c11 0 21-8 21-22 0-1.3-.2-2.7-.5-4z'/%3E%3C/defs%3E%3CclipPath id='b'%3E%3Cuse xlink:href='%23a' overflow='visible'/%3E%3C/clipPath%3E%3Cpath clip-path='url(%23b)' fill='%23FBBC05' d='M0 37V11l17 13z'/%3E%3Cpath clip-path='url(%23b)' fill='%23EA4335' d='M0 11l17 13 7-6.1L48 14V0H0z'/%3E%3Cpath clip-path='url(%23b)' fill='%2334A853' d='M0 37l30-23 7.9 1L48 0v48H0z'/%3E%3Cpath clip-path='url(%23b)' fill='%234285F4' d='M48 48L17 24l-4-3 35-10z'/%3E%3C/svg%3E");
    width: 1.6em;
    height: 1.6em;
}

.reviews-component .svg-icon__star:after, .average-widget .svg-icon__star:after {
    content: "";
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15 15'%3E%3Cpath id='path4749-2-8-2' d='M7.5,0l-2,5h-5l4,3.5l-2,6l5-3.5&%23xA;&%23x9;l5,3.5l-2-6l4-3.5h-5L7.5,0z'/%3E%3C/svg%3E");
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15 15'%3E%3Cpath id='path4749-2-8-2' d='M7.5,0l-2,5h-5l4,3.5l-2,6l5-3.5&%23xA;&%23x9;l5,3.5l-2-6l4-3.5h-5L7.5,0z'/%3E%3C/svg%3E");
    width: 1em;
    height: 1em;
    background-color: #B7B7B7;
}

.reviews-component .svg-icon__plus:after {
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 136.22 136.22'%3E%3Cdefs%3E%3Cstyle%3E.d%7Bfill:%23e84235;%7D.e%7Bfill:%23fdbb06;%7D.f%7Bfill:%233f87f5;%7D.g%7Bfill:%2335a952;%7D%3C/style%3E%3C/defs%3E%3Cg id='a'/%3E%3Cg id='b'%3E%3Cg id='c'%3E%3Cg%3E%3Crect class='g' x='56.12' y='80.1' width='23.97' height='56.12'/%3E%3Crect class='e' y='56.12' width='56.12' height='23.97'/%3E%3Cpolygon class='d' points='56.12 0 56.12 56.12 56.12 80.1 80.1 56.12 80.1 0 56.12 0'/%3E%3Cpolygon class='f' points='80.1 56.12 56.12 80.1 80.1 80.1 136.22 80.1 136.22 56.12 80.1 56.12'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
    width: 1.5em;
    height: 1.5em;
}

.reviews-component .active:after, .average-widget .active:after {
    background-color: #FFA500 !important;
}

.average-widget {
    border-radius: 8px;
    min-width: 216px;
}

.average-widget .card-body {
    padding: 12px;
}

.average-widget .rating-count {
    font-size: 40px;
    line-height: 40px;
    color: #FFA500;
}

.average-widget .svg-icon__google:after {
    width: 1.2em;
    height: 1.2em;
}


/* ROW-TYPE-CATEGORIES
======================================== */
.reviews-component {
    overflow: hidden
}

.reviews-component .buttons button {
    width: 2.5rem;
    height: 2.5rem;
    border: 0;
    z-index: 5;
}

.reviews-component .google-review-slider {
    overflow-x: auto;
    scroll-behavior: smooth;
    -ms-scroll-snap-type: x mandatory;
    scroll-snap-type: x mandatory;
    -ms-overflow-style: none;
    scrollbar-width: none
}

.reviews-component .google-review-slider::-webkit-scrollbar {
    display: none
}

.reviews-component .google-review-slider > .category {
    scroll-snap-align: start
}

.reviews-component .google-review-slider > .review-card:not(:last-child) {
    margin-right: var(--bs-gutter-x);
}

@media (max-width: 575.98px) {
    .reviews-component .google-review-slider > .review-card {
        width: 80vw
    }
}

@media (min-width: 576px)and (max-width: 767.98px) {
    .reviews-component .google-review-slider > .review-card {
        width: 60vw
    }
}

@media (min-width: 768px)and (max-width: 1199.98px) {
    .reviews-component .google-review-slider > .review-card {
        width: 40vw
    }
}

@media (min-width: 1200px) {
    .reviews-component .google-review-slider > .review-card {
        width: calc((1140px - var(--bs-gutter-x) - (var(--bs-gutter-x) * 2)) / 3)
    }
}

@media (min-width: 1400px) {
    .reviews-component .google-review-slider > .review-card {
        width: calc((1320px - var(--bs-gutter-x) - (var(--bs-gutter-x) * 2)) / 3)
    }
}

@media (max-width: 991.98px) {
    .reviews-component .google-review-slider {
        scroll-padding: 0 calc(var(--bs-gutter-x) / 2);
    }

    .reviews-component .google-review-slider:before {
        content: "";
        padding-left: calc(var(--bs-gutter-x) / 2);
    }

    .reviews-component .google-review-slider:after {
        content: "";
        padding-right: calc(var(--bs-gutter-x) / 2);
    }
}

@media (min-width: 992px) {
    .reviews-component .google-review-slider {
        scroll-padding: 0 calc((100vw - 100%) / 2 + (var(--bs-gutter-x) / 2))
    }

    .reviews-component .google-review-slider:before {
        content: "";
        padding-left: calc((100vw - 100%) / 2 + (var(--bs-gutter-x) / 2))
    }

    .reviews-component .google-review-slider:after {
        content: "";
        padding-right: calc((100vw - 100%) / 2 + (var(--bs-gutter-x) / 2))
    }
}

@media (min-width: 1200px) {
    .reviews-component .google-review-slider {
        scroll-padding: 0 calc((100vw - 1140px) / 2 + (var(--bs-gutter-x) / 2))
    }

    .reviews-component .google-review-slider:before {
        content: "";
        padding-left: calc((100vw - 1140px) / 2 + (var(--bs-gutter-x) / 2))
    }

    .reviews-component .google-review-slider:after {
        content: "";
        padding-right: calc((100vw - 1140px) / 2 + (var(--bs-gutter-x) / 2))
    }
}

@media (min-width: 1400px) {
    .reviews-component .google-review-slider {
        scroll-padding: 0 calc((100vw - 1320px) / 2 + (var(--bs-gutter-x) / 2))
    }

    .reviews-component .google-review-slider:before {
        content: "";
        padding-left: calc((100vw - 1320px) / 2 + (var(--bs-gutter-x) / 2))
    }

    .reviews-component .google-review-slider:after {
        content: "";
        padding-right: calc((100vw - 1320px) / 2 + (var(--bs-gutter-x) / 2))
    }
}
