/* Layout */
.line-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 40px;
}

.sine-line {
  width: 20px;
  height: 180px;
  stroke-dasharray: 1000;
  stroke-dashoffset: 1000;
  animation: draw-line 5s ease forwards;
}

.droplet {
  width: 18px;
  height: 24px;
  margin-top: 10px;
  opacity: 0;
  transform: translateY(10px);
  animation: drop-in 0.8s ease forwards;
  animation-delay: 1s;
  /* starts after line finishes */
}

@keyframes draw-line {
  to {
    stroke-dashoffset: 0;
  }
}
@keyframes drop-in {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.dot {
  opacity: 0;
  transform: translateY(5px);
  animation: dot-in 0.4s ease forwards;
}

svg .dot:nth-of-type(2) {
  animation-delay: 0.2s;
}

svg .dot:nth-of-type(3) {
  animation-delay: 0.4s;
}

svg .dot:nth-of-type(4) {
  animation-delay: 0.6s;
}

svg .dot:nth-of-type(5) {
  animation-delay: 0.8s;
}

svg .dot:nth-of-type(6) {
  animation-delay: 1s;
}

svg .dot:nth-of-type(7) {
  animation-delay: 1.2s;
}

svg .dot:nth-of-type(8) {
  animation-delay: 1.4s;
}

svg .dot:nth-of-type(9) {
  animation-delay: 1.6s;
}

svg .dot:nth-of-type(10) {
  animation-delay: 1.8s;
}

@keyframes dot-in {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.booking-button {
  margin-left: 15px !important;
}

.booking-button > a {
  background-color: rgba(255, 255, 255, 0);
  font-size: 16px;
  font-weight: 300;
  border-color: var(--e-global-color-primary);
  color: var(--e-global-color-primary);
  border-style: solid;
  border-width: 1px 1px 1px 1px;
  border-radius: 40px 40px 40px 40px;
}

.elementor-location-header .booking-button > a {
  background-color: var(--e-global-color-primary);
  fill: var(--e-global-color-50ffd1d);
  color: var(--e-global-color-50ffd1d);
}

.booking-button > a:hover::after {
  display: none;
}

.underline-button > a {
  color: #884C28;
  /* or any color you like */
}

.e-off-canvas__content .menu-item {
  text-align: center !important;
}

.e-off-canvas__content .menu-item.booking-button {
  margin-top: 25px;
}

.menu-item:not(.booking-button) > a,
.underline-button > a {
  position: relative;
  text-decoration: none;
  /* space for the underline */
}

.menu-item:not(.booking-button) > a::after,
.underline-button > a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -5px;
  height: 1px;
  width: 100%;
  background: #884C28;
  /* underline color */
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s ease;
}

.menu-item:not(.booking-button) > a:hover::after,
.underline-button > a:hover::after {
  transform: scaleX(1);
}

.menu-item.menu-item-has-children .sub-menu > .menu-item > a::after {
  bottom: 5px;
}

.elementor-nav-menu--layout-horizontal .elementor-nav-menu > li ul,
.elementor-nav-menu--layout-horizontal .elementor-nav-menu > li > .scroll-down {
  top: calc(100% + 5px) !important;
}

ul.elementor-nav-menu--dropdown a {
  padding: 13px 0px !important;
}

ul.elementor-nav-menu--dropdown a,
ul.elementor-nav-menu--dropdown a:focus,
ul.elementor-nav-menu--dropdown a:hover {
  border-inline-start: 20px solid transparent !important;
  border-inline-end: 20px solid transparent !important;
}

h2.wp-block-heading, h3.wp-block-heading, h4.wp-block-heading, h5.wp-block-heading, h6.wp-block-heading {
  color: #2B2B2B;
  margin-bottom: 8px;
  font-weight: 300;
}

.elementor-widget-theme-post-content p a {
  text-decoration: underline;
}

.elementor-widget-text-editor h1, .elementor-widget-text-editor h2, .elementor-widget-text-editor h3, .elementor-widget-text-editor h4, .elementor-widget-text-editor h5, .elementor-widget-text-editor h6 {
  font-family: "Roboto", sans-serif;
  font-weight: 300;
}
.elementor-widget-text-editor p a {
  text-decoration: underline;
}
.elementor-widget-text-editor p {
  font-family: "Roboto", sans-serif;
  font-weight: 300;
  font-size: 18px;
  line-height: 29px;
}

.booking-button.current-menu-item > a::after {
  display: none;
}