.catalog-packshot{display:flex;align-items:center;justify-content:center;height:178px;background:#fff;border-radius:9px;overflow:hidden;padding:6px;text-decoration:none}
.catalog-packshot img{width:100%;height:100%;object-fit:contain;display:block}
.catalog-card .catalog-name{min-height:58px}
.ab-v2 .product-hero{background:#fcf3f7;padding-block:28px 38px}
.product-hero .back{display:inline-block;color:#79445f;margin-bottom:19px}
.product-intro-grid{display:grid;grid-template-columns:minmax(235px,.75fr) minmax(0,1.35fr);gap:clamp(22px,4.5vw,70px);align-items:center}
.product-packshot{margin:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center;background:#fff;border:1px solid #ecdee7;border-radius:14px;min-width:0;overflow:hidden;padding:18px}
.product-packshot img{width:100%;height:290px;object-fit:contain}
.product-packshot figcaption{font-size:.72rem;line-height:1.4;color:#755b6c;text-align:center;padding-top:12px}
.product-intro-copy h1{font-size:clamp(2.3rem,4.8vw,4.4rem);letter-spacing:-.055em}
.product-deck{max-width:670px;margin-top:15px;color:#634f5e;font-size:1.02rem;line-height:1.62}
.product-summary{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:20px 0 0}
.product-summary>div{border:1px solid #ead8e2;background:#fff9fc;padding:9px 12px;border-radius:8px;min-width:0}
.product-summary>div:last-child{grid-column:1/-1}
.product-summary dt{font-size:.72rem;color:#79596c;font-weight:700}
.product-summary dd{font-size:.94rem;font-weight:800;margin:1px 0 0}
.product-reading{max-width:1040px;margin-inline:auto}
.product-jumps{display:flex;flex-wrap:wrap;gap:7px 18px;border-bottom:1px solid #e8d9e3;padding-bottom:16px;margin-bottom:27px;font-weight:750;font-size:.86rem}
.product-jumps a{text-decoration:underline;text-decoration-color:#b888a1;color:#703d56}
.product-section{margin:0 0 34px;scroll-margin-top:45px}
.product-section h2,.product-related h2,.product-reading .sourcebox h2{font-size:clamp(1.65rem,3vw,2.45rem);margin-bottom:12px;letter-spacing:-.04em}
.product-section>p{max-width:900px;color:#5b4856;line-height:1.7}
.product-section-head>p{font-size:.88rem;color:#78596c;margin-bottom:14px}
.ingredient-table-scroll{width:100%;overflow:auto;border:1px solid #e5d7df;border-radius:10px}
.ingredient-table{background:#fff;min-width:590px}
.ingredient-table td,.ingredient-table tbody th{padding:11px 14px;font-size:.86rem;line-height:1.45}
.ingredient-table thead th{background:#f7ebf2;color:#664458;letter-spacing:.03em;font-size:.7rem;padding:12px 14px}
.ingredient-table tbody th{width:30%;color:#49333f}
.ingredient-table tbody tr:hover{background:#fdf6fa}
.product-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.product-checks article{background:#fbf2f6;border:1px solid #eddee6;border-radius:10px;padding:16px}
.product-checks h3{font-size:1.15rem;line-height:1.15;margin-bottom:8px;letter-spacing:-.03em}
.product-checks p{font-size:.9rem;color:#634d5c;line-height:1.6}
.product-section .review-chip{background:#fbf2f6;border:1px solid #ebdce5;border-radius:9px;padding:12px 15px;margin-bottom:12px;max-width:500px}
.product-section .review-chip>span{font-size:.76rem}
.product-section .review-chip strong{font-size:1.15rem}
.product-section .review-chip small{font-size:.82rem}
.product-section .notice{margin:17px 0 0}
.product-section .notice p{font-size:.9rem;line-height:1.6}
.product-related{margin-top:30px}
.product-related>div{display:flex;flex-wrap:wrap;gap:8px}
.related-pill{padding:7px 12px;background:#f4e4ee;border:1px solid #e6d1df;border-radius:999px;text-decoration:none;font-weight:700;font-size:.84rem;color:#713e58}
.related-pill:hover{background:#edd5e4}
.product-reading .sourcebox{margin-top:25px}
.product-reading .sourcebox li{font-size:.86rem}
.product-return{margin-top:21px}
.product-section .faq .answer p{max-width:none}
@media(max-width:760px){
 .product-intro-grid{grid-template-columns:minmax(145px,.8fr) minmax(0,1.2fr);gap:20px}
 .product-packshot img{height:235px}
 .product-intro-copy h1{font-size:clamp(2rem,5vw,3rem)}
 .product-deck{font-size:.94rem}
 .product-checks{grid-template-columns:1fr}
 .product-section{margin-bottom:28px}
}
@media(max-width:520px){
 .product-intro-grid{grid-template-columns:1fr;gap:20px}
 .product-packshot{max-width:100%;padding:12px}
 .product-packshot img{height:215px}
 .product-intro-copy h1{font-size:2.45rem}
 .product-packshot figcaption{padding-top:7px}
 .product-hero .back{margin-bottom:12px}
 .product-jumps{font-size:.8rem;gap:9px 15px}
 .ab-v2 .product-body{padding-block:24px}
 .catalog-packshot{height:180px}
}
