.wp-gr,.wp-gr *,.wp-gr ::after,.wp-gr ::before {
    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: 400;
    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: 0 0
}

.wp-gr a {
    color: inherit;
    border: 0;
    text-decoration: none;
    background: 0 0;
    cursor: pointer
}

.wp-gr a:focus {
    outline: 0
}

.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: 0 0
}

.wp-gr svg {
    display: inline-block;
    width: auto;
    height: auto;
    vertical-align: middle;
    overflow: visible
}

.wp-gr svg use {
    opacity: 1;
    visibility: visible
}

.wp-gr {
    --card-gap: 4px;
    --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));
    --slider-dot-size: 8px;
    --slider-dot-gap: 8px;
    --slider-dots-visible: 5;
    --slider-act-dot-color: var(--color);
    position: relative!important;
    display: block!important;
    min-width: 0!important;
    max-width: 100%!important;
    margin: 0!important;
    padding: 0!important;
    line-height: normal!important;
    text-align: start!important;
    direction: ltr!important;
    overflow-wrap: break-word!important;
    box-sizing: border-box!important
}

.wp-gr .wp-google-based,.wp-gr .wp-google-powered {
    margin: 0!important;
    padding: 0!important;
    color: var(--head-based-color,#555)!important
}

.wp-gr .wp-google-powered {
    color: var(--powered-color,#777)!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,#333)!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: 100%!important;
    margin: 0!important;
    padding: 0!important;
    font-size: 128%!important;
    white-space: normal!important
}

.wp-gr .grw-header-inner>.rpi-flx {
    overflow: hidden!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,#222)!important;
    font-size: 15px!important;
    line-height: 22px!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,#eee)!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,#fff)!important
}

.wp-gr.wp-dark .wp-google-based {
    color: var(--head-based-color,#999)!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 .wp-google-name{
  width: 400px !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,#333)!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
}

.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
}

.grw-row.grw-row-xs {
    -ms-flex-wrap: wrap!important;
    flex-wrap: wrap!important
}

.grw-row-x .grw-header+.grw-content .grw-review,.grw-row-xs .grw-content,.grw-row-xs .grw-header,.grw-row-xs .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-s .grw-header+.grw-content .grw-review,.grw-row-x .grw-header,.grw-row-x .grw-header+.grw-content,.grw-row-x .grw-review {
    --col: 2
}

.grw-row-m .grw-header+.grw-content .grw-review,.grw-row-s .grw-header,.grw-row-s .grw-review {
    --col: 3
}

.grw-row-l .grw-review,.grw-row-m .grw-header,.grw-row-m .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-content,.grw-row .grw-header {
    -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
}

.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: 4px!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
}

.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
}

.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,.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,.5)!important
}

.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: 0!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%
}

.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: 700!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
}

.rpi-flx {
    display: var(--flx,flex)!important;
    flex-direction: var(--dir,column)!important;
    gap: var(--gap,2px)!important;
    align-items: var(--align,flex-start)!important;
    flex-wrap: var(--wrap,nowrap)!important;
    overflow: var(--overflow,visible)!important;
    width: 100%!important
}

.rpi-col16 {
    --dir: column;
    --gap: 16px;
    --align: flex-start;
    --overflow: hidden
}

.rpi-col12 {
    --dir: column;
    --gap: 12px;
    --align: flex-start;
    --overflow: hidden
}

.rpi-col6 {
    --dir: column;
    --gap: 6px;
    --align: flex-start;
    --overflow: hidden
}

.rpi-col8 {
    --dir: column;
    --gap: 8px;
    --align: flex-start
}

.rpi-col4 {
    --dir: column;
    --gap: 4px;
    --align: flex-start
}

.rpi-row12-center {
    --dir: row;
    --gap: 12px;
    --align: center;
    --overflow: visible
}

.rpi-row12 {
    --dir: row;
    --gap: 12px;
    --align: flex-start
}

:root {
    --star-gap: 2px;
    --rpi-star-size: 20px;
    --rpi-star-color: #fb8e28;
    --rpi-star-empty-color: #cccccc;
    --rpi-icon-scale-google: 1.00;
    --rpi-icon-scale-yelp: 0.92;
    --rpi-icon-scale-fb: 1.125;
    --rpi-yelp-empty-color: #cccccc;
    --rpi-yelp-five-color: #fb433c;
    --rpi-yelp-four-color: #ff643d;
    --rpi-yelp-three-color: #ff8742;
    --rpi-yelp-two-color: #ffad48;
    --rpi-yelp-one-color: #ffcc4b;
    --rpi-yelp-radius: 3px;
    --rpi-fb-color: #fa3e3e;
    --rpi-fb-radius: 3px;
    --rpi-star-empty: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M11.48 3.499a.562.562 0 0 1 1.04 0l2.125 5.111a.563.563 0 0 0 .475.345l5.518.442c.499.04.701.663.321.988l-4.204 3.602a.563.563 0 0 0-.182.557l1.285 5.385a.562.562 0 0 1-.84.61l-4.725-2.885a.562.562 0 0 0-.586 0L6.982 20.54a.562.562 0 0 1-.84-.61l1.285-5.386a.562.562 0 0 0-.182-.557l-4.204-3.602a.562.562 0 0 1 .321-.988l5.518-.442a.563.563 0 0 0 .475-.345L11.48 3.5Z' fill='none' stroke='currentColor' stroke-width='1.5' stroke-linejoin='round'/%3E%3C/svg%3E");
    --rpi-star-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M10.7881 3.21068C11.2364 2.13274 12.7635 2.13273 13.2118 3.21068L15.2938 8.2164L20.6979 8.64964C21.8616 8.74293 22.3335 10.1952 21.4469 10.9547L17.3295 14.4817L18.5874 19.7551C18.8583 20.8908 17.6229 21.7883 16.6266 21.1798L11.9999 18.3538L7.37329 21.1798C6.37697 21.7883 5.14158 20.8908 5.41246 19.7551L6.67038 14.4817L2.55303 10.9547C1.66639 10.1952 2.13826 8.74293 3.302 8.64964L8.70609 8.2164L10.7881 3.21068Z'/%3E%3C/svg%3E")
}

.rpi-stars .rpi-star {
    display: none!important
}

.rpi-star,.rpi-stars-tripadvisor,.rpi-stars-yelp {
    display: var(--flx,flex);
    align-items: center;
    align-self: var(--star-align-self,start);
    gap: var(--gap,4px);
    text-align: start;
    z-index: 1
}

.rpi-star[data-rating]:empty::before {
    content: attr(data-rating);
    color: var(--rpi-rating-color,var(--rpi-star-color));
    font-size: var(--head-grade-fs, 18px);
    font-weight: var(--head-grade-weight,900)
}

.rpi-star i {
    padding: 0 2px;
    cursor: pointer!important;
    background-color: var(--rpi-star-empty-color)
}

.rpi-star[data-rating="1"] i:nth-child(-n+1),.rpi-star[data-rating="2"] i:nth-child(-n+2),.rpi-star[data-rating="3"] i:nth-child(-n+3),.rpi-star[data-rating="4"] i:nth-child(-n+4),.rpi-star[data-rating="5"] i:nth-child(-n+5) {
    background-color: var(--rpi-star-color)
}

.rpi-star:hover i {
    background-color: var(--rpi-star-color)!important
}

.rpi-star i:hover~i {
    background-color: var(--rpi-star-empty-color)!important
}

.rpi-star i,.rpi-star[data-rating]:empty::after {
    content: '';
    width: var(--rpi-star-size)!important;
    height: var(--rpi-star-size)!important;
    -webkit-mask-image: var(--rpi-star-mask)!important;
    -webkit-mask-repeat: no-repeat!important;
    -webkit-mask-position: center!important;
    -webkit-mask-size: contain!important;
    mask-image: var(--rpi-star-mask)!important;
    mask-repeat: no-repeat!important;
    mask-position: center!important;
    mask-size: contain!important
}

.rpi-star[data-rating]:empty::after {
    background-color: var(--rpi-star-color)
}

.rpi-star+.rpi-stars {
    --stars-offset: 1;
    --stars: calc(var(--stars-max) - var(--stars-offset))
}

.rpi-stars {
    --star-size: var(--rpi-star-size, 18px);
    --star-color: var(--rpi-star-color);
    --empty: var(--rpi-star-empty);
    --mask: var(--rpi-star-mask);
    --stars: 5;
    --icon-scale: 1;
    --rating-scale: 0.8;
    --gap: var(--star-gap, 2px);
    --stars-w: calc(var(--stars) * (var(--star-size) + var(--star-gap)));
    --fill: calc((var(--rating) / var(--stars)) * 100%);
    --bg-size: calc(var(--star-size) * var(--icon-scale));
    --bg-size-x: calc(var(--bg-size) + var(--star-gap));
    position: relative!important;
    display: inline-flex!important;
    align-items: center!important;
    align-self: var(--star-align-self,start)!important;
    width: max-content!important;
    height: var(--star-size)!important;
    font-size: calc(var(--star-size) * var(--rating-scale))!important;
    font-weight: var(--head-grade-weight,900)!important;
    color: var(--rpi-rating-color,var(--star-color))!important;
    white-space: nowrap!important;
    vertical-align: middle!important;
    padding-right: calc(var(--stars-w) + var(--gap))!important
}

.rpi-stars:empty {
    --gap: calc(-1 * (var(--star-gap) / 2 + 1px))
}

.rpi-stars::before {
    content: ''!important;
    position: absolute!important;
    top: 50%!important;
    right: 0!important;
    width: var(--stars-w)!important;
    height: var(--star-size)!important;
    transform: translateY(-50%)!important;
    background-color: var(--star-color)!important;
    -webkit-mask-image: var(--empty)!important;
    -webkit-mask-repeat: repeat-x!important;
    -webkit-mask-position: left center!important;
    -webkit-mask-size: var(--bg-size-x) var(--bg-size)!important;
    mask-image: var(--empty)!important;
    mask-repeat: repeat-x!important;
    mask-position: left center!important;
    mask-size: var(--bg-size-x) var(--bg-size)!important
}

.rpi-stars::after {
    content: ''!important;
    position: absolute!important;
    top: 50%!important;
    right: 0!important;
    width: var(--stars-w)!important;
    height: var(--star-size)!important;
    transform: translateY(-50%)!important;
    background-color: var(--star-color)!important;
    -webkit-mask-image: var(--mask)!important;
    -webkit-mask-repeat: repeat-x!important;
    -webkit-mask-position: left center!important;
    -webkit-mask-size: var(--bg-size-x) var(--bg-size)!important;
    mask-image: var(--mask)!important;
    mask-repeat: repeat-x!important;
    mask-position: left center!important;
    mask-size: var(--bg-size-x) var(--bg-size)!important;
    clip-path: inset(0 calc(100% - var(--fill)) 0 0)!important
}

.rpi-stars-yelp {
    --empty-color: var(--rpi-yelp-empty-color);
    --five-color: var(--rpi-yelp-five-color);
    --four-color: var(--rpi-yelp-four-color);
    --three-color: var(--rpi-yelp-three-color);
    --two-color: var(--rpi-yelp-two-color);
    --one-color: var(--rpi-yelp-one-color);
    --icon-scale: 0.9;
    --star-scale: 70%;
    --star-size: var(--rpi-star-size);
    --rating: 0;
    --gap: 3px;
    --radius: var(--rpi-yelp-radius);
    display: inline-flex!important;
    gap: var(--gap)!important;
    line-height: 0!important;
    vertical-align: top!important
}

.rpi-stars-yelp i {
    position: relative!important;
    display: inline-block!important;
    font-style: normal!important;
    flex: 0 0 auto!important;
    width: var(--star-size)!important;
    height: var(--star-size)!important;
    border-radius: var(--radius)!important;
    background-color: var(--empty-color)!important;
    background-image: linear-gradient(90deg,var(--star-color) 0 calc(var(--fill,0) * 1%),transparent calc(var(--fill,0) * 1%))!important;
    background-repeat: no-repeat!important;
    background-size: 100% 100%!important;
    box-sizing: border-box!important;
    transform: scale(var(--icon-scale))!important;
    transform-origin: left center!important
}

.rpi-stars-yelp i::after {
    content: ''!important;
    position: absolute!important;
    inset: 0!important;
    background-color: #fff!important;
    -webkit-mask-image: var(--rpi-star-mask)!important;
    -webkit-mask-repeat: no-repeat!important;
    -webkit-mask-size: var(--star-scale) var(--star-scale)!important;
    -webkit-mask-position: center!important;
    mask-image: var(--rpi-star-mask)!important;
    mask-repeat: no-repeat!important;
    mask-size: var(--star-scale) var(--star-scale)!important;
    mask-position: center!important
}

.rpi-stars-yelp,.rpi-stars-yelp[data-rating]::before {
    content: attr(data-rating);
    color: var(--rpi-rating-color,var(--star-color));
    font-size: var(--head-grade-fs, 18px);
    font-weight: var(--head-grade-weight,900)
}

.rpi-stars-yelp i:first-child {
    --fill: clamp(0, (var(--rating) - 0) * 100, 100)
}

.rpi-stars-yelp i:nth-child(2) {
    --fill: clamp(0, (var(--rating) - 1) * 100, 100)
}

.rpi-stars-yelp i:nth-child(3) {
    --fill: clamp(0, (var(--rating) - 2) * 100, 100)
}

.rpi-stars-yelp i:nth-child(4) {
    --fill: clamp(0, (var(--rating) - 3) * 100, 100)
}

.rpi-stars-yelp i:nth-child(5) {
    --fill: clamp(0, (var(--rating) - 4) * 100, 100)
}

.rpi-stars-yelp[data-stars^="1"] {
    --rating: 1.5;
    --star-color: var(--one-color)
}

.rpi-stars-yelp[data-stars="1"] {
    --rating: 1
}

.rpi-stars-yelp[data-stars^="2"] {
    --rating: 2.5;
    --star-color: var(--two-color)
}

.rpi-stars-yelp[data-stars="2"] {
    --rating: 2
}

.rpi-stars-yelp[data-stars^="3"] {
    --rating: 3.5;
    --star-color: var(--three-color)
}

.rpi-stars-yelp[data-stars="3"] {
    --rating: 3
}

.rpi-stars-yelp[data-stars^="4"] {
    --rating: 4.5;
    --star-color: var(--four-color)
}

.rpi-stars-yelp[data-stars="4"] {
    --rating: 4
}

.rpi-stars-yelp[data-stars^="5"] {
    --rating: 5;
    --star-color: var(--five-color)
}

.rpi-stars-tripadvisor {
    --empty-color: #ffffff;
    --border-color: #5ba672;
    --fill-color: #5ba672;
    --icon-scale: 0.9;
    --rpi-dot-size: var(--rpi-star-size);
    --rating: 0;
    --gap: 3px;
    --border: 3px;
    display: inline-flex!important;
    gap: var(--gap)!important;
    line-height: 0!important;
    vertical-align: top!important
}

.rpi-stars-tripadvisor i {
    width: var(--rpi-dot-size)!important;
    height: var(--rpi-dot-size)!important;
    display: inline-block!important;
    position: relative!important;
    flex: 0 0 auto!important;
    box-sizing: border-box!important;
    border-radius: 999px!important;
    border: var(--border) solid var(--border-color)!important;
    background-color: var(--empty-color)!important;
    background-image: linear-gradient(90deg,var(--fill-color) 0 calc(var(--fill,0) * 1%),transparent calc(var(--fill,0) * 1%))!important;
    background-repeat: no-repeat!important;
    background-size: 100% 100%!important;
    transform: scale(var(--icon-scale))!important;
    transform-origin: left center!important
}

.rpi-stars-tripadvisor,.rpi-stars-tripadvisor[data-rating]::before {
    content: attr(data-rating);
    color: var(--rpi-rating-color,var(--fill-color));
    font-size: var(--head-grade-fs, 18px);
    font-weight: var(--head-grade-weight,900)
}

.rpi-stars-tripadvisor i:first-child {
    --fill: clamp(0, (var(--rating) - 0) * 100, 100)
}

.rpi-stars-tripadvisor i:nth-child(2) {
    --fill: clamp(0, (var(--rating) - 1) * 100, 100)
}

.rpi-stars-tripadvisor i:nth-child(3) {
    --fill: clamp(0, (var(--rating) - 2) * 100, 100)
}

.rpi-stars-tripadvisor i:nth-child(4) {
    --fill: clamp(0, (var(--rating) - 3) * 100, 100)
}

.rpi-stars-tripadvisor i:nth-child(5) {
    --fill: clamp(0, (var(--rating) - 4) * 100, 100)
}

.rpi-stars-tripadvisor[data-stars^="1"] {
    --rating: 1.5
}

.rpi-stars-tripadvisor[data-stars="1"] {
    --rating: 1
}

.rpi-stars-tripadvisor[data-stars^="2"] {
    --rating: 2.5
}

.rpi-stars-tripadvisor[data-stars="2"] {
    --rating: 2
}

.rpi-stars-tripadvisor[data-stars^="3"] {
    --rating: 3.5
}

.rpi-stars-tripadvisor[data-stars="3"] {
    --rating: 3
}

.rpi-stars-tripadvisor[data-stars^="4"] {
    --rating: 4.5
}

.rpi-stars-tripadvisor[data-stars="4"] {
    --rating: 4
}

.rpi-stars-tripadvisor[data-stars^="5"] {
    --rating: 5
}

.rpi-star-fb {
    --icon-scale: 0.9;
    --star-scale: 70%;
    --fb-size: var(--rpi-star-size, 18px);
    --size: calc(var(--fb-size) * var(--icon-scale));
    --color: var(--rpi-fb-color, #fa3e3e);
    --radius: var(--rpi-fb-radius, 3px);
    --tail-w: calc(var(--size) / 3);
    --tail-h: calc(var(--size) / 3.6);
    --tail-offset: calc(var(--size) / 4.5);
    --tail-overlap: 1px;
    --gap: 0.25em;
    --label-scale: 0.9;
    --fb-star: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M10.7881 3.21068C11.2364 2.13274 12.7635 2.13273 13.2118 3.21068L15.2938 8.2164L20.6979 8.64964C21.8616 8.74293 22.3335 10.1952 21.4469 10.9547L17.3295 14.4817L18.5874 19.7551C18.8583 20.8908 17.6229 21.7883 16.6266 21.1798L11.9999 18.3538L7.37329 21.1798C6.37697 21.7883 5.14158 20.8908 5.41246 19.7551L6.67038 14.4817L2.55303 10.9547C1.66639 10.1952 2.13826 8.74293 3.302 8.64964L8.70609 8.2164L10.7881 3.21068Z' fill='%23fff'/%3E%3C/svg%3E");
    position: relative!important;
    display: inline-flex!important;
    align-items: center;
    align-self: var(--star-align-self,start);
    height: var(--star-size)!important;
    width: max-content!important;
    white-space: nowrap!important;
    font-size: calc(var(--size) * var(--label-scale))!important;
    line-height: 1!important;
    padding-left: calc(var(--size) + var(--gap))!important;
    text-shadow: .015em 0 0 currentColor
}

.rpi-star-fb::before {
    content: ''!important;
    position: absolute!important;
    left: 0!important;
    top: 50%!important;
    transform: translateY(-50%)!important;
    width: var(--size)!important;
    height: var(--size)!important;
    background-color: var(--color)!important;
    border-radius: var(--radius)!important;
    background-image: var(--fb-star)!important;
    background-repeat: no-repeat!important;
    background-position: center!important;
    background-size: var(--star-scale) var(--star-scale)!important
}

.rpi-star-fb::after {
    content: ''!important;
    position: absolute!important;
    left: var(--tail-offset)!important;
    top: 50%!important;
    width: 0!important;
    height: 0!important;
    transform: translateY(calc(var(--size)/ 2 - var(--tail-overlap)))!important;
    border-top: var(--tail-h) solid var(--color)!important;
    border-right: var(--tail-w) solid transparent!important
}

.rpi-star-fb[data-rating="1"] {
    --color: #cccccc
}

:root {
    --rpi-lt: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m15 18-6-6 6-6'%3E%3C/path%3E%3C/svg%3E") no-repeat center/contain;
    --rpi-gt: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 18 6-6-6-6'%3E%3C/path%3E%3C/svg%3E") no-repeat center/contain
}

.rpi {
    --slider-btn-size: 16px;
    --slider-btn-bg: var(--card-bg, #f5f5f5);
    --slider-btn-color: #777777;
    --slider-btn-padding: calc(var(--slider-btn-size) / 2);
    --slider-btn-bw: 1px;
    --slider-btn-bc: #cccccc;
    --slider-btn-fs: calc(var(--slider-btn-size) + var(--slider-btn-bw));
    --slider-btn-shadow: 0 2px 6px rgb(0 0 0 / 0.15);
    --slider-btn-full: calc(var(--slider-btn-size) + (var(--slider-btn-padding) * 2) + (var(--slider-btn-bw) * 2));
    --slider-btn-offset: 0px;
    --slider-btn-out: calc(var(--slider-btn-full) / 2);
    --slider-btn-pos: calc(var(--slider-btn-out) + var(--slider-btn-offset));
    --slider-offset: calc(var(--slider-btn-out))
}

.rpi .rpi-slides {
    display: flex!important;
    flex: 1!important;
    gap: var(--slider-gap,var(--card-gap,8px))!important;
    flex-wrap: nowrap!important;
    overflow: hidden!important;
    overflow-x: auto!important;
    scroll-snap-type: x mandatory!important;
    scroll-behavior: var(--rpi-slider-behavior,smooth)!important;
    -webkit-overflow-scrolling: touch!important;
    scrollbar-width: none!important
}

.rpi .rpi-slides::-webkit-scrollbar {
    display: none!important
}

.rpi .rpi-slide {
    overflow: hidden!important;
    padding: 4px 3px!important;
    scroll-snap-align: start!important;
    transition: transform .5s!important
}

.rpi .rpi-slides-bite {
    --offset: var(--slides-bite-offset, 6px);
    --alpha: 0.2px;
    --shift: var(--slider-btn-offset);
    --radius: calc(var(--slider-btn-out) + var(--offset));
    -webkit-mask: var(--slider-bite,radial-gradient(circle var(--radius) at calc(0% - var(--shift)) 50%,transparent 0,transparent calc(var(--radius) - var(--alpha)),#000 calc(var(--radius) + var(--alpha))),radial-gradient(circle var(--radius) at calc(100% + var(--shift)) 50%,transparent 0,transparent calc(var(--radius) - var(--alpha)),#000 calc(var(--radius) + var(--alpha))),linear-gradient(#000 0 0));
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    -webkit-mask-composite: source-in,source-in;
    margin: 0 var(--slider-offset,0)
}

.rpi .rpi-ltgt {
    --margin: calc(-1 * var(--slider-btn-pos) + var(--slider-offset, 0px));
    position: var(--slider-btn-position,absolute)!important;
    padding: var(--slider-btn-padding)!important;
    border-radius: 50%!important;
    border: var(--slider-btn-bw) solid var(--slider-btn-bc)!important;
    background-color: var(--slider-btn-bg)!important;
    box-shadow: var(--slider-btn-shadow)!important;
    transition: background-color .2s ease-in-out!important;
    z-index: 1!important
}

.rpi .rpi-ltgt:active {
    box-shadow: none!important
}

.rpi .rpi-ltgt.rpi-lt {
    left: 0!important;
    margin-left: var(--margin)!important
}

.rpi .rpi-ltgt.rpi-gt {
    right: 0!important;
    margin-right: var(--margin)!important
}

.rpi-ltgt.rpi-gt::after,.rpi-ltgt.rpi-lt::before {
    position: relative!important;
    content: ''!important;
    display: block!important;
    width: var(--slider-btn-size)!important;
    height: var(--slider-btn-size)!important;
    background-color: var(--slider-btn-color)!important
}

.rpi-ltgt.rpi-lt::before {
    -webkit-mask: var(--rpi-lt)!important;
    mask: var(--rpi-lt)!important
}

.rpi-ltgt.rpi-gt::after {
    -webkit-mask: var(--rpi-gt)!important;
    mask: var(--rpi-gt)!important
}

[dir=rtl] .rpi-gt::after,[dir=rtl] .rpi-lt::before {
    transform: rotate(180deg)
}

.rpi .rpi-dots-wrap {
    position: absolute!important;
    top: calc(100% - 1px)!important;
    left: 0!important;
    right: 0!important;
    display: flex!important;
    justify-content: center!important;
    margin: 0 auto!important;
    padding-top: var(--slider-dot-padding-top,.5em)!important;
    max-width: 100%!important;
    width: calc(var(--slider-dots-visible) * var(--slider-dot-size) + (var(--slider-dots-visible) - 1) * var(--slider-dot-gap))!important
}

.rpi .rpi-dots {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: scroll!important;
    gap: var(--slider-dot-gap);
    scrollbar-width: none;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch
}

.rpi-dots .rpi-dot {
    display: inline-block!important;
    width: var(--slider-dot-size)!important;
    height: var(--slider-dot-size)!important;
    margin: 0!important;
    padding: 0!important;
    opacity: .4!important;
    vertical-align: middle!important;
    flex: 1 0 auto!important;
    transform: scale(.55)!important;
    scroll-snap-align: center!important;
    border-radius: 20px!important;
    background-color: var(--slider-dot-color,#999)!important
}

.rpi-dots .rpi-dot:hover {
    opacity: 1!important
}

.rpi-dots .rpi-dot.active {
    opacity: 1!important;
    transform: scale(.95)!important;
    background-color: var(--slider-act-dot-color,#fb8e28)!important
}

.rpi-dots .rpi-dot.s2 {
    transform: scale(.85)!important
}

.rpi-dots .rpi-dot.s3 {
    transform: scale(.65)!important
}

.rpi button {
    all: revert!important;
    margin: 0!important;
    padding: 0!important;
    box-shadow: none!important;
    border-radius: 0!important;
    line-height: 1!important;
    font: inherit!important;
    color: inherit!important;
    text-align: center!important;
    cursor: pointer!important;
    border: 0!important;
    background: 0 0!important;
    appearance: none!important;
    -webkit-appearance: none!important;
    user-select: none!important
}

.rpi button:focus {
    outline: 0!important
}

.rpi button:focus-visible {
    outline: 2px solid currentColor!important;
    outline-offset: 2px!important
}

.rpi .rpi-x,.rpi-x {
    position: absolute!important;
    top: var(--x-top,6px)!important;
    right: var(--x-right,8px)!important;
    display: flex!important;
    align-items: center!important;
    justify-content: center!important;
    width: var(--x-width,20px)!important;
    height: var(--x-height,20px)!important;
    cursor: pointer!important;
    opacity: var(--x-opacity, .65)!important;
    border-radius: 50%!important;
    background-color: var(--x-bg,#fafafa)!important;
    z-index: 2147483003!important;
    outline: 0!important
}

.rpi .rpi-x:focus-visible,.rpi-x:focus-visible {
    outline: 0!important
}

.rpi .rpi-x:hover,.rpi-x:hover {
    opacity: 1!important
}

.rpi .rpi-x::after,.rpi .rpi-x::before,.rpi-x::after,.rpi-x::before {
    content: ""!important;
    position: absolute!important;
    display: block!important;
    width: var(--x-line-width,12px)!important;
    height: var(--x-line-height,1px)!important;
    border-radius: 2px!important;
    background-color: var(--x-color,#373737)!important
}

.rpi .rpi-x::before,.rpi-x::before {
    transform: rotate(45deg)!important
}

.rpi .rpi-x::after,.rpi-x::after {
    transform: rotate(-45deg)!important
}

.rpi .rpi-x.rpi-xa::before,.rpi-x.rpi-xa::before {
    --x-line-width: 7px!important;
    --x-line-height: 7px!important;
    top: 4px!important;
    border-radius: 0!important;
    border-right: 1px solid #373737!important;
    border-bottom: 1px solid #373737!important;
    background-color: transparent!important
}

.rpi .rpi-x.rpi-xa::after,.rpi-x.rpi-xa::after {
    content: none!important
}

.rpi-bubble:after {
    content: "";
    position: absolute;
    top: -8px;
    left: 16px;
    bottom: auto;
    border-style: solid;
    border-width: 0 8px 8px;
    border-color: #fff transparent
}

.rpi-fade {
    -webkit-transition: opacity 150ms ease,-webkit-transform 150ms ease;
    transition: opacity 150ms ease,-webkit-transform 150ms ease;
    transition: transform 150ms ease,opacity 150ms ease;
    transition: transform 150ms ease,opacity 150ms ease,-webkit-transform 150ms ease
}

.rpi-sb {
    --x-bg: transparent;
    --x-line-width: 16px;
    --slider-card-margin: 0;
    --sb-top-offset: 0px;
    position: fixed;
    inset: var(--sb-top-offset,60px) 0 0 auto;
    width: min(368px,100%);
    display: flex;
    flex-direction: column;
    background: rgba(250,250,251,.98);
    border-left: 1px solid #dadee2;
    box-shadow: #bdbdbd 0 2px 10px 0;
    z-index: 2147483000;
    overflow: visible;
    transform: translateX(100%);
    transition: transform .3s ease-in-out,visibility 0s .3s;
    visibility: hidden;
    will-change: transform;
    backface-visibility: hidden
}

.rpi-sb .rpi-list,.rpi-sbh {
    --card-gap: 0;
    --card-padding: 12px;
    --card-bg: transparent;
    --head-card-bg: transparent
}

.rpi-sb.rpi-open {
    overflow: hidden;
    transform: translateX(0);
    transition: transform .3s ease-in-out,visibility 0s 0s;
    visibility: visible
}

.rpi-sb.rpi-left {
    inset: var(--sb-top-offset,60px) auto 0 0;
    border-left: none;
    border-right: 1px solid #dadee2;
    transform: translateX(-100%)
}

.rpi-sb.rpi-left.rpi-open {
    transform: translateX(0)
}

@media (max-width: 460px) {
    .rpi-sb {
        inset:var(--sb-top-offset,60px) 0 0 0;
        width: 100%;
        border-radius: 0
    }
}

.rpi-sb .rpi {
    min-width: 330px
}

.rpi-sb[data-layout=list] .rpi {
    --card-gap: 0;
    --card-bg: none;
    --text-lines: auto;
    --head-card-bg: none
}

.rpi-sb .rpi-header {
    position: sticky;
    top: 0;
    z-index: 5
}

.rpi-sb .rpi-header,.rpi-sbf,.rpi-sbh {
    background: #fff;
    box-shadow: 0 1px 2px 0 rgba(0,0,0,.12)
}

.rpi-sbc {
    flex: 1;
    overflow-y: auto!important;
    overflow-x: hidden!important;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch
}

.rpi-sbf {
    display: flex;
    align-items: center;
    justify-content: space-around;
    padding: 8px 2px
}

.rpi-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.3);
    opacity: 0;
    visibility: hidden;
    transition: opacity .3s;
    z-index: 2147482999
}

.rpi-overlay.rpi-open {
    opacity: 1;
    visibility: visible
}

.rpi-lightbox,.rpi-lightbox-wrap {
    --x-top: 15px;
    --x-right: 15px;
    --x-bg: none;
    --x-color: #ececec;
    --x-line-width: 25px;
    --x-line-height: 3px;
    --x-opacity: 1;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%
}

.rpi-lightbox-wrap {
    z-index: 3
}

.rpi-lightbox {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    max-width: 100%;
    color: #333;
    text-align: left;
    z-index: 2147483003;
    user-select: none;
    background-color: rgba(0,0,0,.6);
    transition: all .3s ease-out
}

.rpi-lightbox-inner {
    width: 95%;
    max-width: 1200px;
    height: 100%;
    max-height: calc(100vh - 80px);
    max-height: calc(100dvh - 80px)
}

@supports (container-type:inline-size) {
    .rpi-lightbox-xxx {
        container-name: lightbox;
        container-type: inline-size
    }
}

.rpi-lightbox-xxx {
    position: relative;
    display: flex;
    justify-content: center;
    height: 100%;
    border: none;
    overflow: auto;
    border-radius: 4px;
    -webkit-overflow-scrolling: touch
}

.rpi-lightbox-content {
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    color: #000;
    height: 100%;
    overflow: hidden;
    border-radius: 4px;
    background-color: #fff
}

.rpi-lightbox-media {
    position: relative;
    display: flex;
    justify-content: center;
    flex: 2;
    align-items: center;
    width: 100%;
    height: 100%;
    overflow: hidden;
    padding-bottom: 0;
    background-color: #000
}

.rpi-lightbox-btn {
    position: absolute;
    display: flex;
    width: 30px;
    height: 30px;
    font-size: 36px;
    line-height: 22px;
    justify-content: center;
    z-index: 1;
    cursor: pointer;
    border-radius: 50%;
    background-color: rgba(214,214,214,.7);
    transition: background .3s ease-in-out
}

.rpi-lightbox-btn:hover {
    background: #e1e1e1
}

.rpi-lightbox-prev {
    left: 8px
}

.rpi-lightbox-next {
    right: 8px
}

.rpi-lightbox-prev::before {
    content: '‹'
}

.rpi-lightbox-next::before {
    content: '›'
}

.rpi-lightbox-media img {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    opacity: 1;
    object-fit: contain;
    border-radius: inherit;
    transition: opacity .3s ease-in-out
}

.rpi-lightbox .rpi-lightbox-review {
    display: flex;
    flex-direction: column;
    flex: 1;
    height: 100%;
    font-size: 15px;
    color: #000;
    padding: 0;
    overflow: hidden;
    overflow-y: auto
}

@supports (container-type:inline-size) {
    @container lightbox (width < 480px) {
        .rpi-lightbox-xxx .rpi-lightbox-content {
            flex-direction: column
        }
    }
}

@media(max-width: 480px) {
    .rpi-lightbox-xxx .rpi-lightbox-content {
        flex-direction:column
    }
}
