/* 242: Coupon card redesign + related-product teaser copy.
 * Goal: quieter geometry, aligned desktop baselines, compact action panel,
 * and short teaser copy in product cards to avoid awkward empty areas.
 */

/* Product coupon / voucher */
.gp-product-detail .gp-pd228-voucher{
  grid-template-columns:minmax(0,1.16fr) minmax(18rem,.84fr);
  align-items:start;
  gap:clamp(.9rem,1.7vw,1.35rem) clamp(1rem,1.9vw,1.85rem);
  padding:clamp(.95rem,1.55vw,1.25rem) clamp(1rem,1.85vw,1.45rem);
  background:linear-gradient(180deg,#eff8f2 0%,#eef7f1 100%);
  border:1px solid #dbe8df;
  border-radius:1.1rem;
}
.gp-product-detail .gp-pd228-voucher__intro{
  align-items:flex-start;
  gap:clamp(.8rem,1.15vw,1rem);
}
.gp-product-detail .gp-pd228-voucher__icon{
  flex:0 0 3rem;
  width:3rem;
  height:3rem;
  margin-top:.1rem;
  border-radius:.85rem;
  background:#dff0e5;
  color:#2d6a53;
}
.gp-product-detail .gp-pd228-voucher__icon svg{width:1.3rem;height:1.3rem}
.gp-product-detail .gp-pd228-voucher__copy h2{
  margin:0 0 .3rem;
  font-size:clamp(1.02rem,1.18vw,1.2rem);
  line-height:1.28;
}
.gp-product-detail .gp-pd228-voucher__copy > p{
  max-width:54ch;
  font-size:clamp(.8rem,.88vw,.9rem);
  line-height:1.5;
  color:#556b60;
}
.gp-product-detail .gp-pd228-voucher__details{
  display:grid;
  justify-self:stretch;
  align-self:start;
  width:100%;
  max-width:none;
  gap:.48rem;
  padding:.85rem;
  border:1px solid #d6e5dc;
  border-radius:.95rem;
  background:rgba(255,255,255,.72);
  box-shadow:0 2px 10px rgba(34,68,52,.035);
}
.gp-product-detail .gp-pd228-voucher__code{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:stretch;
  gap:.55rem;
}
.gp-product-detail .gp-pd228-voucher__code code{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:3rem;
  padding:.55rem .8rem;
  border:1px dashed #b7d0c1;
  border-radius:.78rem;
  background:#fff;
  color:#295b46;
  font-size:1rem;
  font-weight:850;
  letter-spacing:.05em;
  text-align:center;
}
.gp-product-detail .gp-pd228-voucher__code button{
  min-height:3rem;
  padding:.55rem 1rem;
  border-radius:.78rem;
  font-size:.84rem;
  font-weight:800;
}
.gp-product-detail .gp-pd228-voucher__terms{
  margin:0;
  padding-inline:.1rem;
  font-size:.77rem;
  line-height:1.5;
  color:#5c7066;
  text-wrap:pretty;
}

/* Related products: add controlled teaser area to reduce visual emptiness */
.gp-product-detail .gp-pd230-discover .gp-product-related-product__body{
  gap:.45rem;
}
.gp-product-detail .gp-pd230-discover .gp-product-related-product h3{
  margin:.1rem 0 .15rem;
  font-size:clamp(1.02rem,1.12vw,1.18rem);
  line-height:1.3;
  min-height:2.6em;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}
.gp-product-detail .gp-pd230-discover .gp-product-related-product__summary{
  margin:0 0 .35rem;
  color:#5c6f65;
  font-size:clamp(.79rem,.86vw,.87rem);
  line-height:1.55;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  overflow:hidden;
  min-height:3.72em;
  text-wrap:pretty;
}
.gp-product-detail .gp-pd230-discover .gp-product-related-product__price{
  margin-top:auto;
  padding-top:.55rem;
}
.gp-product-detail .gp-pd230-discover .gp-product-related-product__link{
  margin-top:.15rem;
}

@media (max-width:1020px){
  .gp-product-detail .gp-pd228-voucher{
    grid-template-columns:minmax(0,1fr);
  }
  .gp-product-detail .gp-pd228-voucher__details{
    max-width:34rem;
  }
}
@media (max-width:640px){
  .gp-product-detail .gp-pd228-voucher__details{
    padding:.78rem;
    max-width:none;
  }
  .gp-product-detail .gp-pd228-voucher__code{
    grid-template-columns:minmax(0,1fr);
  }
  .gp-product-detail .gp-pd228-voucher__code button{
    width:100%;
  }
  .gp-product-detail .gp-pd230-discover .gp-product-related-product h3,
  .gp-product-detail .gp-pd230-discover .gp-product-related-product__summary{
    min-height:0;
  }
}
