:root {
  --header-bg-color: #eaedf2f0;
  --nav-link-color: #094b79;
  --nav-link-sticky-color: #06263d;
  --nav-link-hover-color: #000000;
  --booknow-color: #7da6ba;
  --booknow-text-color: #ffffff;
  --booknow-sticky-color: #7da6ba;
  --booknow-text-sticky-color: #ffffff;
  --hamburger-menu-icon-color1: #68AADA;
  --hamburger-menu-icon-color2: #3976A2;
  --hamburger-menu-link-highlight-color: #3976a2;
}

#header {
  container-type: scroll-state;
  position: sticky;
  top: 0;
  height: 60px;
  background: var(--header-bg-color);
  z-index: 3;
  text-align: center;
  box-shadow: 1px 1px 2px 1px lightgray;
}


@container scroll-state(stuck: top) {

  #header-logo-cont img {
    animation: horizontal-shaking 0.25s;
  }

  #header-nav {
    .navlink {
      color: #06263d;
    }

    #navbutton1 button {
      background-color: #37607e;
    }
  }
}

@keyframes horizontal-shaking {
  0% { transform: translateX(0) }
  25% { transform: translateX(5px) }
  50% { transform: translateX(-5px) }
  75% { transform: translateX(5px) }
  100% { transform: translateX(0) }
}


#header-inner {
  margin-left: 20%;
  margin-right: 20%;
}

#header-logo-cont {
  float: left;
  height: 60px;
}

#header-logo-cont img {
  float: left;
  height: 60px;
}

#header-lang {
  float: right;
}

#header-nav {
  float: right;
  padding-top: 25px;
  padding-right: 5%;
}

.navlink {
  text-decoration: none;
  color: var(--nav-link-color);
  padding: 2px;
  padding-left: 10px;
  padding-right: 10px;
  font-weight: 600;
  font-size: 20px;
}

#navbutton1, #navbutton2 {
  margin-left: 15px;
}

#navbutton1 button {
  background-color: var(--booknow-color);
  height: 32px;
  font-weight: 600;
}

#nav-toaster {
  display: none;
  float: right;
  width: 100px;
  height: 60px;
  cursor: pointer;
}

#toaster-icon {
  float: right;
  margin-top: 8px;
  height: 45px;
}

#toaster-icon-line1, #toaster-icon-line2, #toaster-icon-line3 {
  width: 60px;
  height: 9px;
  border-radius: 6px;
  margin: 6px 0;
  transition: 0.4s;
}

#toaster-icon-line1, #toaster-icon-line3 {
  background-color: var(--hamburger-menu-icon-color1);
}

#toaster-icon-line2 {
  background-color: var(--hamburger-menu-icon-color2);
}

.change #toaster-icon-line1 {
  transform: translate(0, 16px) rotate(-45deg);
  scale: 0.9;
  background-color: #3976A2;
}

.change #toaster-icon-line2 {opacity: 0;}

.change #toaster-icon-line3 {
  transform: translate(0, -16px) rotate(45deg);
  scale: 0.9;
  background-color: var(--hamburger-menu-icon-color2);;
}

.toaster-menuitem {
  background-color: var(--header-bg-color);
  text-align: center;
  border-bottom: 1px solid lightgray;
}

.toaster-menuitem .navlink {
  display: inline-block;
  width: 200px;
  padding: 10px;
  text-decoration: none;
  color: var(--nav-link-color);
}

.toaster-menuitem .navlink:hover {
  background-color: var(--hamburger-menu-link-highlight-color);
}

#toaster-highlight1 {
  background-color: var(--booknow-color);
}

#toaster-menuitem-cont {
  display: none;
  position: absolute;
  right: 0px;
  top: 60px;
}

/*
#nav-toaster:hover #toaster-menuitem-cont {
  display: block;
}
*/

.label-separator {
  margin-right: 3px;
  border-right: 1px solid black;
}

.header-lang {
  cursor: pointer;
  width: 24px;
}

.header-lang:hover {
  background-color: #95b3e6;
}

.activelang {
  background-color: #50c1e2;
}

.link-separator {
  border-right: 1px solid darkgray;
}

.navlink:hover {
  border-bottom: 2px solid var(--nav-link-hover-color);
}

/*
@media (max-width:1750px) {
  #header-logo-cont {
    margin-left: 10%;
  }

  #header-nav {
    margin-right: 10%;
  }
}

@media (max-width:1250px) {
  #header-logo-cont {
    margin-left: 10px;
  }

  #header-nav {
    margin-right: 10px;
  }
}
*/

@media (max-width:1450px) {
  #header-inner {
    margin-left: 10%;
    margin-right: 10%;
  }
}

@media (max-width:1075px) {
  #header-inner {
    margin-left: 10px;
    margin-right: 10px;
  }
}

@media (max-width:950px) {

  #header-nav {
    display: none;
  }

  #nav-toaster {
    display: block;
  }

  #header-lang {
    float: none;
    display: inline-block;
  }

  .header-lang {
    padding: 5px;
  }
}
