.vpn-error-container {
  background: #fff;
  color: var(--bs-dark-text);
  max-width: 600px;
  margin: 1rem auto;
  padding: 32px 28px 24px 28px;
  border-radius: 12px;
  box-shadow: 0 4px 24px rgba(0,0,0,0.10);
  font-size: 1.1rem;
  text-align: left;
  font-weight: 400;
}
.vpn-error-container ul {
  margin-left: 24px;
  margin-bottom: 16px;
}
.vpn-error-container li {
  margin-bottom: 6px;
}
.vpn-error-container p {
  margin-bottom: 12px;
}
#outputDiv a, .vpn-error-container a {
  color: #1976d2;
  font-weight: bold;
  text-decoration: underline;
  display: inline-block;
  margin-top: 18px;
}

[data-bs-theme="dark"] .vpn-error-container {
  background: var(--bs-dark-bg-subtle);
  color: var(--bs-gray-600);
  box-shadow: 0 4px 24px rgba(255,255,255,0.10);
}
/*
Custom CSS

This file is for your custom CSS. You can add your own styles here without 
modifying the index.html file or any other template files. This file is 
loaded in the template_v3/index.js file. 

This file is intentionally left blank. Add your custom CSS below.

@version 1.0.0
*/

#pageHeader_home {
  margin-top: 2rem;
  font-size: 1.25rem !important;
  line-height: 1.5;
  text-align: justify !important;
  font-weight: 400 !important;
  margin: 1rem 0 !important;
}

#pageSubHeader2_home {
  font-size: 1.25rem !important;
  line-height: 1.5;
  text-align: justify !important;
}

#home li,
#certification li,
#generalInstructions li {
  margin-bottom: 1rem;
}

#generalInstructions ol {
  margin-left: 1rem;
  margin-top: 1rem;
}

.transactions table {
  table-layout: fixed;
}

.transactions th {
  background-color: #dddddd;
  text-align: center;
  vertical-align: middle;
  color: var(--black);
  border: 1px solid var(--black);
}

.transactions td {
  border: 1px solid var(--black);
}

input[type="checkbox"],
input[type="radio"] {
  border-color: var(--black);
}

.transactions td label {
  display: none;
}

.transactions td label.show {
  display: block;
}

legend {
  text-decoration: underline;
  font-weight: bold;
}

div.errorMessage {
  text-align: center;
  font-weight: 600;
  color: var(--red);
  font-size: 1.5rem;
}

#faq-16 table {
  border: 1px solid var(--black);
  margin: 3rem 0;
  width: auto !important;
}

#faq-16 td,
#faq-16 th {
  border: 1px solid var(--black);
  padding: 1.5rem;
  width: 410px !important;
}

#faq-25 th,
#faq-25 td {
  border: 1px solid var(--black);
  padding: 1rem;
}

#faq-11 ol ol {
  list-style-type: lower-roman;
}

main {
  text-align: justify;
}

#deficient_transactions table {
  border: 1px solid #3d3d3d;
}

#deficient_transactions table th {
  padding: 5px;
  font-weight: bold;
  background: #cecdcd;
  color: #444444;
}

#deficient_transactions table td {
  padding: 5px;
}

#deficient_transactions {
  font-size: 14px;
}

#deficient_transactions table td,
#deficient_transactions table th {
  min-width: 170px;
  border: 1px solid #3d3d3d;
  line-height: 16px;
}

.tooltipText {
  border-bottom: 1px dashed var(--black);
}

#pageAlert p:nth-of-type(1) {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important;
  font-size: 1.75rem;
  font-weight: 500 !important;
}

#pageAlert p:nth-of-type(1) strong {
  font-weight: 500 !important;
}

body {
  font-family: Tahoma, Geneva, sans-serif !important;
}

#ImportantDates {
  max-width: 600px !important;
}

.important-documents-container #ImportantDates {
  display: none;
}

.important-documents-container .page-content > div:first-child {
  width: 100%;
}

.important-documents-container .doc-item:nth-child(2) {
    border-bottom: 1px solid #ccc;
    padding-bottom: 1rem;
}

#home #impt-dates-body > li {
  display: flex;
}

#home ul#impt-dates-body > li > span::before {
  content: "—";
  margin: 0 0.5rem;
}

#home ul#impt-dates-body > li > span {
  display: block;
  text-align: left;
}

#home li {
  margin-bottom: 1rem;
}

#home #optionsTABLE_home th {
  min-width: 300px;
}

#home #optionsTABLE_home td {
  border: 1px solid #000;
}

#pageSubHeader1_home {
  font-style: normal !important;
  font-weight: 500 !important;
  font-size: 2rem !important;
  text-align: justify !important;
  line-height: 38.4px !important;
}

div#transactions {
  display: none;
}

table.transactions tr {
  display: flex;
}

table.transactions td,
table.transactions th {
  flex: 1;
}

table.transactions td > div {
  width: 100%;
}

._wrapper,
.divContactField {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 0.125rem;
}

td.transaction {
  display: flex;
  align-items: center;
}

td.transaction label {
  display: none;
}

td.transaction .form-check {
  display: flex;
  align-items: center;
  justify-content: center;
}

.accordion-header {
  border: 1px solid #ccc;
  margin-top: 1rem;
  box-shadow: 0 4px 8px #ddd;
}

.accordion-button:not(.collapsed) {
  background-color: rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important;
  color: var(--black);
  font-weight: bold !important;
}

.h3.section-title {
  text-transform: uppercase;
}

.page-title {
  border-bottom: 1px solid #ccc;
  padding-bottom: 1rem;
}

div[data-field-id="_capacity_of_person"] {
  display: grid;
  grid-template-areas:
    "input"
    "label";
  grid-template-columns: 1fr;
  grid-template-rows: 1fr 1fr;
}

div[data-field-id="_capacity_of_person"] label {
  grid-area: label;
  width: 100%;
}

div[data-field-id="_capacity_of_person"] input {
  grid-area: input;
  width: 100%;
}

.form-inline {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 0.5rem;
}

.form-inline input {
  display: inline-block;
  width: 200px;
}

#claimFormDeadline p {
  font-size: 1.125rem;
  font-weight: 400;
}

#claimFormDeadline legend {
  text-align: left;
  font-size: 24px;
  font-weight: 700;
}

#generalInstructions {
  text-align: justify;
}

#confirmation-email-alert {
  display: none;
}

blockquote {
  padding: 0 1rem;
  border-left: 4px solid #ccc;
}

.page-content.row > .col-12.col-md-5 > #ImportantDates {
  display: none;
}

.transaction input[type="number"] {
  text-align: right;
}


/*# sourceMappingURL=common.css.map*/