/* Table-based product and pricing treatment. */
.reference-product-main { align-self: stretch; display: flex; flex-direction: column; justify-content: center; border: 1px solid #dce5f0; }
.reference-product-main p { display: grid; grid-template-columns: 150px minmax(0, 1fr); align-items: center; margin: 0; min-height: 54px; padding: 0; border-bottom: 1px solid #dce5f0; font-size: 15px; }
.reference-product-main p:last-child { border-bottom: 0; }
.reference-product-main p strong { align-self: stretch; display: flex; align-items: center; padding: 10px 14px; color: #4d6381; background: #f7faff; border-right: 1px solid #dce5f0; }
.reference-product-main p:not(:has(strong)) { padding-left: 15px; }
.reference-product-main p strong + * { padding: 10px 14px; }
.reference-product-main table { width: 100%; border-collapse: collapse; }
.reference-product-main th, .reference-product-main td { min-height: 54px; padding: 13px 14px; border-bottom: 1px solid #dce5f0; text-align: left; font-size: 15px; }
.reference-product-main tr:last-child th, .reference-product-main tr:last-child td { border-bottom: 0; }
.reference-product-main th { width: 150px; color: #4d6381; background: #f7faff; border-right: 1px solid #dce5f0; }
.reference-product-main td { color: #172c4c; font-weight: 600; }
.compact-specifications { border-top: 1px solid #dbe5f0; padding-top: 16px; margin-bottom: 18px; }
.compact-specifications h3 { display: none; }
.compact-specifications > div { gap: 0; border: 1px solid #dce5f0; background: #fbfdff; }
.compact-specifications span { flex: 1 1 190px; padding: 11px 14px; border-right: 1px solid #dce5f0; }
.compact-specifications span:last-child { border-right: 0; }
.compact-doc .invoice-lines { width: 100%; margin: 0; border: 1px solid #dce5f0; }
.compact-doc .invoice-lines table { width: 100%; table-layout: fixed; border-collapse: collapse; }
.compact-doc .invoice-lines th { padding: 13px 14px; background: #12366b; color: #fff; text-align: left; font-size: 13px; }
.compact-doc .invoice-lines th:nth-child(1) { width: 7%; }
.compact-doc .invoice-lines th:nth-child(2) { width: 44%; }
.compact-doc .invoice-lines th:nth-child(3) { width: 17%; }
.compact-doc .invoice-lines th:nth-child(4) { width: 10%; }
.compact-doc .invoice-lines th:nth-child(5) { width: 22%; }
.compact-doc .invoice-lines td { padding: 15px 14px; border-bottom: 1px solid #e2e9f2; vertical-align: top; }
.compact-doc .invoice-lines tbody tr:last-child td { border-bottom: 0; }
.compact-doc .invoice-lines td strong { display: block; color: #172c4c; }
.compact-doc .invoice-lines td span { display: block; margin-top: 5px; color: #68788e; font-size: 13px; }
.compact-doc .invoice-totals { display: grid; grid-template-columns: 1fr auto; width: min(100%, 430px); margin: 20px 0 0 auto; padding: 0; border: 1px solid #dce5f0; border-bottom: 3px solid #12366b; }
.compact-doc .invoice-totals p, .compact-doc .invoice-totals h2 { display: contents; }
.compact-doc .invoice-totals p::before, .compact-doc .invoice-totals h2::before { padding: 12px 15px; border-bottom: 1px solid #e2e9f2; font-size: 13px; }
.compact-doc .invoice-totals p:nth-child(1)::before { content: 'PRODUCT SUBTOTAL'; }
.compact-doc .invoice-totals p:nth-child(2)::before { content: 'FREIGHT'; }
.compact-doc .invoice-totals h2::before { content: 'TOTAL'; margin: 0; border-bottom: 0; color: #174bb5; font-size: 19px; font-weight: 800; }
.compact-doc .invoice-totals strong { padding: 12px 15px; border-bottom: 1px solid #e2e9f2; text-align: right; font-size: 13px; }
.compact-doc .invoice-totals h2 strong { border-bottom: 0; color: #174bb5; font-size: 19px; font-weight: 800; }
@media (max-width: 760px) { .reference-product-main p { grid-template-columns: 122px minmax(0, 1fr); } .compact-doc .invoice-lines { overflow-x: auto; } .compact-doc .invoice-lines table { min-width: 720px; } .compact-doc .invoice-totals { width: 100%; } }
