.hh-product-reviews{margin:3rem 0 1rem;padding:clamp(1rem,3vw,2rem);border:1px solid #c9eeee;border-radius:16px;background:#fff}.hh-product-reviews__header{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.hh-product-reviews__eyebrow{margin:0 0 .25rem;color:#087f7a;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.hh-product-reviews__title{margin:0;font-size:clamp(1.35rem,4vw,1.8rem)}.hh-product-reviews__summary{display:flex;align-items:center;gap:.4rem;white-space:nowrap}.hh-product-reviews__star,.hh-product-review-card__rating span{color:#c87400}.hh-product-reviews__list{display:grid;gap:1rem}.hh-product-review-card{padding:clamp(1rem,3vw,1.5rem);border:1px solid #e4e7ea;border-radius:14px;background:#fff;box-shadow:0 4px 14px rgba(0,0,0,.04)}.hh-product-review-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.hh-product-review-card__title{margin:0;font-size:1.1rem}.hh-product-review-card__meta{display:flex;flex-wrap:wrap;gap:.45rem .8rem;margin-top:.35rem;color:#667085;font-size:.8rem}.hh-product-review-card__rating{flex:0 0 auto;padding:.35rem .65rem;border-radius:999px;background:#fff4db;font-weight:700}.hh-product-review-card__block{margin-top:.85rem;padding:.85rem 1rem;border-radius:10px;background:#f7fbfb}.hh-product-review-card__block h4{margin:0 0 .45rem;font-size:.95rem}.hh-product-review-card__block ul{margin:0;padding-left:1.2rem}.hh-product-review-card__block li+li{margin-top:.25rem}.hh-product-review-card__block--positive,.hh-product-review-card__block--recommended{border-left:4px solid #18a999}.hh-product-review-card__block--negative,.hh-product-review-card__block--not-recommended{border-left:4px solid #e69a45}@media(max-width:600px){.hh-product-reviews{margin-top:2rem;padding:1rem}.hh-product-reviews__header,.hh-product-review-card__header{align-items:flex-start;flex-direction:column}.hh-product-reviews__summary{white-space:normal}.hh-product-review-card__rating{align-self:flex-start}}

/* Hair Hub Review UI wording/color polish (2026-08-10) */
.hh-product-review-card__block{padding:.72rem .9rem;margin-top:.7rem}
.hh-product-review-card__block--positive,.hh-product-review-card__block--recommended{background:#eefafa;border-left-color:#17a6a2;color:#176e6b}
.hh-product-review-card__block--negative{background:#fff6ec;border-left-color:#e79a43;color:#9a5a1d}
.hh-product-review-card__block--not-recommended{background:#eef6ff;border-left-color:#4c93dc;color:#346899}
@media(max-width:600px){.hh-product-review-card{padding:.9rem}.hh-product-review-card__block{padding:.65rem .75rem}}

/* =========================================================
   Hair Hub Product Review Responsive Polish v1.0
   2026-08-12
   - Keep the adopted Review UI wording/colors.
   - Reduce vertical length without shrinking readability.
   - Keep rating badge stable beside long titles.
   ========================================================= */
.hh-product-reviews{
  margin:26px 0 16px;
  padding:22px;
}
.hh-product-reviews__header{
  align-items:center;
  margin-bottom:16px;
}
.hh-product-reviews__eyebrow{
  margin-bottom:2px;
}
.hh-product-reviews__summary{
  font-size:14px;
}
.hh-product-reviews__list{
  gap:12px;
}
.hh-product-review-card{
  padding:16px 18px;
}
.hh-product-review-card__header{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  gap:10px 14px;
  margin-bottom:10px;
}
.hh-product-review-card__header>div:first-child{
  min-width:0;
}
.hh-product-review-card__title{
  overflow-wrap:break-word;
  word-break:normal;
  line-height:1.45;
}
.hh-product-review-card__meta{
  margin-top:3px;
  line-height:1.45;
}
.hh-product-review-card__rating{
  align-self:start;
  min-width:64px;
  padding:5px 10px;
  text-align:center;
  line-height:1.35;
  white-space:nowrap;
}
.hh-product-review-card__block{
  margin-top:8px;
  padding:10px 12px;
}
.hh-product-review-card__block h4{
  margin-bottom:3px;
  font-size:14px;
  line-height:1.45;
}
.hh-product-review-card__block ul{
  padding-left:18px;
  font-size:14px;
  line-height:1.55;
}
.hh-product-review-card__block li+li{
  margin-top:2px;
}

@media(max-width:767px){
  .hh-product-reviews{
    margin:20px 0 14px;
    padding:14px;
    border-radius:14px;
  }
  .hh-product-reviews__header{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:end;
    gap:8px 12px;
    margin-bottom:12px;
  }
  .hh-product-reviews__title{
    font-size:22px;
    line-height:1.3;
  }
  .hh-product-reviews__summary{
    align-self:end;
    gap:4px;
    font-size:13px;
    white-space:nowrap;
  }
  .hh-product-reviews__list{
    gap:10px;
  }
  .hh-product-review-card{
    padding:12px 13px;
    border-radius:12px;
  }
  .hh-product-review-card__header{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:start;
    gap:6px 10px;
    margin-bottom:8px;
  }
  .hh-product-review-card__title{
    font-size:15px;
    line-height:1.4;
  }
  .hh-product-review-card__meta{
    gap:2px 8px;
    margin-top:2px;
    font-size:11px;
  }
  .hh-product-review-card__rating{
    align-self:start;
    min-width:58px;
    padding:4px 8px;
    font-size:14px;
  }
  .hh-product-review-card__block{
    margin-top:7px;
    padding:8px 10px;
    border-radius:9px;
  }
  .hh-product-review-card__block h4{
    margin-bottom:2px;
    font-size:13px;
  }
  .hh-product-review-card__block ul{
    padding-left:17px;
    font-size:13px;
    line-height:1.5;
  }
  .hh-product-review-card__block li+li{
    margin-top:1px;
  }
}

/* Anonymous community review form and approved component averages. */
.hh-review-averages{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:0 0 16px}.hh-review-averages>div{display:grid;gap:2px;padding:10px;border:1px solid #c9eeee;border-radius:10px;background:#f4fbfa;text-align:center}.hh-review-averages strong{font-size:13px}.hh-review-averages span{color:#10a6a1;letter-spacing:.02em}.hh-review-averages em{font-style:normal;font-weight:700}.hh-review-form{margin-top:22px;padding:clamp(16px,3vw,24px);border-top:2px solid #c9eeee;border-radius:12px;background:#f7fbfb}.hh-review-form h3{margin:0 0 4px}.hh-review-form form{display:grid;gap:18px;margin-top:18px}.hh-review-form fieldset{min-width:0;margin:0;padding:0;border:0}.hh-review-form legend,.hh-review-form__field>span{display:block;margin-bottom:8px;font-weight:700}.hh-review-form__choices{display:flex;flex-wrap:wrap;gap:8px}.hh-review-choice{position:relative;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:44px;min-width:72px;padding:8px 16px;border:1px solid #c9d8d9;border-radius:999px;background:#fff;color:inherit;font:inherit;font-weight:600;line-height:1.35;text-align:center;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.hh-review-choice:hover{border-color:#80c9c6;background:#f3fbfa}.hh-review-choice input{position:absolute;width:1px;height:1px;margin:0;opacity:0;clip-path:inset(50%);overflow:hidden}.hh-review-choice:has(input:checked),.hh-review-choice.is-selected{border-color:#087f7a;background:#10a6a1;color:#fff;box-shadow:0 2px 8px rgba(16,166,161,.2)}.hh-review-choice:has(input:checked):hover,.hh-review-choice.is-selected:hover{background:#0e918d}.hh-review-choice:has(input:focus-visible){outline:3px solid rgba(8,127,122,.3);outline-offset:2px}.hh-review-form__ratings{display:grid;gap:12px}.hh-star-rating>div{display:flex;max-width:260px}.hh-star-rating input{position:absolute;width:1px;height:1px;opacity:.01}.hh-star-rating label{display:grid;place-items:center;width:48px;height:48px;color:#aeb8bb;font-size:32px;line-height:1;cursor:pointer}.hh-star-rating label:hover,.hh-star-rating label:focus-visible{outline:2px solid #087f7a;outline-offset:1px}.hh-star-rating input:focus-visible+label{outline:2px solid #087f7a;outline-offset:1px}.hh-star-rating:has(input[value="1"]:checked) label:nth-of-type(-n+1),.hh-star-rating:has(input[value="2"]:checked) label:nth-of-type(-n+2),.hh-star-rating:has(input[value="3"]:checked) label:nth-of-type(-n+3),.hh-star-rating:has(input[value="4"]:checked) label:nth-of-type(-n+4),.hh-star-rating:has(input[value="5"]:checked) label:nth-of-type(-n+5){color:#10a6a1}.hh-review-form__field textarea{box-sizing:border-box;width:100%;max-width:100%;padding:12px;border:1px solid #bccdce;border-radius:8px;background:#fff;font:inherit}.hh-review-form__submit{min-height:48px;padding:12px 22px;border:0;border-radius:999px;background:#087f7a;color:#fff;font:inherit;font-weight:700;cursor:pointer}.hh-review-form__submit:disabled{opacity:.65}.hh-review-form__notice{margin:14px 0;padding:12px 14px;border-radius:8px}.hh-review-form__notice--success{border:1px solid #55b9a9;background:#eaf9f5;color:#12675e}.hh-review-form__notice--error{border:1px solid #d99380;background:#fff2ee;color:#8a3826}.hh-review-form__notice ul{margin:0;padding-left:20px}.hh-review-form__hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:767px){.hh-review-averages{grid-template-columns:repeat(2,minmax(0,1fr))}.hh-review-form{margin-top:18px;padding:14px}.hh-star-rating>div{max-width:240px}.hh-star-rating label{width:46px;height:46px;font-size:30px}}
@media(max-width:375px){.hh-review-form__choices{gap:7px}.hh-review-choice{min-width:68px;padding:8px 13px}.hh-star-rating>div{width:100%;max-width:230px}.hh-star-rating label{flex:1;width:auto;min-width:44px}}

/* Phase 1: public body, component ratings, and distinct public/official counts. */
.hh-product-reviews__summary{
  flex-wrap:wrap;
  justify-content:flex-end;
}
.hh-product-reviews__average{
  white-space:nowrap;
}
.hh-product-review-card__content{
  margin:8px 0 0;
  color:#34494f;
  overflow-wrap:anywhere;
}
.hh-product-review-card__content>:first-child{
  margin-top:0;
}
.hh-product-review-card__content>:last-child{
  margin-bottom:0;
}
.hh-product-review-card__ratings{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:7px;
  margin:10px 0 0;
}
.hh-product-review-card__rating-item{
  min-width:0;
  padding:8px 6px;
  border:1px solid #c9eeee;
  border-radius:9px;
  background:#f4fbfa;
  text-align:center;
}
.hh-product-review-card__rating-item dt,
.hh-product-review-card__rating-item dd{
  margin:0;
}
.hh-product-review-card__rating-item dt{
  color:#267b79;
  font-size:12px;
  font-weight:700;
}
.hh-product-review-card__rating-item dd{
  color:#34494f;
  font-size:13px;
  font-weight:700;
  white-space:nowrap;
}
.hh-product-review-card__rating-item dd span{
  color:#c87400;
}

@media(max-width:767px){
  .hh-product-review-card__ratings{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:600px){
  .hh-product-reviews__header{
    grid-template-columns:1fr;
    align-items:start;
  }
  .hh-product-reviews__summary{
    justify-self:start;
    justify-content:flex-start;
    white-space:normal;
  }
}

@media(max-width:360px){
  .hh-product-reviews{
    padding:12px;
  }
  .hh-product-reviews__header{
    grid-template-columns:1fr;
    align-items:start;
    gap:5px;
  }
  .hh-product-reviews__summary{
    justify-self:start;
  }
  .hh-product-review-card{
    padding:11px;
  }
  .hh-product-review-card__header{
    grid-template-columns:minmax(0,1fr) auto;
    gap:6px 8px;
  }
  .hh-product-review-card__rating{
    min-width:54px;
    padding:4px 7px;
  }
  .hh-product-review-card__block{
    padding:8px 9px;
  }
}

/* =========================================================
   Hair Hub Product Review Polish — SWELL Compatibility Rev.2
   2026-08-13
   - Tighten the eyebrow -> review title spacing.
   - Remove residual SWELL heading bars inside review blocks.
   ========================================================= */
.hh-product-reviews__eyebrow{
  margin:0 0 4px !important;
}
.hh-product-reviews__header{
  margin-top:0 !important;
}
.hh-product-review-card__block h4{
  padding-left:0 !important;
  border-left:0 !important;
  background:transparent !important;
}
.hh-product-review-card__block h4::before,
.hh-product-review-card__block h4::after{
  content:none !important;
  display:none !important;
}

/* Same-browser submission receipt. */
.hh-review-form form[hidden]{
  display:none !important;
}
.hh-review-submitted{
  display:grid;
  gap:10px;
  margin-top:14px;
  padding:16px;
  border:1px solid #80c9c6;
  border-radius:12px;
  background:#eefafa;
  color:#176e6b;
}
.hh-review-submitted__message{
  font-size:16px;
}
.hh-review-submitted p{
  margin:0;
  color:#34494f;
  font-size:14px;
  font-weight:700;
}
.hh-review-submitted__ratings{
  display:grid;
  gap:7px;
  margin:0;
}
.hh-review-submitted__rating{
  display:grid;
  grid-template-columns:minmax(5.5em,auto) minmax(0,1fr);
  align-items:center;
  gap:10px;
  min-width:0;
}
.hh-review-submitted__rating dt,
.hh-review-submitted__rating dd{
  margin:0;
}
.hh-review-submitted__rating dt{
  color:#34494f;
  font-size:14px;
  font-weight:700;
}
.hh-review-submitted__stars{
  display:flex;
  min-width:0;
  color:#aeb8bb;
  font-size:24px;
  line-height:1;
  letter-spacing:.02em;
}
.hh-review-submitted__stars .is-filled{
  color:#10a6a1;
}

@media(max-width:767px){
  .hh-product-reviews{
    padding-top:14px;
  }
  .hh-product-reviews__eyebrow{
    margin-bottom:2px !important;
  }
  .hh-product-reviews__header{
    margin-top:0 !important;
    padding-top:0 !important;
  }
  .hh-review-submitted{
    padding:14px;
  }
}

@media(max-width:375px){
  .hh-review-submitted__rating{
    grid-template-columns:5em minmax(0,1fr);
    gap:7px;
  }
  .hh-review-submitted__stars{
    font-size:22px;
  }
}
