.ngsb-stars {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 14px;
  line-height: 1;
}

.ngsb-stars--listing {
  margin-top: 8px;
  justify-content: center;
}

.ngsb-star {
  color: #f6cfc3;
  font-size: 20px;
  letter-spacing: -4px;
}

.ngsb-star.is-full,
.ngsb-star.is-half {
  color: #FFCD00;
}

.ngsb-stars__score {
  font-weight: 700;
  color: #171717;
}

.ngsb-stars__count {
  color: #555;
}

.ngsb-reviews {
  margin: 32px 0;
  color: #111;
  font-size: 16px;
}

.ngsb-reviews [hidden] {
  display: none !important;
}

.ngsb-tabs {
  display: flex;
  gap: 22px;
  border-bottom: 1px solid #d9d9d9;
  margin-bottom: 28px;
}

.ngsb-tab {
  appearance: none;
  background: transparent;
  border: 0;
  border-bottom: 3px solid transparent;
  color: #555;
  cursor: pointer;
  font-size: 20px;
  font-weight: 600;
  padding: 0 0 16px;
}

.ngsb-tab.is-active {
  border-color: #f23800;
  color: #111;
}

.ngsb-panel {
  display: none;
}

.ngsb-panel.is-active {
  display: block;
}

.ngsb-layout {
  display: grid;
  grid-template-columns: 330px minmax(0, 1fr);
  gap: 44px;
}

.ngsb-summary,
.ngsb-question-card {
  border: 1px solid #ddd;
  border-radius: 6px;
  padding: 24px;
  align-self: start;
}

.ngsb-summary__score {
  color: #f23800;
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 8px;
}

.ngsb-summary__score strong {
  font-size: 60px;
  line-height: 1;
}

.ngsb-summary__score span {
  font-size: 28px;
}

.ngsb-summary__stars,
.ngsb-review__stars,
.ngsb-category-review__stars {
  display: flex;
  align-items: center;
  gap: 4px;
}

.ngsb-summary__stars {
  justify-content: center;
  margin-top: 8px;
  width: 100%;
}

.ngsb-verified-brand {
  align-items: center;
  color: #111;
  display: flex;
  font-size: 24px;
  font-weight: 800;
  justify-content: center;
  margin: 18px 0;
  text-align: center;
}

.ngsb-verified-brand__text {
  line-height: 1.05;
}

.ngsb-verified-brand__logo {
  display: block;
  height: auto;
  max-height: 64px;
  max-width: 120px;
  width: 120px;
}

.ngsb-bars {
  margin: 22px 0;
}

.ngsb-bar {
  display: grid;
  grid-template-columns: 78px 1fr 36px;
  align-items: center;
  gap: 10px;
  margin: 9px 0;
}

.ngsb-bar span,
.ngsb-bar em {
  font-style: normal;
}

.ngsb-bar b {
  background: #f0f0f0;
  border-radius: 999px;
  height: 8px;
  overflow: hidden;
}

.ngsb-bar i {
  background: #f23800;
  display: block;
  height: 100%;
}

.ngsb-filter {
  display: grid;
  gap: 12px;
  margin-top: 28px;
}

.ngsb-filter select,
.ngsb-filter input,
.ngsb-questions select,
.ngsb-question-form input,
.ngsb-question-form textarea {
  border: 1px solid #d3d7dc;
  border-radius: 5px;
  color: #111;
  min-height: 44px;
  padding: 10px 13px;
  width: 100%;
}

.ngsb-filter button {
  display: none;
}

.ngsb-review,
.ngsb-qa,
.ngsb-category-review {
  border-bottom: 1px solid #d9d9d9;
  padding: 22px 0;
}

.ngsb-review:first-child {
  padding-top: 0;
}

.ngsb-review__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.ngsb-review h4,
.ngsb-qa h4 {
  font-size: 17px;
  margin: 12px 0;
}

.ngsb-review h5 {
  font-size: 16px;
  font-weight: 600;
  margin: 8px 0 0;
}

.ngsb-review__meta,
.ngsb-qa time {
  color: #555;
  font-size: 14px;
}

.ngsb-badge {
  background: #f1faf5;
  border: 1px solid #cfe9d9;
  border-radius: 5px;
  color: #15813b;
  display: inline-flex;
  font-size: 14px;
  font-weight: 600;
  gap: 6px;
  padding: 8px 12px;
  white-space: nowrap;
}

.ngsb-pagination {
  display: flex;
  gap: 10px;
  justify-content: center;
  margin-top: 24px;
}

.ngsb-pagination a,
.ngsb-pagination button {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 5px;
  color: #111;
  cursor: pointer;
  min-width: 40px;
  padding: 9px 12px;
  text-align: center;
}

.ngsb-pagination a.is-active,
.ngsb-pagination button.is-active {
  background: #f23800;
  border-color: #f23800;
  color: #fff;
}

.ngsb-pagination button:disabled {
  cursor: default;
  opacity: 0.45;
}

.ngsb-pagination__arrow {
  font-size: 24px;
  line-height: 1;
}

.ngsb-question-card {
  text-align: center;
}

.ngsb-question-card__icon {
  border: 3px solid #f23800;
  border-radius: 50%;
  color: #f23800;
  font-size: 42px;
  height: 76px;
  line-height: 70px;
  margin: 10px auto 18px;
  width: 76px;
}

.ngsb-question-card h3,
.ngsb-questions h3 {
  font-size: 24px;
  margin: 0 0 14px;
}

.ngsb-button {
  background: #f23800;
  border: 1px solid #f23800;
  border-radius: 5px;
  color: #fff;
  cursor: pointer;
  font-weight: 700;
  min-height: 44px;
  padding: 11px 20px;
}

.ngsb-button--ghost {
  background: #fff;
  color: #f23800;
}

.ngsb-question-card__stats {
  border: 1px solid #e1e1e1;
  border-radius: 5px;
  display: flex;
  justify-content: space-between;
  margin-top: 26px;
  padding: 14px;
}

.ngsb-questions__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 20px;
}

.ngsb-qa {
  border: 1px solid #ddd;
  border-radius: 6px;
  margin-bottom: 18px;
  padding: 24px;
}

.ngsb-qa__row,
.ngsb-qa__answer {
  display: block;
  align-items: start;
}

.ngsb-qa__answer {
  border-top: 1px solid #ddd;
  margin-top: 22px;
  padding-top: 22px;
}

.ngsb-ask-bottom {
  margin-top: 28px;
  text-align: center;
}

.ngsb-modal .modal-dialog {
  max-width: 680px;
}

.ngsb-modal .modal-content {
  border: 0;
  border-radius: 6px;
}

.ngsb-modal .modal-header {
  align-items: center;
  border-bottom: 1px solid #e5e5e5;
  padding: 18px 24px;
}

.ngsb-modal .modal-title {
  font-size: 22px;
  margin: 0;
}

.ngsb-modal .modal-body {
  padding: 24px;
}

.ngsb-question-form {
  display: grid;
  gap: 16px;
}

.ngsb-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.ngsb-check {
  align-items: flex-start;
  display: flex;
  gap: 9px;
}

.ngsb-check input {
  min-height: 0;
  width: auto;
}

.ngsb-hp,
.ngsb-sr-only {
  height: 1px;
  left: -10000px;
  overflow: hidden;
  position: absolute;
  width: 1px;
}

.ngsb-form-message {
  font-weight: 600;
}

.ngsb-form-message.is-success {
  color: #15813b;
}

.ngsb-form-message.is-error {
  color: #b42318;
}

.ngsb-category-reviews {
  margin: 36px 0;
}

.ngsb-category-reviews--widget {
  color: #111;
  font-size: 16px;
}

.ngsb-category-reviews h2 {
  font-size: 24px;
  margin-bottom: 20px;
}

.ngsb-category-reviews__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.ngsb-category-review {
  border: 1px solid #ddd;
  border-radius: 6px;
  padding: 18px;
}

.ngsb-category-review h3 {
  font-size: 16px;
  margin: 10px 0 6px;
}

.ngsb-category-review h4 {
  font-size: 15px;
  margin: 8px 0;
}

.ngsb-empty {
  color: #555;
  padding: 18px 0;
}

.ngsb-review-list.is-loading,
[data-ngsb-question-list].is-loading {
  opacity: .55;
  pointer-events: none;
}

@media (max-width: 900px) {
  .ngsb-layout,
  .ngsb-category-reviews__grid {
    grid-template-columns: 1fr;
  }

  .ngsb-questions__head,
  .ngsb-review__head {
    align-items: flex-start;
    flex-direction: column;
  }

}

@media (max-width: 560px) {
  .ngsb-tabs {
    gap: 14px;
    overflow-x: auto;
  }

  .ngsb-tab {
    font-size: 17px;
    white-space: nowrap;
  }

  .ngsb-form-grid {
    grid-template-columns: 1fr;
  }
}
