/* =========================
   Bewertungen – Grundlayout
   ========================= */
   .section--reviews{
    background: var(--sage-50);
    border-top: 1px solid var(--border);
  }
  
  /* Summary-Kasten oben */
  .reviews-summary{
    display:flex; align-items:center; justify-content:space-between; gap:1rem;
    padding:1rem; background:#fff; border:1px solid var(--border);
    border-radius:var(--r); box-shadow:var(--shadow-sm); margin-bottom:1.1rem;
  }
  .reviews-summary .score{ display:flex; align-items:center; gap:1rem; flex-wrap:wrap; }
  .reviews-summary .avg{ font-size:2rem; font-weight:800; color:var(--primary-green); line-height:1; }
  .reviews-summary .stars{ font-size:1.25rem; letter-spacing:2px; color:#2e4820; opacity:.9; }
  .reviews-summary .count{ color:var(--muted); }
  .reviews-summary .badge{
    background:#eaf4e4; color:#2e4820; border:1px solid #d6e6cd;
    padding:.25rem .5rem; border-radius:999px; font-size:.82rem; font-weight:600;
  }
  
  /* Zwei Spalten: links Featured (mit 1–3 Karten), rechts Formular */
  .reviews-body{
    display:grid; grid-template-columns:1.1fr .9fr;
    gap:clamp(16px,3vw,28px); align-items:start;
  }
  @media (max-width:980px){
    .reviews-body{ grid-template-columns:1fr; }
  }
  
  /* =========================
     Karten – einheitlicher Stil
     ========================= */
  .review, .review-card, .review--featured{
    background:#fff; border:1px solid var(--border); border-radius:16px;
    box-shadow:0 8px 24px rgba(35,51,35,.08);
  }
  
  /* Normale Liste (optional, unten) */
  .reviews-list{
    display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-bottom:1.2rem;
  }
  @media (max-width:980px){ .reviews-list{ grid-template-columns:1fr; } }
  .reviews-list[hidden]{ display:none !important; }
  
  /* Einzelkarte (wird für Featured-Karten genutzt) */
  .review-card{ padding:16px 18px; opacity:0; transform:translateY(8px);
    transition:opacity .6s ease, transform .6s ease;
  }
  .review-card.fade-in{ opacity:1; transform:translateY(0); }
  
  /* Kopfzeile innerhalb einer Karte */
  .review-card .r-head, .review .r-head{
    display:grid; grid-template-columns:40px 1fr; gap:10px; align-items:center; margin-bottom:10px;
  }
  .review-card .avatar, .review .avatar{
    width:40px; height:40px; border-radius:50%; display:grid; place-items:center; font-weight:700;
    background:#d9e8cf; color:#1b3a1b; border:1px solid rgba(20,50,20,.06);
  }
  .review-card .stars, .review .stars{ font-size:.95rem; letter-spacing:2px; }
  .review p, .review-card p{ color:#2c3a2c; }
  
  /* =========================
     Featured-Bereich (links)
     ========================= */
  .review--featured{
    padding:clamp(16px,2.4vw,22px); position:relative; margin-bottom:.3rem;
    box-shadow:0 8px 24px rgba(35,51,35,.10);
  }
  /* zarte Anführungszeichen */
  .review--featured::before{
    content:"“"; position:absolute; inset:auto 12px 8px auto;
    font-size:72px; line-height:1; color:rgba(31,45,31,.08); font-weight:800; pointer-events:none;
  }
  
  /* Container der 1–3 Karten im Featured-Bereich: VERTIKAL stapeln */
  .review-cards{
    display:flex; flex-direction:column; gap:14px;
  }
  
  /* Dots unter dem Featured-Rotator */
  .review-dots{ display:flex; justify-content:center; gap:8px; margin-top:12px; }
  .review-dots button{
    width:8px; height:8px; border-radius:999px; border:0; cursor:pointer;
    background:rgba(27,58,27,.25);
  }
  .review-dots button[aria-current="true"]{ background:#1b3a1b; width:24px; }
  
  /* =========================
     Formular (rechts)
     ========================= */
  .review-form{
    background:#fff; border:1px solid var(--border); border-radius:var(--r);
    padding:1rem; box-shadow:var(--shadow-sm);
  }
  .review-form h3{ margin:0 0 .6rem; color:#1f2d1f; }
  
  .stars-input-label{ display:block; margin-bottom:.25rem; color:#334233; }
  .stars-input{ display:inline-flex; flex-direction:row-reverse; gap:.15rem; }
  .stars-input input{ position:absolute; left:-9999px; }
  .stars-input label{
    font-size:1.4rem; cursor:pointer; color:#cfd9cf; transition:transform .08s;
  }
  .stars-input label:hover, .stars-input label:hover ~ label{ color:#8fb48f; }
  .stars-input input:checked ~ label{ color:#2e4820; }
  .stars-input label:active{ transform:scale(.95); }
  
  .review-form input, .review-form textarea{
    width:100%; padding:.75rem .85rem; border:1px solid var(--border); border-radius:12px;
    margin:.4rem 0 .8rem; font:inherit;
  }
  .review-form .form-actions{ display:flex; align-items:center; gap:.8rem; }
  .review-form .form-hint{ color:#5b695b; }
  .review-form .form-note{ margin-top:.4rem; }
  