/*-------------------------------- Reset CSS --------------------------------*/
.wp-gr,
.wp-gr *,
.wp-gr *::before,
.wp-gr *::after {
    box-sizing: border-box;
}

.wp-gr {
    display: block;
    direction: ltr;
    font-size: var(--font-size, 16px);
    font-family: var(--font-family, inherit);
    font-style: normal;
    font-weight: normal;
    text-align: start;
    line-height: normal;
    overflow: visible;
    text-decoration: none;
    list-style-type: disc;
    box-sizing: border-box;
    visibility: visible !important;
}

.wp-gr div,
.wp-gr span {
    margin: 0;
    padding: 0;
    color: inherit;
    font: inherit;
    line-height: normal;
    letter-spacing: normal;
    text-transform: none;
    text-decoration: none;
    border: 0;
    background: transparent;
}

.wp-gr a {
    color: inherit;
    border: 0;
    text-decoration: none;
    background: transparent;
    cursor: pointer;
}

.wp-gr a:focus {
    outline: none;
}

.wp-gr a:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 2px;
}

.wp-gr img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    border: 0;
    line-height: 0;
    vertical-align: middle;
}

.wp-gr i {
    font-style: normal;
    font-weight: inherit;
    margin: 0;
    padding: 0;
    border: 0;
    vertical-align: middle;
    background: transparent;
}

.wp-gr svg {
    display: inline-block;
    width: auto;
    height: auto;
    vertical-align: middle;
    overflow: visible;
}

.wp-gr svg use {
    opacity: 1;
    visibility: visible;
}

/*-------------------------------- Main CSS --------------------------------*/
.wp-gr {
    --rev-gap: 4px;
    --img-size: 46px;
    --media-gap: 8px;
    --media-size: 40px;
    --media-lines: 2;
    --color: #fb8e28;
    --rev-color: #f4f4f4;
    --rpi-star-color: var(--star-color, var(--color));
    --rpi-slider-gap: 8px;
    --rpi-slider-btn: 1em;
    --rpi-slider-btn-padding: .5em;
    --slider-ltgt-bg: var(--rev-color);
    --slider-ltgt-border-width: 4px;
    --slider-dot-size: 8px;
    --slider-dot-gap: 8px;
    --slider-dots-visible: 5;
    --slider-act-dot-color: var(--color);
}

.wp-gr .wp-google-based,
.wp-gr .wp-google-powered {
    margin: 0!important;
    padding: 0!important;
    color: var(--head-based-color, #555555)!important;
}

.wp-gr .wp-google-powered {
    color: var(--powered-color, #777777)!important;
    font-size: 16px;
    font-weight: 600;
}

.wp-gr .wp-google-powered > span {
    font-weight: 600!important
}

.wp-gr .grw-img {
    position: relative !important;
    min-width: var(--img-size) !important;
    max-width: var(--img-size) !important;
    height: var(--img-size) !important;
    border: none !important;
    z-index: 3 !important;
}

.wp-gr .grw-img-wrap {
    position: relative;
    min-width: var(--img-size) !important;
    max-width: var(--img-size) !important;
    overflow: visible;
}

.wp-gr .grw-img-wrap::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: var(--img-size);
    height: var(--img-size);
    border-radius: 50%;
    box-shadow: 0 0 2px rgba(0, 0, 0, .12), 0 2px 4px rgba(0, 0, 0, .24) !important;
    pointer-events: none;
}

.wp-gr .grw-header .grw-img {
    border-radius: 50%;
}

.wp-gr .grw-header.wp-place-center {
    width: 100% !important;
}

.wp-gr .wp-google-name {
    color: var(--name-color, #333333)!important;
    font-size: 100%!important;
    font-weight: 700!important;
    text-decoration: none!important;
    white-space: nowrap!important;
    text-overflow: ellipsis !important;
    overflow: hidden!important;
    width: 100%!important;
    text-align: var(--align, start) !important;
}

.wp-gr .grw-header .wp-google-name {
    width: auto!important;
    margin: 0!important;
    padding: 0!important;
    font-size: 128%!important;
}

.wp-gr a.wp-google-name {
    color: #427fed!important;
    text-decoration: none!important
}

.wp-gr .wp-google-time {
    color: #555!important;
    font-size: 13px!important;
    white-space: nowrap!important
}

.wp-gr .wp-google-text {
    color: var(--text-color, #222222)!important;
    font-size: 15px!important;
    line-height: 24px!important;
    max-width: 100%!important;
    overflow: hidden!important;
    white-space: pre-wrap!important;
    word-break: break-word!important;
    vertical-align: middle!important;
}

.wp-gr .rpi-stars + .wp-google-text {
    padding-left: 4px!important
}

.wp-gr .wp-more {
    display: none
}

.wp-gr .wp-more-toggle {
    color: #136aaf!important;
    cursor: pointer!important;
    text-decoration: none!important
}

.wp-gr .wp-google-url {
    display: block;
    margin: 4px auto!important;
    color: #136aaf!important;
    text-align: center!important
}

.wp-gr.wp-dark .wp-google-name {
    color: #eee!important
}

.wp-gr.rpi.wp-dark .wp-google-name a {
    color: var(--head-based-color, #eeeeee)!important
}

.wp-gr.wp-dark .wp-google-time {
    color: #bbb!important
}

.wp-gr.wp-dark .wp-google-text {
    color: #ececec!important
}

.wp-gr.wp-dark .wp-google-powered {
    color: var(--powered-color, #ffffff)!important
}

.wp-gr.wp-dark .wp-google-based {
    color: var(--head-based-color, #999999)!important
}

.wp-gr:not(.wp-dark) .grw-review-inner.grw-backgnd {
    background: var(--rev-color)!important;
}

.wp-gr.rpi .wp-google-name {
    font-size: 100%!important
}

.wp-gr.rpi .grw-hide,
.wp-gr.rpi .wp-google-hide {
    display: none
}

.wp-gr.rpi .wp-google-name a {
    color: var(--head-name-color, #333333)!important;
    font-size: 18px!important;
    text-decoration: none!important
}

.wp-gr.rpi a.wp-google-name {
    margin: 0!important;
    color: var(--name-color, #154fc1)!important;
    text-decoration: none!important;
    white-space: nowrap!important;
    text-overflow: ellipsis!important;
}

/*-------------------------------- row --------------------------------*/
.wp-gr {
    display: block!important;
    width: 100%!important;
    padding-bottom: 20px!important;
    text-align: left!important;
    direction: ltr!important;
    box-sizing: border-box!important;
}

.wp-gr .grw-row {
    display: -ms-flexbox!important;
    display: flex!important;
    flex-wrap: nowrap!important;
    align-items: center!important;
    -ms-flex-wrap: nowrap!important;
    -ms-flex-align: center!important;
}

/*-------------------------------- Row cols --------------------------------*/
.grw-row.grw-row-xs {
    -ms-flex-wrap: wrap!important;
    flex-wrap: wrap!important;
}

.grw-row-xs .grw-header,
.grw-row-xs .grw-content,
.grw-row-xs .grw-review,
.grw-row-x .grw-header + .grw-content .grw-review {
    --col: 1;
}

.grw-row-xl .grw-header + .grw-content {
    --col: 1.2;
}

.grw-row-l .grw-header + .grw-content {
    --col: 1.25;
}

.grw-row-m .grw-header + .grw-content {
    --col: 1.333333;
}

.grw-row-s .grw-header + .grw-content {
    --col: 1.5;
}

.grw-row-x .grw-header,
.grw-row-x .grw-header + .grw-content,
.grw-row-x .grw-review,
.grw-row-s .grw-header + .grw-content .grw-review {
    --col: 2;
}

.grw-row-s .grw-header,
.grw-row-s .grw-review,
.grw-row-m .grw-header + .grw-content .grw-review {
    --col: 3;
}

.grw-row-m .grw-header,
.grw-row-m .grw-review,
.grw-row-l .grw-review {
    --col: 4;
}

.grw-row-l .grw-header,
.grw-row-xl .grw-review {
    --col: 5;
}

.grw-row-xl .grw-header {
    --col: 6;
}

.grw-row .grw-header,
.grw-row .grw-content {
    -ms-flex: 1 0 calc(100% / var(--col, 3))!important;
    flex: 1 0 calc(100% / var(--col, 3))!important;
    width: calc(100% / var(--col, 3))!important;
}

.grw-row .grw-review {
    -ms-flex: 1 0 calc((100% - var(--card-gap, 16px)*(var(--col, 3) - 1)) / var(--col, 3))!important;
    flex: 1 0 calc((100% - var(--card-gap, 16px)*(var(--col, 3) - 1)) / var(--col, 3))!important;
    width: calc((100% - var(--card-gap, 16px)*(var(--col, 3) - 1)) / var(--col, 3))!important;
}

/*-------------------------------- Reviews --------------------------------*/
.wp-gr .grw-content {
    position: relative!important;
    min-width: 0!important;
}

.wp-gr .grw-content-inner {
    position: relative!important;
    display: flex!important;
    align-items: center!important;
}

.wp-gr .grw-review-inner {
    height: 100%!important;
}

.wp-gr .grw-header-inner,
.wp-gr .grw-review-inner {
    position: relative!important;
    /*margin: 0 10px!important;*/
    padding: 16px!important;
    width: 100%!important;
}

.wp-gr .wp-google-list .grw-header-inner {
    padding: 0 0 16px 0!important;
}

.wp-gr .grw-review-inner.grw-round {
    border-radius: 8px!important
}

.wp-gr .grw-review-inner.grw-shadow {
    box-shadow: 0 0 2px rgba(0, 0, 0, .12), 0 2px 4px rgba(0, 0, 0, .24)!important
}

.wp-gr .grw-review-inner > svg {
    position: absolute!important;
    top: 10px!important;
    right: 10px!important;
    width: 16px!important;
    height: 16px!important;
}

.wp-gr .grw-review {
    display: flex;
    position: relative!important;
    justify-content: center!important;
    align-items: center!important;
    flex-shrink: 0!important;
}

/*-------------------------------- Slider overrides --------------------------------*/
.wp-gr .grw-review .wp-google-left {
    display: block!important;
    overflow: hidden!important;
    white-space: nowrap!important;
    text-overflow: ellipsis!important;
    line-height: 24px !important;
    padding-bottom: 2px !important;
}

.wp-gr .grw-review .wp-google-feedback {
    height: 100px!important;
    overflow-y: auto!important;
    /*padding-right: 10px!important;*/
}

.wp-gr .grw-scroll::-webkit-scrollbar {
    width: 4px!important;
}

.wp-gr .grw-scroll::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3)!important;
    -webkit-border-radius: 4px!important;
    border-radius: 4px!important;
}

.wp-gr .grw-scroll::-webkit-scrollbar-thumb {
    -webkit-border-radius: 10px!important;
    border-radius: 10px!important;
    background: #ccc!important;
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.5)!important;
}

.wp-gr .grw-scroll::-webkit-scrollbar-thumb:window-inactive {
    background: #ccc!important;
}

/*-------------------------------- Writereview button --------------------------------*/
.wp-gr .wp-google-wr {
    display: flex;
    margin: 0!important;
}

.wp-gr .wp-google-wr a {
    color: #fff!important;
    padding: 4px 12px 8px!important;
    outline: none !important;
    border-radius: 27px!important;
    background: var(--btn-color, #1f67e7)!important;
    white-space: nowrap!important;
    vertical-align: middle!important;
    opacity: .9!important;
    text-shadow: 1px 1px 0 #888!important;
    box-shadow: 0 0 2px rgba(0, 0, 0, .12), 0 2px 4px rgba(0, 0, 0, .24)!important;
    user-select: none!important;
    transition: all .2s ease-in-out!important;
}

.wp-gr .wp-google-wr a:hover {
    opacity: .95!important;
    background: var(--btn-color, #1f67e7)!important;
    box-shadow: 0 0 2px rgba(0, 0, 0, .12), 0 3px 5px rgba(0, 0, 0, .24)!important;
}

.wp-gr .wp-google-wr a:active {
    opacity: 1!important;
    background: var(--btn-color, #1f67e7)!important;
    box-shadow: none!important;
}

.wp-gr .wp-google-wr a svg {
    display: inline-block;
    width: 16px;
    height: 16px;
    padding: 1px;
    margin: 0 0 0 4px;
    background: #fff;
    border-radius: 50%;
}

/*-------------------------------- grid --------------------------------*/
.wp-gr[data-layout="grid"] .grw-reviews {
    display: flex;
    gap: var(--card-gap, 12px);
    flex-wrap: wrap !important;
    -ms-flex-wrap: wrap!important;
}

.wp-gr .grw-b {
    font-weight: bold!important;
    white-space: nowrap !important;
}

.wp-gr .wp-google-reply {
    font-size: 14px !important;
    margin-top: auto !important;
    margin-left: 6px !important;
    padding-left: 6px !important;
    border-left: 1px solid #999 !important;
    overflow: hidden !important;
    overflow-y: auto !important;
    line-height: 20px !important;
    max-height: 44px !important;
}

.wp-gr .wp-google-reply > div {
    display: flex;
    gap: 4px;
    align-items: center;
}

.wp-gr .wp-google-reply .wp-google-time {
    font-size: 11px !important;
    white-space: nowrap !important;
}

.wp-gr .wp-google-img {
    display: flex;
    flex-wrap: wrap;
    gap: var(--media-gap);
    max-height: calc((var(--media-size) + var(--media-gap)) * var(--media-lines) - 2px) !important;
    overflow-y: auto !important;
}

.wp-gr .wp-google-img img {
    display: flex;
    width: var(--media-size) !important;
    height: var(--media-size) !important;
    cursor: pointer !important;
    border-radius: 3px !important;
    box-shadow: 0 0 2px rgba(0, 0, 0, .12), 0 2px 4px rgba(0, 0, 0, .24) !important;
}