@page {
  size: letter;
  margin: 0.45in;
}

body {
  margin: 0;
  font-family: Arial, Helvetica, sans-serif;
  color: #111;
  line-height: 1.2;
  font-size: 12.5px;
}

.card {
  max-width: 7.5in;
  margin: 0 auto;
}

h1 {
  margin: 0 0 4px;
  text-align: center;
  font-size: 22px;
}

.intro {
  margin: 0 0 8px;
  text-align: center;
  color: #555;
  font-size: 12px;
}

.section {
  margin-top: 8px;
  padding-top: 6px;
  border-top: 1px solid #ddd;
}

.section:first-of-type {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

.section h2 {
  margin: 0 0 4px;
  font-size: 14px;
}

.contact-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

.contact-table th,
.contact-table td {
  border: 1px solid #ccc;
  padding: 4px;
  vertical-align: top;
}

.contact-table th {
  font-size: 10px;
  text-transform: uppercase;
  background: #fafafa;
}

.contact-table td {
  height: 26px;
  font-size: 11px;
}

.col-type {
  width: 20%;
}

.col-name {
  width: 18%;
}

.col-company {
  width: 16%;
}

.col-phone {
  width: 16%;
}

.col-email {
  width: 18%;
}

.col-notes {
  width: 12%;
}

.service-col {
  width: 30%;
}

.account-col {
  width: 25%;
}

.portal-col {
  width: 20%;
}

.priority-notes-col {
  width: 25%;
}

.notes-row {
  height: 50px;
}

.two-col {
  display: table;
  width: 100%;
}

.two-col .col {
  display: table-cell;
  width: 50%;
  vertical-align: top;
  padding-right: 6px;
}

.field-label {
  display: block;
  font-size: 10px;
  font-weight: bold;
  color: #555;
  margin-bottom: 2px;
}

.line {
  height: 18px;
  border-bottom: 1px solid #999;
  margin-bottom: 6px;
}

.footer {
  margin-top: 8px;
  padding-top: 6px;
  border-top: 1px solid #ddd;
}

.footer-grid {
  display: table;
  width: 100%;
}

.footer-col {
  display: table-cell;
  vertical-align: middle;
}

.footer-logo img {
  max-width: 75px;
}

.footer-info {
  text-align: right;
  font-size: 10.5px;
}

.footer-info h3 {
  margin: 0;
  font-size: 12px;
}

.footer-info p {
  margin: 1px 0;
}

@media print {
  body {
    margin: 0;
  }

  .card {
    max-width: none;
  }
}
