/*
 * GS Project Toolkit 2.1.2 - WooCommerce CSS
 * Redaktionelle Produkt-, CTA-, Affiliate- und Bewertungsbereiche.
 */
.gs-testbericht-product-box {
  width: min(100%, 1080px);
  margin: 26px auto;
  display: grid;
  grid-template-columns: 200px minmax(0, 1fr) 240px;
  gap: 0;
  overflow: hidden;
  background: var(--gs-color-bg, #fff);
  border: 1px solid var(--gs-color-border-soft, #e5e7eb);
  border-left: 4px solid var(--gs-color-positive-border, var(--gs-color-positive, #16a34a));
  border-radius: var(--gs-radius-lg, 18px);
  box-shadow: var(--gs-shadow-light, 0 10px 30px rgba(15,23,42,.06));
  color: var(--gs-color-text, #111827);
  padding: 0;
  font-family: inherit;
}
.gs-testbericht-product-box * { box-sizing: border-box; }
.gs-testbericht-product-box__image {
  padding: 20px;
  background: var(--gs-color-bg-soft, #f8fafc);
  border-right: 1px solid var(--gs-color-border-soft, #e5e7eb);
  display: flex;
  align-items: center;
  justify-content: center;
}
.gs-testbericht-product-box__image a,
.gs-testbericht-product-image {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 160px;
  text-decoration: none;
  background: transparent;
  border-radius: 14px;
  overflow: hidden;
}
.gs-testbericht-product-image img {
  width: 100%;
  height: 170px;
  object-fit: contain;
  object-position: center;
  display: block;
  border-radius: 14px;
  background: #fff;
}
.gs-testbericht-product-box__content {
  padding: 24px 28px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-self: stretch;
  min-width: 0;
}
.gs-testbericht-product-box__title {
  margin: 0 0 10px;
  font-size: clamp(1.35rem, 2vw, 1.75rem);
  line-height: 1.15;
  font-weight: 800;
  color: var(--gs-color-text, #111827);
}
.gs-testbericht-product-box__description {
  margin: 0 0 12px;
  color: var(--gs-color-text, #111827);
  font-size: 15px;
  line-height: 1.58;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.gs-testbericht-product-box__usps {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 0;
  padding: 0;
}
.gs-testbericht-product-box__usps li {
  list-style: none;
  margin: 0;
  padding: var(--gs-badge-padding-y, 4px) var(--gs-badge-padding-x, 10px);
  border: var(--gs-badge-border, 1px solid #e5e7eb);
  border-radius: var(--gs-badge-radius, 999px);
  background: var(--gs-badge-bg, #f1f5f9);
  color: var(--gs-badge-text, #111827);
  font-size: 12.5px;
  font-weight: 700;
  line-height: 1.25;
}
.gs-testbericht-product-box__side {
  padding: 22px 24px;
  background: var(--gs-color-bg-soft, #f8fafc);
  border-left: 1px solid var(--gs-color-border-soft, #e5e7eb);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.gs-product-cta-panel {
  width: 100%;
  min-height: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.gs-product-cta-panel p { margin: 0; width: 100%; }
.gs-product-cta-panel__discount {
  order: 0;
  margin: 0 0 6px;
  color: var(--gs-color-positive, #16a34a);
  font-weight: 900;
  font-size: 1.05rem;
  line-height: 1.2;
  text-align: center;
}
.gs-product-cta-panel__discount-value,
.gs-product-cta-panel__discount-label { font-weight: 900; }
.gs-testbericht-product-price,
.gs-product-cta-panel__price,
.gs-product-synopsis__price {
  order: 1;
  margin: 0 0 14px;
  color: var(--gs-color-text, #111827);
  font-weight: 800;
  font-size: 1.25rem;
  line-height: 1.25;
}
.gs-testbericht-product-price del,
.gs-product-cta-panel__price del,
.gs-product-synopsis__price del {
  color: #6b7280;
  font-size: .92rem;
  font-weight: 600;
  opacity: .85;
  margin-right: .35rem;
}
.gs-testbericht-product-price ins,
.gs-product-cta-panel__price ins,
.gs-product-synopsis__price ins {
  color: var(--gs-color-text, #111827);
  text-decoration: none;
  font-size: 1.45rem;
  font-weight: 900;
}
.gs-testbericht-product-button,
.gs-product-synopsis__button,
.gs-product-cta-panel__button {
  display: flex;
  width: 100%;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  background: var(--gs-color-cta-primary, var(--gs-color-button, #2563eb));
  color: var(--gs-color-cta-text, var(--gs-color-button-text, #fff)) !important;
  border-radius: var(--gs-radius-button, 999px);
  padding: 11px 16px;
  text-decoration: none !important;
  font-weight: 800;
  font-size: .98rem;
  line-height: 1.2;
  box-shadow: none;
  transition: transform .15s ease, filter .15s ease;
}
.gs-testbericht-product-button:hover,
.gs-testbericht-product-button:focus,
.gs-product-synopsis__button:hover,
.gs-product-synopsis__button:focus,
.gs-product-cta-panel__button:hover,
.gs-product-cta-panel__button:focus {
  filter: brightness(.92);
  color: var(--gs-color-cta-text, var(--gs-color-button-text, #fff)) !important;
  background: var(--gs-color-cta-primary-hover, var(--gs-color-button-hover, #1d4ed8));
  transform: translateY(-1px);
  text-decoration: none !important;
}
.gs-testbericht-product-box__external,
.gs-product-synopsis__external,
.gs-product-affiliate-label,
.gs-product-cta-panel__affiliate {
  margin: 8px 0 0;
  padding: 0;
  font-size: 12px;
  line-height: 1.35;
  color: var(--gs-color-text-muted, #6b7280);
  text-align: center;
  background: transparent;
  border: 0;
  box-shadow: none;
  border-radius: 0;
}
.gs-product-affiliate-label,
.gs-product-cta-panel__affiliate {
  margin-top: 8px;
  max-width: 100%;
}
.gs-testbericht-product-box__external a,
.gs-product-synopsis__external a {
  color: var(--gs-color-text-muted, #6b7280);
  text-decoration: none;
}
.gs-testbericht-product-box__external a:hover,
.gs-product-synopsis__external a:hover { text-decoration: underline; }
.gs-product-affiliate-label a,
.gs-product-cta-panel__affiliate a {
  color: var(--gs-color-link, #0f3a66);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.gs-product-affiliate-label a:hover,
.gs-product-cta-panel__affiliate a:hover { color: var(--gs-color-link-hover, var(--gs-color-cta-primary, #2563eb)); }
.gs-testbericht-product-box__microcopy,
.gs-product-synopsis__microcopy {
  margin: 8px 0 0;
  color: var(--gs-color-text-muted, #6b7280);
  font-size: 12px;
  line-height: 1.35;
}
.gs-testbericht-product-box__review {
  margin: 10px 0 0;
  font-size: 12px;
  line-height: 1.35;
}
.gs-testbericht-product-box__review a {
  color: var(--gs-color-link, #0f3a66);
  text-decoration: underline;
  text-underline-offset: 2px;
}


.gs-product-cta-shortcode {
  width: min(100%, 380px);
  margin: 18px auto;
  padding: 20px 24px;
  background: var(--gs-color-bg, #fff);
  border: 1px solid var(--gs-color-border-soft, #e5e7eb);
  border-radius: var(--gs-radius-md, 12px);
  box-shadow: var(--gs-shadow-light, 0 10px 30px rgba(15,23,42,.06));
  color: var(--gs-color-text, #111827);
  text-align: center;
}
.gs-product-cta-shortcode .gs-product-cta-panel {
  min-height: 0;
}
.gs-product-cta-shortcode .gs-product-cta-panel__button,
.gs-product-cta-shortcode .gs-product-synopsis__button,
.gs-product-cta-shortcode .gs-testbericht-product-button {
  width: 100%;
}

.gs-product-synopsis--editorial-cta {
  width: 100%;
  margin: var(--gs-space-lg, 24px) 0;
  padding: 0;
  background: #fff;
  border: 1px solid var(--gs-color-border-soft, #e5e7eb);
  border-left: 4px solid var(--gs-color-positive-border, var(--gs-color-positive, #16a34a));
  border-radius: var(--gs-radius-md, 12px);
  box-shadow: none;
  color: var(--gs-color-text, #111827);
  overflow: hidden;
}
.gs-product-synopsis--editorial-cta .gs-product-synopsis__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(230px, 40%);
  align-items: stretch;
}
.gs-product-synopsis--editorial-cta .gs-product-synopsis__text-col {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 18px 20px;
  min-width: 0;
}
.gs-product-synopsis--editorial-cta .gs-product-synopsis__cta-col {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px 20px;
  border-left: 1px solid var(--gs-color-border-soft, #e5e7eb);
  background: #fff;
}
.gs-product-synopsis--editorial-cta .gs-product-synopsis__label {
  margin: 0 0 10px;
  font-size: var(--gs-font-size-xs, 12px);
  line-height: var(--gs-line-height-tight, 1.25);
  font-weight: var(--gs-font-weight-bold, 700);
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--gs-color-text-muted, #4b5563);
}
.gs-product-synopsis--editorial-cta .gs-product-synopsis__body { margin: 0; padding: 0; }
.gs-product-synopsis--editorial-cta .gs-product-synopsis__description {
  margin: 0 0 8px;
  font-size: var(--gs-font-size-base, 16px);
  line-height: var(--gs-line-height-base, 1.55);
  color: var(--gs-color-text, #111827);
}
.gs-product-synopsis--editorial-cta .gs-product-synopsis__description p { margin: 0 0 8px; }
.gs-product-synopsis--editorial-cta .gs-product-synopsis__description p:last-child { margin-bottom: 0; }
.gs-product-synopsis--editorial-cta .gs-product-synopsis__verdict {
  margin: 0;
  font-size: var(--gs-font-size-sm, 14px);
  line-height: var(--gs-line-height-base, 1.55);
  color: var(--gs-color-text, #111827);
}
.gs-product-synopsis--editorial-cta .gs-product-synopsis__verdict strong {
  font-weight: var(--gs-font-weight-bold, 700);
  color: var(--gs-color-text, #111827);
}

.gs-wc-product-reviews-box,
.woocommerce-Reviews,
#reviews.gs-wc-product-reviews-box {
  margin: var(--gs-space-xl, 32px) auto;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: var(--gs-color-text, #111827);
}
.gs-wc-product-reviews-box__title {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 18px;
  font-size: clamp(1.3rem, 2vw, 1.8rem);
  line-height: 1.2;
  font-weight: 800;
}
.gs-wc-review-title-rating { display: inline-flex; align-items: center; }
.gs-wc-product-reviews-box__list { list-style: none; margin: 0; padding: 0; }
.gs-wc-review-card {
  padding: 0 0 var(--gs-space-lg, 24px);
  margin: 0 0 var(--gs-space-lg, 24px);
  border-bottom: 1px solid var(--gs-color-border-soft, #e5e7eb);
}
.gs-wc-review-card:last-child { margin-bottom: 0; }
.gs-wc-review-rating {
  display: flex;
  gap: 2px;
  margin-bottom: var(--gs-space-sm, 10px);
  color: #f97316;
  font-size: 18px;
  line-height: 1;
}
.gs-wc-review-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: var(--gs-space-sm, 10px);
  font-size: var(--gs-font-size-sm, 14px);
  color: var(--gs-color-text-muted, #4b5563);
}
.gs-wc-review-author {
  font-weight: var(--gs-font-weight-bold, 700);
  color: var(--gs-color-text, #111827);
}
.gs-wc-review-verified {
  display: inline-flex;
  align-items: center;
  padding: 3px 8px;
  border: var(--gs-badge-border, 1px solid #e5e7eb);
  border-radius: var(--gs-badge-radius, 999px);
  background: var(--gs-badge-bg, #f1f5f9);
  color: var(--gs-badge-text, #111827);
  font-size: 12px;
  font-weight: 700;
}
.gs-wc-review-content {
  font-size: var(--gs-font-size-base, 16px);
  line-height: var(--gs-line-height-base, 1.55);
  color: var(--gs-color-text, #111827);
}
.gs-wc-product-reviews-box__form-wrapper,
#review_form_wrapper,
.comment-respond {
  margin-top: var(--gs-space-lg, 24px);
  padding: 0;
  border-radius: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}
.gs-wc-product-reviews-box .comment-reply-title,
.comment-respond .comment-reply-title,
.gs-review-form__title {
  display: block;
  margin: 0 0 14px;
  padding: 0;
  font-family: inherit;
  font-size: var(--gs-font-size-lg, 18px);
  line-height: 1.3;
  font-weight: var(--gs-font-weight-bold, 700);
  color: var(--gs-color-text, #111827);
}
.gs-wc-product-reviews-box h1.comment-reply-title,
.gs-wc-product-reviews-box h2.comment-reply-title,
.gs-wc-product-reviews-box h3.comment-reply-title,
.comment-respond h1.comment-reply-title,
.comment-respond h2.comment-reply-title,
.comment-respond h3.comment-reply-title {
  font-size: var(--gs-font-size-lg, 18px);
  line-height: 1.3;
  font-weight: var(--gs-font-weight-bold, 700);
}
.gs-wc-product-reviews-box label,
.comment-respond label {
  display: block;
  margin: 0 0 6px;
  font-family: inherit;
  font-size: var(--gs-font-size-base, 16px);
  line-height: 1.45;
  font-weight: var(--gs-font-weight-semibold, 600);
  color: var(--gs-color-text, #111827);
}
.gs-wc-product-reviews-box .comment-form-rating,
.comment-respond .comment-form-rating,
.gs-review-form__rating-row {
  display: flex !important;
  align-items: center !important;
  gap: 12px;
  flex-wrap: wrap;
  margin: 0 0 8px !important;
  padding: 0;
}
.gs-wc-product-reviews-box .comment-form-rating label,
.comment-respond .comment-form-rating label,
.gs-review-form__rating-label {
  display: inline-flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0;
  font-size: var(--gs-font-size-base, 16px);
  line-height: 1.35;
  font-weight: var(--gs-font-weight-semibold, 600);
}
.gs-review-form__rating-control,
.gs-wc-product-reviews-box .comment-form-rating .stars,
.comment-respond .comment-form-rating .stars,
.gs-wc-product-reviews-box .comment-form-rating p.stars,
.comment-respond .comment-form-rating p.stars,
.gs-wc-product-reviews-box p.stars,
.comment-respond p.stars {
  display: inline-flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0;
  line-height: 1 !important;
  vertical-align: middle;
}
.gs-wc-product-reviews-box .comment-form-rating .stars a,
.comment-respond .comment-form-rating .stars a,
.gs-wc-product-reviews-box p.stars a,
.comment-respond p.stars a {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  height: 1em;
  line-height: 1 !important;
  text-decoration: none;
}
.gs-wc-product-reviews-box .comment-form-rating select,
.comment-respond .comment-form-rating select {
  width: auto;
  min-width: 160px;
}
.gs-wc-product-reviews-box .comment-form-comment,
.comment-respond .comment-form-comment {
  margin-top: 8px;
}
.gs-wc-product-reviews-box .comment-form-comment label,
.comment-respond .comment-form-comment label,
.gs-review-form__textarea-label {
  display: block;
  margin: 0 0 8px;
}
.gs-wc-product-reviews-box textarea,
.gs-wc-product-reviews-box input[type=text],
.gs-wc-product-reviews-box input[type=email],
.gs-wc-product-reviews-box select,
.comment-respond textarea,
.comment-respond input[type=text],
.comment-respond input[type=email],
.comment-respond select {
  width: 100%;
  border: 1px solid var(--gs-color-border, #d8d8d8);
  border-radius: var(--gs-radius-sm, 6px);
  padding: 12px 14px;
  background: #fff;
  color: var(--gs-color-text, #111827);
  font-family: inherit;
  font-size: var(--gs-font-size-base, 16px);
  line-height: var(--gs-line-height-base, 1.55);
}
.gs-wc-product-reviews-box textarea,
.comment-respond textarea {
  min-height: 120px;
}
.gs-wc-product-reviews-box button,
.gs-wc-product-reviews-box input[type=submit],
.comment-respond input[type=submit] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: var(--gs-space-md, 16px);
  padding: var(--gs-button-padding-y, 10px) var(--gs-button-padding-x, 18px);
  border: 0;
  border-radius: var(--gs-button-radius, 999px);
  background: var(--gs-color-cta-primary, var(--gs-color-button, #2563eb));
  color: var(--gs-color-button-text, #fff);
  font-size: var(--gs-button-font-size, 15px);
  font-weight: var(--gs-button-font-weight, 700);
  cursor: pointer;
}
.gs-wc-product-reviews-box button:hover,
.gs-wc-product-reviews-box input[type=submit]:hover,
.comment-respond input[type=submit]:hover {
  filter: brightness(.92);
}

@media (max-width: 1024px) {
  .gs-testbericht-product-box {
    grid-template-columns: 1fr;
  }
  .gs-testbericht-product-box__image {
    width: 100%;
    border-right: 0;
    border-bottom: 1px solid var(--gs-color-border-soft, #e5e7eb);
  }
  .gs-testbericht-product-box__content {
    width: 100%;
    text-align: center;
    align-items: center;
  }
  .gs-testbericht-product-box__title,
  .gs-testbericht-product-box__description {
    text-align: center;
  }
  .gs-testbericht-product-box__usps {
    justify-content: center;
  }
  .gs-testbericht-product-box__side {
    width: 100%;
    border-left: 0;
    border-top: 1px solid var(--gs-color-border-soft, #e5e7eb);
  }
  .gs-testbericht-product-image img {
    max-height: 280px;
    height: auto;
  }
  .gs-related-products-grid {
    grid-template-columns: repeat(var(--gs-wc-related-tablet, 2), minmax(0, 1fr));
  }
}
@media (max-width: 1024px) {
  .gs-product-synopsis--editorial-cta .gs-product-synopsis__grid { grid-template-columns: 1fr; }
  .gs-product-synopsis--editorial-cta .gs-product-synopsis__cta-col {
    border-left: 0;
    border-top: 1px solid var(--gs-color-border-soft, #e5e7eb);
    min-height: 0;
    padding: 18px 20px;
  }
  .gs-product-synopsis--editorial-cta .gs-product-cta-panel { min-height: 0; }
}
@media (max-width: 640px) {
  .gs-testbericht-product-box__content,
  .gs-testbericht-product-box__side,
  .gs-testbericht-product-box__image { padding: 20px; }
  .gs-affiliate-grid,
  .gs-related-products-grid { grid-template-columns: 1fr; }
}


/* GS Project Toolkit 2.1.1: Review-Header-Kurzfazit kompakt und Reihenfolge geschützt */
.gs-review-editorial-synopsis .gs-product-synopsis--editorial-cta,
.gs-product-synopsis--context-review-header.gs-product-synopsis--editorial-cta {
  margin: 18px 0 14px !important;
}
.gs-review-editorial-synopsis .gs-product-synopsis__grid,
.gs-product-synopsis--context-review-header .gs-product-synopsis__grid {
  align-items: stretch !important;
  min-height: 0 !important;
}
.gs-review-editorial-synopsis .gs-product-synopsis__text-col,
.gs-review-editorial-synopsis .gs-product-synopsis__cta-col,
.gs-product-synopsis--context-review-header .gs-product-synopsis__text-col,
.gs-product-synopsis--context-review-header .gs-product-synopsis__cta-col {
  min-height: 0 !important;
  padding-top: 16px !important;
  padding-bottom: 16px !important;
}
.gs-review-editorial-synopsis .gs-product-synopsis__text-col,
.gs-product-synopsis--context-review-header .gs-product-synopsis__text-col {
  justify-content: center !important;
}
.gs-review-editorial-synopsis .gs-product-cta-panel,
.gs-product-synopsis--context-review-header .gs-product-cta-panel {
  min-height: 0 !important;
  height: auto !important;
}
.gs-review-editorial-synopsis .gs-product-cta-panel__price,
.gs-product-synopsis--context-review-header .gs-product-cta-panel__price {
  order: 1 !important;
  margin: 0 0 10px !important;
}
.gs-review-editorial-synopsis .gs-product-cta-panel > p,
.gs-product-synopsis--context-review-header .gs-product-cta-panel > p {
  order: 2 !important;
  margin: 0 !important;
  width: 100% !important;
}
.gs-review-editorial-synopsis .gs-product-synopsis__external,
.gs-product-synopsis--context-review-header .gs-product-synopsis__external {
  order: 3 !important;
  margin-top: 7px !important;
}
.gs-review-editorial-synopsis .gs-product-cta-panel__affiliate,
.gs-review-editorial-synopsis .gs-product-affiliate-label,
.gs-product-synopsis--context-review-header .gs-product-cta-panel__affiliate,
.gs-product-synopsis--context-review-header .gs-product-affiliate-label {
  order: 4 !important;
  margin-top: 9px !important;
  max-width: 100% !important;
  font-size: 12px !important;
  line-height: 1.28 !important;
}
