/* Fonts */
:root {
  --default-font: "Saira Extra Condensed", serif;
}

/* Global Colors - The following color variables are used throughout the website. Updating them here will change the color scheme of the entire website */
:root { 
  --background-color: #e8f9ff;
  --default-color: #31261d;
  --link-color: #012169;
  --accent-color: #ada400;
}

iframe, #float_idx {
  display: none !important;
}

html, body {
  margin: 0;
  color: #000;
  background-color: #fff;
}

main {
  width: 100%;
}

p {
  font-size: 12px;
}

h1 {
  font-size: 20px;
}

h2 {
  font-size: 18px;
}

h3 {
  font-size: 16px;
}

h4 {
  font-size: 14px;
}

h5 {
  font-size: 12px;
}

ul {
  font-size: 12px;
  line-height:125%;
}

table {
  font-size: 12px;
}

.margin_lr {
  margin-left: 10%;
  margin-right: 10%;
}

.flex-container,
.right_column,
.left_column,
.begin_end,
.section_title,
.start-around-row,
.start-start-row,
.center-around-row,
.nav,
.center-between-row,
.center-center-row,
#float_idx,
.start-start-column,
.center-around-column,
.center-start-column,
.center-center-column,
.hor_container,
.container {
  display: flex;
}

.center-center-column,
.hor_container,
.container {
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

.center-start-column {
  align-items: center;
  justify-content: start;
  flex-direction: column;
}

.center-around-column {
  align-items: center;
  justify-content: space-around;
  flex-direction: column;
}

.start-start-column {
  align-items: start;
  justify-content: start;
  flex-direction: column;
}

.center-center-row,
#float_idx {
  align-items: center;
  justify-content: center;
  flex-direction: row;
}

.center-between-row {
  align-items: center;
  justify-content: space-between;
  flex-direction: row;
}

.center-around-row,
.nav {
  align-items: center;
  justify-content: space-around;
  flex-direction: row;
}

.start-start-row {
  align-items: start;
  justify-content: start;
  flex-direction: row;
}

.start-around-row {
  align-items: start;
  justify-content: space-around;
  flex-direction: row;
}

.margin_lr {
  margin-left: 10%;
  margin-right: 10%;
}

.container {
  width: 100%;
}

.hor_container {
  width: 100%;
  margin-top: 3.3333333333%;
}

.mini-tag {
  font-size: 12px;
  border-bottom: 3px dotted var(--deafult-color);
  text-align: center;
  width: 100%;
}

.icon {
  width: 30%;
  border-radius: 25%;
  border-style: solid;
  border-color: var(--default-color);
}

.section {
  width: 100%;
}

.section_title {
  align-items: center;
  justify-content: center;
  flex-direction: row;
  width: 100%;
  margin-top: 5%;
  margin-bottom: 1.25%;
}

.section_title * {
  margin: 0;
}

.section_title div {
  flex: 1;
  height: 100%;
  border-bottom: 0.3vw solid var(--default-color);
  font-size: 12px;
}

.section_title h2 {
  margin-right: 2%;
}

.section_title h3 {
  margin-right: 2%;
}

.no_margin {
  margin: 0 !important;
}

.recursive_no_margin {
  margin: 0 !important;
}
.recursive_no_margin * {
  margin: 0 !important;
}
.recursive_no_margin > * {
  margin: 0 !important;
}

.begin_end {
  align-items: center;
  justify-content: space-between;
  flex-direction: row;
  width: 100%;
  margin-top: 1.25%;
  margin-bottom: 0;
}

.begin_end * {
  margin: 0%;
}

.begin_end :nth-child(1) {
  flex: 1;
  text-align: left;
  margin-right: 1.25%;
}

.begin_end :nth-child(2) {
  text-align: right;
  margin-left: 1.25%;
}

.full_width_content {
  width: 100%;
  margin-top: 1.25%;
}
.full_width_content * {
  text-align: left;
  margin: 0;
  margin-top: 0.3125%;
}

.left_column {
  align-items: start;
  justify-content: space-between;
  flex-direction: row;
  width: 100%;
  margin-bottom: 1.25%;
  margin-top: 0;
}

.left_column * {
  margin: 0%;
}

.left_column :nth-child(1) {
  text-align: left;
  margin-right: 2.5%;
  flex-basis: 13%;
}

.left_column :nth-child(2) {
  flex: 1;
  text-align: left;
  margin-left: 0;
}

.left_column :nth-child(2) * {
  margin: 0;
  margin-bottom: 1.25%;
}

.right_column {
  align-items: start;
  justify-content: space-between;
  flex-direction: row;
  width: 100%;
  margin-bottom: 1.25%;
  margin-top: 0;
}

.right_column * {
  margin: 0%;
}

.right_column :nth-child(1) {
  margin-right: 2.5%;
  flex-basis: 74%;
}

.right_column :nth-child(1) * {
  text-align: left;
}

.right_column :nth-child(2) {
  flex: 1;
  text-align: right;
  margin-left: 0;
}

.right_column :nth-child(2) * {
  margin: 0;
  margin-bottom: 1.25%;
}

.nav {
  font-size: 12px;
  margin-left: 10%;
  margin-right: 10%;
  flex-wrap: wrap;
  width: 80%;
  height: auto;
}

.nav div {
  padding: 3%;
}

#float_idx {
  width: 7vw;
  position: fixed;
  top: 0;
  height: 100%;
  flex-wrap: wrap;
  text-align: left;
}

#float_idx a {
  display: block;
  width: 100%;
  height: 9%;
  padding: 1.25vw;
  font-size: calc(16px + 2vw);
}

.responsive-iframe {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}

.responsive-iframe iframe,
.responsive-iframe object,
.responsive-iframe embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
