/* Product HTML must not force the flex item wider than a phone. */
.product-description-content {width:100%;max-width:100%;min-width:0;overflow-wrap:anywhere;}
.product-description-content img {max-width:100%;height:auto;}
.product-description-content .xod-table-wrap {max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;}

/* XOD shared product editorial system; keep product content, images and anchor IDs. */
.product-description-content { width:100%; min-width:0; font-size:16px; line-height:1.65; scroll-margin-top:100px; }
.product-description-content :is(h2,h3,h4) { font-family:inherit!important; line-height:1.3!important; text-transform:none!important; letter-spacing:-.015em; border-left:0!important; padding-left:0!important; overflow-wrap:break-word; }
.product-description-content h2 { font-size:30px!important; margin-block:40px 18px!important; }
.product-description-content h3 { font-size:22px!important; margin-block:28px 12px!important; }
.product-description-content h4 { font-size:18px!important; margin-block:22px 10px!important; }
.product-description-content :is(p,li) { font-size:16px; line-height:1.65; }
.product-description-content img { max-width:100%; height:auto; }
.product-description-content :is(table,figure) { max-width:100%; }
.product-description-content :is(td,th) { line-height:1.55; }
.product-description-content a { text-underline-offset:3px; }
.product-description-content :is(h2,h3,h4)[id] { scroll-margin-top:100px; }
@media(max-width:959px) {
 .product-description-content h2 { font-size:24px!important; margin-block:30px 14px!important; }
 .product-description-content h3 { font-size:20px!important; margin-block:24px 12px!important; }
 .product-description-content h4 { font-size:17px!important; }
 .product-description-content :is(p,li,td,th) { font-size:15px; }
}

/* Headings start at the top of content groups, without added empty card padding. */
.product-description-content :is(article,section,div) > :is(h2,h3,h4):first-child { margin-top:0!important; }
.product-description-content .ku-cards { gap:24px; }
.product-description-content .ku-cards > .ku-card { border:0; border-radius:0; background:transparent; padding:0; }
@media(min-width:1024px) {
 .product-description-content .ku-cards:has(> .ku-card:nth-child(3):last-child) { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
