/* Product reading layout. Anchor margins add to the global 110px scroll padding. */
.product-detail { --detail-line:#dfe8ee; --detail-muted:#617887; background:#fff; }
.product-detail .wrap { max-width:1200px; }
.product-breadcrumbs { display:flex; flex-wrap:wrap; align-items:center; gap:12px; padding-block:25px; color:var(--detail-muted); font-size:12px; }
.product-breadcrumbs a { padding-block:5px; }
.product-breadcrumbs a:hover { color:var(--blue); }
.product-overview { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); gap:60px; align-items:center; padding-bottom:54px; scroll-margin-top:0; }
.product-overview>* { min-width:0; }
.product-visual { margin:0; background:#f4f7f9; border:1px solid #e8eef2; }
.product-visual>a { display:block; }
.product-visual img { width:100%; height:408px; object-fit:contain; padding:22px; mix-blend-mode:multiply; }
.product-visual figcaption { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px 22px; border-top:1px solid var(--detail-line); color:var(--detail-muted); font-size:12px; }
.product-visual figcaption>a { display:inline-flex; align-items:center; gap:12px; color:var(--blue); }
.product-labels { display:flex; align-items:center; flex-wrap:wrap; gap:12px; color:var(--blue); font-size:12px; }
.product-labels>span:first-child { border:1px solid #d8e8f1; background:#f1f7fa; padding:4px 10px; }
.product-model { font-family:"Segoe UI",Arial,sans-serif; letter-spacing:.8px; overflow-wrap:anywhere; }
.product-summary h1 { color:#183d54; font-size:clamp(28px,2.6vw,38px); font-weight:600; line-height:1.45; letter-spacing:.3px; margin:17px 0 18px; text-wrap:balance; }
.product-lead { font-size:16px; line-height:1.9; margin:0; color:#506a7c; max-width:36em; }
.product-highlights { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:28px 0; padding-block:20px; border-block:1px solid var(--detail-line); gap:18px; }
.product-highlights>div { min-width:0; }
.product-highlights dt { font-size:12px; color:var(--detail-muted); line-height:1.6; margin-bottom:8px; }
.product-highlights dd { margin:0; font-size:20px; font-weight:600; line-height:1.5; color:#1b506e; overflow-wrap:anywhere; }
.product-actions { display:flex; flex-wrap:wrap; align-items:stretch; gap:12px; margin-top:26px; }
.product-actions .button,.product-secondary { display:inline-flex; justify-content:center; align-items:center; gap:20px; min-height:48px; padding:12px 20px; font-size:14px; }
.product-secondary { border:1px solid #cedde6; color:var(--blue); background:#fff; }
.product-secondary:hover { background:#f1f7fa; border-color:var(--blue); }
.product-guidance { margin:16px 0 0; font-size:12px; line-height:1.8; color:var(--detail-muted); }
.product-document-area { background:#f3f7fa; border-top:1px solid #e2ebf1; padding:42px 0 58px; }
.product-document-layout { display:grid; grid-template-columns:204px minmax(0,1fr); gap:36px; align-items:start; }
.product-toc { position:sticky; top:115px; min-width:0; }
.product-toc-heading { display:block; color:#264b64; font-size:12px; letter-spacing:1px; padding:6px 14px 16px; }
.product-toc nav { display:grid; gap:5px; }
.product-toc nav a { display:flex; align-items:baseline; gap:13px; padding:12px 14px; min-height:46px; color:#456176; font-size:14px; line-height:1.65; border-left:2px solid transparent; }
.product-toc nav a:hover,.product-toc nav a:focus-visible { border-left-color:var(--blue); color:var(--blue); background:#e8f1f7; }
.product-toc-number { font-size:11px; color:#8da4b3; flex:none; font-family:"Segoe UI",Arial,sans-serif; }
.product-toc-back { display:block; padding:20px 14px 6px; margin-top:16px; border-top:1px solid var(--detail-line); color:var(--detail-muted); font-size:12px; }
.product-sections { min-width:0; display:grid; gap:22px; }
.product-section { min-width:0; padding:28px 32px 30px; background:white; border:1px solid #e1eaf0; scroll-margin-top:5px; }
.product-section:target { border-color:#9fbfD1; }
.product-section-heading { display:flex; gap:14px; align-items:baseline; margin-bottom:22px; }
.product-section-heading>span { font-family:"Segoe UI",Arial,sans-serif; font-size:12px; font-weight:600; color:#7d9bad; }
.product-section-heading h2 { font-size:23px; font-weight:600; line-height:1.5; color:#21475f; margin:0; }
.product-section .rich-text { overflow:visible; font-size:15px; line-height:1.9; color:#486273; }
.product-section .rich-text p { color:inherit; margin:0 0 14px; }
.product-section .rich-text>:last-child { margin-bottom:0; }
.product-section .rich-text h3 { margin:22px 0 12px; font-size:16px; font-weight:600; color:#274e67; }
.product-section .rich-text ul,.product-section .rich-text ol { margin:0; padding-left:22px; }
.product-section .rich-text li { margin-bottom:10px; }
.section-features .rich-text>ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; list-style:none; padding:0; }
.section-features .rich-text>ul>li { padding:18px 20px; margin:0; background:#f5f8fa; border-top:2px solid #d4e6f1; }
.section-features .rich-text>ul strong { display:block; color:#265774; font-weight:600; margin-bottom:7px; }
.section-configuration .rich-text:not(:has(> ul,> ol)) { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:64px; row-gap:20px; align-items:start; }
.section-configuration .rich-text:not(:has(> ul,> ol))>p { min-width:0; min-height:1.8em; margin:0; padding:0 6px; border:0; background:transparent; line-height:1.8; overflow-wrap:anywhere; text-wrap:pretty; }
.section-configuration .rich-text:has(> ul,> ol) { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:64px; row-gap:20px; align-items:start; }
.section-configuration .rich-text>p.configuration-note { grid-column:1/-1; padding:3px 2px 0; border:0; background:transparent; color:var(--detail-muted); text-indent:0; }
.section-configuration .rich-text>ul,.section-configuration .rich-text>ol { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:64px; row-gap:20px; align-items:start; list-style:none; padding:0; margin:0; }
.section-configuration .rich-text>ul>li,.section-configuration .rich-text>ol>li { min-width:0; min-height:1.8em; margin:0; padding:0 6px; border:0; background:transparent; line-height:1.8; overflow-wrap:anywhere; text-wrap:pretty; }
.section-configuration .rich-text>ul>li strong,.section-configuration .rich-text>ol>li strong { color:#265774; font-weight:600; }
.section-configuration .rich-text>ul+p,.section-configuration .rich-text>ol+p { margin-top:18px; }
.section-configuration .rich-text:has(> ul,> ol)>p { grid-column:1/-1; }
.section-configuration .rich-text:has(> ul,> ol)>ul,.section-configuration .rich-text:has(> ul,> ol)>ol { grid-column:1/-1; }
.product-table-scroll { max-width:100%; overflow-x:auto; overscroll-behavior-inline:contain; margin:16px 0; }
.product-table-hint { display:none; }
.product-section .rich-text table.product-spec-table { display:table; width:100%; max-width:none; margin:0; border-collapse:collapse; font-size:14px; line-height:1.85; }
.product-section .rich-text table.product-spec-table:not(.is-wide) { table-layout:fixed; }
.product-section .rich-text .product-spec-table:not(.is-wide) tr>*:first-child { width:31%; }
.product-section .rich-text .product-spec-table th,.product-section .rich-text .product-spec-table td { min-width:0; padding:13px 18px; border:1px solid #e4ecf1; vertical-align:top; font-size:14px; line-height:1.85; overflow-wrap:anywhere; }
.product-section .rich-text .product-spec-table th { background:#eaf2f7; color:#325d78; font-weight:500; }
.product-section .rich-text .product-spec-table td:first-child { color:#456377; }
.product-section .rich-text .product-spec-table tr:nth-child(odd)>td { background:#f8fafc; }
.product-section .rich-text .product-spec-table.is-wide { min-width:620px; }
.product-source-note { font-size:12px; color:#7a8f9d; line-height:1.8; padding:0 2px; margin:0; }
@media(max-width:1100px) {
 .product-overview { gap:34px; }
 .product-highlights { gap:12px; }
 .product-highlights dd { font-size:18px; }
 .product-document-layout { grid-template-columns:175px minmax(0,1fr); gap:24px; }
 .product-section { padding:26px; }
}
@media(max-width:960px) {
 .product-overview { grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:28px; }
 .product-visual img { height:330px; padding:18px; }
 .product-summary h1 { font-size:28px; }
 .product-lead { font-size:14px; }
 .product-highlights { grid-template-columns:1fr; gap:8px; padding-block:14px; margin-block:18px; }
 .product-highlights>div { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:12px; align-items:baseline; }
 .product-highlights dt { margin:0; }
 .product-highlights dd { font-size:15px; }
 .product-actions { gap:8px; margin-top:18px; }
 .product-actions .button,.product-secondary { font-size:13px; gap:12px; padding:12px 15px; }
 .product-document-layout { display:block; }
 .product-toc { top:78px; z-index:8; background:#f3f7fa; margin:0 0 22px; padding:8px 0; border-bottom:1px solid #d9e5ec; }
 .product-toc-heading,.product-toc-back,.product-toc-number { display:none; }
 .product-toc nav { display:flex; gap:6px; overflow-x:auto; scrollbar-width:thin; padding-bottom:2px; }
 .product-toc nav a { flex-shrink:0; min-height:44px; align-items:center; border:1px solid #dbe6ed; padding:9px 14px; font-size:13px; white-space:nowrap; background:#fff; }
 .product-section { scroll-margin-top:50px; }
 .product-document-area { padding-top:16px; }
}
@media(max-width:640px) {
 .product-breadcrumbs { padding-block:14px; gap:9px; font-size:11px; }
 .product-overview { grid-template-columns:minmax(0,1fr); gap:25px; padding-bottom:30px; }
 .product-visual img { height:286px; padding:12px 24px; }
 .product-visual figcaption { padding:10px 14px; font-size:11px; }
 .product-labels { gap:10px; font-size:11px; }
 .product-summary h1 { font-size:27px; line-height:1.5; margin:13px 0 12px; text-wrap:pretty; }
 .product-lead { font-size:14px; line-height:1.9; }
 .product-highlights { grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; padding-block:16px; margin:21px 0; }
 .product-highlights>div { display:block; }
 .product-highlights dt { font-size:11px; line-height:1.7; margin-bottom:6px; }
 .product-highlights dd { font-size:clamp(13px,3.5vw,16px); line-height:1.6; }
 .product-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:20px; }
 .product-actions .button,.product-secondary { font-size:12px; gap:7px; padding:12px 10px; min-width:0; }
 .product-guidance { font-size:11px; margin-top:12px; }
 .product-toc { top:72px; margin-bottom:16px; padding-block:9px; }
 .product-toc nav a { padding:9px 12px; font-size:12px; }
 .product-document-area { padding-top:8px; padding-bottom:32px; }
 .product-sections { gap:16px; }
 .product-section { padding:21px 17px; scroll-margin-top:37px; }
 .product-section-heading { margin-bottom:17px; gap:10px; }
 .product-section-heading h2 { font-size:20px; }
 .product-section .rich-text { font-size:14px; line-height:1.9; }
 .product-section .rich-text .product-table-hint { display:block; color:var(--detail-muted); font-size:11px; margin-bottom:8px; }
 .section-features .rich-text>ul { grid-template-columns:minmax(0,1fr); gap:10px; }
 .section-features .rich-text>ul>li { padding:14px 16px; }
 .section-configuration .rich-text:not(:has(> ul,> ol)) { grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:18px; row-gap:14px; }
 .section-configuration .rich-text:not(:has(> ul,> ol))>p { padding-inline:3px; font-size:13px; line-height:1.75; }
 .section-configuration .rich-text:has(> ul,> ol) { grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:18px; row-gap:14px; }
 .section-configuration .rich-text>ul,.section-configuration .rich-text>ol { grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:18px; row-gap:14px; }
 .section-configuration .rich-text>ul>li,.section-configuration .rich-text>ol>li { font-size:13px; line-height:1.75; }
 .product-section .rich-text .product-spec-table th,.product-section .rich-text .product-spec-table td { padding:11px 10px; font-size:13px; line-height:1.85; }
 .product-section .rich-text .product-spec-table:not(.is-wide) tr>*:first-child { width:36%; }
 .product-source-note { font-size:11px; padding-inline:2px; }
}
