html, body {
   margin: 0;
   padding: 0;
   font-family: sans-serif;
   font-size: 12pt;
}
   
body {
   background: white;
   -webkit-print-color-adjust: exact;
}

form.ng-submitted *.ng-invalid,
form *.ng-dirty.ng-invalid {
   background: #ffcccc !important;
   border: 1px solid red !important;
}

table {
   width: 100%;
}
   table.thinborder {
      border-collapse: collapse;
   }
   table.thinborder td, table.thinborder th {
      border: 1px solid black;
      padding: 0.25em;
   }

p {
   margin-bottom: 0;
   padding-bottom: 0;
}

.headingbox {
   border: 3px solid rgb(88, 88, 88);
   background: rgb(37, 37, 37);
   /* display: block; */
   /* height: 12em; */
   margin: 1em;
   /* min-width: 52em; */
   text-transform: uppercase;
}
   /* .headingbox div { */
      /* display: inline-block; */
      /* width: 26em; */
   /* } */
   .headingbox img {
      max-width: 100%;
      /* float: right;
      height: 100%;
      padding-right:2%; */
   }
   .headingbox h1 {
      font-weight: bold;
      font-size: 2em;
      margin-top: 0.75em;
      /* margin-left: 0.5em; */
      color:white;
   }
   .headingbox span {
      font-size: 1.5em;
      /* margin-left: 1em; */
      color:white;
   }

.infobox {
   border: 3px solid black;
   display: block;
   margin: 1em;
   margin-top: 0;
   padding: 1em;
   /* min-width: 52em; */
}
   .infobox h2 {
      color: rgb(58, 58, 58);
      font-weight: bold;
      font-size: 1.5em;
      margin: 0;
      margin-bottom: 0.5em;
   }
   .infobox h3 {
      color: rgb(58, 58, 58);
      font-weight: bold;
      font-size: 1.125em;
      margin: 0;
      margin-bottom: 0.5em;
   }

.infopadding {
   width: 3em;
}

.infoinput {
   border: 1px solid gray;
   width: 100%;
   margin-top: 0.25em;
   margin-bottom: 0.25em;
   line-height: 1.5em;
   -webkit-appearance: initial;
}

.paysignbox {
    border: 3px solid rgb(88, 88, 88);
    background: rgb(37, 37, 37);
    display: block;
    /* height: 8em; */
    padding: 1em;
    color:white;
}

.endsignbox {
    border: 3px solid rgb(88, 88, 88);
    background: rgb(37, 37, 37);
    display: block;
    margin: 1em;
    margin-top: 0;
    padding: 1em;
    /* min-width: 52em; */
    color:white;
}

.signbox {
   border: 1px solid black;
   display: inline-block;
   cursor: pointer;
   width: 10em;
   height: 5em;
   background-color: #c5c5c5;
}

.doccheck {
   display: inline-block;
   width: 1em;
   height: 1em;
   border: 2px solid rgb(226, 62, 57);
   margin: 0;
   margin-right: 1em;
}
    .doccheck.checked {
        background: rgb(226, 62, 57);
    }

.printonly {
   display: none;
}

.startnewpage {
   page-break-before: always;
}

.contactimg {
   max-width: 100%;
   max-height: 30em;
}

.tnc ol ol {
   list-style-type: lower-alpha;
}

.tnc ol ol ol {
   list-style-type: lower-roman;
}

@media screen {

   .hiddendrawer {
      overflow: hidden;
      height: 100px;
   }
}

h2 span {
   float: right;
}

@media print {

   .hiddendrawer {
      height: initial;
   }

   h2 span {
      display: none;
   }

   .tnc {
      font-size: 0.65em;
   }
   .tnc ol {
      padding-left: 2em;
   }
   .endsignbox {
      margin-bottom: 0;
   }
   html, body {
      font-size: 8pt;
   }
   .infoinput {
      line-height: 1em;
      margin: 0;
   }
   .printonly {
      display: block;
   }
   .screenonly {
      display: none;
   }
   .headingbox {
      margin: 0;
      margin-bottom: 2em;
   }
   .infobox {
      margin-left: 0;
      margin-right: 0;
   }
   .infoinput {
      border: none;
      border-bottom: 1px solid black;
      background: transparent;
      border-radius: 0;
   }
   .endsignbox, .paysignbox {
      background: transparent;
      border: none;
      color: black;
   }
   .signbox {
      background: white;
   }
}
