/**
 * The base file that should be imported by every file.
 * There should be no CSS generation in this or from imported scss files at all!
 */
/**
 * Library
 */
/**
 * Variables and functions
 */
body {
  position: relative; }

.cky-consent-container, .cky-modal {
  right: 0 !important;
  bottom: 0 !important;
  margin: auto !important;
  height: -moz-fit-content;
  height: fit-content;
  width: 95% !important;
  max-width: 1200px !important;
  left: 0 !important;
  top: 0 !important;
  transform: none !important; }
  @media (min-width: 981px) {
    .cky-consent-container .cky-consent-bar, .cky-modal .cky-consent-bar {
      padding: 4em 6em !important; } }
  .cky-consent-container .cky-title, .cky-consent-container .cky-preference-title, .cky-modal .cky-title, .cky-modal .cky-preference-title {
    color: var(--light-blue) !important;
    line-height: 1 !important;
    font-weight: 700 !important; }
    @media (min-width: 981px) {
      .cky-consent-container .cky-title, .cky-consent-container .cky-preference-title, .cky-modal .cky-title, .cky-modal .cky-preference-title {
        font-size: 40px !important; } }
  .cky-consent-container .cky-notice-des, .cky-modal .cky-notice-des {
    margin: 1em 0; }
    @media (min-width: 981px) {
      .cky-consent-container .cky-notice-des, .cky-modal .cky-notice-des {
        margin: 2.5em 0; }
        .cky-consent-container .cky-notice-des p, .cky-modal .cky-notice-des p {
          line-height: 1.6 !important;
          font-size: 18px !important; } }
  @media (min-width: 981px) {
    .cky-consent-container .cky-notice-btn-wrapper, .cky-consent-container .cky-prefrence-btn-wrapper, .cky-modal .cky-notice-btn-wrapper, .cky-modal .cky-prefrence-btn-wrapper {
      display: flex;
      justify-content: flex-end;
      flex-direction: row-reverse;
      gap: 1em;
      align-items: flex-start !important; } }
  .cky-consent-container .cky-notice-btn-wrapper button, .cky-consent-container .cky-prefrence-btn-wrapper button, .cky-modal .cky-notice-btn-wrapper button, .cky-modal .cky-prefrence-btn-wrapper button {
    border: none !important;
    background: var(--dark-sand) !important;
    font-weight: bold !important;
    border-radius: 23px !important;
    padding: 0.75em 3em !important;
    width: -moz-fit-content !important;
    width: fit-content !important;
    flex-grow: 0 !important; }
    @media (max-width: 980px) {
      .cky-consent-container .cky-notice-btn-wrapper button, .cky-consent-container .cky-prefrence-btn-wrapper button, .cky-modal .cky-notice-btn-wrapper button, .cky-modal .cky-prefrence-btn-wrapper button {
        width: 100% !important; } }
    .cky-consent-container .cky-notice-btn-wrapper button:not(.cky-btn-accept), .cky-consent-container .cky-prefrence-btn-wrapper button:not(.cky-btn-accept), .cky-modal .cky-notice-btn-wrapper button:not(.cky-btn-accept), .cky-modal .cky-prefrence-btn-wrapper button:not(.cky-btn-accept) {
      color: var(--dark-blue) !important; }
    .cky-consent-container .cky-notice-btn-wrapper button.cky-btn-accept, .cky-consent-container .cky-prefrence-btn-wrapper button.cky-btn-accept, .cky-modal .cky-notice-btn-wrapper button.cky-btn-accept, .cky-modal .cky-prefrence-btn-wrapper button.cky-btn-accept {
      background: var(--dark-blue) !important; }

body.logged-in #site-header {
  top: 1.5em; }
  body.logged-in #site-header.nav-up {
    top: -13rem; }

#site-header {
  padding-block: 1.5em 1em;
  transition: ease-in-out padding 200ms, ease-in-out top 200ms; }
  #site-header.scroll {
    padding: 1em 0 calc(1em - 10px) 0; }
  #site-header.nav-up {
    top: -13rem; }
  #site-header .container {
    gap: 0 1em;
    align-items: center; }
  #site-header .menu-container {
    flex-grow: 1; }
    #site-header .menu-container-in {
      display: flex;
      flex-direction: column;
      align-items: flex-end; }
  #site-header .change-font-size {
    padding-left: 22px;
    padding-right: 22px;
    border-left: 1px solid var(--gray);
    line-height: 18px; }
    @media (min-width: 1500px) {
      #site-header .change-font-size {
        padding-inline: 8px; } }
  #site-header .btn-contact {
    padding-left: 10px;
    padding-bottom: 10px; }

.mobile-title,
.phone-hamburger-menu,
#hamburger-menu-button {
  display: none; }

nav.main-nav {
  display: flex;
  align-items: center;
  border-top: 1px solid var(--gray);
  padding-top: 15px;
  gap: 40px; }
  nav.main-nav > ul {
    display: flex;
    align-items: center; }
    nav.main-nav > ul a {
      padding: 0 5px; }
      @media (min-width: 1200px) {
        nav.main-nav > ul a {
          padding: 0 16px; } }

nav.top-nav {
  padding-bottom: 20px; }
  nav.top-nav ul li {
    font-size: 16px;
    line-height: 18px;
    padding-bottom: 0; }
    nav.top-nav ul li .sub-menu a {
      font-size: 16px !important; }

nav ul {
  padding: 0;
  margin: 0;
  font-size: 0; }
  nav ul li {
    display: inline-block;
    text-align: left;
    position: relative;
    padding: 0 0 8px 0;
    line-height: 18px;
    font-size: 18px; }
    @media (min-width: 1200px) {
      nav ul li {
        font-size: 16px; } }
    @media (min-width: 1500px) {
      nav ul li {
        font-size: 20px; } }
    nav ul li:last-child {
      margin-right: 0; }
      nav ul li:last-child a {
        border-right: 0; }
    nav ul li.menu-item-has-children.open > .sub-menu {
      visibility: visible;
      opacity: 1; }
    nav ul li.menu-item-has-children > a {
      position: relative;
      padding-right: 30px; }
      @media (min-width: 1200px) {
        nav ul li.menu-item-has-children > a {
          padding-right: 26px; } }
      nav ul li.menu-item-has-children > a::after {
        font-family: Icomoon;
        content: '\e904';
        position: absolute;
        font-size: 12px;
        right: 10px;
        top: 0; }
        @media (min-width: 1200px) {
          nav ul li.menu-item-has-children > a::after {
            right: 8px; } }
    nav ul li.menu-item-has-children .menu-item-has-children::before {
      content: '';
      width: 25px;
      height: 100%;
      position: absolute;
      right: 0;
      top: 0; }
    nav ul li.menu-item-has-children .menu-item-has-children a {
      padding-right: 15px; }
      nav ul li.menu-item-has-children .menu-item-has-children a::after {
        right: 0; }
    nav ul li.menu-item-has-children .menu-item-has-children .sub-menu {
      top: 0;
      left: calc(100% + 25px); }
    nav ul li a {
      display: block;
      transition: ease-in-out color 200ms;
      border-right: 1px solid var(--gray);
      padding: 0 5px; }
      @media (min-width: 1200px) {
        nav ul li a {
          padding: 0 8px; } }
      nav ul li a:hover {
        text-decoration: none;
        color: var(--light-blue); }

nav .open-sub-menu {
  display: none; }

.top-nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center; }

.top-nav-mobile {
  display: none; }

.menu-container .sub-menu {
  position: absolute;
  z-index: 100;
  left: 0;
  top: 100%;
  background: var(--light-gray);
  width: 200px;
  padding: 15px 25px;
  border-radius: 5px;
  box-shadow: 0 2px 4px rgba(34, 44, 78, 0.5); }
  .menu-container .sub-menu li {
    display: block;
    width: 100%;
    padding: 10px 0;
    border-bottom: 1px solid var(--dark-sand); }
    .menu-container .sub-menu li:last-child {
      border-bottom: 0; }
    .menu-container .sub-menu li a {
      font-size: 20px;
      border-right: 0;
      padding: 0; }

.menu-container .menu-item-has-children {
  position: relative; }
  .menu-container .menu-item-has-children .sub-menu {
    visibility: hidden;
    opacity: 0;
    z-index: 100;
    transition: opacity 0.3s ease-in-out;
    max-height: none;
    background-color: var(--white);
    text-align: left; }

.search-btn {
  border: 0;
  border-left: 1px solid var(--gray);
  padding: 0 0 0 16px;
  cursor: pointer;
  box-shadow: none;
  background-color: transparent; }

.search-container.search-open .search-block {
  top: 0; }

.search-block {
  position: absolute;
  top: -100%;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 30px 0;
  background-color: var(--light-sand);
  z-index: 6;
  display: flex;
  align-items: center;
  transition: ease-in-out 200ms top; }
  .search-block .container form {
    width: calc(100% - 70px);
    position: relative; }
  .search-block input[type="search"] {
    width: 100%;
    display: block;
    border: 0;
    height: 60px;
    padding: 1em 4em 1em 1.5em;
    background-color: var(--white);
    outline: none; }
  .search-block button[type="submit"] {
    position: absolute;
    top: 0;
    cursor: pointer;
    right: 10px;
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    background-color: transparent;
    z-index: 2;
    padding: 0;
    font-size: 24px;
    color: var(--dark-blue); }
  .search-block button[type="button"] {
    position: absolute;
    top: 0;
    cursor: pointer;
    right: -60px;
    width: 40px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    background-color: transparent;
    z-index: 2;
    padding: 0;
    font-size: 22px;
    color: var(--dark-blue); }

/*# sourceMappingURL=desktop-menu.css.map */
