/* 237: Shared, evidence-led typographic rhythm and card alignments.
 * Responsive text flow is controlled by typography and content measure,
 * NOT by literal linebreaks or forced, unsupported padding.
 */
:root{
 --gp-ui-gap-xs:.5rem;--gp-ui-gap-sm:.75rem;--gp-ui-gap-md:1rem;
 --gp-ui-gap-lg:1.5rem;--gp-ui-gap-xl:2rem;
 --gp-ui-stroke:1px solid var(--gp-line,#dde5df);
 --gp-ui-radius-card:1rem;
 --gp-ui-text-measure:78ch;
}
:where(main,article,.gp-home--v3,.gp-product-detail) :is(h1,h2,h3,h4){text-wrap:balance;overflow-wrap:break-word}
:where(main,article,.gp-home--v3,.gp-product-detail) :is(p,li,figcaption){text-wrap:pretty;overflow-wrap:break-word}
/* Short copy benefits from proportional line balancing. Longer prose retains
   natural line wrapping; true 50/50 width is not cross-breakpoint invariant. */
:where(.gp-product-detail,.gp-home--v3,.gp-knowledge-article) :is(
 .gp-pd230-section-lead,.gp-product-detail__section-lead,
 .gp-product-related-article__body>p,.gp-product-related-product__body>p,
 .gp-product-detail__commerce-note,.gp-product-detail__safety-note,
 .gp-pd228-voucher__copy>p,.gp-pd228-voucher__terms,
 .gp-product-editorial217__item>div>p,
 .gp-knowledge-card__excerpt,.gp-home-article-card__body>p,
 .gp-article-summary p
){text-wrap:balance;hyphens:manual}
/* Restore section separation: v236 margin-block:0 on .gp-eckdaten218
   unintentionally erased the shared + sibling gap. */
.gp-product-detail .gp-product-detail__content>.gp-product-detail__section + .gp-product-detail__section{
 margin-block-start:var(--gp-pd-space)!important;
}
.gp-product-detail .gp-product-detail__content>.gp-product-detail__section{
 border:var(--gp-ui-stroke);border-radius:var(--gp-ui-radius-card);
}
.gp-product-detail .gp-product-editorial217__grid:has(>.gp-product-editorial217__item:only-child){grid-template-columns:minmax(0,1fr)}
.gp-product-detail .gp-product-editorial217__item:only-child > div > p{
 max-width:min(100%,96ch);text-wrap:balance;hyphens:manual;
}
.gp-product-detail .gp-product-editorial217__item{align-content:start}
/* The recommendation category itself provides sufficient context;
   the duplicate 'Ratgeber' pill is removed from PHP, not visually hidden. */
.gp-product-detail .gp-pd230-discover .gp-product-related-article__body{
 gap:.32rem;
}
.gp-product-detail .gp-pd230-discover .gp-product-related-article__topic{
 display:block;margin:0 0 .15rem;font-size:.71rem;line-height:1.35;
 font-weight:750;letter-spacing:.035em;text-transform:uppercase;
}
.gp-product-detail .gp-pd230-discover .gp-product-related-article__body h3{
 margin:.18rem 0 .38rem;line-height:1.35;
}
.gp-product-detail .gp-pd230-discover .gp-product-related-article__body>p{
 margin:.15rem 0 .5rem;line-height:1.58;
}
.gp-product-detail .gp-pd230-discover .gp-product-related-article__meta{column-gap:.75rem;row-gap:.1rem;
 margin-top:auto;padding-block-start:.65rem;
}
.gp-product-detail .gp-pd230-discover .gp-product-related-article__link{margin-top:.65rem}
.gp-product-detail .gp-product-related-article__media,.gp-product-detail .gp-product-related-product__media{
 border-radius:0;overflow:hidden;
}
/* Full-width explanatory lines should not leave a two-word tail in a 90rem
   block. Set a readable measure and let the browser balance the lines. */
.gp-product-detail .gp-product-detail__content :is(.gp-product-detail__commerce-note,.gp-product-detail__safety-note){
 max-width:min(100%,90ch);line-height:1.65;
}
.gp-product-detail .gp-pd228-voucher__terms {max-width:min(100%,70ch);line-height:1.6}
.gp-product-detail .gp-pd228-voucher__copy p {max-width:68ch;line-height:1.6}
/* Site-wide card spacing tokens (not blanket margin resets). */
:where(.gp-home-section,.gp-knowledge-results,.gp-article-related,.gp-product-detail__related) {
 --gp-card-inner-gap:var(--gp-ui-gap-md);
}
@media(max-width:768px){
 :root{--gp-ui-gap-lg:1.25rem;--gp-ui-gap-xl:1.5rem}
 .gp-product-detail .gp-product-detail__content>.gp-product-detail__section+.gp-product-detail__section{margin-block-start:var(--gp-pd-space)!important}
 .gp-product-detail .gp-pd230-discover .gp-product-related-article__body h3{font-size:1.06rem}
}
@media(max-width:430px){
 :root{--gp-ui-gap-lg:1rem;--gp-ui-gap-xl:1.25rem}
 .gp-product-detail .gp-product-editorial217__item:only-child > div > p{text-wrap:pretty}
}


/* 238: Responsive composition. Limits are visual measures, not content targets.
   Never pad medical text to fill a card; constrain the text container instead. */
.gp-product-detail {
 --gp238-border:1px solid #dce8e0;
 --gp238-space:clamp(1rem,1.4vw,1.5rem);
}
/* Promotional condition: two equal columns, natural text measurement, no artificial<br>. */
.gp-product-detail .gp-pd228-voucher{column-gap:var(--gp238-space)}
.gp-product-detail .gp-pd228-voucher__terms{
 max-width:min(100%,56ch);line-height:1.55;
}
.gp-product-detail .gp-pd228-voucher__copy p{
 max-width:min(100%,57ch);text-wrap:balance;line-height:1.55;
}
/* Ratgeber: editorial carousel with a short panoramic image, a compact teaser,
   and a metadata/action footer sharing one baseline rather than empty rows. */
.gp-product-detail .gp-pd230-discover .gp-product-detail__related--guides{
 padding:clamp(.85rem,1.5vw,1.35rem);
 border:var(--gp238-border);border-radius:1rem;
}
.gp-product-detail .gp-pd230-discover .gp-product-detail__related--guides .gp-pd230-section-head{
 margin-bottom:clamp(.7rem,1.25vw,1rem);
}
.gp-product-detail .gp-pd230-discover .gp-product-related-article{
 border:var(--gp238-border);border-radius:1rem;
}
.gp-product-detail .gp-pd236-carousel .gp-product-related-article__media{
 aspect-ratio:auto;height:clamp(8.6rem,12vw,11.5rem);
 min-height:0;max-height:none;flex:none;overflow:hidden;
}
.gp-product-detail .gp-pd236-carousel .gp-product-related-article__media img{
 width:100%;height:100%;object-fit:cover;object-position:center;
}
.gp-product-detail .gp-pd230-discover .gp-product-related-article__body{
 display:flex;flex-direction:column;gap:0;align-items:stretch;
 padding:clamp(.85rem,1.25vw,1.1rem);min-width:0;
}
.gp-product-detail .gp-pd230-discover .gp-product-related-article__topic{
 font-size:.68rem;line-height:1.3;letter-spacing:.02em;margin:0 0 .45rem;
}
.gp-product-detail .gp-pd230-discover .gp-product-related-article__body h3{
 margin:0 0 .5rem;font-size:clamp(1.02rem,1.12vw,1.17rem);
 line-height:1.31;min-height:2.62em;text-wrap:balance;
 display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;
}
.gp-product-detail .gp-pd230-discover .gp-product-related-article__body>p{
 display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;
 overflow:hidden;line-height:1.5;font-size:clamp(.79rem,.86vw,.87rem);
 margin:0 0 .85rem;color:#5c6e65;min-height:3em;text-wrap:pretty;
}
.gp-product-detail .gp-pd230-discover .gp-product-related-article__footer{
 display:flex;justify-content:space-between;align-items:center;
 gap:.35rem .65rem;flex-wrap:wrap;margin-top:auto;padding-top:.65rem;
 border-top:1px solid #edf1ee;
}
.gp-product-detail .gp-pd230-discover .gp-product-related-article__meta{
 display:flex;align-items:center;gap:.25rem .6rem;flex:1 1 10.5rem;
 flex-wrap:wrap;min-width:0;margin:0;padding:0;font-size:.68rem;line-height:1.38;
}
.gp-product-detail .gp-pd230-discover .gp-product-related-article__link{
 display:inline-flex;align-items:center;white-space:nowrap;
 min-height:2rem;margin:0;padding:0;font-size:.76rem;line-height:1.3;
}
@media(max-width:1020px){
 .gp-product-detail .gp-pd236-carousel .gp-product-related-article__media{height:clamp(9rem,18vw,11rem)}
 .gp-product-detail .gp-pd230-discover .gp-product-related-article__body>p{-webkit-line-clamp:3;min-height:0}
}
@media(max-width:640px){
 .gp-product-detail .gp-pd228-voucher__terms{max-width:100%}
 .gp-product-detail .gp-pd236-carousel :is(.gp-product-related-product,.gp-product-related-article){flex-basis:min(92%,24rem);width:min(92%,24rem)}
 .gp-product-detail .gp-pd236-carousel .gp-product-related-article__media{height:clamp(8.5rem,42vw,10.5rem)}
 .gp-product-detail .gp-pd230-discover .gp-product-related-article__body h3{font-size:1.07rem;min-height:0}
 .gp-product-detail .gp-pd230-discover .gp-product-related-article__footer{align-items:flex-start}
}
@media(max-width:360px){
 .gp-product-detail .gp-pd230-discover .gp-product-related-article__footer{display:block}
 .gp-product-detail .gp-pd230-discover .gp-product-related-article__link{margin-top:.5rem}
}


/* 239: Specific content geometry, loaded after site-wide styles.
 * Do not prescribe a hard number of lines to factual, dynamic content. */
.gp-product-detail .gp-product-editorial217__grid:has(> .gp-product-editorial217__item:only-child){
 grid-template-columns:minmax(0,1fr);
}
.gp-product-detail .gp-product-editorial217__grid > .gp-product-editorial217__item:only-child{
 grid-column:1/-1;min-height:0;align-content:start;
}
.gp-product-detail .gp-product-editorial217__grid > .gp-product-editorial217__item:only-child > div > p{
 width:100%;max-width:min(100%,127ch);margin:0;
 text-wrap:balance;hyphens:none;word-break:normal;overflow-wrap:break-word;
 line-height:1.58;
}
.gp-product-detail .gp-product-editorial217__item > div > p{
 hyphens:none;word-break:normal;
}
/* 50/50 column split remains; shorter neutral copy + full available measure
 * prevents the artificial third desktop line seen in 238. */
.gp-product-detail .gp-pd228-voucher{
 grid-template-columns:minmax(0,1fr) minmax(0,1fr);
 column-gap:clamp(1.2rem,2.5vw,2.5rem);
}
.gp-product-detail .gp-pd228-voucher__intro{gap:clamp(.9rem,1.55vw,1.4rem)}
.gp-product-detail .gp-pd228-voucher__copy{min-width:0;flex:1}
.gp-product-detail .gp-pd228-voucher__copy > p{
 max-width:100%;line-height:1.5;text-wrap:balance;
 hyphens:none;word-break:normal;overflow-wrap:break-word;
}
.gp-product-detail .gp-pd228-voucher__terms{
 max-width:min(100%,48ch);line-height:1.5;text-wrap:balance;
 hyphens:none;word-break:normal;overflow-wrap:break-word;
}
@media(max-width:850px){
 .gp-product-detail .gp-pd228-voucher{row-gap:1rem}
 .gp-product-detail .gp-product-editorial217__grid > .gp-product-editorial217__item:only-child > div > p{max-width:100%;text-wrap:pretty}
}
@media(max-width:430px){
 .gp-product-detail .gp-pd228-voucher__intro{align-items:start}
}


/* 241: The selected jump-link is a complete nav item.  A full item-width
 * underline is IN the item, not a detached rule below the entire bar. */
.gp-product-detail .gp-product-detail__jumpnav {
  padding-inline:clamp(.35rem,.8vw,.7rem);
}
.gp-product-detail .gp-product-detail__jumpnav-track {
  gap:clamp(.16rem,.36vw,.35rem);
  scroll-padding-inline:0;
}
.gp-product-detail .gp-product-detail__jumpnav a {
  position:relative;
  box-sizing:border-box;
  min-height:3.2rem;
  min-width:0;
  flex:1 1 auto;
  justify-content:center;
  padding:.68rem clamp(.35rem,.52vw,.62rem);
  border-bottom:0;
  border-radius:.5rem .5rem 0 0;
  white-space:normal;
  overflow-wrap:break-word;
  text-align:center;
  transition:background-color .15s ease,color .15s ease;
}
.gp-product-detail .gp-product-detail__jumpnav a::after {
  content:"";
  position:absolute;
  left:.35rem;right:.35rem;bottom:.25rem;
  height:2.5px;
  border-radius:3px;
  background:#35694f;
  opacity:0;
  transform:scaleX(.64);
  transition:opacity .15s ease,transform .15s ease;
}
.gp-product-detail .gp-product-detail__jumpnav a[aria-current] {
  background:rgba(65,125,90,.075);
  color:#234b39;
}
.gp-product-detail .gp-product-detail__jumpnav a[aria-current]::after {
  opacity:1;
  transform:scaleX(1);
}
.gp-product-detail .gp-product-detail__jumpnav a:hover {background:rgba(65,125,90,.055)}
.gp-product-detail .gp-product-detail__jumpnav a:focus-visible {
  outline:2px solid #35694f;outline-offset:-3px;
}
/* 241: Compact coupon. No oversized coupon-code input spanning the right column.
 * Two responsive content zones; smaller controls; all offer conditions remain
 * visible and all verified terms still come from the existing WP configuration. */
.gp-product-detail .gp-pd228-voucher {
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
  align-items:center;
  column-gap:clamp(1rem,1.8vw,1.7rem);
  row-gap:.7rem;
  padding:clamp(.8rem,1.12vw,1.05rem) clamp(1rem,1.7vw,1.55rem);
  border:var(--gp-pd-border,1px solid #dce8e0);
  border-radius:var(--gp-ui-radius-card,1rem);
}
.gp-product-detail .gp-pd228-voucher__intro {
  align-items:center;
  gap:clamp(.75rem,1.2vw,1rem);
  min-width:0;
}
.gp-product-detail .gp-pd228-voucher__icon {
  flex:0 0 2.25rem;
  width:2.25rem;height:2.25rem;
  border-radius:.65rem;
}
.gp-product-detail .gp-pd228-voucher__icon svg {width:1.125rem;height:1.125rem}
.gp-product-detail .gp-pd228-voucher__copy h2 {
  margin:0 0 .2rem;
  font-size:clamp(.97rem,1.12vw,1.08rem);
  line-height:1.32;
}
.gp-product-detail .gp-pd228-voucher__copy > p {
  margin:0;
  max-width:60ch;
  font-size:clamp(.78rem,.87vw,.86rem);
  line-height:1.48;
  text-wrap:pretty;
}
.gp-product-detail .gp-pd228-voucher__details {
  width:min(100%,31rem);
  min-width:0;
  justify-self:end;
  align-content:center;
  gap:.38rem;
}
.gp-product-detail .gp-pd228-voucher__code {
  width:100%;
  display:grid;
  grid-template-columns:minmax(0,19rem) auto;
  gap:.48rem;
  justify-content:end;
  align-items:center;
}
.gp-product-detail .gp-pd228-voucher__code code {
  box-sizing:border-box;
  min-width:0;
  min-height:2.45rem;
  padding:.42rem .65rem;
  border:1px solid #bed9c9;
  border-radius:.58rem;
  font-size:.9rem;
  letter-spacing:.045em;
}
.gp-product-detail .gp-pd228-voucher__code button {
  box-sizing:border-box;
  min-width:0;
  min-height:2.45rem;
  padding:.44rem clamp(.7rem,1vw,.9rem);
  border-radius:.58rem;
  font-size:.79rem;
  line-height:1.25;
  white-space:nowrap;
}
.gp-product-detail .gp-pd228-voucher__terms {
  margin:0;
  width:100%;
  max-width:100%;
  color:#5b7064;
  font-size:clamp(.74rem,.81vw,.8rem);
  line-height:1.42;
  text-wrap:pretty;
  hyphens:manual;
}
@container gp-product (max-width:48rem) {
  .gp-product-detail .gp-pd228-voucher {grid-template-columns:minmax(0,1fr)}
  .gp-product-detail .gp-pd228-voucher__details {justify-self:stretch;width:100%;max-width:none}
}
@media (max-width:850px) {
  .gp-product-detail .gp-pd228-voucher {grid-template-columns:minmax(0,1fr);row-gap:.75rem}
  .gp-product-detail .gp-pd228-voucher__details {justify-self:stretch;width:100%;max-width:none}
}
@media (max-width:360px) {
  .gp-product-detail .gp-pd228-voucher__code {grid-template-columns:minmax(0,1fr)}
  .gp-product-detail .gp-pd228-voucher__code button {width:100%}
}
@media (prefers-reduced-motion:reduce) {
  .gp-product-detail .gp-product-detail__jumpnav a,
  .gp-product-detail .gp-product-detail__jumpnav a::after {transition:none}
}
