.site-header {
  border-top: none;
  background: #000; }

body.page-template-homepage section.intro .copy h3 {
  color: #03400A; }

body.page-template-homepage section.filter {
  background: #000; }
  body.page-template-homepage section.filter form input[type="search"] {
    background: #3B3B3B; }

body.page-template-homepage .documents-categories .section-header,
body.page-template-homepage .documents-list table thead {
  background: #03400A; }

body.page-template-homepage .documents-categories .sticky-wrapper {
  background: #fff; }

body.page-template-homepage .documents-categories .categories-list h5 {
  background: none;
  padding: 0;
  color: #03400A;
  font-weight: bold; }

body.page-template-homepage .documents-list table tbody a {
  color: #03400A; }

.site-footer {
  background-color: #03400A; }

::-moz-selection {
  background: #00A1DF;
  color: #fff;
  text-shadow: none; }

::selection {
  background: #00A1DF;
  color: #fff;
  text-shadow: none; }

.site-content {
  min-height: calc(80vh - 2rem); }

.overlay {
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 1000;
  background: rgba(255, 255, 255, 0.5); }
  .overlay-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100vh;
    padding: 1.25rem; }
    @media screen and (min-width: 768px) {
      .overlay-wrapper {
        padding: 6rem 1.25rem; } }
    @media screen and (max-height: 800px) {
      .overlay-wrapper {
        align-items: flex-start;
        padding-top: 2rem;
        overflow-y: scroll; } }
  .overlay .close {
    background: #fff;
    width: 2rem;
    height: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    position: absolute;
    right: -0.75rem;
    top: -0.75rem;
    box-shadow: 0 0 12px rgba(0, 0, 0, 0.2);
    border: 2px solid #143470;
    z-index: 10000; }
    .overlay .close:hover {
      cursor: pointer; }
    .overlay .close a {
      width: 1rem;
      display: block; }
      .overlay .close a:before, .overlay .close a:after {
        background-color: #143470;
        content: '';
        display: block;
        height: 2px;
        transition: all 200ms ease-in-out; }
      .overlay .close a:before {
        transform: translateY(11px) rotate(45deg);
        margin-bottom: 20px; }
      .overlay .close a:after {
        transform: translateY(-11px) rotate(-45deg); }

body.how-to-overlay-open {
  overflow-y: hidden; }

.site-header {
  background: #143470;
  color: #fff; }
  @media screen and (min-width: 992px) {
    .site-header .site-title {
      grid-column: 5 / span 9; } }

.site-footer {
  background: #143470;
  color: #fff; }

body.page-template-homepage section.login {
  padding-top: 3rem; }
  @media screen and (min-width: 992px) {
    body.page-template-homepage section.login {
      padding-top: 5rem; } }
  body.page-template-homepage section.login .page-header {
    text-align: center; }
    body.page-template-homepage section.login .page-header h2 {
      line-height: 1.25em;
      color: #143470;
      font-weight: bold; }
  body.page-template-homepage section.login .login-form {
    padding: 3rem 0;
    margin: 0 auto;
    max-width: 22rem;
    width: 100%; }
    @media screen and (min-width: 992px) {
      body.page-template-homepage section.login .login-form {
        padding: 6rem 0; } }
    body.page-template-homepage section.login .login-form .field.password {
      position: relative; }
      body.page-template-homepage section.login .login-form .field.password input {
        background: transparent;
        border: none;
        border-radius: 0;
        border-bottom: 1px solid #000;
        width: 100%;
        font-size: 2rem;
        letter-spacing: 0.2em;
        padding: 0.5rem 1rem;
        z-index: 10; }
        body.page-template-homepage section.login .login-form .field.password input::-webkit-input-placeholder {
          font-size: 1.5rem;
          letter-spacing: 0; }
        body.page-template-homepage section.login .login-form .field.password input::-moz-placeholder {
          font-size: 1.5rem;
          letter-spacing: 0; }
        body.page-template-homepage section.login .login-form .field.password input:-moz-placeholder {
          font-size: 1.5rem;
          letter-spacing: 0; }
        body.page-template-homepage section.login .login-form .field.password input:-ms-input-placeholder {
          font-size: 1.5rem;
          letter-spacing: 0; }
        body.page-template-homepage section.login .login-form .field.password input:focus, body.page-template-homepage section.login .login-form .field.password input:active {
          outline: none; }
        body.page-template-homepage section.login .login-form .field.password input[type="text"] {
          letter-spacing: 0.05em; }
      body.page-template-homepage section.login .login-form .field.password.filled:after {
        position: absolute;
        right: 3rem;
        bottom: 18px;
        content: '';
        display: block;
        width: 16px;
        height: 12px;
        background: url(images/icon-check.svg) no-repeat 0 0;
        background-size: contain;
        z-index: 10; }
      body.page-template-homepage section.login .login-form .field.password .eyeball {
        position: absolute;
        right: 0.5rem;
        bottom: 14px;
        z-index: 10; }
        body.page-template-homepage section.login .login-form .field.password .eyeball svg g {
          transition: all 0.3s ease; }
        body.page-template-homepage section.login .login-form .field.password .eyeball.active, body.page-template-homepage section.login .login-form .field.password .eyeball:hover {
          cursor: pointer; }
          body.page-template-homepage section.login .login-form .field.password .eyeball.active svg g, body.page-template-homepage section.login .login-form .field.password .eyeball:hover svg g {
            opacity: 1; }
    body.page-template-homepage section.login .login-form .submit-btn {
      margin-top: 1.5rem;
      position: relative;
      z-index: 10; }
      @media screen and (min-width: 992px) {
        body.page-template-homepage section.login .login-form .submit-btn {
          margin-top: 2.75rem; } }
      body.page-template-homepage section.login .login-form .submit-btn .caret {
        display: block;
        position: absolute;
        right: 33.3333%;
        top: calc(50% - 8px);
        transition: all ease-in-out 0.2s; }
        body.page-template-homepage section.login .login-form .submit-btn .caret svg {
          height: 10px; }
      body.page-template-homepage section.login .login-form .submit-btn:hover .caret {
        transform: translateX(0.5rem); }
      body.page-template-homepage section.login .login-form .submit-btn input {
        background: #143470;
        color: #fff;
        border: none;
        text-transform: uppercase;
        font-weight: bold;
        display: block;
        width: 100%;
        border-radius: 50px;
        letter-spacing: 0.1em;
        padding: 1rem;
        transition: all 0.2s ease;
        -webkit-appearance: none;
           -moz-appearance: none;
                appearance: none; }
        body.page-template-homepage section.login .login-form .submit-btn input:disabled {
          -webkit-appearance: none;
             -moz-appearance: none;
                  appearance: none;
          opacity: 0.2;
          transition: all 0.2s ease;
          display: block; }
          body.page-template-homepage section.login .login-form .submit-btn input:disabled:hover {
            cursor: default; }
        body.page-template-homepage section.login .login-form .submit-btn input:hover {
          cursor: pointer; }
    body.page-template-homepage section.login .login-form .error-message {
      margin-top: 2rem;
      padding: 1rem 1rem 0.9375rem 1rem;
      background: #EE2E2D;
      color: #fff;
      border-radius: 3px;
      font-size: 0.8125rem;
      text-align: center;
      font-weight: bold;
      letter-spacing: 0.02em; }

@media screen and (min-width: 768px) {
  body.page-template-homepage section.intro .copy {
    grid-column: 2 / span 8; } }

@media screen and (min-width: 992px) {
  body.page-template-homepage section.intro .copy {
    grid-column: 5 / span 9; } }

body.page-template-homepage section.intro .copy h3 {
  color: #143470; }

body.page-template-homepage section.intro .contact {
  margin-top: 2rem;
  padding: 1.5rem 2rem;
  background-color: #00A1DF;
  display: inline-block;
  border-radius: 3px; }
  body.page-template-homepage section.intro .contact p {
    color: #fff;
    font-size: clamp(0.875rem, 1.2vw, 1rem);
    font-style: italic; }
    body.page-template-homepage section.intro .contact p a {
      color: #fff; }

body.page-template-homepage section.filter {
  background: #143470;
  color: #fff; }
  body.page-template-homepage section.filter .how-to {
    padding-bottom: 2rem; }
    @media screen and (min-width: 992px) {
      body.page-template-homepage section.filter .how-to {
        grid-column: 5 / span 7; } }
    body.page-template-homepage section.filter .how-to .trigger {
      display: flex;
      align-items: center;
      color: #fff; }
      body.page-template-homepage section.filter .how-to .trigger span {
        display: block;
        padding-left: 0.5rem;
        font-size: 0.875rem;
        font-style: italic; }
      body.page-template-homepage section.filter .how-to .trigger img {
        max-width: 1.25rem;
        width: 100%; }
  body.page-template-homepage section.filter form input[type="search"] {
    background: #fff;
    color: #143470; }
    body.page-template-homepage section.filter form input[type="search"]::-webkit-input-placeholder {
      color: #143470; }
    body.page-template-homepage section.filter form input[type="search"]::-moz-placeholder {
      color: #143470; }
    body.page-template-homepage section.filter form input[type="search"]:-moz-placeholder {
      color: #143470; }
    body.page-template-homepage section.filter form input[type="search"]:-ms-input-placeholder {
      color: #143470; }
  body.page-template-homepage section.filter form .filter-dropdowns {
    padding-top: 2rem;
    display: grid;
    gap: 2rem; }
    @media screen and (min-width: 768px) {
      body.page-template-homepage section.filter form .filter-dropdowns {
        grid-template-columns: repeat(2, 1fr); } }
    body.page-template-homepage section.filter form .filter-dropdowns .dropdown label {
      font-size: 0.875rem; }
    body.page-template-homepage section.filter form .filter-dropdowns .dropdown select {
      width: 100%;
      height: 2.25rem;
      padding: 0 0.5rem; }
  body.page-template-homepage section.filter form .clear {
    padding-top: 1rem; }
    body.page-template-homepage section.filter form .clear-btn {
      display: inline-block;
      color: #fff;
      font-size: 0.75rem;
      text-decoration: underline; }
  body.page-template-homepage section.filter .how-to-modal {
    display: none; }
    body.page-template-homepage section.filter .how-to-modal .info {
      background: #fff;
      color: #143470;
      padding: 3rem;
      max-width: 640px;
      box-shadow: 0 0 16px rgba(0, 0, 0, 0.1); }
      @media screen and (min-width: 768px) {
        body.page-template-homepage section.filter .how-to-modal .info {
          padding: 4rem; } }
      body.page-template-homepage section.filter .how-to-modal .info h3 {
        font-weight: bold;
        font-size: clamp(1.125rem, 1.4vw, 1.375rem); }
      body.page-template-homepage section.filter .how-to-modal .info p, body.page-template-homepage section.filter .how-to-modal .info ul, body.page-template-homepage section.filter .how-to-modal .info ol {
        margin-top: 1.5rem;
        font-size: clamp(0.8125rem, 1vw, 0.9375rem);
        line-height: 1.5em; }
      body.page-template-homepage section.filter .how-to-modal .info ul {
        list-style-type: disc; }
      body.page-template-homepage section.filter .how-to-modal .info ol {
        list-style-type: decimal; }
      body.page-template-homepage section.filter .how-to-modal .info ul, body.page-template-homepage section.filter .how-to-modal .info ol {
        padding-left: 2rem; }
        body.page-template-homepage section.filter .how-to-modal .info ul li + li, body.page-template-homepage section.filter .how-to-modal .info ol li + li {
          margin-top: 0.5rem; }
      body.page-template-homepage section.filter .how-to-modal .info a {
        color: #143470;
        text-decoration: underline; }

body.page-template-homepage section.documents {
  padding: 3rem 0; }
  @media screen and (min-width: 992px) {
    body.page-template-homepage section.documents {
      padding: 3rem 0 6rem 0; } }
  body.page-template-homepage section.documents .documents-categories .section-header,
  body.page-template-homepage section.documents .documents-list table thead {
    background: #143470;
    color: #fff; }
  body.page-template-homepage section.documents .documents-categories {
    border-radius: 5px; }
    body.page-template-homepage section.documents .documents-categories .section-header {
      border-top-left-radius: 5px;
      border-top-right-radius: 5px; }
    body.page-template-homepage section.documents .documents-categories .categories-list {
      border-bottom-left-radius: 5px;
      border-bottom-right-radius: 5px; }
    body.page-template-homepage section.documents .documents-categories .sticky-wrapper {
      position: relative;
      top: 0;
      box-shadow: 0 0 16px rgba(0, 0, 0, 0.1);
      border-radius: 5px; }
    body.page-template-homepage section.documents .documents-categories .categories-list h5 {
      color: #143470; }
  body.page-template-homepage section.documents .documents-list {
    padding-top: 3rem;
    overflow: unset; }
    @media screen and (min-width: 992px) {
      body.page-template-homepage section.documents .documents-list {
        padding-top: 0; } }
    body.page-template-homepage section.documents .documents-list .file.subject-hide {
      display: none !important; }
    body.page-template-homepage section.documents .documents-list .category + .category .section-header {
      margin-top: 2rem; }
      @media screen and (min-width: 992px) {
        body.page-template-homepage section.documents .documents-list .category + .category .section-header {
          margin-top: 5rem; } }
    body.page-template-homepage section.documents .documents-list .section-header {
      padding-bottom: 1rem; }
      body.page-template-homepage section.documents .documents-list .section-header.header-hide, body.page-template-homepage section.documents .documents-list .section-header.hide {
        display: none; }
      body.page-template-homepage section.documents .documents-list .section-header h3 {
        font-size: clamp(1.25rem, 1.5vw, 1.5rem);
        font-weight: bold;
        color: #143470; }
    body.page-template-homepage section.documents .documents-list .file {
      background: #fff;
      padding: 2rem;
      border-radius: 5px;
      box-shadow: 0 0 16px rgba(0, 0, 0, 0.1);
      margin-bottom: 1rem; }
      body.page-template-homepage section.documents .documents-list .file-flex {
        display: flex;
        flex-wrap: wrap; }
      body.page-template-homepage section.documents .documents-list .file.hide {
        display: none; }
      body.page-template-homepage section.documents .documents-list .file.red {
        background: red;
        color: white; }
      body.page-template-homepage section.documents .documents-list .file .info {
        flex: 1;
        padding-right: 2rem; }
      body.page-template-homepage section.documents .documents-list .file .download {
        width: 100%;
        padding-top: 2rem; }
        @media screen and (min-width: 768px) {
          body.page-template-homepage section.documents .documents-list .file .download {
            padding-top: 0;
            width: 10rem;
            align-self: center;
            display: flex;
            justify-content: flex-end; } }
        body.page-template-homepage section.documents .documents-list .file .download a {
          display: inline-block;
          background: #143470;
          color: #fff;
          padding: 0.75rem 1rem 0.625rem 1rem;
          border-radius: 4px;
          font-size: 0.75rem;
          font-weight: bold;
          text-transform: uppercase;
          letter-spacing: 0.05em; }
      body.page-template-homepage section.documents .documents-list .file .title {
        font-weight: bold; }
        body.page-template-homepage section.documents .documents-list .file .title a {
          color: #143470; }
          body.page-template-homepage section.documents .documents-list .file .title a:hover {
            text-decoration: underline; }
      body.page-template-homepage section.documents .documents-list .file .description {
        padding: 0.5rem 0;
        font-size: 0.8125rem;
        line-height: 1.125rem;
        max-width: 36rem; }
      body.page-template-homepage section.documents .documents-list .file .details,
      body.page-template-homepage section.documents .documents-list .file .meta {
        padding-top: 0.5rem;
        display: flex;
        font-size: 0.8125rem;
        flex-wrap: wrap; }
        body.page-template-homepage section.documents .documents-list .file .details div,
        body.page-template-homepage section.documents .documents-list .file .meta div {
          width: 100%; }
          @media screen and (min-width: 480px) {
            body.page-template-homepage section.documents .documents-list .file .details div,
            body.page-template-homepage section.documents .documents-list .file .meta div {
              width: auto; } }
          body.page-template-homepage section.documents .documents-list .file .details div + div,
          body.page-template-homepage section.documents .documents-list .file .meta div + div {
            margin-top: 0.5rem; }
            @media screen and (min-width: 480px) {
              body.page-template-homepage section.documents .documents-list .file .details div + div,
              body.page-template-homepage section.documents .documents-list .file .meta div + div {
                margin-top: 0;
                margin-left: 1rem; } }
        body.page-template-homepage section.documents .documents-list .file .details span,
        body.page-template-homepage section.documents .documents-list .file .meta span {
          font-weight: bold; }

body.page-template-homepage .log {
  padding: 3rem 0 1rem 0; }
  @media screen and (min-width: 992px) {
    body.page-template-homepage .log .info {
      grid-column: 5 / span 7; } }
  body.page-template-homepage .log .headline {
    padding-bottom: 1rem; }
    body.page-template-homepage .log .headline h5 {
      text-transform: uppercase;
      font-weight: bold;
      color: #143470;
      letter-spacing: 0.025em; }
  body.page-template-homepage .log ul {
    list-style-type: disc;
    padding-left: 1.5rem; }
    body.page-template-homepage .log ul li {
      margin-bottom: 2rem;
      font-size: 0.875rem;
      line-height: 1.5em; }
    body.page-template-homepage .log ul em {
      display: block;
      font-weight: bold;
      font-style: normal; }
    body.page-template-homepage .log ul a {
      display: inline-block;
      color: #143470; }
      body.page-template-homepage .log ul a:hover {
        text-decoration: underline; }
