/* Floridian Luxe — Google customer reviews via Trustindex (v1.6.7). */
.fl-reviews-section {
  position: relative;
  isolation: isolate;
  overflow: clip;
  background: linear-gradient(145deg, #fff 0%, #f5f8fc 54%, #eef4f9 100%);
  border-top: 1px solid #e2eaf2;
  padding: clamp(64px, 7.5vw, 110px) 0;
  color: #10274b;
}
.fl-reviews-section::before {
  content: '';
  position: absolute;
  width: min(48vw, 620px);
  aspect-ratio: 1;
  border-radius: 50%;
  right: -210px;
  top: -300px;
  border: 85px solid rgba(44, 93, 145, .035);
  pointer-events: none;
  z-index: -1;
}
.fl-reviews-container { max-width: 1360px; }
.fl-reviews-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(24px, 6vw, 90px);
  margin: 0 0 clamp(24px, 4vw, 44px);
}
.fl-reviews-copy { max-width: 730px; }
.fl-reviews-kicker {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 20px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .18em;
  color: #c6273a;
}
.fl-reviews-kicker-line { display: block; width: 30px; height: 2px; background: currentColor; }
.fl-reviews-heading h2 {
  font-family: var(--display, 'Manrope', Arial, sans-serif);
  font-size: clamp(34px, 4vw, 56px);
  font-weight: 800;
  line-height: 1.08;
  letter-spacing: -.055em;
  color: #10274b;
  margin: 0 0 18px;
  overflow-wrap: anywhere;
}
.fl-reviews-intro {
  margin: 0;
  max-width: 570px;
  font-size: clamp(14px, 1.25vw, 17px);
  color: #586d82;
  line-height: 1.75;
}
.fl-reviews-decor {
  flex: none;
  width: clamp(88px, 10vw, 148px);
  height: clamp(88px, 10vw, 148px);
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #fff;
  border: 1px solid #e3ecf4;
  box-shadow: 0 18px 45px rgba(16,39,75,.06);
}
.fl-reviews-decor span {
  height: 70px;
  font: 800 112px/1 Georgia, 'Times New Roman', serif;
  color: #c6273a;
  opacity: .87;
}
.fl-reviews-widget-shell {
  width: 100%;
  min-width: 0;
  border-radius: 24px;
  padding: clamp(18px, 3vw, 38px);
  background: rgba(255,255,255,.91);
  border: 1px solid #e0e9f2;
  box-shadow: 0 22px 64px rgba(16,39,75,.085);
}
/* Only adjust the outer widget width: Trustindex keeps control of its own markup. */
.fl-reviews-widget-shell > * { max-width: 100%; }
.fl-reviews-admin-hint {
  padding: 24px;
  background: #f4f8fd;
  border: 1px dashed #9dbbd2;
  border-radius: 14px;
  font-size: 14px;
  line-height: 1.65;
  color: #254564;
}
.fl-reviews-admin-hint p { margin: 8px 0 0; }
.fl-reviews-admin-hint code { padding: 2px 5px; background: #fff; white-space: normal; overflow-wrap: anywhere; }
@media (max-width: 768px) {
  .fl-reviews-section { padding: 60px 0; }
  .fl-reviews-heading { gap: 18px; }
  .fl-reviews-decor { width: 78px; height: 78px; }
  .fl-reviews-decor span { font-size: 70px; height: 45px; }
  .fl-reviews-widget-shell { padding: 18px; border-radius: 18px; }
}
@media (max-width: 480px) {
  .fl-reviews-heading { display: block; }
  .fl-reviews-decor { display: none; }
  .fl-reviews-kicker { font-size: 10px; }
  .fl-reviews-widget-shell { padding: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .fl-reviews-section *, .fl-reviews-section *::before, .fl-reviews-section *::after { scroll-behavior: auto !important; }
}
