.position-relative {
  position: relative;
}

@keyframes flash {
  from, 25%, to {
    opacity: 1;
  }
  12.5%, 37.5% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
}
a.link {
  color: inherit;
}
a.link:hover {
  text-decoration: underline;
}

body {
  height: 1000px;
}

.qodef-header-navigation > ul > li {
  margin: 0 15px;
}

.qodef-header-navigation > ul > li > a .qodef-menu-item-text {
  position: relative;
  font-size: 18px;
  padding: 8px 20px;
  color: var(--kandelaber-cl-primary);
  border-radius: 3px;
  transition: 0.2s;
}

.qodef-header-navigation > ul > li > a .qodef-menu-item-text:hover {
  background-color: var(--kandelaber-cl-primary);
  color: var(--kandelaber-cl-2);
  box-shadow: 9px 4px 19px -11px var(--kandelaber-cl-primary);
}

.qodef-header-navigation > ul > li > a .qodef-menu-item-text:active {
  background-color: rgba(103, 148, 54, 0.71);
}

/* Remove UNDERLINING for menu items */
.qodef-header-navigation > ul > li > a:hover .qodef-menu-item-text:after {
  display: none;
}

.qodef-header-navigation > ul > li.current-menu-item > a .qodef-menu-item-text:after,
.qodef-header-navigation > ul > li.current-menu-ancestor > a .qodef-menu-item-text:after {
  display: none;
}

#qodef-page-header-inner {
  padding: 0 5%;
  background-color: white;
  box-shadow: 2px 3px 22px -14px rgba(0, 0, 0, 0.75);
}

#menu-main-menu-1 > li {
  display: flex;
  height: auto;
  margin: 0 5px;
}

#menu-main-menu-1 > li > a {
  height: auto;
}

.qodef-top-info-bar {
  background-color: var(--kandelaber-cl-normal);
  color: var(--kandelaber-cl-2);
  padding: 6px 0;
  font-size: 14px;
}

.qodef-top-info-bar div.info-bar-item {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}

.qodef-top-info-bar div.info-bar-item i {
  color: var(--kandelaber-cl-secondary);
  padding-right: 10px;
  font-size: 24px;
}

/*
=========================================================================
    Page loader
=========================================================================
 */
.page-loader {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  background-color: white;
  width: 100%;
  height: 100%;
  overflow: visible !important;
}
.page-loader .content {
  width: 40%;
  height: 100%;
  margin: auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}
.page-loader .content .loading-logo {
  display: flex;
  justify-content: center;
  width: 100%;
}
.page-loader .content .loading-logo img {
  width: 550px;
  animation-name: flash;
  animation-duration: 3s;
  animation-delay: 5s;
  animation-iteration-count: infinite;
}
.page-loader .content .loading-image {
  display: flex;
  align-items: flex-start;
  width: 100%;
}
.page-loader .content .loading-image img {
  position: relative;
  left: -15%;
  width: 280px;
}
.page-loader .content .loading-image.loading-image-bottom {
  justify-content: flex-end;
}
.page-loader .content .loading-image.loading-image-bottom img {
  left: auto;
  position: relative;
  right: -15%;
}
@media (max-width: 576px) {
  .page-loader .content {
    width: 95%;
  }
  .page-loader .content .loading-image img {
    width: 180px;
    left: -15%;
  }
  .page-loader .content .loading-image.loading-image-bottom img {
    right: 0;
  }
  .page-loader .content .loading-logo img {
    width: auto;
  }
}
@media (min-width: 576px) and (max-width: 767px) {
  .page-loader .content {
    width: 80%;
  }
  .page-loader .content .loading-image img {
    width: 180px;
    left: 0%;
  }
  .page-loader .content .loading-logo img {
    width: 450px;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .page-loader .content {
    width: 60%;
  }
  .page-loader .content .loading-image img {
    width: 180px;
    left: -15%;
  }
  .page-loader .content .loading-logo img {
    width: 450px;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .page-loader .content {
    width: 40%;
  }
  .page-loader .content .loading-image img {
    width: 220px;
    left: -45%;
  }
  .page-loader .content .loading-logo img {
    width: 450px;
  }
}

.overflow-hidden {
  overflow: hidden;
}

.search-more-button {
  cursor: pointer;
  transition: 0.2s;
}
.search-more-button:active {
  transform: scale3d(0.9, 0.9, 0.9);
}

.category-go-button {
  cursor: pointer;
  transition: 0.2s;
  opacity: 1;
}
.category-go-button:hover {
  opacity: 0.8;
}
.category-go-button:active {
  transform: scale3d(0.9, 0.9, 0.9);
}

.kandelaber-button {
  transition: 0.2s;
}
.kandelaber-button:active {
  opacity: 0.8;
}

.scroll-top i {
  transition: 0.2s;
  padding: 10px;
  color: #EBF2FA;
  background-color: #064789;
}
.scroll-top i:active {
  transform: scale3d(0.95, 0.95, 0.95);
}

.confetti-star-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  min-height: 650px;
  background-color: transparent;
}

.contact-form-message textarea {
  max-width: 100%;
  min-width: 100%;
  max-height: 350px;
}

button.submit-form-button {
  background: transparent !important;
  border-radius: 5px !important;
  border: 2px solid #064789 !important;
  color: #064789 !important;
  padding: 18px 40px !important;
  height: auto !important;
  transition: 0.2s;
  outline: none !important;
}
button.submit-form-button:hover {
  background: #064789 !important;
  color: #EBF2FA !important;
}
button.submit-form-button:active {
  opacity: 0.8 !important;
}
button.submit-form-button::after {
  content: none !important;
}

div.wpforms-container-full .wpforms-confirmation-container-full {
  background-color: #9ac868 !important;
  color: white !important;
}

.contact-form-placeholder {
  min-height: 350px;
}

.overlay-loader-container {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  z-index: 99;
}
.overlay-loader-container .loader-placeholder {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  background-color: rgba(255, 255, 255, 0.6);
  display: flex;
  align-items: center;
  justify-content: center;
}
.overlay-loader-container .loader-placeholder .loader {
  width: 80px;
  --b: 12px;
  aspect-ratio: 1;
  border-radius: 50%;
  background: #064789;
  -webkit-mask: repeating-conic-gradient(rgba(0, 0, 0, 0) 0deg, #000 1deg 70deg, rgba(0, 0, 0, 0) 71deg 90deg), radial-gradient(farthest-side, rgba(0, 0, 0, 0) calc(100% - var(--b) - 1px), #000 calc(100% - var(--b)));
  -webkit-mask-composite: destination-in;
  mask-composite: intersect;
  animation: l5 1s infinite;
}
.overlay-loader-container .loader-content-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
  background-color: white;
}
@keyframes l5 {
  to {
    transform: rotate(0.5turn);
  }
}
@keyframes rotation {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

.kandelaber-header-layout-menu {
  border: 1px solid #ebf2fa;
  box-shadow: 0px 0px 33px -15px rgba(0, 0, 0, 0.75);
  height: auto;
}
.kandelaber-header-layout-menu .qodef-header-logo-link {
  height: 50px;
}
.kandelaber-header-layout-menu .navigation-column {
  display: flex;
  justify-content: flex-end;
}

.kandelaber-header .navigation-column {
  display: flex;
  justify-content: flex-end;
}

#qodef-404-page {
  padding: 60px 0 120px 0;
}
#qodef-404-page .not-found-image {
  max-width: 250px;
}
#qodef-404-page .button-404 {
  font-size: 20px;
  font-family: Lexend;
  cursor: pointer;
}

.qodef-mobile-header--sticky #qodef-page-mobile-header {
  transform: translateY(-500%);
}

.qodef-mobile-header--sticky-display #qodef-page-mobile-header {
  transform: translateY(0);
}

#qodef-page-mobile-header {
  box-shadow: 3px 2px 30px -16px rgba(0, 0, 0, 0.75);
}
#qodef-page-mobile-header #qodef-page-mobile-header-inner {
  padding: 0 !important;
}
#qodef-page-mobile-header .qodef-mobile-header-opener {
  padding: 10px 15px;
}
#qodef-page-mobile-header .qodef-mobile-header-opener .qodef-m-icon.qodef--close {
  top: 12px;
  left: 18px;
}

.call-button-placeholder {
  position: fixed;
  bottom: 80px;
  right: 35px;
  background-color: #679436;
  color: #EBF2FA;
  padding: 10px 15px;
  border-radius: 50%;
  cursor: pointer;
  transition: 0.3s;
  transform: translateX(160px);
  z-index: 10;
}
.call-button-placeholder:hover {
  opacity: 0.9;
}
.call-button-placeholder:active {
  transform: scale3d(0.9, 0.9, 0.9);
}
.call-button-placeholder a {
  text-decoration: inherit;
  color: inherit;
}
@media (max-width: 576px) {
  .call-button-placeholder.visible {
    transform: translateX(0);
  }
}
@media (min-width: 576px) and (max-width: 767px) {
  .call-button-placeholder.visible {
    transform: translateX(0);
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .call-button-placeholder.visible {
    transform: translateX(0);
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .call-button-placeholder.visible {
    transform: translateX(0);
  }
}