body,
html {
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

*,
*:before,
*:after {
    outline: 0;
}

a {
    color: inherit;
}

.page-content {
    overflow: hidden;
}

.elementor-menu-anchor {
    position: relative;
    top: -140px;
}

.elementor-widget-text-editor .elementor-widget-container *:last-child,
.elementor-widget-theme-post-content .elementor-widget-container *:last-child {
    margin-bottom: 0;
}

.elementor-widget-text-editor .elementor-widget-container a,
.elementor-widget-theme-post-content .elementor-widget-container a,
.elementor-widget-accordion .elementor-widget-container .elementor-tab-content a {
    display: inline-block;
    position: relative;
    color: var(--e-global-color-accent);
    line-height: 1;
}

.elementor-widget-text-editor .elementor-widget-container a:before,
.elementor-widget-theme-post-content .elementor-widget-container a:before,
.elementor-widget-accordion .elementor-widget-container .elementor-tab-content a:before {
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: 0;
    right: auto;
    left: 0;
    background-color: currentColor;
    transition: width 300ms;
}

.elementor-widget-text-editor .elementor-widget-container a:hover:before,
.elementor-widget-theme-post-content .elementor-widget-container a:hover:before,
.elementor-widget-accordion .elementor-widget-container .elementor-tab-content a:hover:before {
    width: 0;
    right: 0;
    left: auto;
}

.elementor-widget-container .swiper-slide a:before {
    display: none;
}

.elementor-widget-text-editor .elementor-widget-container h1,
.elementor-widget-text-editor .elementor-widget-container h2,
.elementor-widget-text-editor .elementor-widget-container h3,
.elementor-widget-text-editor .elementor-widget-container h4,
.elementor-widget-text-editor .elementor-widget-container h5,
.elementor-widget-text-editor .elementor-widget-container h6,
.elementor-widget-theme-post-content .elementor-widget-container h1,
.elementor-widget-theme-post-content .elementor-widget-container h2,
.elementor-widget-theme-post-content .elementor-widget-container h3,
.elementor-widget-theme-post-content .elementor-widget-container h4,
.elementor-widget-theme-post-content .elementor-widget-container h5,
.elementor-widget-theme-post-content .elementor-widget-container h6 {
    font-family: var(--e-global-typography-primary-font-family), sans-serif;
    font-weight: var(--e-global-typography-primary-font-weight);
    color: inherit;
    line-height: var(--e-global-typography-primary-line-height);
}

.elementor-widget-text-editor .elementor-widget-container h2,
.elementor-widget-theme-post-content .elementor-widget-container h2 {
    font-size: 180%;
}

.elementor-widget-text-editor .elementor-widget-container h3,
.elementor-widget-theme-post-content .elementor-widget-container h3 {
    font-size: 160%;
}

.elementor-widget-text-editor .elementor-widget-container h4,
.elementor-widget-theme-post-content .elementor-widget-container h4 {
    font-size: 140%;
}

.elementor-widget-text-editor .elementor-widget-container h5,
.elementor-widget-theme-post-content .elementor-widget-container h5 {
    font-size: 120%;
}

.elementor-widget-text-editor .elementor-widget-container h6,
.elementor-widget-theme-post-content .elementor-widget-container h6 {
    font-size: 100%;
}

.elementor-widget-text-editor .elementor-widget-container ul,
.elementor-widget-theme-post-content .elementor-widget-container ul {
    margin-bottom: 1rem;
}

/**
 * Elementor Widget: Heading (Double-Line Prefix)
 */
.elementor-widget-heading.c3-elementor-heading-overline .elementor-widget-container .elementor-heading-title {
    display: inline-block;
    position: relative;
    padding-left: 35px;
    text-transform: uppercase;
}

.elementor-widget-heading.c3-elementor-heading-overline .elementor-widget-container .elementor-heading-title:before,
.elementor-widget-heading.c3-elementor-heading-overline .elementor-widget-container .elementor-heading-title:after {
    content: '';
    display: block;
    width: 20px;
    height: 2px;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(0, -50%);
    background-color: currentColor;
}

.elementor-widget-heading.c3-elementor-heading-overline .elementor-widget-container .elementor-heading-title:before {
    top: calc(50% - 2px);
    left: 6px;
}

.elementor-widget-heading.c3-elementor-heading-overline .elementor-widget-container .elementor-heading-title:after {
    top: calc(50% + 2px);
}

/**
 + Elementor Widget: Heading (Underline)
 */
.elementor-widget-heading.c3-elementor-heading-underline .elementor-widget-container .elementor-heading-title span {
    display: inline-block;
    position: relative;
    white-space: nowrap;
}

.elementor-widget-heading.c3-elementor-heading-underline .elementor-widget-container .elementor-heading-title span > em {
    position: relative;
    z-index: 2;
    font-style: normal;
}

.elementor-widget-heading.c3-elementor-heading-underline .elementor-widget-container .elementor-heading-title span:after {
    content: '';
    display: block;
    width: 99%;
    height: 25%;
    position: absolute;
    bottom: 10%;
    left: 5%;
    z-index: 1;
    background-color: var(--e-global-color-21cba5a);
    opacity: 0.5;
}

/*.elementor-widget-heading.c3-elementor-heading-underline.c3-elementor-heading-underline--animate .elementor-widget-container .elementor-heading-title span:after {
    width: 0;
    background-color: var(--e-global-color-accent);
    opacity: 1;
    animation: c3-elementor-heading-title-underline 1000ms ease-in-out forwards;
}*/

.elementor-widget-heading.c3-elementor-heading-underline.c3-elementor-heading-underline--animate .elementor-widget-container .elementor-heading-title span:after {
    width: 99%;
    background-color: var(--e-global-color-accent);
    opacity: 1;
}

/**
 * Elementor Widget: Accordion
 */
.elementor-widget-accordion .elementor-widget-container .elementor-accordion-item {
    border: 0;
}

.elementor-widget-accordion .elementor-widget-container .elementor-tab-title {
    position: relative;
    padding: 15px 0 15px 30px;
    border-bottom: 1px solid var(--e-global-color-secondary);
}

.elementor-widget-accordion .elementor-widget-container .elementor-tab-title:before {
    content: '\f0d7';
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    font-family: 'Font Awesome 5 Free';
    font-weight: 700;
    font-size: 20px;
    color: inherit;
    transition: transform 300ms;
}

.elementor-widget-accordion .elementor-widget-container .elementor-tab-title.elementor-active:before {
    transform: translateY(-50%) rotate(-180deg);
}

.elementor-widget-accordion .elementor-widget-container .elementor-tab-content {
    padding: 15px 0;
}

@keyframes c3-rotate-icosaeder {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

@keyframes c3-elementor-heading-title-underline {
    0% {
        width: 0;
    }

    100% {
        width: 99%;
    }
}