@import url(https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,300,700,700italic,400italic); body { font-family: 'Source Sans Pro', sans-serif; } .label{ font-weight: bold; } .headerRight { float: right; width: 40%; } .headerRight .content { display: table; width: 100%; } .headerRight .content .contentRow { display: table-row; } .headerRight .content .contentRow .label{ display: table-cell; } .headerRight .content .contentRow .invoiceNumber, .headerRight .content .contentRow .invoiceDate, .headerRight .content .contentRow .invoiceDateDue, .headerRight .content .contentRow .balanceDue{ display: table-cell; } .headerRight .content .contentRow .balanceDue{ font-weight: bold; } .headerLeft { } h1{ margin-top: 0px; margin-bottom: .5em; } .customerAddress, .careOf{ margin-top: 1em; } .careOf{ font-weight: bold; } .currencyCell, .rateCell, .quantityCell, .labelCell { text-align: right; } .invoiceTable { padding-top: 0em; padding-bottom: 5em; width: 100%; } .invoiceComments { padding-bottom: 10px; } table { border-collapse: collapse; } th { text-align: right; padding-right: 5px; } td { padding-right: 5px; } .quantityHeading, .rateHeading, .amountHeading { width: 10%; } .headingRow{ border-bottom: 2px solid #ddd; } .ruleRow{ border-bottom: 1px solid #ddd; } .totalRow, .balancedueRow { font-weight: bold; } .commentRow td{ padding-left: 10px; font-size: 0.8em; } #pageFooter { display:flex; justify-content:center; align-items:flex-end; } #pageFooter:after { counter-increment: page; content: counter(page); }