@layer theme {
  #copyright {
    text-align: center;
    color: var(--white);
    background: var(--primary-dark);
  }
  #footer {
    padding: 2.5rem 0 0 0;
    color: var(--white);
    background: linear-gradient(0deg, var(--primary-dark), var(--black));
  }
  #hero .block > h2 {
    display: none;
  }
  body.menu-open #navbar-wrapper #navbar {
    position: fixed;
    top: 0;
    width: 100%;
    height: 5.625rem;
  }
  .sidebar {
    margin: 0 0 2.5rem 0;
    color: var(--primary-vivid-25);
  }
  .sidebar .block {
    margin-bottom: 3.75rem;
  }
  .sidebar .block:last-child {
    margin-bottom: 0;
  }
  .sidebar .block > h2 {
    margin: 0 0 1.875rem 0;
    padding: 0.9375rem 0.9375rem 0 0;
    color: var(--black);
    font-size: 1.125rem;
    font-weight: 700;
  }
  #copyright .block {
    margin: 0;
    color: var(--white);
    font-size: 0.875rem;
  }
  #copyright .block > h2 {
    display: none;
  }
  #copyright .block p,
  #copyright .block span {
    display: inline-block;
    margin: 0;
    line-height: 1.5;
  }
  #copyright .block p a,
  #copyright .block span a {
    color: var(--primary);
  }
  #copyright .block p a:hover,
  #copyright .block span a:hover {
    color: #ddd;
  }
  #copyright .block-menu ul.menu li {
    margin: 0;
    line-height: 1.5;
  }
  #copyright .block-menu ul.menu li a {
    text-decoration: none;
    color: #ddd;
    font-size: 0.875rem;
  }
  #copyright .block-menu ul.menu li a:hover {
    color: var(--primary);
  }
  #footer .block > h2 {
    display: none;
  }
  #footer .block .field {
    margin: 0;
  }
  #footer .block .field p {
    margin: 0;
    line-height: 1.6;
  }
  #footer .block .field a {
    color: #fff;
  }
  #footer .block .field a:hover {
    color: var(--primary);
  }
  #footer .block-system-branding-block {
    margin-bottom: 2.5rem;
  }
  #footer .block-system-branding-block a.logo {
    display: inline-block;
    display: flex;
    align-items: center;
    text-decoration: none;
  }
  #footer .block-system-branding-block a.logo .image {
    display: block;
    padding-right: 0.8125rem;
  }
  #footer .block-system-branding-block a.logo .image img {
    width: auto;
    height: 3.5rem;
  }
  #footer .block-system-branding-block a.logo .title {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  #footer .block-system-branding-block a.logo .title .site-name {
    display: block;
    color: var(--white);
    font-family: 'Geologica', sans-serif;
    font-size: 1.5rem;
    font-weight: 600;
  }
  #footer .block-system-branding-block a.logo .title .site-slogan {
    position: relative;
    top: -0.3125rem;
    display: block;
    color: var(--white);
    font-family: 'Geologica', sans-serif;
    font-size: 0.9375rem;
    font-weight: 100;
  }
  #footer .block-menu {
    padding-bottom: 2.5rem;
  }
  #footer .block-menu ul.menu li a {
    display: block;
    padding: 0.5625rem 0 0.5625rem 0;
    text-decoration: none;
    color: var(--white);
  }
  #footer .block-menu ul.menu li a:hover {
    color: var(--primary-vivid-25);
  }
  #header .block-language h2 {
    display: none;
  }
  #header .block-language ul.links {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  #header .block-language ul.links li {
    display: inline-block;
    margin: 0;
    padding: 0 0.9375rem;
    list-style: none;
  }
  #header .block-language ul.links li.is-active {
    display: none;
  }
  #header .block-language ul.links li a {
    text-decoration: none;
    font-weight: bold;
  }
  #header .region-header-menu .block-menu > h2 {
    display: none;
  }
  #header .region-header-menu .block-menu ul.menu {
    display: flex;
    gap: 1.5625rem;
  }
  #header .region-header-menu .block-menu ul.menu li:last-child {
    border-right: 0;
  }
  #header .region-header-menu .block-menu ul.menu li a {
    display: block;
    padding: 0.3125rem 0;
    color: var(--black);
    font-size: 0.875rem;
    font-weight: 600;
  }
  #header .region-header-menu .block-menu ul.menu li a[data-drupal-link-system-path='user'] {
    padding-left: 1.625rem;
    background: url('../images/user.svg') no-repeat 0 50%;
    background-size: auto 1.125rem;
  }
  #header .region-header-menu .block-menu ul.menu li a[data-drupal-link-system-path='user/logout'] {
    padding-left: 1.4375rem;
    background: url('../images/logout.svg') no-repeat 0 50%;
    background-size: auto 1.125rem;
  }
  #header .region-header-menu .block-menu ul.menu li a[data-drupal-link-system-path='user/login'] {
    padding-left: 1.4375rem;
    background: url('../images/logout.svg') no-repeat 0 50%;
    background-size: auto 1.125rem;
  }
  #header .region-header-menu .block-menu ul.menu li a[data-drupal-link-system-path='user/login'].is-active {
    color: var(--primary);
  }
  #header .region-header-menu .block-menu ul.menu li.menu-item--active-trail a {
    font-weight: bold;
  }
  #header .region-header-menu .block-menu ul.menu li ul.menu li {
    display: none;
  }
  #header .region-header-search .block-search > h2 {
    display: none;
  }
  #header .region-header-search .block-search form,
  #header .region-header-search .block-search div,
  #header .region-header-search .block-search input,
  #header .region-header-search .block-search span {
    margin: 0;
    padding: 0;
  }
  #header .region-header-search .block-search form {
    display: flex;
  }
  #header .region-header-search .block-search .form-submit {
    width: 8.875rem;
    margin: 0;
    padding-right: 1.875rem;
    padding-left: 3.3125rem;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    background-image: url('../images/search.svg');
    background-repeat: no-repeat;
    background-position: 1.5rem 50%;
    background-size: 1.125rem 1.125rem;
  }
  #header .region-header-search .block-search .form-submit:hover {
    color: var(--black);
    border-color: var(--primary);
    background-color: var(--primary-vivid);
    background-image: url('../images/search-hover.svg');
  }
  #header .region-header-search .block-search .form-search {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  #hero .block-page-title-block {
    text-align: center;
  }
  #hero .block-page-title-block h1 {
    margin: 0;
    padding: 3.125rem 1.875rem 0 1.875rem;
  }
  #hero .block-page-title-block h1 .field {
    margin-bottom: 0;
  }
  #main .block-page-title-block h1 {
    margin: 0 0 2.5rem 0;
    color: var(--primary);
  }
  #main .search-advanced .form-checkboxes .form-type-checkbox {
    display: flex;
    align-items: center;
  }
  #main .search-advanced .action {
    margin-top: 0.5625rem;
  }
  #main .search-advanced .action input {
    width: auto !important;
    border-radius: 0.4375rem !important;
  }
  #main #search-form .form-wrapper {
    display: flex;
    align-items: end;
    margin-bottom: 0;
    gap: 0;
  }
  #main #search-form .form-wrapper .form-type-search {
    width: calc(100% - 8.875rem);
    margin: 0;
  }
  #main #search-form .form-wrapper .form-type-search .form-search {
    height: 3.125rem;
    padding-right: 0.9375rem;
    padding-left: 0.9375rem;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    font-size: 1.625rem;
    line-height: 3.125rem;
  }
  #main #search-form .form-wrapper .form-submit {
    width: 8.875rem;
    height: 3.125rem;
    margin: 0;
    padding-right: 1.875rem;
    padding-left: 3.3125rem;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    background-image: url('../images/search.svg');
    background-repeat: no-repeat;
    background-position: 1.5rem 50%;
    background-size: 1.125rem 1.125rem;
    line-height: 3.125rem;
  }
  #main #search-form .form-wrapper .form-submit:hover {
    color: var(--black);
    border-color: var(--primary);
    background-color: var(--primary-vivid);
    background-image: url('../images/search-hover.svg');
  }
  #main #search-form .search-help-link {
    display: inline-block;
    padding: 1.25rem 0.625rem 0 0.625rem;
    font-size: 1rem;
  }
  #main #search-form + h2 {
    margin-bottom: 2.1875rem;
    padding-top: 3.75rem;
    font-size: 1.25rem;
    font-weight: 400;
  }
  #main ol.search-results {
    margin: 0;
    padding: 0;
  }
  #main ol.search-results li {
    margin: 0 0 2.1875rem 0;
    padding: 0;
  }
  #main ol.search-results li .search-result__title {
    margin: 0 0 0.625rem 0;
    padding: 0;
    color: var(--black);
    font-size: 1.625rem;
    font-weight: normal;
    font-weight: 600;
    line-height: 1.3;
  }
  #main ol.search-results li .search-result__title a {
    color: var(--black);
  }
  #main ol.search-results li .search-result__title a:hover {
    color: var(--primary);
  }
  #main ol.search-results li .search-result__snippet strong {
    color: var(--primary);
  }
  #main .user-login-form {
    padding: 1.25rem 0;
  }
  #main .user-login-form label {
    display: block;
    margin: 0 0 0.5rem 0;
  }
  #main .user-login-form .form-text {
    margin-bottom: 0.5rem;
  }
  #main .user-login-form .form-item {
    margin-top: 0;
    margin-bottom: 1.875rem;
  }
  #main .user-login-form .form-actions {
    margin-top: 0;
    margin-bottom: 0;
  }
  #main .user-pass {
    padding: 1.25rem 0;
  }
  #main .user-pass label {
    display: block;
    margin: 0 0 0.5rem 0;
  }
  #main .user-pass .form-text {
    margin-bottom: 0.5rem;
  }
  #main .user-pass .form-item {
    margin-top: 0;
    margin-bottom: 0;
  }
  #main .user-pass .form-actions {
    margin-top: 0;
    margin-bottom: 0;
  }
  #main .user-pass p {
    padding: 0 0.625rem;
    color: var(--black-60);
    font-size: 0.875rem;
  }
  #main .user-register-form {
    padding: 1.25rem 0;
  }
  #main .user-register-form label {
    display: block;
    margin: 0 0 0.5rem 0;
  }
  #main .user-register-form .form-text {
    margin-bottom: 0.5rem;
  }
  #main .user-register-form .form-item {
    margin-top: 0;
    margin-bottom: 1.875rem;
  }
  #main .user-register-form .form-actions {
    margin-top: 0;
    margin-bottom: 0;
  }
  #main .user-register-form .field--name-user-picture .image-widget input {
    height: auto;
    padding: 0.5rem 0.625rem;
  }
  #main .user-register-form #edit-contact .form-type-checkbox label {
    display: inline-block;
    margin: 0 0 0.7rem 0;
  }
  #menu .block-menu > h2 {
    display: none;
  }
  #navbar .block-system-branding-block {
    float: left;
    height: 5.625rem;
    margin: 0;
  }
  #navbar .block-system-branding-block a.logo {
    display: inline-block;
    display: flex;
    align-items: center;
    height: 5.625rem;
    padding: 0 1.25rem;
    text-decoration: none;
  }
  #navbar .block-system-branding-block a.logo .image {
    display: block;
    padding-right: 0.8125rem;
  }
  #navbar .block-system-branding-block a.logo .image img {
    width: auto;
    height: 3.8125rem;
  }
  #navbar .block-system-branding-block a.logo .title {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  #navbar .block-system-branding-block a.logo .title .site-name {
    display: block;
    color: var(--primary-dark);
    font-family: 'Geologica', sans-serif;
    font-size: 1.75rem;
    font-weight: 600;
  }
  #navbar .block-system-branding-block a.logo .title .site-slogan {
    position: relative;
    top: -0.3125rem;
    display: block;
    color: var(--primary-dark);
    font-family: 'Geologica', sans-serif;
    font-size: 0.9375rem;
    font-weight: 100;
  }
  #navbar .icon-menu {
    position: absolute;
    z-index: 200;
    top: 0;
    right: 0;
    width: 5rem;
    height: 5.625rem;
    margin: 0;
    padding: 0;
    cursor: pointer;
    text-align: center;
    border: 0;
    background: none;
  }
  #navbar .icon-menu span.icon-menu-1,
  #navbar .icon-menu span.icon-menu-2,
  #navbar .icon-menu span.icon-menu-3 {
    position: relative;
    top: 0;
    display: block;
    width: 1.875rem;
    height: 0.1875rem;
    margin: 0.4375rem auto;
    background: var(--black);
  }
  #navbar .icon-menu span.icon-menu-1,
  #navbar .icon-menu span.icon-menu-3 {
    transition: all 0.1s 0.1s;
  }
  #navbar .icon-menu span.icon-menu-2 {
    transition: all 0.1s 0.1s;
  }
  /* open */
  body.menu-open #navbar .icon-menu span.icon-menu-1 {
    position: relative;
    top: 0.625rem;
    transform: rotate(45deg);
  }
  body.menu-open #navbar .icon-menu span.icon-menu-2 {
    visibility: hidden;
    transition: all 0.1s 0s;
  }
  body.menu-open #navbar .icon-menu span.icon-menu-3 {
    position: relative;
    top: -0.625rem;
    transform: rotate(-45deg);
  }
  body.menu-open #navbar .icon-menu span.icon-menu-1,
  body.menu-open #navbar .icon-menu span.icon-menu-3 {
    transition: all 0 0;
  }
  @media (max-width: 849px) {
    #copyright {
      padding: 0 0 3.75rem 0;
    }
  }
  @media (min-width: 850px) {
    #copyright {
      padding: 1.875rem 0 3.75rem 0;
    }
    #copyright .region {
      display: flex;
      justify-content: center;
      padding-top: 1.875rem;
    }
  }
  @media (min-width: 320px) {
    #footer .container {
      padding: 0 2.5rem;
    }
    #footer .region-footer {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
    }
    #footer .region-footer .block-system-branding-block {
      grid-column: 1 / span 2;
    }
  }
  @media (min-width: 850px) {
    #footer {
      padding: 5rem 0 0 0;
    }
    #footer .container {
      padding: 0 3.125rem;
    }
    #footer .region-footer {
      display: flex;
      gap: 2.5rem;
    }
  }
  @media (min-width: 1360px) {
    #footer .container {
      padding: 0;
    }
  }
  @media (max-width: 849px) {
    #header {
      margin-top: auto;
    }
    #header #header-wrapper {
      display: flex;
      flex-direction: column;
    }
    #header #header-wrapper .region-header {
      display: none;
    }
    #header #header-wrapper .region-header-search {
      order: 1;
    }
    #header #header-wrapper .region-header-menu {
      order: 2;
      margin-bottom: 3.125rem;
    }
  }
  @media (min-width: 850px) {
    #header #header-wrapper {
      position: relative;
    }
    #header .region-header {
      display: flex;
    }
  }
  @media (max-width: 849px) {
    #menu {
      color: var(--white);
    }
    #menu .region-menu {
      margin-bottom: 3.125rem;
    }
  }
  @media (min-width: 850px) {
    #menu {
      background: linear-gradient(90deg, var(--primary-dark), var(--primary-vivid));
    }
  }
  @media (max-width: 849px) {
    #navbar-wrapper {
      position: relative;
      height: 5.625rem;
    }
    #navbar-wrapper #navbar {
      position: relative;
      z-index: 100;
      height: 5.625rem;
      background: var(--white);
      box-shadow: 0 0.0625rem 0.125rem rgba(0, 0, 0, 0.3);
    }
  }
  @media (min-width: 850px) {
    #navbar-wrapper {
      display: none;
    }
  }
  @media (max-width: 849px) {
    #copyright .block {
      margin-bottom: 1.25rem;
    }
    #copyright .block:last-child {
      margin-bottom: 0;
    }
  }
  @media (min-width: 850px) {
    #copyright .region .block {
      margin-right: 1.875rem;
      padding-right: 1.875rem;
      border-right: 0.0625rem solid #ddd;
    }
    #copyright .region .block:last-child {
      margin-right: 0;
      padding-right: 0;
      border: 0;
    }
  }
  @media (max-width: 849px) {
    #copyright .block-menu ul.menu li a {
      display: block;
      padding: 0.3125rem 0;
      text-align: center;
    }
  }
  @media (min-width: 850px) {
    #copyright .block-menu ul.menu {
      display: flex;
      flex-wrap: wrap;
    }
    #copyright .block-menu ul.menu li {
      margin-right: 1.5625rem;
    }
    #copyright .block-menu ul.menu li:last-child {
      margin-right: 0;
    }
    #copyright .block-menu ul.menu li a {
      display: inline-block;
    }
  }
  @media (min-width: 850px) {
    #footer .block {
      flex: 1;
    }
  }
  @media (max-width: 849px) {
    #footer .block-menu ul.menu li a {
      padding: 0.5rem 0;
      text-decoration: underline;
      font-size: 1.125rem;
    }
  }
  @media (min-width: 850px) {
    #footer .block-menu {
      margin-bottom: 0;
    }
  }
  @media (max-width: 849px) {
    #header .block-system-branding-block {
      display: none;
    }
  }
  @media (min-width: 850px) {
    #header .block-system-branding-block {
      margin: 0 auto 0 0;
    }
    #header .block-system-branding-block a.logo {
      display: inline-block;
      display: flex;
      padding: 2.375rem 0 2.375rem 0;
      text-decoration: none;
    }
    #header .block-system-branding-block a.logo .image {
      display: block;
      padding-right: 1.125rem;
    }
    #header .block-system-branding-block a.logo .image img {
      width: auto;
      height: 4.625rem;
    }
    #header .block-system-branding-block a.logo .title {
      display: flex;
      flex-direction: column;
      justify-content: center;
    }
    #header .block-system-branding-block a.logo .title .site-name {
      display: block;
      color: var(--primary-dark);
      font-family: 'Geologica', sans-serif;
      font-size: 1.875rem;
      font-weight: 600;
    }
    #header .block-system-branding-block a.logo .title .site-slogan {
      position: relative;
      top: -0.3125rem;
      display: block;
      color: var(--primary-dark);
      font-family: 'Geologica', sans-serif;
      font-size: 0.9375rem;
      font-weight: 100;
    }
  }
  @media (max-width: 849px) {
    #header .block-language {
      margin: 0;
      padding: 0 0 1.25rem 1.25rem;
    }
    #header .block-language ul.links li {
      padding: 0 0.9375rem 0 0;
    }
  }
  @media (min-width: 850px) {
    #header .block-language {
      height: 6.875rem;
      margin: 0;
    }
    #header .block-language li {
      display: block;
      float: left;
      height: 6.875rem;
      margin: 0;
      padding: 0 1.5625rem 0 1.5625rem;
      white-space: nowrap;
      text-decoration: none;
      text-transform: uppercase;
      color: var(--primary-vivid-25);
      font-weight: 800;
      line-height: 6.875rem;
    }
  }
  @media (max-width: 849px) {
    #header .region-header-menu .block-menu ul.menu {
      justify-content: flex-end;
    }
    #header .region-header-menu .block-menu ul.menu li a {
      text-decoration: none;
      font-size: 1.125rem;
      line-height: 1.875rem;
    }
    #header .region-header-menu .block-menu ul.menu li a[data-drupal-link-system-path='user'] {
      padding-left: 2.3125rem;
      background: url('../images/user.svg') no-repeat 0 50%;
      background-size: auto 1.875rem;
    }
    #header .region-header-menu .block-menu ul.menu li a[data-drupal-link-system-path='user/logout'] {
      padding-left: 2.1875rem;
      background: url('../images/mobile-logout.svg') no-repeat 0 50%;
      background-size: auto 1.875rem;
    }
    #header .region-header-menu .block-menu ul.menu li a[data-drupal-link-system-path='user/login'] {
      padding-left: 2.1875rem;
      background: url('../images/mobile-logout.svg') no-repeat 0 50%;
      background-size: auto 1.875rem;
    }
    #header .region-header-menu .block-menu ul.menu li a[data-drupal-link-system-path='user/login'].is-active {
      color: var(--primary);
    }
  }
  @media (min-width: 850px) {
    #header .region-header-menu {
      position: absolute;
      top: 1.25rem;
      right: 0;
      display: flex;
      gap: 1.875rem;
    }
  }
  @media (min-width: 850px) {
    #header .region-header-search .block-search .form-search {
      width: 13.75rem;
    }
  }
  @media (max-width: 849px) {
    #header .region-header-search {
      margin-bottom: 1.5625rem;
    }
    #header .region-header-search .form-item {
      width: 100%;
    }
    #header .region-header-search .form-item .form-search {
      height: 3.4375rem;
      color: var(--primary-darker);
      border-width: 0.09375rem;
      border-color: var(--primary-darker);
      background: transparent;
    }
    #header .region-header-search .form-actions .form-submit {
      overflow: hidden;
      width: 4.875rem !important;
      height: 3.4375rem;
      padding-right: 0 !important;
      padding-left: 0 !important;
      text-indent: 18.75rem;
      border-width: 0.09375rem;
      border-color: var(--primary-darker);
      background-color: var(--primary-darker);
      background-position: 50% 50%;
      background-size: 1.125rem 1.125rem;
    }
    #header .region-header-search .form-actions .form-submit:hover {
      border-width: 0.09375rem;
      border-color: var(--primary-darker);
      background-color: var(--primary-darker);
      background-image: url('../images/search.svg');
    }
  }
  @media (min-width: 850px) {
    #header .region-header-search {
      position: absolute;
      right: 0;
      bottom: 2.1875rem;
      display: flex;
    }
  }
  @media (max-width: 849px) {
    #main .block-page-title-block h1 {
      margin: 0 0 1.25rem 0;
    }
  }
  @media (min-width: 850px) {
    #center.layout-builder #main .block-page-title-block h1 {
      margin: 0 0 3.75rem 0;
      text-align: center;
    }
  }
  @media (min-width: 850px) {
    #main .user-login-form {
      padding: 0 1.5625rem;
    }
  }
  @media (min-width: 850px) {
    #main .user-pass {
      padding: 0 1.5625rem;
    }
  }
  @media (min-width: 850px) {
    #main .user-register-form {
      padding: 0 1.5625rem;
    }
  }
  @media (max-width: 849px) {
    #menu .block-menu ul.menu {
      margin: 0;
      padding: 0;
    }
    #menu .block-menu ul.menu li {
      position: relative;
      margin: 0;
      padding: 0;
      line-height: 1.5;
    }
    #menu .block-menu ul.menu li a {
      display: block;
      padding: 0.625rem 5rem 0.625rem 0.9375rem;
      text-decoration: none;
      color: var(--white);
      border-bottom: 0.09375rem solid var(--primary-darker);
      font-family: 'Geologica', sans-serif;
      font-size: 1.625rem;
    }
    #menu .block-menu ul.menu li a.is-active {
      color: var(--white);
    }
    #menu .block-menu ul.menu li a.is-active:hover {
      color: var(--white);
    }
    #menu .block-menu ul.menu li ul {
      display: none;
      border: 0;
    }
    #menu .block-menu ul.menu li ul.open {
      display: block;
    }
    #menu .block-menu ul.menu li ul li a {
      padding: 0.625rem 5rem 0.625rem 1.875rem;
      color: var(--black-80);
      font-size: 1.375rem;
    }
    #menu .block-menu ul.menu li ul li span {
      background: url('../images/mobile-arrow2.svg') no-repeat 50% 50%;
    }
    #menu .block-menu ul.menu li ul li ul li a {
      padding: 0.625rem 5rem 0.625rem 2.8125rem;
    }
    #menu .block-menu ul.menu li ul li ul li ul li a {
      padding: 0.625rem 5rem 0.625rem 3.75rem;
    }
    #menu .block-menu ul.menu li ul li ul li ul li ul li a {
      padding: 0.625rem 5rem 0.625rem 4.6875rem;
    }
    #menu .block-menu ul.menu li:hover {
      color: var(--white);
    }
    #menu .block-menu ul.menu li span {
      position: absolute;
      top: 0;
      right: 0;
      width: 3.75rem;
      height: 3.75rem;
      cursor: pointer;
      transition: all 0.05s;
      border-left: 0.0625rem solid var(----primary-vivid-25);
      background: url('../images/mobile-arrow.svg') no-repeat 50% 50%;
    }
    #menu .block-menu ul.menu li span.open {
      transform: rotate(180deg);
    }
  }
  @media (min-width: 850px) {
    #menu .block-menu {
      position: relative;
    }
    #menu .block-menu ul.menu {
      display: flex;
      flex-direction: row;
      align-items: center;
      margin: 0;
      padding: 0;
    }
    #menu .block-menu ul.menu > li {
      position: relative;
      margin: 0;
      padding: 0;
      list-style: none;
      line-height: 1;
    }
    #menu .block-menu ul.menu > li > a,
    #menu .block-menu ul.menu > li > span {
      display: block;
      margin: 0;
      padding: 0 1.875rem;
      text-align: center;
      white-space: nowrap;
      text-decoration: none;
      color: var(--white);
      font-family: 'Geologica', sans-serif;
      font-size: 1.125rem;
      font-weight: 500;
      line-height: 4.1875rem;
    }
    #menu .block-menu > ul.menu > li > a.is-active,
    #menu .block-menu > ul.menu > li.menu-item--active-trail > a {
      background-color: var(--primary);
    }
    #menu .block-menu > ul.menu > li > a.is-active:hover,
    #menu .block-menu > ul.menu > li.menu-item--active-trail > a:hover {
      background-color: var(--black);
    }
    #menu .block-menu ul.menu > li:hover > a,
    #menu .block-menu ul.menu > li:hover > span {
      background-color: var(--black);
    }
    #menu .block-menu ul.menu > li > ul.menu {
      display: none !important;
    }
    #menu .block-menu ul.menu > li:hover > ul.menu {
      position: absolute;
      z-index: 1000;
      top: 4.1875rem;
      left: 0;
      display: block !important;
      height: auto;
    }
    #menu .block-menu ul.menu > li > ul.menu > li {
      height: auto;
      margin: 0;
      padding: 0;
      border-bottom: 0.0625rem solid var(--black-80);
      line-height: 1;
    }
    #menu .block-menu ul.menu > li > ul.menu > li:first-child {
      border-top: 0.5rem solid var(--black);
    }
    #menu .block-menu ul.menu > li > ul.menu > li:last-child {
      border-bottom: 0.5rem solid var(--black);
    }
    #menu .block-menu ul.menu > li > ul.menu > li.menu-item--expanded > a {
      background: url('../images/arrow-menu.svg') no-repeat calc(100% - 0.9375rem) 50%;
      background-size: auto 0.625rem;
    }
    #menu .block-menu ul.menu > li:hover > ul.menu > li > a {
      height: auto;
      margin: 0;
      padding: 0.8125rem 3.75rem 0.8125rem 1.875rem;
      text-align: left;
      text-transform: none;
      background-color: var(--black);
      font-size: 1rem;
      font-weight: normal;
      line-height: 1;
    }
    #menu .block-menu ul.menu > li:hover > ul.menu > li:hover > a {
      background-color: var(--primary);
    }
    #menu .block-menu ul.menu > li:hover > ul.menu > li:hover > ul.menu {
      position: absolute;
      top: -0.5rem;
      left: 100%;
      padding: 0;
      border-left: 0.0625rem solid transparent;
    }
  }
  @media (max-width: 479px) {
    #navbar .block-system-branding-block a .title {
      display: none;
    }
  }
  @media (min-width: 850px) {
    #navbar .icon-menu {
      display: none;
    }
  }
  @media (max-width: 849px) {
    .sidebar .block-menu {
      display: none;
    }
  }
  @media (min-width: 480px) {
    .sidebar .block-menu ul.menu li {
      line-height: 1.2;
    }
    .sidebar .block-menu ul.menu li a {
      display: block;
      padding: 0.875rem 0.625rem 0.75rem 0.625rem;
      text-decoration: none;
      color: var(--black-80);
      border-bottom: 0.0625rem solid var(--primary-damped);
      background: var(--white);
      font-size: 0.875rem;
      font-weight: 700;
    }
    .sidebar .block-menu ul.menu li a.is-active {
      background: var(--primary-vivid-25);
    }
    .sidebar .block-menu ul.menu li a.is-active:hover {
      background: var(--primary-vivid-25);
    }
    .sidebar .block-menu ul.menu li ul li a {
      padding-left: 1.875rem;
    }
    .sidebar .block-menu ul.menu li ul ul li a {
      padding-left: 3.125rem;
    }
    .sidebar .block-menu ul.menu li ul ul ul li a {
      padding-left: 4.375rem;
    }
    .sidebar .block-menu ul.menu li a:hover {
      background: var(--primary-vivid-25);
    }
  }
}
