h1, h2, h3 {
  color: var(--tertiary);
}
h1 {
  margin: 2rem 0 1rem;
  text-align: center;
}
h2 {
  font-size: 2.4rem;
  margin: 2rem 0 1rem;
}
h3 { 
  font-size: 2rem;
  margin: 2rem 0 0;
}
main section p {
  margin: 1rem 0;
}
section {
  margin: 0 0 4rem;
  padding: 0 2rem;
}
section ul {
  list-style: disc;
}
section ul li {
  margin-left: 3rem;
}
section ul li:first-of-type {
  margin-top: 1rem;
}

/* contact page */
#contact > .flex-col {
  margin-bottom: 2rem;
}
#contact > .flex-col:last-of-type {
  margin-bottom: 5rem;
}
#contact .flex-col .flex {
  justify-content: space-between;
  width: 45%;
  padding-left: 2rem;
}
#contact .flex-col .flex a {
  margin-left: 1rem;
}
#contact .flex-col .flex.emphasized {
  padding-left: 0;
}
#contact .flex-col .flex.emphasized p {
  display: flex;
  flex-wrap: wrap;
  font-size: 2rem;
  font-weight: bold;
  text-transform: uppercase;
  margin: 0;
  color: var(--tertiary);
}
#contact .flex-col .flex.emphasized p span {
  margin-left: .5rem  ;
}

#contact #address,
#jrj #address {
	margin: 1rem 0 2rem;
}
#contact #address p,
#jrj #address p {
  font-size: 1.6rem;
}

/* jrj page */
a + a {
  display: block;
  margin-top: 1rem;
}
#jrj ol,
#jrj ul {
  list-style-position: inside;
}

/* error page */
#errorPage {
  justify-content: space-between;
  align-items: flex-start;
  margin: 0;
  padding: 3rem 2rem 0;
  min-height: 455px;
  background: var(--lt_blue);
}
#errorPage h1 {
  margin: 0;
  padding: 2rem 0 1rem;
  text-align: left;
  color: var(--err_yellow);
}
#errorPage p {
  color: var(--white);
}
#errorPage p:first-of-type {
  font-size: 3rem;
  font-weight: bold;
}
#errorPage p:last-of-type {
  font-size: 2.4rem;
}
#errorPage picture {
  align-self: flex-end;
  margin: 0 0 0 2rem;
}

/* terminal page tab sections */
section:first-of-type, section:last-of-type {
  margin: 0.5rem 0;
}
section:last-of-type {
  margin-bottom: 2rem;
}
.tab h2,
.subtab h3 {
  margin: 0;
}
#agency .tab .tab-info p,
#outreach .tab .tab-info p {
  margin: 0;
}
#agency .tab .tab-info > p,
#outreach .tab .tab-info > p {
  margin: 1rem 0 .5rem;
}

/* terminal - CMS data styles */
.cms-data.flex-col {
  justify-content: flex-start;
  align-items: flex-start;
}
.cms-data.flex-col a.flex {
  justify-content: flex-start;
  align-items: flex-start;
  margin: 0;
  width: 100%;
  text-decoration: none;
}
.cms-data.flex-col a.flex.single-col {
  padding: .5rem 1rem;
  color: var(--black);
  text-transform: capitalize;
}
.cms-data.flex-col a:nth-of-type(odd) {
  background: var(--off_white);
}
.cms-data.flex-col a:nth-of-type(even) {
  background: var(--white);
}
.cms-data.flex-col a:hover {
  background: var(--primary);
}
.cms-data.flex-col a.flex.single-col:hover,
.cms-data.flex-col a:hover p {
  color: var(--white);
}
.cms-data.flex-col > a:first-of-type {
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
.cms-data.flex-col a:last-of-type {
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
}
.cms-data.flex-col a.flex p {
  margin: 0;
  padding: .5rem 1rem;
  width: 15%;
}
.cms-data.flex-col a.flex p:last-of-type {
  width: 85%;
  text-transform: capitalize;
}

/************************************

     TERMINAL-PG MOBILE STYLES

************************************/
@media screen and (max-width: 1280px) {
  #contact .flex-col .flex {
    width: 65%;
  }
}
@media screen and (max-width: 768px) {
  #errorPage {
    flex-direction: column;
    padding: 0 2rem;
  }
  #errorPage picture {
    margin: 2rem 0 0 0;
  }
}
@media screen and (max-width: 640px) {
  #contact .flex-col .flex {
    width: 90%;
  }
}
@media screen and (max-width: 480px) {
  #contact .flex-col .flex {
    width: 100%;
  }
}