.compact-parties { border: 1px solid #dbe5f0; border-radius: 8px; overflow: hidden; margin: 20px 0 28px; }
.compact-party { padding: 18px 24px 19px; }
.compact-party + .compact-party { border-top: 1px solid #dbe5f0; }
.compact-party h3 { margin: 0 0 11px; color: #12366b; font-size: 17px; }
.party-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 34px; }
.party-columns p { margin: 7px 0; line-height: 1.42; overflow-wrap: anywhere; }
.reference-product { display: grid; grid-template-columns: 285px minmax(0, 1fr); align-items: center; gap: 32px; padding: 17px; border: 1px solid #dbe5f0; margin-bottom: 26px; }
.reference-product-image { min-height: 190px; display: flex; align-items: center; justify-content: center; background: #f7faff; overflow: hidden; }
.reference-product-image img { display: block; width: 100%; height: 100%; max-height: 255px; object-fit: contain; background: #fff; }
.reference-product-main p { margin: 11px 0; font-size: 16px; line-height: 1.45; }
.compact-specifications { border-top: 1px solid #dbe5f0; padding-top: 19px; margin-bottom: 14px; }
.compact-specifications h3 { color: #12366b; font-size: 17px; margin: 0 0 14px; }
.compact-specifications > div { display: flex; flex-wrap: wrap; gap: 10px 22px; font-size: 14px; }
.compact-specifications span { white-space: nowrap; }
.compact-doc .invoice-lines { margin-top: 8px; }
.compact-doc .invoice-lines th:nth-child(3), .compact-doc .invoice-lines th:nth-child(4), .compact-doc .invoice-lines th:nth-child(5), .compact-doc .invoice-lines td:nth-child(3), .compact-doc .invoice-lines td:nth-child(4), .compact-doc .invoice-lines td:nth-child(5) { white-space: nowrap; }
@media (max-width: 760px) { .party-columns, .reference-product { grid-template-columns: 1fr; } .reference-product { gap: 18px; } }
@media print { .compact-parties, .reference-product, .trade-terms, .bank-box { break-inside: avoid; } }
