body {
  background: var(--bodyBg);
  max-width: 100vw;
  overflow-x: hidden;
  color: var(--text);
  font-size: ;
}

.iframe-16-9 {
  aspect-ratio: 16 / 9;
  margin: 1rem 0;
  width: 100%;
}

#header #headerNav,
#header #utility {
  font-size: 0.9rem;
}

#topMenu {
  position: relative;
  padding: 0;
  background: transparent;
}

.mainHolder:has(#nav) {
  background: transparent;
}

b,
strong,
.calendar-list-item a,
[style*="font-weight:bold"],
[style*="font-weight: bold"] {
  font-weight: 600 !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
#content h1,
#content h2,
#content h3,
#content h4,
#content h5,
#content h6 {
  font-family: var(--brandFont);
  font-weight: 500;
  color: var(--text);
  line-height: 1.2;
}

h1,
h1#mainpagetitle {
  font-size: 2.5rem;
  font-weight: 600;
}

h2 {
  font-size: 2rem;
}

h2.calendar {
  background: transparent;
  color: var(--text);
}

h3 {
  font-size: 1.6rem;
}

h4 {
  font-size: 1.4rem;
}

h5 {
  font-size: 1.2rem;
}

@media print, screen and (min-width: 40em) {
  h2.calendar {
    font-size: 1.6rem;
  }

  .calendar-list-item + h2.calendar {
    margin-top: 2.5rem;
  }

  .calendar-list-item {
    padding: 1rem;
  }

  .calendar-list-item a {
    font-size: 1.2rem;
    display: block;
    margin-bottom: -1rem;
    text-decoration: none;
  }

  .collapse-box {
    margin-bottom: 2rem;
    margin-top: 0;
  }

  .collapse-box.meetingblockcompact {
    margin-top: 0;
  }

  #bigHolder #quickLinks,
  .collapse-box {
    border-top: 5px solid var(--primary3);
    padding: 1rem;
    background: var(--gray100);
    color: var(--text);
  }

  #CS_Element_homepagerightCol .collapse-box:not {
    margin-top: 2rem;
  }

  #bigHolder #quickLinks ul,
  #bigHolder #quickLinks li,
  .collapse-box li {
    color: var(--text);
    background: var(--gray100);
  }

  #bigHolder #quickLinks ul,
  .meetingblockcompact ul,
  .collapse-box ul {
    padding: 0 0 0 2rem;
    margin: 0;
  }

  .collapse-box div[style*="padding"] {
    padding: 0 !important;
  }

  #bigHolder #quickLinks ul li:last-child,
  .collapse-box li:last-child {
    margin-bottom: 0;
  }

  #bigHolder #quickLinks h3,
  #bigHolder #quickLinks a:link,
  #bigHolder #quickLinks a:visited,
  #bigHolder #quickLinks a:link,
  .collapse-box a:link,
  .collapse-box a:visited {
    color: var(--text);
  }

  #collapse-box h4,
  #bigHolder #quickLinks h3,
  #rightCol h3 {
    font-size: var(--boxHeadingSize);
    background: transparent;
    margin-top: 0;
    padding: 0;
  }

  #header,
  #innerHolder,
  .innerHolder {
    width: 100%;
    max-height: var(--maxWidth);
  }

  .mainHolder,
  #mainHolder {
    font-size: 1.2rem;
    padding-top: 2rem;
    margin: auto;
    max-width: var(--maxWidth);
  }

  .mainHolder.mainHolder-full-width {
    margin: 0 auto;
  }

  .row {
    max-width: 100%;
    max-width: var(--maxWidth) !important;
    margin: 0 auto;
  }

  #nav {
    display: flex;
    padding: 0;
    background: transparent;
    z-index: 11;
    position: relative;
  }

  #nav > li > a {
    padding: 1rem 1rem;
    display: inline-block;
    white-space: nowrap;
    font-weight: 500;
    font-size: 1.2rem;
  }

  #nav > li {
    border-top: 5px solid white;
    /* background: var(--primary1); */
  }

  #nav > li:hover {
    background: white;
    border-top: 5px solid var(--primary3);
    color: var(--text);
    filter: var(--bigShadow);
    will-change: filter;
    z-index: 20;
  }

  #nav > li:hover a {
    color: var(--text);
  }

  #nav .child-menu {
    margin: 0;
    border: 0;
  }

  #nav li li {
    width: auto;
  }

  #nav .child-menu {
    width: auto;
    min-width: 15rem;
  }

  #nav .child-menu a {
    background: white;
    white-space: nowrap;
    border: none;
    font-size: 1rem;
    padding: 0.5rem 1rem;
  }

  #topMenu:before {
    position: absolute;
    content: "";
    background: var(--primary1);
    height: calc(100% - 5px);
    width: 200vw;
    bottom: 0;
    right: -50%;
    z-index: 0;
  }

  #header {
    margin-top: 2rem;
  }

  #header img#logo {
    width: 330px;
  }

  .footer-social-media-icons {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 1rem;
  }

  #footer {
    padding-bottom: 50px;
  }

  .full-width-row:has(#footer) {
    padding-top: 3rem;
    margin-top: 3rem;
  }

  .full-width-row:has(#footer),
  .full-width-row:has(#footer) .mainHolder,
  .full-width-row:has(#footer) #footer {
    background: var(--gray200);
  }

  #footer h4,
  #footer h4 a:link,
  #footer h4 a[style] {
    color: var(--text-dark) !important;
  }

  #footer .collapse-box {
    padding: 0;
    background: none;
    border: none;
    margin-top: 0;
  }

  /* Commonspot elements */

  #hero {
    margin-bottom: 2rem !important;
  }

  .full-width-row-003366-50 {
    background: var(--gray300);
  }

  [class$="callout"] {
    border: 0;
  }

  [class*="callout"] h2:first-of-type,
  [class*="callout"] h3:first-of-type,
  [class*="callout"] h4:first-of-type {
    margin-top: 0 !important;
  }

  [class*="callout"] h2.jobs-header:first-of-type {
    margin-top: 1rem !important;
  }

  .jobs-cta {
    font-size: 1rem;
    font-weight: bold;
  }

  .CS_Textblock_Text,
  [class*="callout"] p:last-of-type {
    margin-bottom: 0 !important;
  }

  /* .CS_Textblock_Text > *:last-of-type, */
  .CS_Textblock_Text > *:last-of-type .button {
    margin-bottom: 0 !important;
  }

  .CS_Textblock_Text > p:only-child:has(img:only-child) {
    margin-bottom: 1rem !important;
  }

  #CS_Element_maincontent h2,
  #CS_Element_maincontent h3,
  #CS_Element_maincontent h4,
  #CS_Element_maincontent h5,
  #CS_Element_maincontent h6 {
    /* margin-top: 2em; */
  }

  .CS_AlignLeft.CS_Textblock_Text > *:first-child {
    margin-top: 0 !important;
  }

  form[action="/about/contact/index.cfm"] > p:nth-child(2) {
    margin-top: 0;
  }

  .CS_Textblock_Text h2,
  .CS_Textblock_Text h3,
  .CS_Textblock_Text h4,
  .CS_Textblock_Text h5,
  .CS_Textblock_Text h6,
  .CS_Textblock_Text p,
  .CS_Textblock_Text ul,
  .CS_Textblock_Text ol,
  .featured-page {
    max-width: var(--maxTextWidth);
  }

  .CS_Textblock_Text ul,
  .CS_Textblock_Text ol,
  .CS_Textblock_Text dl {
    line-height: inherit;
  }

  .CS_Textblock_Text ul li,
  .CS_Textblock_Text ol li {
    margin: 1em 0;
  }

  .CS_Textblock_Text ol li,
  .CS_Textblock_Text ul li {
    margin-left: 1rem;
  }

  .CS_Textblock_Text blockquote {
    margin: 1em 0 important;
  }

  .CS_Textblock_Text > p:has(img:only-child) {
    max-width: 100%;
    margin: 0;
  }

  /* .CS_Textblock_Text > h1:first-child, */
  .CS_Textblock_Text > h2:first-child {
    margin-top: 0 !important;
  }

  #title-sharing #mainpage-titles h1#mainpagetitle:only-child {
    /* margin-bottom: 0 !important; */
  }

  [class*="callout"] h2,
  [class*="callout"] h3,
  [class*="callout"] h4 {
    font-size: var(--boxHeadingSize);
  }

  .collapse-box,
  [class*="callout"] {
    font-size: 1rem;
    padding: 1rem;
    background: var(--gray100);
  }

  [class*="callout"] {
    border: 0;
    margin: 1rem 0;
  }

  #leftNav .header h3 a {
    background: white;
    padding: 0 0 0 calc(1rem + 5px);
    color: var(--primary2);
  }

  #leftNav ul,
  #leftNav ul ul {
    background: transparent;
    font-weight: 400;
  }

  #leftNav ul ul {
    color: var(--primary3);
    padding-left: 1rem;
    /* list-style-type: square;
    list-style-position: inside; */
  }

  #leftNav li a,
  #leftNav li a:hover,
  #leftNav li li a,
  #leftNav li li a:hover {
    border: 0;
    padding: 0.5rem 1rem;
    background: transparent;
  }

  #leftNav li.branch.on a {
    /* background: var(--gray100); */
  }

  #leftNav li {
    border-left: 5px solid transparent;
  }

  #leftNav li:not(.branch).on {
    border-left: 5px solid var(--primary3);
  }

  #leftNav li.on > a {
    cursor: text;
  }

  #leftNav a:hover {
    color: var(--primary2);
    text-decoration: underline;
  }
}

@media print, screen and (min-width: 64em) {
}
@media (max-width: 900px) {
  .mainHolder,
  #mainHolder {
    max-width: 100%;
  }
}
