.fl-google-reviews{margin:2.25rem 0;padding:1.35rem clamp(1rem,3vw,1.6rem);border:1px solid #d9e2dd;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(29,61,48,.06)}
.fl-google-reviews[hidden]{display:none}
.fl-google-reviews-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.fl-google-reviews-heading h2{margin:.2rem 0 .4rem}
.fl-google-maps-attribution{flex:none;color:#1f1f1f;font:400 14px/1.2 Arial,sans-serif;text-decoration:none;white-space:nowrap}
.fl-google-rating-summary{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem .85rem;margin:.6rem 0 .4rem}
.fl-google-rating-stars{color:#915f00;font-weight:750;font-size:1.1rem}
.fl-google-review-star-glyphs{position:relative;display:inline-block;letter-spacing:.05em;color:#e5e9e6}
.fl-google-review-star-glyphs:before{content:"★★★★★";position:absolute;width:var(--fl-rating);overflow:hidden;color:#b17600;white-space:nowrap}
.fl-google-all-reviews{color:#285c4a;font-weight:650}
.fl-google-review-order{margin:.35rem 0 1rem}
.fl-google-review-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}
.fl-google-review{min-width:0;padding:1rem;border:1px solid #e3e9e5;border-radius:12px;background:#fbfcfb}
.fl-google-review-author{display:flex;align-items:center;gap:.6rem;margin-bottom:.55rem;font-weight:650}
.fl-google-review-author img{width:36px;height:36px;flex:none;border-radius:50%;object-fit:cover;background:#edf1ee}
.fl-google-review-author a{color:#234e3e;text-decoration:none}
.fl-google-review-stars{margin:0;color:#805600;font-size:.92rem;font-weight:700}
.fl-google-review-date{margin:.18rem 0 .55rem;color:#5d6862;font-size:.83rem}
.fl-google-review-text{margin:.45rem 0;white-space:pre-wrap;overflow-wrap:anywhere}
.fl-google-review-translation,.fl-google-review-note{color:#5d6862;font-size:.82rem}
.fl-google-source-link,.fl-google-report-link{display:inline-block;margin:.45rem .9rem 0 0;font-size:.83rem}
.fl-google-review-note{margin:1.1rem 0 .1rem}
@media(max-width:680px){.fl-google-reviews{padding:1rem;border-radius:13px}.fl-google-review-list{grid-template-columns:1fr}.fl-google-rating-summary{align-items:flex-start;flex-direction:column;gap:.3rem}.fl-google-reviews-heading{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){.fl-google-reviews *{scroll-behavior:auto}}

.fl-google-provider-attributions{margin:.75rem 0;color:#5d6862}

.fl-google-maps-attribution img{display:block;height:18px;width:auto;max-width:100%;padding:10px 0 5px}

/* Keep the provider panel aligned with other detail sections; override later generic detail spacing. */
section.fl-google-reviews.detail-section{margin:2.25rem auto;padding:1.35rem clamp(1rem,3vw,1.6rem)}
.fl-google-reviews .fl-google-maps-attribution{padding:10px 0 5px 10px}
.fl-google-reviews .fl-google-maps-attribution img{display:block;height:18px;width:auto;max-width:none;padding:0}
@media(max-width:680px){section.fl-google-reviews.detail-section{padding:1rem}}

/* Quiet, integrated stored-review presentation. */
section.fl-google-reviews.detail-section{margin:2rem auto;padding:1.25rem clamp(1rem,3vw,1.5rem);box-shadow:none;border-color:#e0e6e1;background:#fff}
section.fl-google-reviews #google-reviews-heading{font-family:inherit;font-size:1.05rem;line-height:1.4;font-weight:650;letter-spacing:0;margin:0;color:#294b3b}
.fl-google-reviews .fl-google-reviews-heading{align-items:center;gap:1rem}
.fl-google-reviews-intro,.fl-google-snapshot{color:#657069;font-size:.82rem;line-height:1.5;margin:.4rem 0 .9rem}
.fl-google-reviews .fl-google-rating-summary{font-size:.88rem;margin:.6rem 0 .25rem;gap:.5rem .85rem}
.fl-google-reviews .fl-google-review-list{gap:1rem;margin-top:1rem}
.fl-google-reviews .fl-google-review{padding:1rem;box-shadow:none;border-color:#e3e8e4;background:#fcfdfc}
.fl-google-reviews .fl-google-review-text{font-size:.92rem;line-height:1.65;margin:.65rem 0;white-space:pre-wrap}
.fl-google-reviews .fl-google-review-author{font-size:.88rem;line-height:1.4;margin-bottom:.55rem}
.fl-google-reviews .fl-google-review-date{display:block;font-size:.76rem;line-height:1.5;margin:.35rem 0 .55rem}
.fl-google-reviews img[data-google-author-photo]:not([src]){display:none}
.fl-google-rating-top{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin:.6rem 0 .45rem;font-family:inherit;font-size:.84rem;line-height:1.5}
.fl-google-rating-top[hidden]{display:none}
.fl-google-rating-jump{display:inline-flex;align-items:center;gap:.6rem;flex-wrap:wrap;color:#405348;text-decoration:none}
.fl-google-rating-jump:hover{text-decoration:underline}
.fl-google-rating-count{color:#607067;font-size:.8rem;font-weight:400}
.fl-google-top-attribution{display:inline-flex;align-items:center;padding:10px 0 5px 10px}
.fl-google-top-attribution img{display:block;height:16px;width:auto;max-width:none;padding:0}
.fl-google-stars{display:inline-flex;align-items:center;gap:.4rem;white-space:nowrap;font-family:inherit;font-size:.88rem;line-height:1.4}
.fl-google-star-track{position:relative;display:inline-block;letter-spacing:.08em;color:#d9dfdb;font-size:1.02em}
.fl-google-star-track:before{position:absolute;left:0;top:0;content:'★★★★★';color:#a7731b;width:var(--fl-rating);overflow:hidden;white-space:nowrap}
.fl-google-star-number{color:#35493d;font-weight:650;font-size:.84rem}
.fl-google-review .fl-google-stars{font-size:.78rem}.fl-google-review .fl-google-star-number{font-size:.76rem}
.fl-google-reviews .fl-google-source-link,.fl-google-reviews .fl-google-report-link{font-size:.76rem;line-height:1.5}
@media(max-width:680px){section.fl-google-reviews.detail-section{padding:1rem;margin:1.5rem auto}.fl-google-reviews .fl-google-review-list{gap:.8rem}.fl-google-reviews .fl-google-rating-summary{flex-direction:row;align-items:center;gap:.35rem .65rem}.fl-google-rating-top{gap:.3rem .5rem}.fl-google-rating-jump{gap:.3rem .5rem}}

/* One reviewer per row; full original text stays in the DOM behind local disclosure controls. */
.fl-google-reviews .fl-google-review-list{display:block;margin-top:1rem}
.fl-google-reviews .fl-google-review{display:grid;grid-template-columns:minmax(145px,180px) minmax(0,1fr);gap:1.25rem;border:0;border-bottom:1px solid #e4eae6;border-radius:0;padding:1.15rem 0;background:transparent}
.fl-google-reviews .fl-google-review:last-child{border-bottom:0;padding-bottom:.25rem}
.fl-google-review-meta,.fl-google-review-copy{min-width:0}
.fl-google-reviews .fl-google-review-copy .fl-google-review-text,.fl-google-review-excerpt{font-size:.92rem;line-height:1.65;margin:0 0 .5rem;white-space:pre-wrap;overflow-wrap:anywhere}
.fl-google-review-links{display:flex;flex-wrap:wrap;gap:.25rem 1rem;margin-top:.35rem}
.fl-google-reviews .fl-google-review-links a{margin:0}
.fl-google-review-toggle{display:inline-block;background:none;border:0;padding:.3rem 0;margin:0 0 .2rem;color:#315d49;font-family:inherit;font-size:.79rem;font-weight:600;line-height:1.5;text-decoration:underline;cursor:pointer}
.fl-google-review-toggle:focus-visible{outline:2px solid #315d49;outline-offset:4px;border-radius:2px}
@media(max-width:680px){.fl-google-reviews .fl-google-review{grid-template-columns:minmax(0,1fr);gap:.4rem;padding:1rem 0}.fl-google-review-meta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.15rem .65rem;align-items:center}.fl-google-review-meta .fl-google-review-author{margin:0}.fl-google-review-meta .fl-google-review-date{grid-column:1/-1;margin:.15rem 0 .35rem}.fl-google-review-meta>.fl-google-review-stars{margin:0}}

/* Associate the stored rating directly with the property name; native anchor navigation only. */
.property-title-row:has(>.fl-google-rating-top){justify-content:flex-start;gap:.6rem 1.1rem}
.property-title-row:has(>.fl-google-rating-top)>h1{flex:0 1 auto}
.property-title-row>.fl-google-rating-top{margin:.2rem auto .2rem 0;gap:.25rem}
.fl-google-rating-jump:focus-visible{outline:2px solid #315d49;outline-offset:4px;border-radius:3px}
#google-reviews{scroll-margin-top:6rem}
@media(max-width:680px){.property-title-row:has(>.fl-google-rating-top)>h1{flex-basis:100%}.property-title-row>.fl-google-rating-top{max-width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}

/* One quiet section source link; individual source/report actions remain accessible. */
#google-reviews-heading .fl-google-all-reviews{font:inherit;color:inherit;text-underline-offset:3px;text-decoration-thickness:1px}
.fl-google-reviews-intro:empty{display:none}
.fl-google-review-options{margin-top:.25rem;font-size:.76rem;max-width:100%}
.fl-google-review-options>summary{cursor:pointer;color:#53665b;min-height:32px;display:list-item;list-style:disclosure-closed inside;width:fit-content;padding:.3rem 0;line-height:1.5}
.fl-google-review-options[open]>summary{list-style-type:disclosure-open}
.fl-google-review-options>summary:focus-visible,#google-reviews-heading a:focus-visible{outline:2px solid #315d49;outline-offset:3px;border-radius:2px}
.fl-google-review-options .fl-google-review-links{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;margin:.15rem 0 .4rem;padding-left:.75rem;max-width:100%}
.fl-google-review-options a{overflow-wrap:anywhere;max-width:100%;padding:.2rem 0}

/* Override generic site disclosure padding/borders for compact per-review options. */
.fl-google-reviews details.fl-google-review-options{padding:0;margin:.15rem 0 0;border:0;border-radius:0;background:transparent;box-shadow:none}

/* Direct original-review access lives on the existing date; no extra action row. */
.fl-google-review-date-link{grid-column:1/-1;color:inherit;text-decoration:none;width:fit-content;max-width:100%}
.fl-google-review-date-link:hover{text-decoration:underline;text-underline-offset:3px}
.fl-google-review-date-link:focus-visible{outline:2px solid #315d49;outline-offset:3px;border-radius:2px}

/* Single left-aligned brand attribution is integrated in the small heading link. */
section.fl-google-reviews #google-reviews-heading{font-size:15px;line-height:1.5}
.fl-google-heading-brand{font-family:inherit;font-style:normal;font-weight:400;color:#1f1f1f;white-space:nowrap;letter-spacing:normal;font-size:15px}

/* Harmonize the provider surface with the site's existing warm paper/sage palette. */
section.fl-google-reviews.detail-section{background:linear-gradient(130deg,var(--fl-sage,#eef3e8),var(--paper,#faf8f2) 78%);border:1px solid #d6e0ce;border-radius:var(--radius,16px);box-shadow:0 4px 18px #24483205;padding:clamp(1.1rem,2.2vw,1.65rem);color:var(--ink,#203c32)}
.fl-google-reviews .fl-google-reviews-heading{margin-bottom:.7rem}
.fl-google-reviews .fl-google-rating-summary{width:fit-content;max-width:100%;padding:.35rem .65rem;margin:.2rem 0 .55rem;background:#fffefaad;border:1px solid #dce5d4;border-radius:8px;gap:.45rem .7rem}
.fl-google-reviews .fl-google-snapshot{color:#536253;margin:.25rem 0 .8rem;font-size:.78rem;line-height:1.6}
.fl-google-reviews .fl-google-review-list{margin-top:.75rem}
.fl-google-reviews .fl-google-review{border-bottom-color:#d5dfce;padding:1.1rem 0;gap:1.35rem;background:transparent}
.fl-google-reviews .fl-google-review-author{color:var(--fl-ink,#234b3c);font-weight:600}
.fl-google-reviews .fl-google-review-date{color:#536253}
.fl-google-reviews .fl-google-review-copy{color:#2f4438}
.fl-google-reviews .fl-google-review-toggle{color:var(--green,#214c3d);text-underline-offset:3px}
@media(max-width:680px){.fl-google-reviews .fl-google-review{gap:.45rem;padding:1rem 0}.fl-google-reviews .fl-google-rating-summary{padding:.35rem .55rem;gap:.35rem .6rem}}

/* Keep the single source heading at the right edge of the provider header. */
.fl-google-reviews .fl-google-reviews-heading{justify-content:flex-end;text-align:right}


/* Match the adjacent page paper exactly; retain only quiet source separation. */
section.fl-google-reviews.detail-section{background:var(--paper,#faf8f2);background-image:none;border-color:#e5e7de;box-shadow:none}
.fl-google-reviews .fl-google-rating-summary{background:var(--white,#fffefa);border-color:#e7e9e0}
.fl-google-reviews .fl-google-review{border-bottom-color:#e3e6dc}

/* Current community context directly above its stored aggregate score. */
.fl-google-reviews .fl-google-property-name{margin:0 0 .5rem;font-family:Georgia,"Times New Roman",serif;font-size:22px;font-weight:500;line-height:1.3;letter-spacing:-.015em;color:var(--ink,#203c32);overflow-wrap:anywhere}
@media(max-width:680px){.fl-google-reviews .fl-google-property-name{font-size:20px;margin-bottom:.45rem}}

/* Property name left and single source label right share a baseline and wrap safely. */
.fl-google-reviews .fl-google-reviews-heading{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:.45rem 1rem;text-align:left}
.fl-google-reviews .fl-google-reviews-heading .fl-google-property-name{order:-1;flex:1 1 auto;min-width:0;max-width:100%;margin:0;text-align:left}
.fl-google-reviews .fl-google-reviews-heading>h2{flex:0 0 auto;margin:0 0 0 auto;text-align:right;white-space:nowrap}

/* Whole-list visibility is local and independent of each review's text disclosure. */
.fl-google-review-summary-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.15rem .8rem}
.fl-google-review-summary-row>[data-google-rating]{min-width:0;max-width:100%}
.fl-google-review-toggle-all{display:inline-flex;align-items:center;justify-content:center;min-height:32px;flex:none;margin-left:auto;padding:.2rem .6rem;border:1px solid #dce1d5;border-radius:6px;background:transparent;color:#315d49;font-family:inherit;font-size:.76rem;font-weight:600;line-height:1.5;cursor:pointer}
.fl-google-review-toggle-all:hover{background:var(--white,#fffefa)}
.fl-google-review-toggle-all:focus-visible{outline:2px solid #315d49;outline-offset:3px}
.fl-google-reviews [data-google-review-list][hidden],.fl-google-reviews [data-google-reviews-toggle][hidden]{display:none!important}

/* Per-review hidden nodes stay hidden across responsive and generic paragraph/button styles. */
.fl-google-reviews .fl-google-review-text[hidden],.fl-google-reviews .fl-google-review-excerpt[hidden],.fl-google-reviews .fl-google-review-toggle[hidden]{display:none!important}

/* Keep all cached reviews in SSR; JavaScript reveals the rest on request. */
.fl-google-reviews .fl-google-review[hidden],.fl-google-reviews [data-google-reviews-more][hidden]{display:none!important}
.fl-google-reviews .fl-google-reviews-more{margin:.8rem 0 0;min-height:40px;padding:.35rem .8rem}

/* Detail rating sits below the property title, above its review invitation. */
.property-hero>.fl-google-rating-top{margin:.25rem 0 .5rem;justify-content:flex-start;text-align:left}
.property-hero>.fl-google-rating-top .fl-google-star-number{color:#a63d32}
.property-hero>.fl-google-rating-top .fl-google-star-track:before{color:#a63d32}

/* Integrated resident invitation retains its own site's submission route. */
section.fl-google-reviews.detail-section{margin-top:1rem;padding-top:1.05rem}
.fl-google-reviews .fl-google-reviews-heading{margin-bottom:.25rem}
.fl-google-reviews .fl-google-review-summary-row{align-items:flex-start}
.fl-google-review-header-left{min-width:0}
.fl-google-native-review-invite{margin:0}
.fl-google-native-review-invite .fl-review-invite{font-size:.78rem;min-height:32px}
.fl-google-reviews .fl-google-snapshot{font-size:.72rem;margin:.1rem 0 .35rem;line-height:1.4}
.fl-google-reviews .fl-google-review-list{margin-top:.3rem}
.fl-google-reviews .fl-google-review:first-child{padding-top:.6rem}
@media(max-width:680px){section.fl-google-reviews.detail-section{margin-top:.75rem;padding-top:.9rem}}
