*,
::after,
::before {
    box-sizing: border-box
}

html,
body {
    margin: 0;
    padding: 0;
    scroll-behavior: smooth;
}

html {
    font-family: sans-serif;
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: transparent;
}

body {
    font: normal 14px/1.8 'Roboto', 'Arial';
    text-align: left;
    background-color: #fff;
}

body>form {
    display: block;
    overflow-x: hidden;
    overflow-x: clip;
    height: auto;
    width: 100%;
    min-height: 100vh;
}

em {
    font-style: italic;
}

/*scroll margin top*/
[id] {
    scroll-margin-top: var(--header-sticky-height, 0);
}

@media only screen and (max-width: 991px) {
    [id] {
        scroll-margin-top: var(--mobile-header-sticky-height, 0);
    }
}

section:focus-visible {
    outline: none;
}

/*ipad background attachment*/
@supports (-webkit-overflow-scrolling: touch) {

    .bg-attachment-fixed,
    .bg-attachment-fixed .is-overlay-bg {
        background-attachment: scroll !important;
    }
}


/**/
h1 {
    margin: 0 0 10px 0;
}

h2 {
    margin: 0 0 10px 0;
}

h3 {
    margin: 0 0 10px 0;
}

h4 {
    margin: 0 0 10px 0;
}

h5 {
    margin: 0 0 10px 0;
}

h6 {
    margin: 0 0 10px 0;
}

::-webkit-input-placeholder {
    color: inherit;
    opacity: 0.9;
}

:placeholder {
    color: inherit;
    opacity: 0.9;
}


a {
    text-decoration: none;
    transition: color ease 300ms;
}

a:link {
    text-decoration: none;
}

a:visited {}

button {
    color: inherit;
}

.dng-main {
    min-height: 100vh;
}

.container {
    margin-left: auto;
    margin-right: auto;
    padding-right: var(--column-gap);
    padding-left: var(--column-gap);
}

.container-fluid {
    width: 100%;
    padding-right: var(--column-gap);
    padding-left: var(--column-gap);
    margin-right: auto;
    margin-left: auto
}

.container-fluid.col-no-padding {
    padding-left: 0;
    padding-right: 0;
}

.container-fluid.col-no-padding>.is-row:has(.dgcol-12) {
    margin-left: 0;
    margin-right: 0;
    width: 100%;
}

.container-fluid.col-no-padding>.is-row>div.dgcol-12 {
    padding-left: 0;
}

.container-fluid.col-no-padding>.is-row>div.dgcol-12 {
    padding-right: 0;
}


/*Fixed Footer*/
.fixed_footer_bottom {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    overflow: hidden;
    max-height: 100%;
}

.fixed_footer_bottom .fixed_footer.active {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    overflow: hidden;
    overflow-Y: auto;
}

.fixed_footer_clone {
    background-color: #121212;
}

.dng-main.Boxed .rev_slider_wrapper.fullscreen-container {
    max-width: 100% !important;
    left: 0 !important;
}

@media only screen and (max-width: 991px) {
    .fixed_footer_bottom .fixed_footer.active {
        position: relative;
    }

    .fixed_footer_bottom,
    .fixed_footer_clone,
    .footer_box {
        height: auto !important;
        position: relative !important;
        max-height: inherit !important;
    }
}



.section-svg {
    display: none;
}

/*color-white*/
.color-white,
.color-white p,
.color-white .Normal,
.color-white a,
.color-white a:link,
.color-white a:active,
.color-white a:visited,
.color-white a:hover,
.color-white h1,
.color-white h2,
.color-white h3,
.color-white h4,
.color-white h5,
.color-white h6 {
    color: #FFF !important;
}

/*ilightbox-noscroll*/
body.ilightbox-noscroll {
    overflow: visible;
}

[data-parallax="parallax"] {
    visibility: hidden;
}

[data-parallax="parallax"].parallax-load {
    visibility: visible;
}

/*input*/
input[type="text"] {
    border-radius: 0;
}

/*icon*/
.fa,
.fas {
    font-weight: 900 !important;
}

.sico,
.icon-svg {
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

.sico svg {
    width: 1em;
    height: 1em;
    fill: currentColor;
    vertical-align: inherit;
    vertical-align: initial;
}

.sico[data-icon ^="lei-"] svg,
.sico[data-icon ^="lei-"] path,
.sico[data-icon ^="lei-"] polyline,
.sico[data-icon ^="lei-"] polygon,
.sico[data-icon ^="lei-"] rect,
.sico[data-icon ^="lei-"] line {
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
}


p>.sico,
p>.icon-svg,
li>.sico,
li>.icon-svg {
    vertical-align: middle;
    margin-bottom: 0.2em;
}


/*icon-svg*/
.overflow-hidden {
    overflow: hidden;
}

/*btn*/
[class^='button-'],
[class*=' button-'] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    font-weight: 600;
    height: 50px;
    padding: 0 25px;
    margin-right: 3px;
    margin-bottom: 3px;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    touch-action: manipulation;
    cursor: pointer;
    user-select: none;
    background-image: none;
    border: none;
    border-radius: 50px;
    transition: all .3s cubic-bezier(0.420, 0.000, 1.000, 1.000);
    appearance: none;
}

.header-replace button,
.mobile-header-replace button {
    padding-left: 6px;
    padding-right: 6px;
}


body [class*='btn-']:hover {}

[class*='btn-']:focus {
    outline: 0;
    box-shadow: none;
}

body [class*='btn-'] {
    text-decoration: none !important;
}

@media only screen and (min-width: 992px) {
    .btn-larger {
        height: 65px !important;
        padding-left: 40px !important;
        padding-right: 40px !important;
        font-size: 20px !important;
    }
}


/*social
[class*="social-"] {
    position: relative;
    display: inline-block;
}*/

/* section-no-padding */
.d-wrapper .section-no-padding.is-box .is-container {
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 0;
}

/* col-no-padding */
.is-row.col-no-padding {
    margin-left: 0;
    margin-right: 0;
}

.is-row.col-no-padding [class*="column-"] {
    padding-left: 0;
    padding-right: 0;
}

.is-container.no-space {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
}




.pointer-events-none {
    pointer-events: none !important;
}

/*border radius*/
.border-radius-0 {
    border-radius: 0px !important;
}

.border-radius-3 {
    border-radius: 3px !important;
}

.border-radius-6 {
    border-radius: 6px !important;
}

.border-radius-15 {
    border-radius: 15px !important;
}

.border-radius-circle {
    border-radius: 50px !important;
}

.border-radius-round {
    border-radius: 50% !important;
}

/*icon-cross*/
.icon-cross {
    width: 1em;
    height: 1em;
    display: inline-block;
    position: relative;
}

.icon-cross::after,
.icon-cross::before {
    content: "";
    border-left: 2px solid currentColor;
    position: absolute;
    height: 94%;
    margin-top: 3%;
    left: 50%;
    border-radius: 3px;
    margin-left: -1px;
}

.icon-cross::after {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.icon-cross::before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

@media all and (max-width: 1024px) {
    .margin-left-1024-reset {
        margin-left: 0px !important;
    }

    .margin-right-1024-reset {
        margin-right: 0px !important;
    }
}




/* */

/* Adjustment for Default & Foundation */
.d-wrapper .container>.row,
.d-wrapper .container>div>.row {
    margin-top: 0;
    margin-bottom: 0;
}


.d-wrapper a:hover {
    text-decoration: none;
}

.d-wrapper img {
    max-width: 100%;
}


/* Container for All Sections */
.d-wrapper {
    width: 100%;
    height: auto;
    box-sizing: border-box;
    margin: 0 auto;
    max-width: 100%;
}

.d-wrapper .is-wrapper {
    position: relative;
}

.d-wrapper::after {
    content: "";
    clear: both;
    display: block;
    overflow: hidden;
}

.d-wrapper .d-placeholder {
    display: none;
}

blockquote p {
    font-size: inherit;
    line-height: inherit;
    color: inherit;
    font-style: inherit;
}


/* Boxes */

.is-section.layout-lightbox-content {
    display: none;
}

.layout-hidden-content {
    display: none !important;
}

.is-align-center {
    text-align: center;
}



/* New */

.table-responsive {
    overflow-x: auto;
}


.bg-white {
    background-color: #FFF;
}

.bg-dark {
    background-color: #111;
}

.is-section.section-slider:not(.swiper-container) {
    opacity: 0;
}


/* Text Color */
.is-light-text,
.is-light-text h1,
.is-light-text h2,
.is-light-text h3,
.is-light-text h4,
.is-light-text h5,
.is-light-text h6,
.is-light-text p,
.is-light-text li,
.is-light-text div,
.is-light-text span:not(.sico) {
    color: #fff;
}

.is-dark-text .is-light-text {
    color: #fff;
}

.is-light-text a,
.is-light-text a:link,
.is-light-text a:visited {
    color: #fff;
}

.is-light-text a:hover {
    color: #fff;
}

/* Others */
.is-section.is-light-text {
    background-color: #000000;
}

.is-section.is-light-text:not([style*="background-color"]) .is-overlay-bg,
.is-section.is-light-text:not([style*="background-color"]) .is-overlay-mobile-bg {
    background-color: #FFF;
}

.is-container.is-container-fluid {
    max-width: none;
    width: 100%;
}

.bg-attachment-fixed,
.bg-attachment-fixed .is-overlay-bg {
    background-attachment: fixed !important;
}



.gm-style {
    font-family: inherit !important;
}


.textWrap-balance {
    text-wrap: balance;
}


/*custom module loading*/
@-webkit-keyframes loading-rotate {
    0% {
        -webkit-transform: rotate(0);
    }

    100% {
        -webkit-transform: rotate(360deg);
    }
}

@-moz-keyframes loading-rotate {
    0% {
        -moz-transform: rotate(0);
    }

    100% {
        -moz-transform: rotate(360deg);
    }
}

@keyframes loading-rotate {
    0% {
        transform: rotate(0);
    }

    100% {
        transform: rotate(360deg);
    }
}

.custom-module .swiper-container.loading,
.custom-module .soon.loading {
    min-height: 100px;
    max-height: 50vh;
    position: relative;
}

.custom-module .swiper-container.loading>*,
.custom-module .soon.loading>* {
    visibility: hidden;
}

.custom-module .swiper-container.loading:after,
.custom-module .soon.loading:after {
    content: "";
    width: 40px;
    height: 40px;
    display: inline-block;
    border: 5px solid #E3E3E3;
    border-top-color: #555;
    border-left-color: #555;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    position: absolute;
    top: 30px;
    left: 50%;
    margin-left: -20px;
    -webkit-animation: loading-rotate 0.7s infinite;
    -moz-animation: loading-rotate 0.7s infinite;
    animation: loading-rotate 0.7s infinite;
    z-index: 101;
}

.custom-module .soon {
    display: none;
}

.custom-module .number {
    color: currentColor;
}

#Body:not(.builder-editor-mode) .custom-module .ajaxform .from-error {
    display: none;
}

/*video*/
.html5-video {
    position: relative;
}

.html5-video video {
    width: 100%;
}

.html5-video .play-button,
.html5-video .play-button2 {
    position: absolute;
    left: 50%;
    top: 50%;
    margin: -36px 0 0 -36px;
    cursor: pointer;
}

/*fixed element*/
.is-fixed-element {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.fixed-element-item {
    position: absolute;
    pointer-events: none;
}

.fixed-element-item img,
.fixed-element-item svg {
    max-width: none;
    width: var(--img-width, auto);
    height: var(--img-height, auto);
    object-fit: cover;
    transform: translateX(var(--offset-x, 0)) translateY(var(--offset-y, 0));
}


/*css3-animate*/
.css3-animate {
    opacity: 0;
    position: relative;
}

.css3-animate:not(.animated) {
    -webkit-animation: none;
    animation: none;
}

.css3-animate.animated {
    -webkit-animation-duration: .8s;
    animation-duration: .8s;
}

.animated {
    opacity: 1;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

.animation.brush {
    z-index: 1;
    position: relative;
    display: inline-block;
    white-space: nowrap;
}

.bg-attachment-js .is-overlay {
    backface-visibility: hidden;
    transform: translate3d(0, 0, 0);
    pointer-events: none;
}

.bg-attachment-js .is-overlay-bg {
    position: static;
    backface-visibility: hidden;
    background-size: auto 110%;
}

@media only screen and (min-width: 992px) {
    .bg-attachment-js .is-overlay-bg {
        background-size: auto 110%;
    }
}

a:focus,
button:focus,
[tabindex="0"] {
    outline: none;

}

.modalbox {
    display: none;
}

/*skip-menu*/
#skip-menu {
    position: fixed;
    top: 0;
    left: 0;
    right: auto;
    z-index: 999999;
}

#skip-menu ul {
    padding: 0;
    margin: 0;
}

#skip-menu ul a {
    color: #fff;
    background: #c72d29;
    position: absolute;
    top: 0;
    left: -9999px;
    right: auto;
    white-space: nowrap;
    padding: 10px;
    border: none;
    display: block;
}

#skip-menu ul a:focus {
    left: 0;
}


@media only screen and (min-width: 992px) {
    .mobile-show {
        display: none !important;
    }
}

.section-tabs-container .is-container {
    transition: none;
}

.section-tabs-container[data-effect="slide"] {
    position: relative;
    overflow: hidden;
}

.section-tabs-container[data-effect="slide"]>.is-container {
    transition: all 300ms ease-in;
    opacity: 1;
}

.section-tabs-container[data-effect="slide"]>.is-container.out {
    transform: translateX(-100%);
    opacity: 0;
}

.section-tabs-container[data-effect="slide"]>.is-container.in {
    transform: translateX(100%);
    opacity: 1;
}






/*new css*/

.is-video-background {
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    overflow: hidden;
    will-change: transform, opacity;
    transform: translateZ(0);
}

.is-video-background video,
.is-video-background iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    will-change: transform, opacity;
    transform: translateZ(0);
}

.is-video-background::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: var(--bg-image);
    will-change: transform, opacity;
    transform: translateZ(0);
}


@media (max-width: 1599px) {
    .dv-hidden-xl {
        display: none !important;
    }
}

@media (max-width: 1199px) {
    .dv-hidden-lg {
        display: none !important;
    }
}

@media (max-width: 991px) {
    .dv-hidden-md {
        display: none !important;
    }
}

@media (max-width: 767px) {
    .dv-hidden-sm {
        display: none !important;
    }
}

@media (max-width: 575px) {
    .dv-hidden-xs {
        display: none !important;
    }
}

@media (min-width: 1600px) {
    .dv-visible-xl {
        display: none !important;
    }
}

@media (min-width: 1200px) {
    .dv-visible-lg {
        display: none !important;
    }
}

@media (min-width: 992px) {
    .dv-visible-md {
        display: none !important;
    }
}

@media (min-width: 768px) {
    .dv-visible-sm {
        display: none !important;
    }
}

@media (min-width: 576px) {
    .dv-visible-xs {
        display: none !important;
    }
}

.layout-hidden-content {
    display: none !important;
}

@media all and (min-width: 1600px) {
    .layout-hidden-xxl {
        display: none !important;
    }
}

@media all and (max-width: 1599px) and (min-width:1200px) {
    .layout-hidden-xl {
        display: none !important;
    }
}

@media all and (max-width: 1199px) and (min-width:992px) {
    .layout-hidden-lg {
        display: none !important;
    }
}

@media all and (max-width: 991px) and (min-width:768px) {
    .layout-hidden-md {
        display: none !important;
    }
}

@media all and (max-width: 767px) and (min-width:576px) {
    .layout-hidden-sm {
        display: none !important;
    }
}

@media all and (max-width: 575px) {
    .layout-hidden-xs {
        display: none !important;
    }
}



:root {}


.is-section {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    height: auto;
    box-sizing: border-box;
    position: relative;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding-top: var(--section-top-spacing);
    padding-bottom: var(--section-bottom-spacing);
    width: 100%;
}

.is-section.section-slider {
    flex-wrap: nowrap;
}

.is-section.is-boxs,
.is-section>.is-boxs {
    flex-direction: row;
    padding-top: 0;
    padding-bottom: 0;
    align-items: stretch;
}

.is-section>.is-row {
    width: calc(100% + (var(--column-gap) * 2));
    max-width: var(--container-width);
}


.is-section.is-boxs .is-box,
.is-section>.is-boxs>.is-box {
    display: flex;
    width: 100%;
    height: auto;
    box-sizing: border-box;
    position: relative;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding-top: var(--section-top-spacing);
    padding-bottom: var(--section-bottom-spacing);
}

.is-container {
    max-width: 100%;
    padding-right: var(--column-gap);
    padding-left: var(--column-gap);
    display: flex;
    flex-direction: column;
}


.is-row {
    display: flex;
    flex-wrap: wrap;
    width: calc(100% + (var(--column-gap) * 2));
    margin-right: calc(0px - var(--column-gap));
    margin-left: calc(0px - var(--column-gap));
}

.column,
.is-row>[class*="column-"],
.is-row>[class*="dgcol-"] {
    flex: 0 0 calc(var(--column, 12) * var(--column-width));
    max-width: calc(var(--column, 12) * var(--column-width));
    padding-right: var(--column-gap);
    padding-left: var(--column-gap);
    padding-top: var(--column-gap2, 0);
    padding-bottom: var(--column-gap2, 0);
    position: relative;
}

.is-boxes>[class*="is-box-"],
.is-boxes>.is-box,
.is-section>.is-box {
    flex: 0 0 calc(var(--column, 12) * var(--column-width));
    max-width: calc(var(--column, 12) * var(--column-width));
    position: relative;
}

.layout-no-mt {
    padding-top: 0 !important;
}

.layout-no-mb {
    padding-bottom: 0 !important;
}

.layout-no-plr .is-row {
    margin-right: 0;
    margin-left: 0;
    width: 100%;
}

.layout-no-plr .is-row>div,
.layout-no-plr .is-container {
    padding-left: 0;
    padding-right: 0;
}

.img-full-width {
    width: 100%;
}

.spacer {
    width: 100%;
}



/*Animation*/
[class *="css3-animate-"] {
    opacity: 0;
    position: relative;
}

[class *="css3-animate-"]:not(.animated) {
    -webkit-animation: none;
    animation: none;
}

[class *="css3-animate-"].animated {
    -webkit-animation-duration: .8s;
    animation-duration: .8s;
}

.animated {
    opacity: 1;
}

.animated {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both
}

.animated.infinite {
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite
}

.animated.hinge {
    -webkit-animation-duration: 2s;
    animation-duration: 2s
}


.is-row>.start-full-column {
    --horizontal-spacing: calc((100vw - 100%)/2);
    flex: 0 0 calc(var(--column, 12) * var(--column-width) + var(--horizontal-spacing));
    max-width: calc(var(--column, 12) * var(--column-width) + var(--horizontal-spacing));
    margin-inline-start: calc(0px - var(--horizontal-spacing));
    padding-inline-start: 0;
}

.is-row>.end-full-column {
    --horizontal-spacing: calc((100vw - 100%)/2);
    flex: 0 0 calc(var(--column, 12) * var(--column-width) + var(--horizontal-spacing));
    max-width: calc(var(--column, 12) * var(--column-width) + var(--horizontal-spacing));
    margin-inline-end: calc(0px - var(--horizontal-spacing));
    padding-inline-end: 0;
}

.is-row>.start-full-column.end-full-column {
    max-width: 100vw;
    flex: 0 0 100vw;
}

.layout-is-flex {
    display: flex !important;
}

.layout-is-grid {
    display: grid !important;
}


.pic .single-placeholder {
    display: block;
}

.embed-responsive {
    aspect-ratio: var(--ratio, 16 / 9);
    position: relative;
}

.embed-responsive .embed-responsive-item,
.embed-responsive embed,
.embed-responsive iframe,
.embed-responsive object,
.embed-responsive video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0
}

iframe,
object,
embed,
video {
    vertical-align: middle;
}

.embed-ratio {
    aspect-ratio: var(--ratio, auto);
    height: auto;
}

a>.sico {
    vertical-align: middle;
}

.pic img {
    width: 100%;

}

.d-inline-block{
    display: inline-block;
}

.accordion-item .accordion-content {
    display: none;
}

.section-tabs .section-tabs-list {
    margin: 0 auto 30px;
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    align-items: center;
    justify-content: center;
    flex-direction: row;
}

.section-tabs .section-tabs-list .item {
    background-color: var(--accent-color);
    color: #FFF;
    appearance: none;
    border: none;
    padding: 10px 20px;
    cursor: pointer;
}

.section-tabs .section-tabs-list .item.active {
    background-color: var(--accent-color2);
}

.section-tabs .section-tabs-container .is-container {
    display: none;
    margin: 0 auto;
}

.section-tabs .section-tabs-container .is-container.active {
    display: block;
}

.section-tabs .tabs-header {
    margin-bottom: 0;
}

.section-tabs .tabs-footer {
    margin-top: 0;
}

.position-static {
    position: static !important;
}

body:not(.page-builder-edit) .background-load {
    --bg-load: transparent !important;
}

.full-height {
    height: 100vh;
}

.is-arrow-down {
    cursor: pointer;
}


/* @template:custom-iconbox01 */

.custom-iconbox01 {
    text-align: center;
}

.custom-iconbox01 .pic {
    width: 100px;
    height: 100px;
    position: relative;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 20px;
}

.custom-iconbox01 .pic img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
}

.custom-iconbox01 .pic::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background-color: var(--accent-color);
    opacity: 0.2;
    border-radius: 50%;
}

.custom-iconbox01 .title {
    font-size: 24px;
    margin: 0 0 15px;
}

.custom-iconbox01-line {
    border-top: 1px solid #24262c;
    border-left: 1px solid #24262c;
}

.custom-iconbox01-line>div {
    border-right: 1px solid #24262c;
    border-bottom: 1px solid #24262c;
}

/* @template:custom-grid01 */
.custom-grid01 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.custom-grid01 .item {
    position: relative;
    z-index: 3;
    transition: all 0.3s ease-in-out;
}

.custom-grid01 .item:nth-child(10n+1),
.custom-grid01 .item:nth-child(10n+8) {
    grid-column: span 2;
    grid-row: span 2;
}

.custom-grid01 .cont {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 30px 30px 20px;
    text-align: center;
    opacity: 0;
    transition: all 0.3s ease-in-out;
}
.custom-grid01 .cont{
    background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.3) , transparent);
}

.custom-grid01 .title {
    font-size: 24px;
}

.custom-grid01 .item::after {
    content: '';
    position: absolute;
    inset: -0px;
    background-image: linear-gradient(45deg, var(--accent-color2), var(--accent-color));
    z-index: -1;
    opacity: 0;
    transition: all 0.3s ease-in-out;
}

.custom-grid01 .item:hover {
    transform: scale(1.05);
    z-index: 999;
}

.custom-grid01 .item:hover .cont {
    opacity: 1;
}

.custom-grid01 .item:hover::after {
    opacity: 1;
    inset: -15px;
}

.custom-grid01 .link {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.custom-grid01 .pic{
    height: 100%;
}
.custom-grid01 .pic img{
    min-height: 100%;
    width: 100%;
    object-fit: cover;
}

@media all and (max-width: 991px) {
    .custom-grid01 {
        grid-template-columns: repeat(2, 1fr);
    }
}


/* @template:custom-price01 */
@property --customPrice01-box {
  syntax: "<color>";
  initial-value: #747a86;
  inherits: false;
}
@property --customPrice01-title {
  syntax: "<color>";
  initial-value: #4a846c;
  inherits: false;
}
.custom-price01 {
    position: relative;
    display: flex;
    flex-direction: column;
    padding: 45px 0px;
    text-align: center;
    border: 1px solid;
    margin: 20px 0;
    color: #FFF;
    background-color: #14161b;

    --customPrice01-box: #747a86;
    border-image: linear-gradient(-45deg, var(--accent-color), var(--customPrice01-box)) 50 50;
    transition: --customPrice01-box .3s ease;
}
.is-row:not([class*="align-items-"]):has(.custom-price01){
    row-gap: 20px;
}
.is-row:not([class*="align-items-"]) .custom-price01{
    margin-bottom: 0;
    height: 100%;
}

.custom-price01:has(.pricing)::after{
    content: '';
    display: block;
    width: 100%;
    order: 1;
    flex-grow: 1;
}
.custom-price01 .pricing{
    order: 2;
}
.custom-price01 .price-header{
    margin-bottom: 30px;
    font-size: 2rem;
    letter-spacing: -0.05em;
    line-height: 1.2;
}
.custom-price01 .price-title {
    color: #fff;
    font-size: 1.25rem;
    padding: 13px 10px;
    margin-bottom: 28px;

    --customPrice01-title: var(--accent-color);
    background-image: linear-gradient(-45deg, var(--accent-color), var(--customPrice01-title));
    transition: --customPrice01-title .3s ease;
}

.custom-price01 .price-features {
    margin: 0 0 45px;
    padding: 0 35px;
    list-style: none;
    text-align: left;
}

.custom-price01 .price-features li {
    padding: 15px 0;
    color: #afafaf;
    border-bottom: 1px solid rgba(255, 255, 255, .3);
}


.custom-price01 .pricing {
    line-height: 1;
    margin-bottom: 30px;
    display: flex;
    flex-direction: column;
}
.custom-price01 .pricing .label{
    font-size: 18px;
    margin: 0 0 10px;
}
.custom-price01 .pricing .text{
    font-size: 40px;
    color: var(--accent-color3);
    margin: 0 0 18px;
}
.custom-price01 .pricing .text s{
    color: #424242;
}
.custom-price01 .pricing .unit{
    font-size: 18px;
    color: #bdbdbd;
}
.custom-price01 .pricing .vat-included{
    margin-top: 18px;
    color: #636363;
    font-size: 15px;
    line-height: calc( 28 / 15);
}
.custom-price01:has(.price-footer){
    padding-bottom: calc( 45px + 45px );
}
.custom-price01 .price-footer {
    position: absolute;
    bottom: 45px;
    width: 100%;
    opacity: 1;
    transition: opacity .3s ease;
}

.custom-price01.active .price-title,
.custom-price01:hover .price-title {
    --customPrice01-title: var(--accent-color2);
}
.custom-price01.active,
.custom-price01:hover {
    --customPrice01-box: var(--accent-color2);
}
.custom-price01.active .price-footer ,
.custom-price01:hover .price-footer {
    opacity: 1;
}




/* @template:custom-carousel01 */
.custom-carousel01{
    margin: 0 -15px;
}
.custom-carousel01 .carousel-item{
    padding: 0 15px;
}
.custom-carousel01 .item-box{
    height: 100%;
    background-color: #181a1f;
    text-align: center;
    border-bottom: 2px solid var(--accent-color3);
    display: flex;
    flex-direction: column;
}
.custom-carousel01 .item-box .pic img{
    aspect-ratio: 6/5;
    object-fit:cover
}

.custom-carousel01 .content{
    padding: 35px 30px;
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.custom-carousel01 .title{
    font-size: 24px;
    margin: 0 0 15px;
}   
.custom-carousel01 .description{
    margin-bottom: 20px;
}
.custom-carousel01 .link{
    display: inline-flex;
    gap: 5px;
    margin-top: auto;
}
.custom-carousel01 .link,
.custom-carousel01 .link:link{
    color: var(--accent-color3);
}
.custom-carousel01 .link:hover{
    color: var(--accent-color);
}
.custom-carousel01.easy-carousel .carousel-pagination{
    text-align: center;
    margin-top: 40px;
}
.custom-carousel01.easy-carousel .pagination-bullet{
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background-color: #5b5d62;
}
.custom-carousel01.easy-carousel .pagination-bullet.active{
    background-color: var(--accent-color);
}

/* @template:footer-line */
@media all and (min-width: 992px) {

.footer-line > div{
    position: relative;
}
.footer-line > div[class*="column"]::before{
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 1px;
    background-image: radial-gradient(circle at 50% 50%, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0) 100%);
}
.footer-line > div:last-child::before{
    content: none;
}
}

/* @template:footer-bottom */
.footer-bottom a:hover{
    color: #6EFFC4!important;
}

/* @template:footer-social */
.fooer-social{
    display: inline-flex;
    flex-wrap: wrap;
    gap: 5px;
}
.fooer-social a{
    width: 51px;
    height: 51px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    background-color: rgba(255, 255, 255, .3);
}


/* @template:custom-infobox01 */
.custom-infobox01 .item{
    border-bottom: 1px solid rgba(255, 255, 255, .1);
    padding: 20px 0;
    position: relative;
}
.custom-infobox01 .title{
    font-size: 24px;
}
.custom-infobox01 .icon {
    position: absolute;
    font-size: 72px;
    opacity: 0.1;
    line-height: 1;
    right: 0;
    top: 0;
    height: 100%;
    display: flex;
    align-items: center;
}
.custom-infobox01 .item:last-child{
    border-bottom: none;
}


/* @template:custom-infobox02 */
.custom-infobox02{
    display: flex;
    flex-direction: column;
    background-color: #181a1f;
    border-radius: 7px;
    text-align: center;
    overflow: hidden;
    counter-increment: section;
}
.row-custom-infobox02{
    counter-reset: section;
}
.row-custom-infobox02 .custom-infobox02{
    height: 100%;
}


.custom-infobox02 .header{
    padding: 20px;
    background-color: var(--accent-color2);
}
.custom-infobox02 .header .title{
    margin: 0 0 0;
    font-size: 32px;
    line-height: 1.3;
}
.custom-infobox02 .content{
    flex-grow: 1;
    position: relative;
    padding: 58px 40px 36px;
    border-bottom: 2px solid var(--accent-color3);
}
.custom-infobox02 .content .title{
    margin: 0 0 16px;
    font-size: 20px;
    line-height: 1.3;
}

@media only screen and (min-width: 992px) {
    .custom-infobox02 .header .title{
        font-size: 24px;
    }
}


/* @template:custom-list01 */
.custom-list01{
    margin: 0;
    padding: 0;
    list-style: none;
}
.custom-list01 li{
    display: flex;
    gap: 10px;
    padding: 0 0 6px;
}
.custom-list01 li::before{
    content: "";
    width: 7px;
    height: 7px;
    flex: 0 0 7px;
    border-radius: 50%;
    background-color: var(--accent-color3);
    margin-top: 11px;
}

/* @template:custom-list02 */
.custom-list02{
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: start;
}
.custom-list02 li{
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
}

.custom-list02 li::after{
    content: "";
    flex: 1;
    min-width: 30px;
    height: 4px;
    background-image: radial-gradient(
        circle,
        currentColor 1px,
        transparent 1.5px
    );
    background-size: 6px 4px;
    background-repeat: repeat-x;
}
.custom-list02 li > span:first-child{
    order: 0;
}
.custom-list02 li::after{
    order: 1;
}
.custom-list02 li > span:last-child{
    order: 2;
}



/* @template:custom-ourteam01 */
.custom-ourteam01 {
    background-color: #21242a;
    height: 100%;
    border-bottom: 2px solid #59b891;
}
.custom-ourteam01 .content{
    text-align: left;
    padding: 25px;
}
.custom-ourteam01 .title {
    font-size: 24px;
}
.custom-ourteam01 p {
    font-size: 18px;
}
.custom-ourteam01 .custom-list01{
    display: inline-grid;
    grid-template-columns: repeat(2, minmax(130px, 1fr));
    text-align: left;
    justify-content: center;
    font-size: 16px;
    gap:0 10px;
}

.custom-ourteam01 hr{
    border: none !important;
    border-bottom: 1px solid #32353b !important;
    margin: 30px 0;
}

.custom-ourteam01 .custom-list01.col-1{
    grid-template-columns: repeat(1, minmax(100px, 1fr));
}
.custom-ourteam01 .custom-list01.col-3{
    grid-template-columns: repeat(3, minmax(100px, auto));
}
@media all and (max-width: 767px) {
    .custom-ourteam01 .custom-list01.col-3{
        grid-template-columns: repeat(2, minmax(130px, 1fr));
    }
}
@media all and (max-width: 575px) {
    .custom-ourteam01 .custom-list01,
    .custom-ourteam01 .custom-list01.col-3{
       grid-template-columns: repeat(1, minmax(100px, 1fr));
    }
}



/* @template:custom-grid02 */
.custom-grid02 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

.custom-grid02 .item {
    position: relative;
    z-index: 3;
    transition: all 0.3s ease-in-out;
}

.custom-grid02 .cont {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 30px 30px 20px;
    text-align: center;
    opacity: 0;
    transition: all 0.3s ease-in-out;
}
.custom-grid02 .cont{
    background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.3) , transparent);
}

.custom-grid02 .title {
    font-size: 20px;
}

.custom-grid02 .item::after {
    content: '';
    position: absolute;
    inset: -0px;
    background-image: linear-gradient(45deg, var(--accent-color2), var(--accent-color));
    z-index: -1;
    opacity: 0;
    transition: all 0.3s ease-in-out;
}

.custom-grid02 .item:hover {
    z-index: 999;
}

.custom-grid02 .item:hover .cont {
    opacity: 1;
}

.custom-grid02 .item:hover::after {
    opacity: 1;
    inset: -12px;
}

.custom-grid02 .link {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.custom-grid02 .pic{
    height: 100%;
}
.custom-grid02 .pic img{
    min-height: 100%;
    width: 100%;
    object-fit: cover;
}

@media all and (max-width: 991px) {
    .custom-grid02 {
        grid-template-columns: repeat(2, 1fr);
    }
    
}
@media all and (max-width: 540px) {
    .custom-grid02 {
        grid-template-columns: repeat(1, 1fr);
    }
    
}


[itemprop="breadcrumb"] > span[itemscope] > span[itemprop="itemListElement"]:last-child > a[itemprop="item"]:not(:hover){
    color: var(--accent-color3);
}


body .beforeImg-01{
    position: relative;
    background-image: none !important;
}
body .beforeImg-01::before{
    content: '';
    position: absolute;
    inset: -30px -80px -30px 0;
    background-image: var(--bg-image) !important;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}


/* @template:custom-feature01 */
@property --customFeature01-box {
  syntax: "<color>";
  initial-value: #747a86;
  inherits: false;
}
@property --customFeature01-title {
  syntax: "<color>";
  initial-value: #1e4c39;
  inherits: false;
}
.custom-feature01 {
    position: relative;
    display: flex;
    flex-direction: column;
    padding: 45px 35px 50px;
    text-align: center;
    border: 1px solid;
    margin: 20px 0;
    color: #FFF;
    background-color: #14161b;

    --customFeature01-box: #747a86;
    border-image: linear-gradient(-45deg, var(--accent-color), var(--customFeature01-box)) 50 50;
    transition: --customFeature01-box .3s ease;
}
.is-row:not([class*="align-items-"]):has(.custom-feature01){
    row-gap: 20px;
}
.is-row:not([class*="align-items-"]) .custom-feature01{
    margin-bottom: 0;
    height: 100%;
}
.custom-feature01 .box-header{
    margin: -45px -35px 45px;
    padding: 35px 35px;

    --customFeature01-title: var(--accent-color);
    background-image: linear-gradient(-45deg, var(--accent-color), var(--customFeature01-title));
    transition: --customFeature01-title .3s ease;
}
.custom-feature01 .box-header .title{
    margin: 0 0 0;
    font-size: 2rem;
    letter-spacing: -0.05em;
    line-height: 1.2;
}
.custom-feature01 .box-content{
    flex-grow: 1;
    color: #afafaf;
}
.custom-feature01 .box-content .custom-list02 li,
.custom-feature01 .box-content .custom-list02 span{
    color: #afafaf;
}

.custom-feature01 .box-footer{
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid #2c2e32;
}
.custom-feature01.active,
.custom-feature01:hover {
    --customFeature01-box: var(--accent-color2);
}
.custom-feature01.active .box-header,
.custom-feature01:hover .box-header{
    --customFeature01-title: var(--accent-color2);
}

/**/
.custom-infobox03{
    display: flex;
    background-color: #1c1f26;
    margin: 0 0 40px;
}
.custom-infobox03 .content{
    padding: 40px;
    flex: 0 0 45%;
}
.custom-infobox03 .pic{
    flex: 0 0 55%;
    clip-path: polygon(0 0, 90% 0%, 100% 100%, 0% 100%);
}
.custom-infobox03 .pic img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.custom-infobox03 .pic.is-right{
    order: 2;
    clip-path: polygon(10% 0, 100% 0, 100% 100%, 0% 100%);
}
.custom-infobox03 .title{
    font-size: 24px;
    margin: 0 0 25px;
}
.custom-infobox03 ul{
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.custom-infobox03 ul a{ 
    display: flex;
    justify-content: space-between;
    padding: 10px 25px;
    border-radius: 5px;
    background-color: #262930;
    color: #FFF;
}
.custom-infobox03 ul a .sico {
    color: var(--accent-color3);
}
.custom-infobox03 ul a:hover{
     color: var(--accent-color3);
}
@media (max-width: 767px) {
    .custom-infobox03{
     display: block;
    }
    .custom-infobox03 .pic{
        clip-path: none !important;
        order: 0 !important;
    }
    
}


/* @template:custom-list04 */
.custom-list04{
    margin: 0;
    padding: 0;
    list-style: none;
}
.custom-list04 li{
    display: flex;
    gap: 10px;
    padding: 0 0 8px;
}
.custom-list04 li::before{
    content: "";
    width: 7px;
    height: 7px;
    flex: 0 0 7px;
    border-radius: 50%;
    background-color: var(--accent-color3);
    margin-top: 11px;
}


/* @template:custom-infobox04 */

.custom-infobox04{
    --column-gap:0px;
    background-color: #181a1f;
    margin: 0 0 60px;
}
.custom-infobox04{
    --column-gap:0px;
    background-color: #181a1f;
    margin: 0 0 60px;
}
.custom-infobox04 .content{
    padding: 40px 70px;
}
.custom-infobox04 .image img{
    width: 100%;
    height: 100%;
    object-fit:cover;
}
@media (max-width: 991px) {
    .custom-infobox04 .content{
        padding: 20px;
    }
    .custom-infobox04 .image{
        order: -1;
    }
}

