.izzi-reviews {
  --izzi-review-primary: #1769AA;
  --izzi-review-star: #F5B301;
  --izzi-review-text: #17202B;
  --izzi-review-card-background: #FFFFFF;
  --izzi-review-background: #F5F8FB;
  --izzi-review-radius: 12px;
  --izzi-review-shadow: 0 8px 24px rgba(18, 38, 63, 0.08);
  --izzi-review-muted: #5E6B7A;
  --izzi-review-line: #DDE5EC;
  --izzi-review-soft: rgba(255, 255, 255, 0.64);
  background: var(--izzi-review-background);
  border-radius: var(--izzi-review-radius);
  color: var(--izzi-review-text);
  font-family: inherit;
  max-width: 100%;
  padding: clamp(18px, 3vw, 32px);
}

.izzi-reviews *, .izzi-reviews *::before, .izzi-reviews *::after { box-sizing: border-box; }
.izzi-reviews__mock-notice { align-items: center; background: rgba(23, 105, 170, 0.09); border: 1px solid rgba(23, 105, 170, 0.2); border-radius: calc(var(--izzi-review-radius) - 2px); color: var(--izzi-review-primary); display: flex; gap: 10px; margin: 0 0 24px; padding: 10px 12px; }
.izzi-reviews__mock-icon { align-items: center; background: rgba(23, 105, 170, 0.13); border-radius: 50%; display: inline-flex; height: 28px; justify-content: center; width: 28px; }
.izzi-reviews__mock-notice strong, .izzi-reviews__mock-notice small { display: block; }
.izzi-reviews__mock-notice strong { font-size: 13px; }
.izzi-reviews__mock-notice small { font-size: 12px; margin-top: 2px; }
.izzi-reviews__header { align-items: end; border-bottom: 1px solid var(--izzi-review-line); display: flex; gap: 20px; justify-content: space-between; margin-bottom: 22px; padding-bottom: 18px; }
.izzi-reviews__eyebrow { color: var(--izzi-review-primary); font-size: 12px; font-weight: 800; margin: 0 0 6px; text-transform: uppercase; }
.izzi-reviews__title { color: var(--izzi-review-text); font-size: 25px; line-height: 1.2; margin: 0; }
.izzi-reviews__disclosure { color: var(--izzi-review-muted); font-size: 13px; line-height: 1.55; margin: 10px 0 0; max-width: 520px; }
.izzi-reviews__google-link { color: var(--izzi-review-primary); font-weight: 700; text-decoration: underline; text-underline-offset: 2px; }
.izzi-reviews__google-link:hover, .izzi-reviews__google-link:focus { color: var(--izzi-review-text); }
.izzi-reviews__summary { align-items: flex-end; display: flex; flex-direction: column; gap: 5px; }
.izzi-reviews__average { align-items: center; color: var(--izzi-review-muted); display: flex; font-size: 12px; font-weight: 700; gap: 7px; white-space: nowrap; }
.izzi-reviews__stars, .izzi-review-card__stars { display: inline-flex; gap: 2px; }
.izzi-reviews__stars { color: var(--izzi-review-star); font-size: 16px; line-height: 1; }
.izzi-reviews__star--empty, .izzi-review-card__star--empty { color: color-mix(in srgb, var(--izzi-review-text) 22%, transparent); }
.izzi-reviews__count { color: var(--izzi-review-muted); font-size: 12px; font-weight: 700; margin: 0; }
.izzi-reviews__list { display: grid; gap: 16px; grid-template-columns: repeat(auto-fit, minmax(min(100%, 250px), 1fr)); }
.izzi-reviews--columns-2 .izzi-reviews__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.izzi-reviews--columns-3 .izzi-reviews__list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.izzi-review-card { background: var(--izzi-review-card-background); border: 1px solid var(--izzi-review-line); border-radius: var(--izzi-review-radius); box-shadow: var(--izzi-review-shadow); display: flex; flex-direction: column; min-height: 225px; padding: 22px; transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.izzi-review-card:hover { border-color: color-mix(in srgb, var(--izzi-review-primary) 35%, var(--izzi-review-line)); box-shadow: 0 16px 32px rgba(18, 38, 63, 0.14); transform: translateY(-2px); }
.izzi-review-card__rating { min-height: 24px; }
.izzi-review-card__stars { color: var(--izzi-review-star); font-size: 19px; line-height: 1; }
.izzi-review-card__content { color: var(--izzi-review-text); font-size: 15px; line-height: 1.65; margin: 21px 0; }
.izzi-review-card__content::before { color: var(--izzi-review-primary); content: '\201C'; font-size: 26px; font-weight: 800; line-height: 0; margin-right: 3px; vertical-align: -6px; }
.izzi-review-card__footer { align-items: center; display: flex; gap: 10px; margin-top: auto; }
.izzi-review-card__avatar { align-items: center; background: color-mix(in srgb, var(--izzi-review-primary) 13%, var(--izzi-review-card-background)); border: 1px solid color-mix(in srgb, var(--izzi-review-primary) 18%, transparent); border-radius: 50%; color: var(--izzi-review-primary); display: inline-flex; flex: 0 0 38px; font-size: 13px; font-weight: 800; height: 38px; justify-content: center; width: 38px; }
.izzi-review-card__author, .izzi-review-card__footer small { display: block; }
.izzi-review-card__author { color: var(--izzi-review-text); font-size: 14px; line-height: 1.3; }
.izzi-review-card__footer small { color: var(--izzi-review-muted); font-size: 12px; margin-top: 3px; }
.izzi-review-card__sr-only { clip: rect(0, 0, 0, 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.izzi-reviews__state { align-items: center; background: var(--izzi-review-soft); border: 1px solid var(--izzi-review-line); border-radius: var(--izzi-review-radius); color: var(--izzi-review-muted); display: flex; gap: 10px; padding: 17px; }
.izzi-reviews__state i { color: var(--izzi-review-primary); font-size: 18px; }
.izzi-reviews__state p { margin: 0; }
.izzi-reviews__state--waiting { background: linear-gradient(135deg, color-mix(in srgb, var(--izzi-review-card-background) 92%, var(--izzi-review-primary)), var(--izzi-review-soft)); gap: 16px; justify-content: center; min-height: 142px; padding: 28px clamp(20px, 4vw, 44px); text-align: center; }
.izzi-reviews__state-icon { align-items: center; background: color-mix(in srgb, var(--izzi-review-primary) 11%, var(--izzi-review-card-background)); border: 1px solid color-mix(in srgb, var(--izzi-review-primary) 22%, var(--izzi-review-line)); border-radius: 50%; display: inline-flex; flex: 0 0 44px; height: 44px; justify-content: center; width: 44px; }
.izzi-reviews__state-icon i { font-size: 17px; }
.izzi-reviews__state-copy { display: grid; gap: 5px; max-width: 520px; }
.izzi-reviews__state-title { color: var(--izzi-review-text); font-size: 16px; letter-spacing: .01em; }
.izzi-reviews__state-copy p { color: var(--izzi-review-text); font-size: 14px; line-height: 1.5; }
.izzi-reviews__state-copy small { color: var(--izzi-review-muted); font-size: 12px; line-height: 1.55; }
.izzi-reviews--minimal { padding: 0; }
.izzi-reviews--minimal .izzi-reviews__header { margin-bottom: 16px; }
.izzi-reviews--minimal .izzi-review-card { box-shadow: none; min-height: 0; }
.izzi-reviews--minimal .izzi-review-card:hover { box-shadow: none; transform: none; }
.izzi-reviews--compact { padding: 18px; }
.izzi-reviews--compact .izzi-reviews__header { margin-bottom: 16px; padding-bottom: 14px; }
.izzi-reviews--compact .izzi-review-card { min-height: 0; padding: 16px; }
.izzi-reviews--compact .izzi-review-card__content { font-size: 14px; margin: 14px 0; }
.izzireviewgoogle-callback { margin: 32px auto; max-width: 720px; padding: 0 16px; }
@media (max-width: 980px) { .izzi-reviews--columns-3 .izzi-reviews__list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 620px) { .izzi-reviews { padding: 18px; } .izzi-reviews__header { align-items: flex-start; flex-direction: column; } .izzi-reviews__summary { align-items: flex-start; } .izzi-reviews__list, .izzi-reviews--columns-2 .izzi-reviews__list, .izzi-reviews--columns-3 .izzi-reviews__list { grid-template-columns: 1fr; } .izzi-review-card { min-height: 0; } .izzi-reviews__state--waiting { align-items: center; flex-direction: column; } }
@media (prefers-reduced-motion: reduce) { .izzi-reviews *, .izzi-reviews *::before, .izzi-reviews *::after { scroll-behavior: auto; transition-duration: .01ms !important; } }
