/* Product presentation only; existing public brand and Command Center stay frozen. */
body:has(.product-detail), body:has(.learning-hero) { min-width:0; }
.product-card .product-card__purchase { display:block; }
.product-card .catalog-card__price { display:block; margin-bottom:14px; }
.product-card__actions { display:flex; flex-wrap:wrap; gap:10px; }
.product-card__actions a { min-height:44px; min-width:44px; padding:12px 16px; font-size:14px; }
.product-card .product-format { font-size:13px; line-height:1.5; }
.product-card__body { min-width:0; }
.product-detail { max-width:var(--max); margin:auto; padding:28px 24px 80px; overflow-wrap:anywhere; }
.product-breadcrumb ol { display:flex; flex-wrap:wrap; align-items:center; list-style:none; column-gap:10px; row-gap:0; padding:0; margin:24px 0; font-size:14px; }
.product-breadcrumb li { display:inline-flex; align-items:center; min-width:0; max-width:100%; min-height:44px; overflow-wrap:anywhere; }
.product-breadcrumb li + li { gap:10px; }
.product-breadcrumb li + li::before { content:"/"; flex:0 0 auto; color:#637081; }
.product-breadcrumb a { display:inline-flex; align-items:center; min-height:44px; text-decoration:underline; text-underline-offset:4px; }
.product-detail .product-hero { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr); column-gap:52px; padding:38px 0 60px; min-height:0; }
.product-detail .product-hero::after { display:none; }
.product-detail .product-hero .eyebrow { color:var(--blue); }
.product-detail .product-hero > :not(img) { grid-column:1; }
.product-detail .product-hero > img { grid-column:2; grid-row:1 / 7; width:100%; height:auto; align-self:start; border-radius:20px; }
.product-detail .product-hero h1 { font-size:clamp(36px,5vw,64px); letter-spacing:-.05em; line-height:1.05; margin:0 0 18px; }
.product-detail .product-format { margin:0 0 16px; font-weight:700; color:var(--blue); line-height:1.6; }
.product-summary { color:var(--muted); font-size:20px; line-height:1.6; margin:0 0 22px; }
.product-purchase .catalog-card__price { font-size:28px; }
.product-purchase__note { display:block; font-size:14px; margin:6px 0 18px; }
.product-purchase__actions { display:flex; flex-wrap:wrap; gap:12px; }
.product-purchase__actions a,.product-final-buy > a { min-height:48px; padding:12px 22px; }
.product-purchase__kiwify,.product-legal { font-size:14px; color:var(--muted); line-height:1.6; }
.product-section { padding:36px 0; border-top:1px solid var(--line); scroll-margin-top:90px; }
.product-section h2 { margin:0 0 22px; font-size:clamp(27px,3vw,38px); letter-spacing:-.04em; line-height:1.2; }
.product-section h3 { margin:20px 0 14px; font-size:22px; }
.product-section p,.product-section li,.product-section dd { max-width:78ch; line-height:1.75; }
.product-section li + li { margin-top:10px; }
.product-section ul,.product-section ol { padding-left:24px; }
.product-overview__grid { display:grid; grid-template-columns:1fr 1fr; gap:40px; }
.product-sample__block { background:#f0f4fa; border:1px solid var(--line); padding:24px; border-radius:14px; }
.product-sample__code { white-space:pre-wrap; overflow-wrap:anywhere; word-break:break-word; max-width:100%; margin:12px 0; font-size:15px; line-height:1.7; }
.product-sample__note,.product-sample__label { color:var(--muted); font-size:14px; }
.product-meta__list > div { display:grid; grid-template-columns:200px minmax(0,1fr); gap:28px; padding:18px 0; border-bottom:1px solid var(--line); }
.product-meta__list dt,.product-faq dt { font-weight:700; }
.product-meta__list dd,.product-faq dd { margin:0; }
.product-meta__list ul { margin:0; }
.product-faq__item + .product-faq__item { margin-top:24px; }
.product-faq dd { margin-top:10px; }
.product-detail a:focus-visible,.product-card a:focus-visible { outline:3px solid #174ea6; outline-offset:4px; }
.product-detail a:not(.button):not(.catalog-card__buy) { text-decoration:underline; text-underline-offset:4px; }
@media(max-width:800px) {
 .product-detail .product-hero { grid-template-columns:1fr; padding-top:20px; }
 .product-detail .product-hero > img { grid-column:1; grid-row:auto; max-width:440px; margin:8px 0 28px; }
 .product-overview__grid { grid-template-columns:1fr; gap:8px; }
 .product-meta__list > div { grid-template-columns:1fr; gap:10px; }
}
@media(max-width:400px) {
 .product-detail { padding:20px 20px 60px; }
 .product-card__actions { flex-direction:column; }
 .product-card__actions a { width:100%; }
 .product-purchase__actions { flex-direction:column; }
 .product-sample__block { padding:16px; }
}
