.ccrs-rh{--ccrs-rh-accent:#00aeef;position:relative;left:50%;display:grid;grid-template-columns:370px 38px minmax(0,1fr) 38px;align-items:center;gap:10px;width:100vw!important;height:320px!important;min-height:320px!important;max-width:none!important;margin:0 0 0 -50vw!important;padding:26px 3%!important;box-sizing:border-box!important;font-family:inherit;color:#20242c;background:#fff;overflow:hidden}.ccrs-rh-summary{display:flex;align-items:center;gap:14px;min-width:0}.ccrs-rh-business-logo{width:48px!important;height:48px!important;border-radius:50%;object-fit:contain;flex:0 0 auto}.ccrs-rh-summary-copy{display:flex;flex-direction:column;gap:5px;min-width:0}.ccrs-rh-summary-copy>strong{font-size:17px!important;line-height:1.1}.ccrs-rh-name{font-size:16px!important;font-weight:700;color:#1454d1}.ccrs-rh-stars{color:#ff861c;letter-spacing:.3px;white-space:nowrap}.ccrs-rh-summary-copy small{font-size:11px}.ccrs-rh-actions{display:flex;gap:10px;flex-wrap:nowrap;margin-top:6px}.ccrs-rh-actions a{background:#087cf0;color:#fff!important;padding:8px 11px!important;border-radius:7px;text-decoration:none;font-size:12px!important;font-weight:700;white-space:nowrap;box-shadow:0 2px 6px #0002}.ccrs-rh-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 54px)/4);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:5px 2px}.ccrs-rh-track::-webkit-scrollbar{display:none}.ccrs-rh-card{scroll-snap-align:start;background:#f4f4f4;border-radius:11px!important;padding:16px!important;height:268px!important;min-height:268px!important;max-height:268px!important;box-sizing:border-box!important;overflow:hidden!important}.ccrs-rh-card header{display:flex;align-items:center;gap:9px;margin:0 0 10px!important}.ccrs-rh-card header img,.ccrs-rh-avatar{width:42px!important;height:42px!important;border-radius:50%;object-fit:cover;flex:0 0 auto}.ccrs-rh-avatar{display:grid;place-items:center;color:#fff;background:#168d82;font-size:19px}.ccrs-rh-card header div{display:flex;flex-direction:column;min-width:0}.ccrs-rh-card header strong{color:#1454d1;font-size:14px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ccrs-rh-card header small{font-size:11px!important;color:#555;white-space:nowrap}.ccrs-rh-card>p{margin:8px 0 0!important;padding:0 6px 0 0!important;height:145px!important;max-height:145px!important;color:#303846;font-size:15px!important;line-height:1.5!important;display:block;overflow-y:auto!important;scrollbar-width:thin;scrollbar-color:#aaa transparent}.ccrs-rh-card>p::-webkit-scrollbar{width:4px}.ccrs-rh-card>p::-webkit-scrollbar-thumb{background:#aaa;border-radius:6px}.ccrs-rh-source{margin-left:auto;width:16px!important;height:16px!important;display:grid;place-items:center;flex:0 0 auto}.ccrs-rh-svg{display:block;width:100%;height:100%}.ccrs-rh-prev,.ccrs-rh-next{position:relative;z-index:2;border:1px solid #ddd;background:#fff;width:38px!important;height:38px!important;padding:0!important;border-radius:50%;font-size:25px!important;line-height:1;cursor:pointer;box-shadow:0 2px 7px #0002}.ccrs-rh-prev:hover,.ccrs-rh-next:hover{border-color:var(--ccrs-rh-accent);color:var(--ccrs-rh-accent)}.ccrs-rh-badges{display:flex;flex-direction:column;gap:7px}.ccrs-rh-badges>a{width:198px!important;height:78px!important;box-sizing:border-box!important;display:flex;align-items:center;gap:10px;background:#fff;border-top:6px solid var(--ccrs-rh-accent);padding:8px 10px!important;color:#333!important;text-decoration:none;box-shadow:0 3px 11px #0003}.ccrs-rh-badge-logo{width:35px!important;height:35px!important;display:grid;place-items:center;flex:0 0 auto}.ccrs-rh-badges a>span:last-child{display:flex;flex-direction:column;gap:1px}.ccrs-rh-badges strong{font-size:13px!important;line-height:1.15}.ccrs-rh-badges b{color:#ff861c;font-size:12px!important;line-height:1.15;white-space:nowrap}.ccrs-rh-badges .ccrs-rh-stars{font-size:12px!important}.ccrs-rh-badges small{color:#777;font-size:10px!important;white-space:nowrap}.ccrs-rh-floating{position:fixed;right:28px;bottom:28px;z-index:9998}.ccrs-rh-floating-close{position:absolute;z-index:2;right:-6px;top:-6px;width:18px;height:18px;padding:0;border:1px solid var(--ccrs-rh-accent,#00aeef);border-radius:50%;background:#fff;color:#777;font:14px/15px Arial,sans-serif;cursor:pointer}.ccrs-rh-floating .ccrs-rh-badges{max-height:calc(100vh - 70px);overflow:visible}@media(max-width:1250px){.ccrs-rh{grid-template-columns:300px 36px minmax(0,1fr) 36px;padding-left:2%!important;padding-right:2%!important}.ccrs-rh-track{grid-auto-columns:calc((100% - 36px)/3);gap:18px}}@media(max-width:800px){.ccrs-rh{grid-template-columns:34px minmax(0,1fr) 34px;height:auto!important;min-height:0!important;max-height:none!important;padding:20px 12px!important}.ccrs-rh-summary{grid-column:1/-1;justify-content:center;margin-bottom:8px}.ccrs-rh-track{grid-column:2;grid-auto-columns:100%;gap:10px}.ccrs-rh-prev{grid-column:1;grid-row:2}.ccrs-rh-next{grid-column:3;grid-row:2}.ccrs-rh-card{height:268px!important;min-height:268px!important}.ccrs-rh-floating{right:8px;bottom:12px}.ccrs-rh-badges>a{width:198px!important}}
@media(min-width:1251px){.ccrs-rh{grid-template-columns:287px 38px minmax(0,1fr) 38px;margin:-19px 0 -19px -50vw!important;padding-left:5.25%!important}}
.ccrs-rh-badges>a{gap:8px!important;padding:5px 7px!important}.ccrs-rh-badge-logo{width:43px!important;height:43px!important}.ccrs-rh-badges a>span:last-child{gap:1px}.ccrs-rh-badges strong{font-size:16px!important;line-height:1.15!important}.ccrs-rh-badges b{font-size:14px!important;line-height:1.15!important}.ccrs-rh-badges .ccrs-rh-stars{font-size:14px!important;letter-spacing:0}.ccrs-rh-badges small{font-size:12px!important;line-height:1.15!important}.ccrs-rh-floating-close{right:-5px;top:-5px;width:16px;height:16px;border-color:#d2d2d2!important;color:#aaa!important;font:13px/13px Arial,sans-serif!important}
.ccrs-rh-summary{align-items:flex-start!important}.ccrs-rh-prev,.ccrs-rh-next{width:34px!important;height:34px!important;font-size:23px!important}.ccrs-rh-badges>a{height:80px!important;border-top-width:7px!important;border-top-color:#49c96a!important}.ccrs-rh-badge-logo{overflow:visible}.ccrs-rh-badge-logo .ccrs-rh-svg{width:51px!important;height:51px!important;max-width:none!important}.ccrs-rh-badges small{font-size:13px!important}.ccrs-rh-floating-close{border-color:#d8d8d8!important;color:#aaa!important}@media(min-width:1251px){.ccrs-rh{grid-template-columns:306px 38px minmax(0,1fr) 38px}.ccrs-rh-prev{transform:translateX(23px)}.ccrs-rh-next{transform:translateX(-6px)}}
.ccrs-rh-stars{font-size:20px!important;line-height:1!important;letter-spacing:1px!important}.ccrs-rh-summary{transform:translateY(-3px)}.ccrs-rh-summary-copy{transform:translateY(-2px)}.ccrs-rh-review-total{display:flex;align-items:center;gap:6px}.ccrs-rh-summary-sources{display:inline-flex;align-items:center;gap:3px}.ccrs-rh-summary-sources>span{display:inline-block;width:15px;height:15px}.ccrs-rh-actions a{padding:6px 11px!important}.ccrs-rh-action-google{display:inline-block;width:17px;height:17px;margin-left:3px;vertical-align:middle}.ccrs-rh-action-google .ccrs-rh-svg{width:17px!important;height:17px!important}.ccrs-rh-card{height:260px!important;min-height:260px!important;max-height:260px!important;transform:translateY(-3px)}.ccrs-rh-card header{position:relative;align-items:center;gap:14px!important;margin:0 0 22px!important}.ccrs-rh-card header div{gap:8px}.ccrs-rh-card header small{font-size:12px!important;line-height:1!important}.ccrs-rh-card-rating{display:block;height:21px;line-height:1}.ccrs-rh-card .ccrs-rh-source{position:absolute;right:0;top:0;margin:0!important}.ccrs-rh-card>p{margin:0!important;height:140px!important;max-height:140px!important}.ccrs-rh-recommends{display:flex;align-items:center;gap:5px;color:#222;font-size:15px;line-height:18px;white-space:nowrap}.ccrs-rh-recommends i{position:relative;display:inline-grid;place-items:center;width:18px;height:18px;border-radius:3px;background:#ff4050;color:#fff;font:normal 13px/18px Arial,sans-serif}.ccrs-rh-recommends i:after{content:"";position:absolute;left:4px;bottom:-4px;border-width:4px 4px 0 0;border-style:solid;border-color:#ff4050 transparent transparent transparent}.ccrs-rh-badges strong{font-weight:400!important}.ccrs-rh-badges .ccrs-rh-stars{font-size:20px!important;letter-spacing:1px!important}.ccrs-rh-badges a>span:last-child{gap:0!important}
.ccrs-rh-stars{font-size:25px!important}.ccrs-rh-summary-copy>div .ccrs-rh-stars{margin-left:8px}.ccrs-rh-actions a{padding-top:4px!important;padding-bottom:4px!important}.ccrs-rh-track{width:calc(100% + 20px)!important;grid-auto-columns:calc((100% - 63px)/4)!important;gap:21px!important}.ccrs-rh-card{background:#f5f5f5!important}.ccrs-rh-card header{margin-bottom:12px!important}.ccrs-rh-card header>div{gap:11px!important;transform:translateY(-3px)}.ccrs-rh-card>p{color:#262626!important;font-size:16px!important}.ccrs-rh-badges>a{height:78px!important;border-top-color:#4fce6a!important}.ccrs-rh-badges a>span:last-child{margin-left:3px}.ccrs-rh-badges .ccrs-rh-stars{font-size:25px!important}.ccrs-rh-badges small{font-size:13px!important}
.ccrs-rh-summary-copy>strong{color:#1454d1!important}.ccrs-rh-summary-copy>div:first-of-type{transform:translateY(-3px)}.ccrs-rh-summary-copy>div:first-of-type b{color:#ff861c!important}.ccrs-rh-summary-copy>div:first-of-type .ccrs-rh-stars{font-size:26px!important}.ccrs-rh-review-total{color:#777!important;font-size:13px!important;transform:translateY(-3px)}.ccrs-rh-actions{gap:12px!important;transform:translateX(-24px)}.ccrs-rh-actions a{display:flex!important;align-items:center;justify-content:center;height:29px!important;padding:0 8px!important;box-sizing:border-box!important;font-size:13px!important}.ccrs-rh-actions a:first-child{width:109px!important}.ccrs-rh-actions a:last-child{width:111px!important}.ccrs-rh-badge-logo .ccrs-rh-svg{width:48px!important;height:48px!important}.ccrs-rh-badges strong{color:#333!important}.ccrs-rh-badges .ccrs-rh-stars{font-size:24px!important}
.ccrs-rh-summary-copy>strong,.ccrs-rh-name{font-weight:700!important}.ccrs-rh-summary-copy>div:first-of-type b{font-size:20px!important;line-height:1!important}.ccrs-rh-review-total{font-size:16px!important;line-height:1.2!important}


/* v1.1.4 — Remtech/CRS visual parity hard locks. Keep these last so Avada/site CSS cannot soften them. */
html body .ccrs-rh .ccrs-rh-summary-copy > strong,
html body .ccrs-rh .ccrs-rh-summary-copy > .ccrs-rh-name {
    font-weight: 800 !important;
}

/* Floating Google/Facebook badge: match the CRS reference badge geometry and typography. */
html body .ccrs-rh-floating .ccrs-rh-badges > a {
    width: 198px !important;
    height: 78px !important;
    border-top-width: 6px !important;
    border-top-color: #4fce6a !important;
    gap: 8px !important;
    padding: 5px 7px !important;
}
html body .ccrs-rh-floating .ccrs-rh-badge-logo {
    width: 43px !important;
    height: 43px !important;
}
html body .ccrs-rh-floating .ccrs-rh-badge-logo .ccrs-rh-svg {
    width: 48px !important;
    height: 48px !important;
    max-width: none !important;
}
html body .ccrs-rh-floating .ccrs-rh-badges a > span:last-child {
    gap: 1px !important;
    margin-left: 3px !important;
}
html body .ccrs-rh-floating .ccrs-rh-badges strong {
    font-size: 16px !important;
    line-height: 1.15 !important;
    font-weight: 400 !important;
}
html body .ccrs-rh-floating .ccrs-rh-badges b {
    font-size: 14px !important;
    line-height: 1.15 !important;
}
html body .ccrs-rh-floating .ccrs-rh-badges .ccrs-rh-stars {
    font-size: 20px !important;
    line-height: 1 !important;
    letter-spacing: 1px !important;
}
html body .ccrs-rh-floating .ccrs-rh-badges small {
    font-size: 12px !important;
    line-height: 1.15 !important;
}
html body .ccrs-rh-floating-close {
    right: -5px !important;
    top: -5px !important;
    width: 16px !important;
    height: 16px !important;
    border-color: #d8d8d8 !important;
    color: #aaa !important;
    font: 13px/13px Arial,sans-serif !important;
}


/* v1.1.5 — pixel-match the Remtech floating Google badge to the Carpet Removal Sydney reference. */
html body .ccrs-rh-floating .ccrs-rh-badges > a {
    width: 196px !important;
    height: 78px !important;
    border-top-width: 6px !important;
    border-top-color: #4fce6a !important;
    padding: 5px 7px !important;
    gap: 8px !important;
    font-family: Arial, Helvetica, sans-serif !important;
}
html body .ccrs-rh-floating .ccrs-rh-badges a > span:last-child {
    margin-left: 3px !important;
    gap: 1px !important;
    font-family: Arial, Helvetica, sans-serif !important;
}
html body .ccrs-rh-floating .ccrs-rh-badges strong {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 16px !important;
    line-height: 1.15 !important;
    font-weight: 400 !important;
}
html body .ccrs-rh-floating .ccrs-rh-badges b {
    display: flex !important;
    align-items: center !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.15 !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
}
html body .ccrs-rh-floating .ccrs-rh-badges b .ccrs-rh-stars {
    display: inline-block !important;
    margin-left: 4px !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 20px !important;
    line-height: 1 !important;
    letter-spacing: 5px !important;
    font-weight: 400 !important;
}
html body .ccrs-rh-floating .ccrs-rh-badges small {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.15 !important;
    font-weight: 400 !important;
    color: #777 !important;
}

/* Main review-summary parity: force the two-line "Excellent / Business Name" block to read as true bold. */
html body .ccrs-rh .ccrs-rh-summary-copy > strong,
html body .ccrs-rh .ccrs-rh-summary-copy > .ccrs-rh-name {
    font-family: Arial, Helvetica, sans-serif !important;
    font-weight: 700 !important;
    -webkit-text-stroke: 0.15px currentColor;
}

/* v1.1.8 — exact CRS floating-badge rating-row geometry.
   Keep 5.0 and the five stars as one compact horizontal run. The previous
   versions over-spaced the stars, which made the star group read as a
   separate row even though the flex boxes were technically centred. */
html body .ccrs-rh-floating .ccrs-rh-badges b {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 4px !important;
    height: 20px !important;
    min-height: 20px !important;
    line-height: 20px !important;
    white-space: nowrap !important;
}
html body .ccrs-rh-floating .ccrs-rh-badges .ccrs-rh-rating-number {
    display: inline-flex !important;
    align-items: center !important;
    flex: 0 0 auto !important;
    height: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 14px !important;
    line-height: 20px !important;
    vertical-align: middle !important;
    position: static !important;
    top: auto !important;
    transform: none !important;
}
html body .ccrs-rh-floating .ccrs-rh-badges b .ccrs-rh-stars {
    display: inline-flex !important;
    align-items: center !important;
    flex: 0 0 auto !important;
    height: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 21.5px !important;
    line-height: 20px !important;
    letter-spacing: 2px !important;
    white-space: nowrap !important;
    vertical-align: middle !important;
    position: static !important;
    top: auto !important;
    transform: none !important;
}


/* v1.1.9 — mobile parity with the Carpet Removal Sydney reference.
   A late desktop track rule in earlier builds was overriding the mobile 100%
   card width, which squeezed four review cards into the phone viewport.
   On mobile, use one full-width card and overlay the arrows at the edges. */
@media (max-width:800px) {
    html body .ccrs-rh {
        grid-template-columns:minmax(0,1fr) !important;
        grid-template-rows:auto auto !important;
        column-gap:0 !important;
        row-gap:10px !important;
        padding:20px 14px 24px !important;
    }

    html body .ccrs-rh .ccrs-rh-summary {
        grid-column:1 !important;
        grid-row:1 !important;
        justify-content:center !important;
        width:100% !important;
        margin:0 0 8px !important;
    }

    /* CRS mobile reference: action buttons sit slightly right of the text start. */
    html body .ccrs-rh .ccrs-rh-actions {
        transform:translateX(18px) !important;
    }

    html body .ccrs-rh .ccrs-rh-track {
        grid-column:1 !important;
        grid-row:2 !important;
        width:100% !important;
        max-width:100% !important;
        grid-auto-columns:100% !important;
        gap:10px !important;
        padding:5px 2px !important;
        box-sizing:border-box !important;
    }

    html body .ccrs-rh .ccrs-rh-card {
        width:100% !important;
        min-width:0 !important;
        max-width:none !important;
    }

    html body .ccrs-rh .ccrs-rh-prev,
    html body .ccrs-rh .ccrs-rh-next {
        grid-column:1 !important;
        grid-row:2 !important;
        align-self:center !important;
        position:relative !important;
        z-index:3 !important;
    }

    html body .ccrs-rh .ccrs-rh-prev {
        justify-self:start !important;
        transform:translateX(-14px) !important;
    }

    html body .ccrs-rh .ccrs-rh-next {
        justify-self:end !important;
        transform:translateX(14px) !important;
    }
}


/* v1.1.10 — mobile review-summary centring.
   Centre the complete logo + rating/CTA group in the white mobile panel,
   matching the approved Remtech position without changing the carousel. */
@media (max-width:800px) {
    html body .ccrs-rh .ccrs-rh-summary {
        justify-content:center !important;
    }
}


/* v1.1.11 — exact mobile summary position from the approved IMAGE 2 reference.
   The previous build centred the flex container mathematically, but the CTA row's
   positive transform made the group look visibly right-heavy. At the supplied
   mobile viewport the approved reference places the logo/text group ~4 CSS px to
   the right of v1.1.10, while the CTA row sits ~54 CSS px further left than the
   v1.1.10 CTA position. Preserve the existing -3px vertical summary adjustment. */
@media (max-width:800px) {
    html body .ccrs-rh .ccrs-rh-summary {
        justify-content:center !important;
        transform:translate(4px,-3px) !important;
    }

    html body .ccrs-rh .ccrs-rh-actions {
        transform:translateX(-36px) !important;
    }
}
