/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/
:root {
  --dark-1: #323C4B;
  --dark-2: #5B636F;
  --dark-3: #858A94;
  --dark-4: #ADB0B8;
  --dark-5: #D6D9DB;
  --orange-1: #FF7800;
  --orange-2: #FF9433;
  --orange-3: #FFAD66;
  --orange-4: #FFC999;
  --orange-5: #FFE3CC;
  --blue-1: #5A5FD7;
  --blue-2: #7A80DE;
  --blue-3: #9C9EE8;
  --blue-4: #BDBFF0;
  --blue-5: #DEDEF7;
  --green-1: #55B996;
  --green-2: #78C7AB;
  --green-3: #99D6BF;
  --green-4: #BAE3D6;
  --green-5: #DEF2EB;
  --red-1: #CF0000;
  --white-1: #FFFFFF;
  --white-2: #F4F4F4;
}

body {
  color: var(--dark-2);
  font-size: 18px;
  line-height: 1.4;
}

h1, h2, h3, h4, h5, h6 {
  color: var(--dark-1);
}

@media screen and (max-width: 1024px) {
  h1 {
    font-size: 48px !important;
    line-height: 1 !important;
  }
  h2 {
    font-size: 40px !important;
    line-height: 1.1 !important;
  }
  h3 {
    font-size: 32px !important;
    line-height: 1.1 !important;
  }
  h4 {
    font-size: 24px !important;
    line-height: 1.1 !important;
  }
  h5 {
    font-size: 18px !important;
    line-height: 1.4 !important;
  }
  h6 {
    font-size: 18px !important;
    line-height: 1.4 !important;
  }
}
@media screen and (max-width: 767px) {
  body {
    font-size: 16px !important;
  }
}
/* Buttons */
/* Super button and super button alt */
.elementor-widget-button.btn-super a,
.elementor-widget-button.btn-super-alt a {
  font-size: 15px;
  line-height: 1.2;
  font-weight: 700;
  text-transform: uppercase;
  padding-left: 48px;
  padding-top: 38px;
  padding-bottom: 38px;
  padding-right: 40px;
  border-radius: 62px;
  letter-spacing: 0.025em;
  position: relative;
  overflow: hidden;
  transition: color 0.3s ease-out;
}
.elementor-widget-button.btn-super a .elementor-button-content-wrapper,
.elementor-widget-button.btn-super-alt a .elementor-button-content-wrapper {
  align-items: center;
  gap: 130px;
  position: relative;
}
.elementor-widget-button.btn-super a .elementor-button-icon,
.elementor-widget-button.btn-super-alt a .elementor-button-icon {
  display: flex;
  align-items: center;
}
.elementor-widget-button.btn-super a::before,
.elementor-widget-button.btn-super-alt a::before {
  content: "";
  position: absolute;
  border-radius: 72px;
  width: 72px;
  right: 10px;
  bottom: 10px;
  top: 10px;
}
.elementor-widget-button.btn-super a:hover::before,
.elementor-widget-button.btn-super-alt a:hover::before {
  width: 100%;
  right: 0;
  transform: scaleY(1.3);
}

/* Super button */
.elementor-widget-button.btn-super a {
  color: var(--blue-1);
  background-color: var(--white-1) !important;
}
.elementor-widget-button.btn-super a svg {
  fill: var(--white-1);
}
.elementor-widget-button.btn-super a::before {
  background-color: var(--blue-1);
  transition: width 0.3s ease-out, right 0.3s ease-out, transform 0.3s ease-out;
}
.elementor-widget-button.btn-super a:hover {
  color: var(--white-1);
}

/* Super button alt */
.elementor-widget-button.btn-super-alt a {
  color: var(--white-1);
  background-color: var(--blue-1) !important;
}
.elementor-widget-button.btn-super-alt a svg {
  fill: var(--blue-1);
}
.elementor-widget-button.btn-super-alt a::before {
  background-color: var(--white-1);
  transition: width 0.3s ease-out, right 0.3s ease-out, transform 0.3s ease-out, background-color 0.3s ease-out;
}
.elementor-widget-button.btn-super-alt a:hover {
  color: var(--blue-1);
}
.elementor-widget-button.btn-super-alt a:hover::before {
  background-color: var(--blue-5);
}

@media screen and (max-width: 1024px) {
  .elementor-widget-button.btn-super a,
  .elementor-widget-button.btn-super-alt a {
    font-size: 12px;
    line-height: 1.167;
    padding-left: 24px;
    padding-top: 23px;
    padding-bottom: 23px;
    padding-right: 24px;
  }
  .elementor-widget-button.btn-super a .elementor-button-content-wrapper,
  .elementor-widget-button.btn-super-alt a .elementor-button-content-wrapper {
    gap: 50px;
  }
  .elementor-widget-button.btn-super a::before,
  .elementor-widget-button.btn-super-alt a::before {
    width: 46px;
    right: 7px;
    bottom: 7px;
    top: 7px;
  }
}
/* Rotating icon button */
.elementor-widget-button.rotating-icon-btn .elementor-button-icon svg {
  transition: transform 0.3s ease-out;
}
.elementor-widget-button.rotating-icon-btn:hover .elementor-button-icon svg {
  transform: rotate(360deg);
}

/* Shared styles for btn-1 and btn-2 */
.elementor-widget-button.btn-1 a,
.elementor-widget-button.btn-2 a {
  font-size: 15px;
  line-height: 1.2;
  font-weight: 700;
  text-transform: uppercase;
  padding: 23px 32px;
  border-radius: 32px;
  letter-spacing: 0.025em;
  position: relative;
  overflow: hidden;
}
.elementor-widget-button.btn-1 a .elementor-button-content-wrapper,
.elementor-widget-button.btn-2 a .elementor-button-content-wrapper {
  align-items: center;
  gap: 1rem;
  position: relative;
}
.elementor-widget-button.btn-1 a .elementor-button-icon,
.elementor-widget-button.btn-2 a .elementor-button-icon {
  display: flex;
  align-items: center;
}
.elementor-widget-button.btn-1 a::before,
.elementor-widget-button.btn-2 a::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 32px;
  transform: scaleX(0);
  transition: transform 0.2s ease-out, opacity 0.2s ease-out;
  transform-origin: 0 50%;
  opacity: 0;
}
.elementor-widget-button.btn-1 a:hover::before,
.elementor-widget-button.btn-2 a:hover::before {
  transform: scaleX(1);
  opacity: 1;
}

.elementor-button-wrapper {
  display: flex;
  align-items: center;
}

.elementor-button-text {
  white-space: nowrap;
}

/* Specific styles for btn-1 */
.elementor-widget-button.btn-1 a {
  color: var(--white-1);
  background-color: var(--blue-1) !important;
  border: 1px solid var(--white-1);
}
.elementor-widget-button.btn-1 a svg {
  fill: var(--white-1);
}
.elementor-widget-button.btn-1 a::before {
  background-color: var(--blue-2);
}

/* Specific styles for btn-2 */
.elementor-widget-button.btn-2 a {
  color: var(--blue-1);
  background-color: var(--white-1) !important;
  border: 1px solid var(--blue-1);
}
.elementor-widget-button.btn-2 a svg path {
  fill: var(--blue-1);
}
.elementor-widget-button.btn-2 a::before {
  background-color: var(--blue-5);
}

/* Shared styles for btn-3, btn-4, btn-5, and btn-6 */
.elementor-widget-button.btn-3 a,
.elementor-widget-button.btn-4 a,
.elementor-widget-button.btn-5 a,
.elementor-widget-button.btn-6 a {
  background-color: transparent !important;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2225;
  letter-spacing: 0.025em;
  position: relative;
  padding-left: 0;
  padding-right: 0;
  transition: color 0.3s ease-out;
  padding-top: 0;
  padding-bottom: 0;
}
.elementor-widget-button.btn-3 a .elementor-button-content-wrapper,
.elementor-widget-button.btn-4 a .elementor-button-content-wrapper,
.elementor-widget-button.btn-5 a .elementor-button-content-wrapper,
.elementor-widget-button.btn-6 a .elementor-button-content-wrapper {
  align-items: center;
  gap: 14px;
}
.elementor-widget-button.btn-3 a .elementor-button-icon,
.elementor-widget-button.btn-4 a .elementor-button-icon,
.elementor-widget-button.btn-5 a .elementor-button-icon,
.elementor-widget-button.btn-6 a .elementor-button-icon {
  display: flex;
  align-items: center;
}
.elementor-widget-button.btn-3 a .elementor-button-text,
.elementor-widget-button.btn-4 a .elementor-button-text,
.elementor-widget-button.btn-5 a .elementor-button-text,
.elementor-widget-button.btn-6 a .elementor-button-text {
  position: relative;
}
.elementor-widget-button.btn-3 a .elementor-button-text::before,
.elementor-widget-button.btn-4 a .elementor-button-text::before,
.elementor-widget-button.btn-5 a .elementor-button-text::before,
.elementor-widget-button.btn-6 a .elementor-button-text::before {
  content: "";
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 100%;
  height: 2px;
  transform: scaleX(0);
  transition: transform 0.2s ease-out, opacity 0.2s ease-out;
  transform-origin: 0 50%;
  opacity: 0;
}
.elementor-widget-button.btn-3 a:hover .elementor-button-text::before,
.elementor-widget-button.btn-4 a:hover .elementor-button-text::before,
.elementor-widget-button.btn-5 a:hover .elementor-button-text::before,
.elementor-widget-button.btn-6 a:hover .elementor-button-text::before {
  transform: scaleX(1);
  opacity: 1;
}

/* Specific styles for btn-3 */
.elementor-widget-button.btn-3 a {
  color: var(--dark-1);
}
.elementor-widget-button.btn-3 a:hover {
  color: var(--blue-1);
}
.elementor-widget-button.btn-3 a svg {
  fill: var(--blue-1);
}
.elementor-widget-button.btn-3 a .elementor-button-text::before {
  background-color: var(--blue-1);
}

/* Specific styles for btn-4 */
.elementor-widget-button.btn-4 a {
  color: var(--blue-5);
}
.elementor-widget-button.btn-4 a:hover {
  color: var(--blue-2);
}
.elementor-widget-button.btn-4 a svg {
  fill: var(--blue-2);
  color: var(--blue-2);
}
.elementor-widget-button.btn-4 a .elementor-button-text::before {
  background-color: var(--blue-2);
}

/* Specific styles for btn-5 */
.elementor-widget-button.btn-5 a {
  color: var(--dark-4);
}
.elementor-widget-button.btn-5 a svg {
  fill: var(--dark-4);
}
.elementor-widget-button.btn-5 a .elementor-button-text::before {
  background-color: var(--dark-4);
}

/* Specific styles for btn-6 */
.elementor-widget-button.btn-6 a {
  color: var(--white-1);
}
.elementor-widget-button.btn-6 a:hover {
  color: var(--white-1);
}
.elementor-widget-button.btn-6 a svg {
  fill: var(--white-1);
}
.elementor-widget-button.btn-6 a .elementor-button-text::before {
  background-color: var(--white-1);
}

.elementor-widget-button.btn-7 a {
  font-size: 14px;
  line-height: 1.2143;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  border-radius: 26px;
  padding: 14px 32px;
  background-color: transparent !important;
  position: relative;
}
.elementor-widget-button.btn-7 a .elementor-button-icon {
  display: flex;
  align-items: center;
}
.elementor-widget-button.btn-7 a .elementor-button-content-wrapper {
  align-items: center;
  gap: 10px;
  position: relative;
}
.elementor-widget-button.btn-7 a::before {
  content: "";
  position: absolute;
  border-radius: 26px;
  inset: 0;
  background-color: var(--orange-2);
  transform: scale(1);
  transition: transform 0.3s ease-out;
}
.elementor-widget-button.btn-7 a:hover::before {
  transform: scale(1.1, 1.2);
}

.elementor-widget-button.btn-8 a {
  color: var(--dark-1);
  font-size: 14px;
  line-height: 1.2143;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  border-radius: 26px;
  padding: 14px 32px;
  background-color: transparent !important;
  position: relative;
}
.elementor-widget-button.btn-8 a .elementor-button-icon {
  display: flex;
  align-items: center;
}
.elementor-widget-button.btn-8 a .elementor-button-content-wrapper {
  align-items: center;
  gap: 10px;
  position: relative;
}
.elementor-widget-button.btn-8 a svg {
  fill: var(--dark-1);
}
.elementor-widget-button.btn-8 a::before {
  content: "";
  position: absolute;
  border-radius: 26px;
  inset: 0;
  background-color: transparent;
  border: 1px solid var(--dark-1);
  transform: scale(1);
  transition: transform 0.3s ease-out;
}
.elementor-widget-button.btn-8 a:hover::before {
  transform: scale(1.1, 1.2);
}

.elementor-widget-button.btn-9 a {
  font-size: 18px;
  line-height: 1.2;
  color: var(--blue-1);
  background-color: transparent !important;
  font-weight: 500;
  text-decoration: underline;
  padding: 0;
}

.elementor-widget-button.btn-10 a {
  font-size: 16px;
  font-weight: 500;
  border-radius: 38px;
  background-color: var(--blue-1) !important;
  color: var(--white-1);
}
.elementor-widget-button.btn-10 a:hover {
  background-color: var(--blue-2) !important;
}

.elementor-widget-button.btn-11 a {
  font-size: 16px;
  font-weight: 500;
  border-radius: 38px;
  background-color: var(--blue-5) !important;
  color: var(--blue-1);
}
.elementor-widget-button.btn-11 a:hover {
  background-color: var(--blue-4) !important;
}

.elementor-widget-button.btn-12 a {
  font-size: 16px;
  font-weight: 500;
  border-radius: 38px;
  background-color: var(--white-1) !important;
  color: var(--blue-1);
  border: 1px solid var(--blue-1);
}
.elementor-widget-button.btn-12 a:hover {
  color: var(--blue-4);
  border-color: var(--blue-4);
}

/* Menu  */
.elementor-nav-menu {
  text-transform: uppercase;
}

.sub-menu {
  padding-top: 8px !important;
}

*:not(.sub-menu) .menu-item > a {
  color: var(--dark-1);
  font-size: 14px;
  line-height: 1.2143;
  font-weight: 700;
  position: relative;
}
*:not(.sub-menu) .menu-item > a::after {
  content: "";
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 100%;
  height: 1px;
  transform: scaleX(0);
  transition: transform 0.2s ease-out, opacity 0.2s ease-out;
  transform-origin: 0 50%;
  background-color: var(--dark-1);
  opacity: 0;
}
*:not(.sub-menu) .menu-item:hover > a::after {
  transform: scaleX(1);
  opacity: 1;
}

.sub-menu .menu-item {
  padding-bottom: 4px;
}
.sub-menu .menu-item a {
  padding: 0;
  border: none;
  color: var(--dark-4);
}
.sub-menu .menu-item:hover a {
  padding: 0;
  background-color: transparent;
  border: none;
  color: var(--dark-1);
}
.sub-menu .menu-item:hover a::after {
  display: none;
}

/* light header navigation */
.light-nav :not(.sub-menu) .menu-item > a {
  color: var(--white-1);
}
.light-nav :not(.sub-menu) .menu-item > a::after {
  background-color: var(--white-1);
}

.light-nav .elementor-widget-button.btn-8 a {
  color: var(--white-1);
}
.light-nav .elementor-widget-button.btn-8 a svg {
  fill: var(--white-1);
}
.light-nav .elementor-widget-button.btn-8 a::before {
  border-color: var(--white-1);
}
.light-nav .sub-menu {
  background-color: transparent;
}
.light-nav .sub-menu .menu-item a {
  color: var(--dark-4);
}
.light-nav .sub-menu .menu-item:hover a {
  color: var(--dark-3);
}
.light-nav .bento-btn .elementor-button-text span {
  background-color: var(--white-1);
}
.light-nav .has-submenu svg {
  fill: var(--white-1);
}

/* nav responsive */
@media screen and (max-width: 1024px) {
  .elementor-element-c3c0dbe,
  .elementor-element-008b68f {
    width: max-content;
  }
}
/* tags */
.tags.elementor-widget-icon-list ul {
  margin-left: 0 !important;
  margin-right: 0 !important;
  gap: 12px;
}
.tags.elementor-widget-icon-list li {
  border-radius: 22px;
  border: 1px solid var(--blue-1);
  padding: 7.105px 12px;
  margin: 0;
  font-size: 14px;
  line-height: 1.2;
  margin-left: 0 !important;
  margin-right: 0 !important;
  color: var(--blue-1);
  font-weight: 500;
}

.elementor-widget-image a img[src$=".svg"] {
  width: unset;
}

/* accordion */
.custom-accordion .e-n-accordion {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.custom-accordion .e-n-accordion-item {
  background-color: var(--white-2);
  transition: background-color 0.1s ease-out, color 0.1s ease-out;
  border-radius: 2rem;
}
.custom-accordion .e-n-accordion-item > div {
  padding-bottom: 2rem;
  padding-left: 2rem;
  padding-right: 2rem;
}
.custom-accordion .e-n-accordion-item[open] {
  background-color: var(--blue-1);
  color: var(--white-1);
}
.custom-accordion .e-n-accordion-item[open] .e-n-accordion-item-title {
  color: var(--white-1);
}
.custom-accordion .e-n-accordion-item-title {
  border: none;
  padding: 2rem;
}
.custom-accordion .e-n-accordion-item-title:hover .e-closed {
  transform: rotate(360deg);
}
.custom-accordion .e-n-accordion-item-title-text {
  font-weight: bold;
  font-size: 18px;
}
.custom-accordion .e-n-accordion-item-title-icon .e-closed {
  transition: transform 0.3s ease-out;
}
.custom-accordion .e-n-accordion-item-title-icon .e-opened, .custom-accordion .e-n-accordion-item-title-icon .e-closed {
  position: relative;
  width: 40px;
  color: var(--dark-4);
}
.custom-accordion .e-n-accordion-item-title-icon svg {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 200% !important;
}
.custom-accordion .elementor-widget-container p:last-child {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .custom-accordion .e-n-accordion-item {
    border-radius: 1rem;
  }
  .custom-accordion .e-n-accordion-item > div {
    padding-bottom: 1.5rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .custom-accordion .e-n-accordion-item-title {
    padding: 1.5rem;
  }
  .custom-accordion .e-n-accordion-item-title-text {
    font-size: 14px;
  }
}
/* related posts */
.related-posts {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 20px;
}
.related-posts .related-post-item {
  position: relative;
  display: flex;
  flex-direction: column;
}
.related-posts .related-post-item > a {
  display: flex;
  overflow: hidden;
  border-radius: 32px;
  position: relative;
}
.related-posts .related-post-item > a img {
  transition: transform 0.3s ease-in;
}
.related-posts .related-post-item > a:hover img {
  transform: scale(1.1);
}
.related-posts .related-post-item > a::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: var(--dark-1);
  opacity: 0;
  transition: opacity 0.3s ease-out;
  mix-blend-mode: multiply;
}
.related-posts .related-post-item > a:hover::after {
  opacity: 0.6;
}
.related-posts .related-post-item > a span {
  height: 72px;
  width: 72px;
  background-color: var(--blue-1);
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  z-index: 1;
  opacity: 0;
  transition: opacity 0.3s ease-out;
}
.related-posts .related-post-item > a:hover span {
  opacity: 1;
}
.related-posts .related-post-item > a svg {
  height: 15px;
  width: 15px;
  fill: var(--white-1);
}
.related-posts .related-post-heading {
  margin: 0;
  position: absolute;
  top: calc(100% + 24px);
  width: 100%;
  left: 0;
}
.related-posts .related-post-heading h2 {
  display: flex;
  margin-bottom: 0;
  margin-top: 0;
}
.related-posts .related-post-heading a {
  font-size: 24px;
  line-height: 1.25;
  font-weight: 700;
  color: var(--dark-2);
}
.related-posts .related-post-categories {
  display: flex;
  gap: 8px;
  margin-top: 24px;
}
.related-posts .related-post-categories span {
  font-size: 14px;
  line-height: 1;
  font-weight: 500;
  color: var(--blue-2);
  border: 1px solid var(--blue-2);
  border-radius: 22px;
  padding: 8px 12px;
}
.related-posts img {
  aspect-ratio: 2/1;
}

.related-post-cta {
  height: 100%;
  position: relative;
  overflow: hidden;
}
.related-post-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: var(--blue-2);
  border-radius: 32px;
  transform: scaleX(0);
  opacity: 0;
  transition: transform 0.3s ease-in, opacity 0.3s ease-in;
  transform-origin: 0 50%;
}
.related-post-cta:hover::before {
  transform: scaleX(1);
  opacity: 1;
}
.related-post-cta .elementor-button {
  background-color: transparent;
  padding: 0;
}
.related-post-cta .elementor-button-content-wrapper {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.related-post-cta .elementor-button-icon {
  display: flex;
}
.related-post-cta .elementor-button-icon svg {
  height: 15px;
  width: 15px;
}
.related-post-cta .elementor-button-wrapper {
  display: flex;
  justify-content: flex-end;
}
.related-post-cta .elementor-button-text {
  font-size: 15px;
  font-weight: 700;
}

/* icon list */
.icon-list-1 .elementor-icon-list-item {
  gap: 18px;
}
.icon-list-1 .elementor-icon-list-icon {
  flex-grow: 0;
  flex-shrink: 0;
  height: 40px;
  width: 40px;
  border-radius: 8px;
  background-color: var(--white-1);
  display: flex;
  align-items: center;
  justify-content: center;
}
.icon-list-1 .elementor-icon-list-icon svg {
  margin-right: 0 !important;
}

.icon-list-2 .elementor-icon-list-item {
  gap: 18px;
}
.icon-list-2 .elementor-icon-list-icon {
  flex-grow: 0;
  flex-shrink: 0;
  height: 40px;
  width: 40px;
  border-radius: 8px;
  background-color: var(--red-1);
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  align-items: center;
  justify-content: center;
}
.icon-list-2 .elementor-icon-list-icon svg {
  margin-right: 0 !important;
}
.icon-list-2 .elementor-icon-list-text {
  padding-inline-start: 0 !important;
}

.icon-list-3 ul {
  padding-left: 13px !important;
  list-style-type: disc !important;
}
.icon-list-3 li {
  display: list-item !important;
}

/* Text link */
.elementor-widget-text-editor a {
  color: var(--blue-1);
}

.elementor-widget-text-editor p:last-child {
  margin-bottom: 0;
}

/* Post catory above the heading */
.post-categories {
  display: flex;
  gap: 8px;
  margin-bottom: 12px;
}
.post-categories span {
  font-size: 14px;
  line-height: 1;
  font-weight: 500;
  color: var(--blue-2);
  border: 1px solid var(--blue-2);
  border-radius: 22px;
  padding: 8px 12px;
}

/* Menu featured post */
.menu-featured-post {
  display: flex;
  gap: 16px;
}
.menu-featured-post .menu-featured-post__img {
  max-width: 228px;
  display: flex;
  flex-grow: 0;
  flex-shrink: 0;
}
.menu-featured-post .menu-featured-post__img img {
  border-radius: 16px;
  aspect-ratio: 4/3;
  object-fit: cover;
}
.menu-featured-post .menu-featured-post__content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.menu-featured-post .menu-featured-post__heading {
  display: flex;
  margin-bottom: 24px;
  align-items: flex-start;
  justify-content: space-between;
}
.menu-featured-post .menu-featured-post__heading h2 {
  margin-bottom: 0;
  margin-top: 0;
  display: flex;
}
.menu-featured-post .menu-featured-post__heading a {
  font-size: 20px;
  line-height: 1;
  font-weight: 700;
  color: var(--dark-1);
}
.menu-featured-post .menu-featured-post__heading span {
  font-size: 16px;
  line-height: 1.5;
  padding: 8px 24px;
  border-radius: 19px;
  color: var(--white-1);
  background-color: var(--orange-1);
  flex-shrink: 0;
  flex-grow: 0;
}
.menu-featured-post .menu-featured-post__excerpt {
  margin-bottom: 32px;
}
.menu-featured-post .menu-featured-post__btns {
  display: flex;
  gap: 32px;
}
.menu-featured-post .menu-featured-post__btns a {
  font-size: 15px;
  line-height: 1.2;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--blue-1);
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.menu-featured-post .menu-featured-post__btns a:nth-child(2) {
  color: var(--blue-3);
}
.menu-featured-post .menu-featured-post__btns svg {
  width: 16px;
  height: 16px;
}

@media screen and (max-width: 767px) {
  .menu-featured-post {
    flex-direction: column;
  }
  .menu-featured-post .menu-featured-post__img {
    max-width: 100%;
  }
}
/* bento-btn */
.bento-btn a {
  background-color: transparent !important;
  padding: 0;
}
.bento-btn .elementor-button-text {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 20px;
}
.bento-btn .elementor-button-text span {
  width: 26px;
  height: 2.5px;
  background-color: var(--dark-1);
  border-radius: 2px;
  transition: transform 0.2s ease-out;
}
.bento-btn .elementor-button-text span:nth-child(2) {
  transform-origin: 100% 50%;
}
.bento-btn a:hover .elementor-button-text span:first-child {
  transform: translateY(-2px);
}
.bento-btn a:hover .elementor-button-text span:nth-child(2) {
  transform: scaleX(0.6);
}
.bento-btn a:hover .elementor-button-text span:last-child {
  transform: translateY(2px);
}
.bento-btn .elementor-widget-container {
  display: flex;
}

/* Home sections */
body:not(.elementor-editor-active) .home-section {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: none;
  z-index: 1000;
  pointer-events: none;
}
body:not(.elementor-editor-active) .home-section a {
  pointer-events: all;
}
body:not(.elementor-editor-active) .home-section.loading-view {
  z-index: 1100;
  background-color: var(--dark-1);
}
body:not(.elementor-editor-active) .home-section.deadzone {
  z-index: 100;
  pointer-events: all;
}

body.elementor-editor-active .home-section {
  background-color: var(--dark-2);
}

.box {
  transition: none;
  box-shadow: 0px 45px 75px rgba(38, 43, 54, 0.1529411765);
  pointer-events: all;
}

@media screen and (max-width: 767px) {
  .box-1 h3 {
    font-size: 24px !important;
  }
  .box-1 p {
    font-size: 14px !important;
  }
  .box-1 .tags li {
    padding: 6px 10px !important;
  }
  .box-1 .tags li span {
    font-size: 10px !important;
  }
  .home-section:has(.box) .e-con-inner {
    flex-wrap: nowrap;
    min-height: max-content;
  }
}
.fixed-rive-container {
  position: fixed;
  inset: 0;
  background-color: var(--dark-1);
  z-index: 3;
}
.fixed-rive-container canvas {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: cover;
}

@media screen and (max-width: 1024px) {
  .fixed-rive-container canvas {
    transform: scale(1.2) translateY(11.25%);
  }
}
@media screen and (max-width: 767px) {
  .fixed-rive-container canvas {
    transform: scale(1.5) translateY(12%);
  }
}
.scroll-indicator-container {
  position: fixed;
  bottom: -26px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 100;
}
.scroll-indicator-container canvas {
  width: 194px;
  height: 194px;
}

body.elementor-editor-active .fixed-rive-container,
body.elementor-editor-active .scroll-indicator-container {
  display: none;
}

/* Hide godaddy banner etc */
#wpadminbar #wp-admin-bar-gdl-live-site {
  display: none;
}

html.wp-admin-bar-gdl-live-site-banner-enabled {
  margin-top: initial !important;
}

/* Fix video lightbox */
.elementor-lightbox .elementor-video-container .elementor-video-landscape iframe {
  background-color: transparent !important;
}

/* Form */
.elementor-form .elementor-field-textual {
  min-height: 56px;
  padding: 18px 24px;
  font-size: 16px;
  transition: background-color 0.3s ease-out, border-color 0.3s ease-out;
}
.elementor-form .elementor-field-textual::placeholder {
  color: var(--dark-4);
  opacity: 1;
  transition: color 0.3s ease-out;
}
.elementor-form .elementor-field-textual:hover {
  border-color: var(--dark-4) !important;
  background-color: var(--white-2) !important;
}
.elementor-form .elementor-field-textual:hover::placeholder {
  color: var(--dark-3);
}
.elementor-form .elementor-error .elementor-field-textual {
  border-color: var(--red-1) !important;
}
.elementor-form .elementor-error:after {
  content: "\e87f";
  position: absolute;
  top: 50%;
  right: 24px;
  transform: translateY(-50%);
  display: inline-block;
  font-family: eicons;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  height: 24px;
  width: 24px;
  background-color: red;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  color: white;
}
.elementor-form .elementor-message-danger {
  display: none;
}
.elementor-form .elementor-field-textual:focus {
  border-width: 1px;
  border-style: solid;
  border-color: var(--blue-1) !important;
  background-color: var(--white-1) !important;
}
.elementor-form .elementor-field-type-checkbox .elementor-field-option label {
  font-size: 14px;
  line-height: 1.2;
  font-weight: 500;
  color: var(--dark-4);
}
.elementor-form .elementor-field-type-checkbox .elementor-field-option {
  display: flex;
  gap: 12px;
}
.elementor-form .elementor-field-type-checkbox input {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  height: 18px;
  width: 18px;
  border-radius: 6px;
  border: 1px solid var(--dark-4);
  background-color: var(--white-1);
  display: block;
  position: relative;
  cursor: pointer;
  flex-grow: 0;
  flex-shrink: 0;
}
.elementor-form .elementor-field-type-checkbox input:after {
  content: "";
  height: 12px;
  width: 12px;
  border-radius: 3px;
  position: absolute;
  top: 2px;
  left: 2px;
}
.elementor-form .elementor-field-type-checkbox input:checked:after {
  background-color: var(--dark-2);
}
.elementor-form .elementor-button {
  min-height: 64px !important;
  border-radius: 38px;
  background-color: var(--blue-1);
  font-size: 16px;
  font-weight: 500;
}
.elementor-form .iti__country-container {
  padding-left: 18px;
}
.elementor-form .iti--allow-dropdown input.iti__tel-input, .elementor-form .iti--allow-dropdown input.iti__tel-input[type=tel] {
  padding-left: 75px;
}

/* Fix flash of element below in home page */
body:not(.elementor-editor-active) .home-section.deadzone .e-con-inner {
  opacity: 0;
}

/* Sticky header */
.is-sticky {
  position: fixed;
  z-index: 999;
  top: 0;
}
.is-sticky .e-con-inner {
  transition: all 0.3s ease-in-out, background 0s ease-in-out;
  padding: 32px 0px 32px 0px;
  border-radius: 32px;
}
.is-sticky.sticky-activated {
  top: 32px;
}
.is-sticky.sticky-activated .e-con-inner {
  max-width: 1364px;
  background: var(--dark-5);
  transition: all 0.3s ease-in-out !important;
}
.is-sticky.sticky-activated .light-logo {
  display: none !important;
}
.is-sticky.sticky-activated .dark-logo {
  display: block !important;
}

.admin-bar .is-sticky {
  top: 32px;
}

body:not(:has(.light-nav)) .hentry {
  padding-top: 245px;
}

@media screen and (max-width: 1370px) {
  .sticky-activated {
    padding-left: 32px;
    padding-right: 32px;
  }
}
@media screen and (max-width: 767px) {
  body:not(:has(.light-nav)) .hentry {
    padding-top: 130px;
  }
  .is-sticky {
    top: 16px;
  }
  .is-sticky .e-con-inner {
    padding: 16px 0px 16px 0px;
    border-radius: 16px;
  }
  .sticky-activated {
    padding-left: 16px;
    padding-right: 16px;
  }
  .admin-bar .is-sticky {
    top: 46px;
  }
  .admin-bar .is-sticky.sticky-activated {
    top: 16px;
  }
}
@media screen and (max-width: 1024px) {
  body:not(:has(.light-nav)) .hentry {
    padding-top: 170px;
  }
  .scroll-indicator-container {
    display: none;
  }
}
@media screen and (max-width: 393px) {
  .search-search.elementor-widget-search {
    top: 183px !important;
  }
}
/* Menu featured post */
.latest-post {
  display: flex;
  gap: 16px;
}
.latest-post .latest-post__img {
  display: flex;
  min-width: 47.5%;
}
.latest-post .latest-post__img img {
  border-radius: 32px;
  aspect-ratio: 4/3;
  object-fit: cover;
}
.latest-post .latest-post__content {
  background-color: var(--dark-1);
  padding: 42px;
  border-radius: 32px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.latest-post .latest-post__heading {
  display: flex;
  margin-bottom: 24px;
  align-items: flex-start;
  justify-content: space-between;
}
.latest-post .latest-post__heading h3 {
  margin-bottom: 0;
  margin-top: 0;
  color: var(--blue-5);
}
.latest-post .latest-post__excerpt {
  margin-bottom: 32px;
  color: var(--blue-4);
  font-size: 24px;
}
.latest-post svg {
  width: 1rem;
}

@media screen and (max-width: 767px) {
  .latest-post {
    flex-direction: column;
  }
  .latest-post .latest-post__img {
    max-width: 100%;
  }
  .latest-post .latest-post__img img {
    border-radius: 16px;
  }
  .latest-post .latest-post__content {
    padding: 24px;
    border-radius: 16px;
  }
  .latest-post .latest-post__excerpt {
    font-size: 16px;
  }
}
/* Marketing form */
@media screen and (max-width: 767px) {
  .marketingForm > div > div:nth-child(3) .consentBlock p,
  .marketingForm > div > div:nth-child(3) .consentBlock a {
    font-size: 14px !important;
    line-height: 1.4 !important;
  }
}
/* Newslatter form */
/* General reset */
.marketingForm table,
.marketingForm table tbody {
  display: flex;
  width: 100% !important;
}

.marketingForm table th {
  height: auto !important;
  width: 100%;
  display: flex !important;
}

.marketingForm table tr {
  width: 100%;
}

.marketingForm .columnContainer {
  width: 100% !important;
}

.marketingForm table td, table th {
  background-color: transparent !important;
  border: none !important;
}

.marketingForm .inner {
  flex-wrap: wrap;
  padding: 0 !important;
  column-gap: 24px;
  row-gap: 16px;
  margin-bottom: 0 !important;
}

.marketingForm .columnContainer {
  padding: 0;
}

.marketingForm .columnContainer > table {
  margin-bottom: 0;
}

.marketingForm .outer > tbody > tr > th {
  padding-top: 0 !important;
}

.marketingForm .containerWrapper {
  margin-bottom: 0 !important;
}

.marketingForm,
.marketingForm label,
.marketingForm label p,
.marketingForm label a,
.marketingForm h1,
.marketingForm input,
.marketingForm button {
  font-family: "ProximaNova", sans-serif !important;
}

/* Heading */
form.marketingForm > div > div:first-child .outer {
  margin-bottom: 48px !important;
}
form.marketingForm > div > div:first-child .inner > div > div {
  margin: 0 !important;
}
form.marketingForm > div > div:first-child h1 {
  color: var(--blue-1);
  font-size: 40px !important;
}

@media screen and (max-width: 1024px) {
  form.marketingForm > div > div:first-child h1 {
    font-size: 32px !important;
  }
}
/* Inputs */
form.marketingForm > div > div:nth-child(2) .outer {
  margin-bottom: 42px !important;
}
form.marketingForm > div > div:nth-child(2) label {
  font-size: 18px;
  font-weight: 700;
  margin-left: 30px;
}
form.marketingForm > div > div:nth-child(2) div[data-targetproperty] {
  padding: 0;
}

/* Checkboxs */
form.marketingForm > div > div:nth-child(3) .outer {
  margin-bottom: 0 !important;
}
form.marketingForm > div > div:nth-child(3) .consentBlock {
  padding: 0 !important;
}
form.marketingForm > div > div:nth-child(3) .consentBlock p, form.marketingForm > div > div:nth-child(3) .consentBlock a {
  font-size: 18px;
}
form.marketingForm > div > div:nth-child(3) .consentBlock > div {
  display: flex;
  align-items: center;
  gap: 14px;
}

@media screen and (max-width: 1024px) {
  form.marketingForm > div > div:nth-child(3) .consentBlock p, form.marketingForm > div > div:nth-child(3) .consentBlock a {
    font-size: 18px;
    line-height: 25.2px;
  }
  form.marketingForm > div > div:nth-child(3) .consentBlock > div {
    align-items: flex-start;
  }
}
/* Button */
form.marketingForm > div > div:nth-child(4) .outer {
  margin-bottom: 0 !important;
}

form.marketingForm > div {
  max-width: 100% !important;
}

form.marketingForm div[data-targetproperty=firstname],
form.marketingForm div[data-targetproperty=lastname] {
  flex-grow: 1;
}

form.marketingForm div[data-targetproperty^=email] {
  width: 100%;
}

form.marketingForm div[data-targetproperty^=mc_account] {
  width: 100%;
}

form.marketingForm div[data-targetproperty] input {
  border: 1px solid var(--dark-4);
  background-color: var(--white-1);
  border-radius: 32px;
  height: 60px;
  flex: none;
  padding: 20px;
  width: 100%;
  box-sizing: border-box;
}

form.marketingForm div[data-targetproperty] input:hover {
  background: var(--white-2);
}

form.marketingForm div[data-targetproperty] input:focus {
  border-color: var(--dark-2);
  background: var(--white-1);
  outline: none;
}

form.marketingForm div input[type=checkbox] {
  height: 24px;
  width: 24px;
  border-radius: 6px;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  border: 1px solid var(--dark-4);
  background-color: var(--white-1);
  display: block;
  position: relative;
  cursor: pointer;
  flex-grow: 0;
  flex-shrink: 0;
}

form.marketingForm div input[type=checkbox]:after {
  content: "";
  height: 18px;
  width: 18px;
  border-radius: 6px;
  position: absolute;
  top: 2px;
  left: 2px;
  background-color: var(--white-1);
  transition: background-color 0.3s;
}

form.marketingForm div input[type=checkbox]:checked:after {
  background-color: var(--dark-2);
}

form.marketingForm .submitButtonWrapper {
  position: relative;
  margin: 0 !important;
  padding: 0 !important;
  width: 100%;
}

form.marketingForm .submitButtonWrapper button {
  height: 65px;
  background: var(--blue-1);
  border-radius: 38px !important;
  padding-left: 30px;
  padding-right: 30px;
  font-weight: normal;
  font-size: 18px;
}

/** Responsive Styles */
@media screen and (max-width: 767px) {
  form.marketingForm div input[type=checkbox] {
    height: 24px;
    width: 24px;
  }
  form.marketingForm div input[type=checkbox]:after {
    height: 18px;
    width: 18px;
    top: 2px;
    left: 2px;
  }
  form.marketingForm div[data-targetproperty] input {
    height: 49px;
    padding: 16px;
    font-size: 14px;
  }
  form.marketingForm .submitButtonWrapper button {
    width: 100%;
  }
}
/* End Newslatter form */
/* Contact form */
.recaptcha-form {
  position: relative;
}
.recaptcha-form .elementor-field-type-recaptcha_v3 {
  display: none;
}
.recaptcha-form.recaptcha-concent-accepted .elementor-field-type-recaptcha_v3 {
  display: block;
}
.recaptcha-form .recaptcha-concent-message {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 40;
}
.recaptcha-form .recaptcha-concent-message > div {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 450px;
  padding: 40px 24px;
  max-width: 100%;
  transform: translate(-50%, -50%);
  background-color: white;
  border-radius: clamp(1rem, 0.7838rem + 1.0811vi, 2rem);
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.1) 0px 8px 10px -6px;
  text-align: center;
  font-size: 24px;
  border: 1px solid rgba(160, 160, 160, 0.1);
}
.recaptcha-form .recaptcha-concent-message > div > div {
  margin-bottom: 24px;
}
.recaptcha-form .recaptcha-concent-message > div > button {
  font-size: 24px;
  user-select: none;
  border-width: 0;
  margin: 0;
  padding: 0;
  text-transform: none;
  cursor: pointer;
  -webkit-appearance: button;
  background-color: transparent;
  background-image: none;
  text-decoration-line: underline;
  color: var(--blue-1);
}
.recaptcha-form .recaptcha-concent-message > div > button:hover {
  color: var(--blue-1);
}

/* cookiebot message */
.cookiebot-custom-message {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 40;
}
.cookiebot-custom-message > div {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 450px;
  padding: 40px 24px;
  max-width: 100%;
  transform: translate(-50%, -50%);
  background-color: white;
  border-radius: clamp(1rem, 0.7838rem + 1.0811vi, 2rem);
  box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.1) 0px 8px 10px -6px;
  text-align: center;
  font-size: 24px;
  border: 1px solid rgba(160, 160, 160, 0.1);
}
.cookiebot-custom-message > div > div {
  margin-bottom: 24px;
}
.cookiebot-custom-message > div > button {
  font-size: 24px;
  user-select: none;
  border-width: 0;
  margin: 0;
  padding: 0;
  text-transform: none;
  cursor: pointer;
  -webkit-appearance: button;
  background-color: transparent;
  background-image: none;
  text-decoration-line: underline;
  color: var(--blue-1);
}
.cookiebot-custom-message > div > button:hover {
  color: var(--blue-1);
  background-color: transparent;
}

/*# sourceMappingURL=style.css.map */
