@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');

* {
  box-sizing: border-box;
}

body {
  padding: 0;
  margin: 0;
  font-size: 14px;
  line-height: 1.3;
  font-family: "Montserrat", sans-serif;
}

img {
  max-width: 100%;
  display: block;
}

h1,h2,h3,h4,h5,h6,p,span,ul,ol,li,a, fieldset {
  padding: 0;
  margin: 0;
  border: 0;
}

ol {
  counter-reset: item;
  padding-left: 25px;
}

li {
  counter-increment: item;
  padding-left: 3px;
}

li::marker {
  content: counters(item, ".", lower-alpha) ") ";
}

h1 {
  font-size: 26px;
}

.h2 {
  font-size: 14px;
  font-weight: 600;
  padding: 2px 15px;
  margin-bottom: 10px;
}

input {
  padding: 6px 10px;
  outline: none;
  border: 1px solid #919191;
  transition: 0.3s all ease;
  margin: 0;
}

input[type="text"] {
  width: 100%;
  flex: 1;
}

input:focus {
  background-color: #fff;
  border-color: #000;
}

strong {
  font-weight: 600;
}

.action-buttons {
  position: fixed;
  right: 20px;
  top: 20px;
}

.button {
  border: none;
  outline: none;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  background-color: transparent;
  font-size: 16px;
  color: #000000;
} 

.button:hover {
  color: #2e5496;
}

.w-200 {
  width: 200px;
}

.w-80 {
  width: 80px;
}

.flex-1 {
  flex: 1;
}

.bg-filled {
  background-color: #f4f7ff;
}

.border-0 {
  border: none !important;
}

.p-0 {
  padding: 0 !important;
}

.flex-wrap {
  flex-wrap: wrap;
}

.bg-primary {
  background-color: #2e5496;
  color: #fff;
}

.bordered {
  border: 1px solid #919191;
}

.form-group.bordered {
  padding: 5.5px 10px;
  margin-top: 1px;
  margin-bottom: 1px;
  flex: 1;
}

.text-center {
  text-align: center;
}

.align-center {
  align-items: center;
}

.justify-center {
  justify-content: center;
}

.form-checkbox.align-start {
  align-items: start;
}
.form-checkbox.align-start input {
  margin-top: 2px;
}

.cg-5 {
  column-gap: 5px !important;
}

.bg-yellow {
  background-color: #ffff00;
}

.note {
  text-align: center;
  margin: 10px 0;
  padding: 2px 15px;
}

.my-20 {
  margin-top: 20px !important;
  margin-bottom: 20px !important;
}

.mt-0 {
  margin-top: 0 !important;
}

.page-wrapper {
  max-width: 1024px;
  width: 100%;
  margin: 0 auto;
}

.page-header {
  background-color: #2e5496;
  display: flex;
  align-items: center;
  padding: 15px 50px;
  min-height: 140px;
}

.ph-title {
  color: #fff;
  padding: 0 50px;
  text-align: center;
  flex: 1;
}

.ph-title p {
  font-size: 16px;
}

.ph-secondary h1 {
  font-size: 20px;
  margin-bottom: 10px;
}

.ph-secondary p {
  font-size: 12px;
}

.ph-logo {
  width: 105px;
}

.form-group, .form-field, .form-checkbox {
  display: flex;
  row-gap: 3px;
  column-gap: 10px;
}

.form-field {
  padding-top: 1px;
  padding-bottom: 1px;
}

.form-field label {
  padding-top: 6px;
}

.form-checkbox {
  column-gap: 5px;
  align-items: center;
}

.page-body {
  padding: 15px 50px;
}

table {
  border-collapse: collapse;
  width: 100%;
}

table td {
  border: 1px solid #919191;
  padding: 6px 10px;
}

.softwares-info {
  margin-bottom: 30px;
}

.softwares-info table td:first-child {
  width: 155px;
}

.programs {
  column-gap: 30px;
}

.computer-info {
  margin-bottom: 70px;
}

.computer-info .h2 {
  text-align: center;
  margin-bottom: 15px;
}

.computer-info .computer-info-body {
  display: flex;
  gap: 2px;
}

.computer-info .col {
  width: 50%;
}

.computer-info fieldset + fieldset {
  margin-top: 40px;
}

.computer-info fieldset .form-field label:first-child,
.computer-info fieldset .form-group label:first-child {
  min-width: 110px;
  padding-left: 10px;
}
.computer-info .col:last-child fieldset .form-field label:first-child,
.computer-info .col:last-child fieldset .form-group label:first-child {
  min-width: 130px;
}

.oig + .oig {
  margin-top: 20px;
} 

.oig > .form-checkbox {
  margin-bottom: 10px;
}
.oig p,
.oig li {
  margin-bottom: 3px;
}

.signatures {
  display: flex;
  column-gap: 50px;
  row-gap: 10px;
  margin-top: 30px;
}

.signatures .col {
  width: 50%;
}

.signatures .form-field {
  display: block;
}
.signatures .form-field label {
  display: block;
}

@media print {
  .page-bottom-note {
    page-break-after: always;
  }
  .page-header,
  .page-body {
    padding: 10px 25px;
  }
  .oig > .form-checkbox {
    margin-bottom: 5px;
  }
  .signatures {
    margin-top: 0;
  }
  .oig + .oig {
    margin-top: 7px;
  }
  .ph-title {
      padding: 0 25px;
  }
  .action-buttons {
    display: none;
  }
}