/* BRAVO GOOGLE REVIEWS — shortcode [bravo_google_reviews] */

.bgr {
    --bgr-bg:         #FFFFFF;
    --bgr-text:       #2D2A6E;   /* Bravo navy */
    --bgr-muted:      #9CA3AF;
    --bgr-star:       #FBBC04;   /* Google star yellow */
    --bgr-star-empty: #D1D5DB;
    --bgr-radius:     16px;
    --bgr-shadow:     0 6px 24px rgba(17, 24, 39, .14);
    --bgr-focus:      #6D28D9;

    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 14px 20px;
    background: var(--bgr-bg);
    border-radius: var(--bgr-radius);
    box-shadow: var(--bgr-shadow);
    color: var(--bgr-text);
    font-family: inherit;                       /* theme typeface */
    font-size: var(--bgr-font-size, 1em);       /* theme size unless set in the settings */
    line-height: 1;
    text-decoration: none !important;
    white-space: nowrap;
    max-width: 100%;
    box-sizing: border-box;
    transition: transform .2s ease, box-shadow .2s ease;
}

a.bgr:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 30px rgba(17, 24, 39, .2);
}

a.bgr:focus-visible {
    outline: 3px solid var(--bgr-focus);
    outline-offset: 3px;
}

/* Google logo: "G" icon (default) or wordmark */
.bgr__g {
    display: block;
    flex-shrink: 0;
    width: var(--bgr-logo-size, 18px);
    height: var(--bgr-logo-size, 18px);
}

.bgr__google {
    font-family: 'Product Sans', 'Google Sans', Arial, Helvetica, sans-serif;
    font-size: calc(var(--bgr-logo-size, 18px) * 1.15);
    font-weight: 500;
    letter-spacing: -.02em;
}
.bgr__g-b { color: #4285F4; }
.bgr__g-r { color: #EA4335; }
.bgr__g-y { color: #FBBC05; }
.bgr__g-g { color: #34A853; }

.bgr__score {
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}

/* Stars: grey base + yellow layer clipped to the rating (supports half stars); sized with the text */
.bgr__stars {
    position: relative;
    display: inline-block;
    width: 6em;
    height: 1.2em;
    flex-shrink: 0;
}
.bgr__stars svg {
    display: block;
    width: 6em;
    height: 1.2em;
}
.bgr__stars-base svg { fill: var(--bgr-star-empty); }
.bgr__stars-fill {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: var(--bgr-fill, 100%);
    overflow: hidden;
}
.bgr__stars-fill svg { fill: var(--bgr-star); }

.bgr__count {
    font-size: .95em;
    font-weight: 500;
    font-variant-numeric: tabular-nums;
}
.bgr__count strong { font-weight: 700; }

.bgr__chevron {
    flex-shrink: 0;
    color: var(--bgr-muted);
    transition: transform .2s ease, color .2s ease;
}
a.bgr:hover .bgr__chevron {
    transform: translateX(3px);
    color: var(--bgr-text);
}

@media (max-width: 400px) {
    .bgr { gap: 7px; padding: 11px 13px; font-size: calc(var(--bgr-font-size, 1em) * .85); }
    .bgr__g { width: calc(var(--bgr-logo-size, 18px) * .85); height: calc(var(--bgr-logo-size, 18px) * .85); }
    .bgr__chevron { width: 14px; height: 14px; }
}

/* very small phones: the stars already show the rating, drop the number to fit */
@media (max-width: 340px) {
    .bgr__score { display: none; }
}

@media (prefers-reduced-motion: reduce) {
    .bgr, .bgr__chevron { transition: none; }
    a.bgr:hover { transform: none; }
    a.bgr:hover .bgr__chevron { transform: none; }
}
