/* webBeam invoice / quotation template. A4 = 595.5pt x 842.25pt, measured from the original PDF. */
@font-face { font-family: 'Open Sans'; src: url('/vendor/open-sans-latin-wght-normal.woff2') format('woff2'); font-weight: 300 800; font-display: block; }
@font-face { font-family: 'Hanken Grotesk'; src: url('/vendor/hanken-grotesk-latin-wght-normal.woff2') format('woff2'); font-weight: 100 900; font-display: block; }

.page { position: relative; width: 595.5pt; height: 842.25pt; background: #fff; overflow: hidden; color: #111;
  font-family: 'Open Sans', Arial, sans-serif; font-size: 9pt; line-height: 1.3; text-align: left; box-sizing: border-box; }
.page *, .page *::before, .page *::after { box-sizing: border-box; }
.page img { position: absolute; display: block; max-width: none; }
.page .hdr { left: 0; top: 0; width: 595.5pt; height: 56.5pt; }
.page .ftr { left: 0; top: 742.9pt; width: 595.5pt; height: 99.35pt; }
.page .hr { position: absolute; left: 0; right: 0; top: 66pt; border-top: 0.8pt solid #1b2a6b; }
.page .ptitle { position: absolute; left: 0; right: 0; top: 72pt; text-align: center; font-weight: 700; font-size: 11.6pt; line-height: 15pt; }
.page .content { position: absolute; left: 17.4pt; right: 17.4pt; top: 94pt; height: 628pt; overflow: hidden; }
.page .wm { position: absolute; left: 0; right: 0; top: 330pt; text-align: center; font-weight: 800; font-size: 54pt; line-height: 1;
  color: rgba(0, 0, 0, .095); transform: rotate(-52deg); pointer-events: none; letter-spacing: 0; white-space: nowrap; }
.page .pgno { position: absolute; left: 0; right: 0; top: 726pt; text-align: center; font-size: 10pt; }

/* tables */
.page table { border-collapse: collapse; width: 100%; table-layout: fixed; }
.page td, .page th { vertical-align: middle; word-wrap: break-word; overflow-wrap: anywhere; }
.page .money { font-family: 'Hanken Grotesk', 'Open Sans', sans-serif; }
.page .c { text-align: center; } .page .r { text-align: right; }

.page .meta td { height: 27pt; padding: 0 8pt; border: 0.7pt solid #e1e8f4; font-size: 8.6pt; line-height: 1.2; }
.page .meta tr:nth-child(even) td { background: #f7faff; }
.page .meta td.l { font-weight: 700; }
.page .meta.inv { border: 0.8pt solid #111; }
.page .meta.inv td { border-left: 0.8pt solid #111; }
.page .meta.inv td:last-child { border-right: 0.8pt solid #111; }
.page .meta.quo { margin-top: 0; }
.page .meta.quo td { border: 0.7pt solid #d3dae6; background: #fff !important; }
.page .meta.quo td.l { color: #1f6feb; }
.page .meta.quo td { height: 27.7pt; }

.page .items { margin-top: 0; }
.page .items th { background: #0b1f3f; color: #fff; font-weight: 700; font-size: 9pt; height: 36pt; padding: 0 5pt; border: 0.7pt solid #0b1f3f; border-right-color: #3a4a68; }
.page .items td { padding: 3pt 6pt; border-bottom: 0.7pt solid #e1e8f4; border-left: 0.8pt solid #111; border-right: 0.8pt solid #111; font-size: 8.8pt; height: 36pt; line-height: 1.2; }
.page .items tr:nth-child(even) td { background: #f7faff; }
.page .items td:first-child { border-left: 0.8pt solid #e1e8f4; } .page .items td:last-child { border-right: 0.8pt solid #e1e8f4; }
.page .items td.t { white-space: pre-line; }
.page .items td.d { white-space: pre-line; }
.page .items td.m { font-size: 8.6pt; padding: 3pt 2pt; white-space: nowrap; }
.page .items.quo th { background: #132a5e; height: 29pt; }
.page .items.quo td { height: 38.7pt; }
.page .items.quo td:first-child { border-left: 0.8pt solid #111; } .page .items.quo td:last-child { border-right: 0.8pt solid #111; }
.page .items.quo { margin-top: 10pt; }

.page .intro { margin: 10pt 0 0; font-size: 9.3pt; line-height: 1.35; }
.page .quo-intro { margin: 8pt 0 0; font-size: 9.7pt; line-height: 1.4; text-align: justify; white-space: pre-line; }
.page .gap { height: 40pt; }

.page .row2 { display: flex; justify-content: space-between; align-items: flex-start; gap: 16pt; margin-top: 7pt; }
.page .pay { flex: 1; padding: 5pt 0 0 5.5pt; font-size: 8.8pt; line-height: 18pt; }
.page .pay h4, .page h4.h { margin: 0; font-size: 9pt; font-weight: 700; line-height: 18pt; }
.page .tot { width: 229pt; flex: none; border: 0.7pt solid #e1e8f4; }
.page .tot td { height: 27pt; padding: 0 7pt; border: 0.7pt solid #e1e8f4; font-size: 9.4pt; color: #444; }
.page .tot td:first-child { width: 50%; }
.page .tot td.v { text-align: right; font-family: 'Hanken Grotesk', sans-serif; font-size: 9.6pt; color: #555; }
.page .tot tr.b td { font-weight: 700; color: #111; }
.page .tot tr.due td { background: #1a7bff; color: #fff; font-weight: 700; font-size: 9.4pt; }
.page .tot.quo { width: 184pt; border: 0.8pt solid #111; }
.page .tot.quo td { border: 0.7pt solid #d3dae6; }
.page .tot.quo tr.due td { background: #132a5e; border-color: #132a5e; }

.page .sec { margin-top: 11pt; }
.page .sec h4 { margin: 0 0 1pt; font-size: 9.6pt; font-weight: 700; }
.page ul.bl { margin: 0; padding-left: 15pt; font-size: 9.4pt; line-height: 1.55; }
.page ul.bl li { padding-left: 2pt; }
.page .inv-notes ul.bl { font-size: 9.6pt; line-height: 20pt; }
.page .inv-notes ul.bl li { line-height: 1.55; margin-bottom: 4pt; }
.page .inv-notes h4 { margin-bottom: 4pt; font-size: 10pt; }

.page .issued { display: flex; justify-content: space-between; margin-top: 28pt; font-size: 9pt; }
.page .issued h4 { margin: 0 0 3pt; color: #20a4e8; font-size: 10pt; font-weight: 700; }
.page .issued p { margin: 0; line-height: 22pt; }
.page .issued .ty { text-align: right; padding-top: 19pt; font-size: 9.6pt; }
.page .issued .ty span { display: block; color: #20a4e8; margin-top: 3pt; font-weight: 400; }

.page .sign { margin-top: 12pt; border: 0.7pt solid #d8e0ee; }
.page .sign th { background: #f1f5fc; font-size: 7.4pt; font-weight: 700; text-align: left; padding: 8pt 8pt; border: 0.7pt solid #d8e0ee; }
.page .sign td { vertical-align: top; padding: 8pt 8pt 14pt; font-size: 7pt; border: 0.7pt solid #d8e0ee; line-height: 1.3; }
.page .sign ul { margin: 0; padding-left: 10pt; list-style: disc; }
.page .quo-sec { margin-top: 0; }
.page .quo-sec h4 { margin: 0; padding: 10pt 0 2pt; font-size: 10.6pt; font-weight: 700; }
.page .quo-sec ul.bl { font-size: 9.9pt; line-height: 1.38; padding-left: 15pt; }
.page .quo-sec ul.bl li { margin-bottom: 1pt; }
.page .row2.quo-r { margin-top: 5pt; gap: 10pt; }
.page .row2.quo-r .quo-sec { flex: 1; padding-left: 3pt; }

/* preview + print */
.pv-outer { margin: 0 auto; position: relative; }
.pv-inner { width: 794px; transform-origin: top left; position: absolute; left: 0; top: 0; }
.pv-inner .page { margin-bottom: 18px; box-shadow: 0 1px 3px rgba(11,31,63,.12), 0 8px 24px rgba(11,31,63,.10); }
#print-root { position: absolute; left: -10000px; top: 0; }
@media print {
  @page { size: 595.5pt 842.25pt; margin: 0; }
  html, body { background: #fff !important; margin: 0 !important; }
  body > *:not(#print-root) { display: none !important; }
  #print-root { position: static !important; left: 0 !important; }
  #print-root .page { height: 841pt; break-after: page; page-break-after: always; box-shadow: none; }
  #print-root .page:last-child { break-after: auto; page-break-after: auto; }
}
