/* Lawn Gurus Reviews — front-end styles */
.lgr-wrap, .lgr-form-wrap, .lgr-product-reviews, .lgr-rating-inline { --lgr-green:#16301d; --lgr-accent:#46873a; --lgr-star:#e7a900; --lgr-bd:#e3e6e1; --lgr-muted:#6b746c; }
.lgr-wrap { max-width:900px; margin:0 auto; }
.lgr-intro { color:var(--lgr-muted); margin:0 0 1rem; }

/* Summary */
.lgr-summary { display:flex; align-items:center; gap:.6rem; flex-wrap:wrap; margin:0 0 1rem; padding:.75rem 1rem; background:#f6f8f5; border:1px solid var(--lgr-bd); border-radius:10px; }
.lgr-summary__avg { font-size:1.7rem; font-weight:800; color:var(--lgr-green); line-height:1; }
.lgr-summary__count { color:var(--lgr-muted); font-size:.95rem; }

/* Stars */
.lgr-stars { display:inline-flex; gap:1px; }
.lgr-star { color:#d6d8d3; font-size:1.05rem; line-height:1; }
.lgr-star--on { color:var(--lgr-star); }

/* Filter */
.lgr-filter { display:flex; align-items:center; gap:.5rem; margin:0 0 1.25rem; }
.lgr-filter label { font-weight:600; color:var(--lgr-green); }
.lgr-filter select { padding:.5rem .6rem; border:1px solid var(--lgr-bd); border-radius:8px; background:#fff; min-width:240px; max-width:100%; }

/* List + cards */
.lgr-list { list-style:none; margin:0; padding:0; display:grid; gap:1rem; }
.lgr-card { border:1px solid var(--lgr-bd); border-radius:12px; padding:1rem 1.1rem; background:#fff; box-shadow:0 1px 2px rgba(20,40,25,.04); }
.lgr-card.lgr-hidden, .lgr-card.lgr-clipped { display:none; }
.lgr-card__head { display:flex; align-items:center; gap:.5rem; margin-bottom:.4rem; }
.lgr-card__rating { font-weight:700; color:var(--lgr-green); font-size:.9rem; }
.lgr-card__body { color:#27302a; line-height:1.55; }
.lgr-card__body p { margin:0 0 .5rem; }
.lgr-card__meta { display:flex; flex-wrap:wrap; align-items:center; gap:.4rem .9rem; margin-top:.6rem; font-size:.85rem; color:var(--lgr-muted); }
.lgr-card__name { font-weight:700; color:var(--lgr-green); }
.lgr-card__verified { color:var(--lgr-accent); font-weight:600; }
.lgr-card__product { margin-left:auto; background:#eef3ea; color:#3a5a37; padding:.1rem .55rem; border-radius:999px; font-size:.78rem; }

.lgr-empty { color:var(--lgr-muted); padding:1rem 0; }

/* Load more */
.lgr-more-wrap { text-align:center; margin-top:1.25rem; }
.lgr-more { background:#fff; border:1.5px solid var(--lgr-accent); color:var(--lgr-accent); font-weight:700; padding:.6rem 1.4rem; border-radius:8px; cursor:pointer; }
.lgr-more:hover { background:var(--lgr-accent); color:#fff; }

/* ---- Submission form ---- */
.lgr-form-wrap { max-width:760px; margin:0 auto; }
.lgr-form__heading { color:var(--lgr-green); margin:0 0 1rem; }
.lgr-form { display:block; }
.lgr-form__row { display:grid; grid-template-columns:1fr 1fr; gap:14px; align-items:start; align-content:start; }
.lgr-form__row .lgr-field { min-width:0; }
.lgr-field { margin:0 0 1rem; display:flex; flex-direction:column; align-items:stretch; height:auto; min-height:0; }
.lgr-field label { font-weight:600; color:var(--lgr-green); margin-bottom:.3rem; }
.lgr-field input, .lgr-field select, .lgr-field textarea { padding:.6rem .7rem; border:1px solid var(--lgr-bd); border-radius:8px; font:inherit; background:#fff; width:100%; }
.lgr-field textarea { resize:vertical; }
.lgr-req { color:#b3261e; }
.lgr-submit { background:var(--lgr-accent); color:#fff; border:0; font-weight:700; padding:.7rem 1.6rem; border-radius:8px; cursor:pointer; font-size:1rem; }
.lgr-submit:hover { background:#3a6f30; }

/* Honeypot — visually + screen-reader hidden, still in the DOM for bots. */
.lgr-hp { position:absolute !important; left:-9999px !important; width:1px; height:1px; overflow:hidden; }

/* Notices */
.lgr-notice { padding:.75rem 1rem; border-radius:8px; margin:0 0 1rem; }
.lgr-notice--ok { background:#e7f4e4; border:1px solid #bcdcb2; color:#2f5a2a; }
.lgr-notice--err { background:#fbeae8; border:1px solid #f0c4be; color:#8a2a1f; }

@media (max-width:600px){ .lgr-form__row{ grid-template-columns:1fr; gap:0; } }

/* Auto product-page block */
.lgr-product-reviews { margin-top:2.5rem; padding-top:1.5rem; border-top:1px solid var(--lgr-bd); align-self:flex-start; width:100%; }
.lgr-product-reviews__heading { color:var(--lgr-green); margin:0 0 1.2rem; }
.lgr-product-reviews .lgr-form-wrap { margin-top:2rem; }

/* Compact inline rating (under price) */
.lgr-rating-link { text-decoration:none; display:inline-block; }
.lgr-rating-inline { display:inline-flex; align-items:center; gap:8px; margin:4px 0 0; }
.lgr-rating-inline .lgr-star { font-size:1.15rem; }
.lgr-rating-inline__num { font-weight:500; color:#16301d; }
.lgr-rating-inline__count { color:#6b746c; font-size:.9rem; }
.lgr-rating-link:hover .lgr-rating-inline__count { text-decoration:underline; }

/* Stars appended under the product price */
.lgr-price-stars { display:block; text-decoration:none; margin:6px 0 0; }
.lgr-price-stars .lgr-rating-inline { display:inline-flex; align-items:center; gap:6px; }
.lgr-price-stars:hover .lgr-rating-inline__count { text-decoration:underline; }

/* Compact rating on product cards (archive/related) */
.lgr-loop-stars { display:block; margin:4px 0 0; }
.lgr-loop-stars .lgr-rating-inline { display:inline-flex; align-items:center; gap:6px; }

/* Mobile: keep the inline rating from overflowing the price column */
@media (max-width:782px){
  .lgr-price-stars, .lgr-loop-stars { flex-wrap:wrap; }
  .lgr-price-stars .lgr-rating-inline, .lgr-loop-stars .lgr-rating-inline { flex-wrap:wrap; }
  .lgr-product-reviews .lgr-card__product { margin-left:0; }
  .lgr-summary { gap:.4rem; }
}

/* Mobile safety */
@media (max-width:600px){
  .lgr-product-reviews { margin-top:1.5rem; padding-top:1rem; }
  .lgr-summary { padding:.6rem .75rem; }
  .lgr-card__product { margin-left:0; }
  .lgr-price-stars, .lgr-loop-stars { font-size:.95rem; }
  .lgr-form__heading, .lgrc-heading { font-size:1.4rem; }
}

/* ---------------------------------------------------------------
 * Avada product-layout fix (global, all product ranges):
 * The product summary column has Avada's "Sticky" column setting on.
 * On phones the columns stack full-width, and a sticky column stays
 * pinned and overlaps the calculator/payment content below it.
 * Disable column stickiness on small screens where columns stack.
 * ------------------------------------------------------------- */
@media (max-width: 640px) {
  .fusion-layout-column.awb-sticky-small,
  .fusion-layout-column.awb-sticky {
    position: static !important;
    top: auto !important;
  }
}
