/* ACE2D Page Builder — frontend base styles (Elementor-compatible class names). */

.elementor *,.elementor :after,.elementor :before{box-sizing:border-box}
.elementor a{box-shadow:none;text-decoration:none}
.elementor img{height:auto;max-width:100%;border:none;border-radius:0;box-shadow:none}
.elementor embed,.elementor iframe,.elementor object,.elementor video{max-width:100%;width:100%;margin:0;line-height:1;border:none}
.elementor-screen-only,.screen-reader-text{position:absolute;top:-10000em;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}
.elementor-clearfix:after{content:"";display:block;clear:both;width:0;height:0}
.elementor-invisible{visibility:hidden}
.elementor-element{--widgets-spacing:var(--ace2d-widgets-spacing,20px)}
.ace2d-full-width,.site-main.ace2d-full-width{width:100%;max-width:none!important;padding:0!important;margin:0!important}
.wp-site-blocks>.elementor-location-header,.wp-site-blocks>.elementor-location-footer,.wp-site-blocks>.ace2d-full-width{margin-block-start:0;margin-block-end:0}

/* ---------- Sections & columns ---------- */
.elementor-section{position:relative}
.elementor-section .elementor-container{display:flex;margin-right:auto;margin-left:auto;position:relative}
.elementor-section.elementor-section-boxed>.elementor-container{max-width:var(--ace2d-container-width,1140px)}
.elementor-section.elementor-section-stretched{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}
.elementor-section.elementor-section-items-top>.elementor-container{align-items:flex-start}
.elementor-section.elementor-section-items-middle>.elementor-container{align-items:center}
.elementor-section.elementor-section-items-bottom>.elementor-container{align-items:flex-end}
.elementor-section.elementor-section-height-full>.elementor-container{min-height:100vh}
.elementor-section.elementor-section-height-min-height>.elementor-container{display:flex}
.elementor-section.elementor-section-height-min-height:not(.elementor-section-items-stretch)>.elementor-container{align-items:center}
.elementor-section-items-stretch>.elementor-container{align-items:stretch}
.elementor-section .elementor-container>.elementor-column{min-height:1px}
.elementor-column{position:relative;min-height:1px;display:flex}
.elementor-column-wrap,.elementor-widget-wrap{width:100%;position:relative;display:flex;flex-wrap:wrap;align-content:flex-start}
.elementor-widget-wrap>.elementor-element{width:100%}
.elementor-column-gap-no>.elementor-column>.elementor-element-populated{padding:0}
.elementor-column-gap-narrow>.elementor-column>.elementor-element-populated{padding:5px}
.elementor-column-gap-default>.elementor-column>.elementor-element-populated{padding:10px}
.elementor-column-gap-extended>.elementor-column>.elementor-element-populated{padding:15px}
.elementor-column-gap-wide>.elementor-column>.elementor-element-populated{padding:20px}
.elementor-column-gap-wider>.elementor-column>.elementor-element-populated{padding:30px}
.elementor-inner-section .elementor-container{max-width:none}
.elementor-section:not(.elementor-section-boxed)>.elementor-container{max-width:none}
.elementor-widget-wrap>.elementor-widget:not(:last-child){margin-bottom:var(--ace2d-widgets-spacing,20px)}
.elementor-widget{position:relative}
.elementor-widget-container{transition:background .3s,border .3s,border-radius .3s,box-shadow .3s,transform .4s}
@media (min-width:768px){
	.elementor-column.elementor-col-10,.elementor-column[data-col="10"]{width:10%}
	.elementor-column.elementor-col-11{width:11.111%}
	.elementor-column.elementor-col-12{width:12.5%}
	.elementor-column.elementor-col-14{width:14.285%}
	.elementor-column.elementor-col-16{width:16.666%}
	.elementor-column.elementor-col-20{width:20%}
	.elementor-column.elementor-col-25{width:25%}
	.elementor-column.elementor-col-30{width:30%}
	.elementor-column.elementor-col-33{width:33.333%}
	.elementor-column.elementor-col-40{width:40%}
	.elementor-column.elementor-col-50{width:50%}
	.elementor-column.elementor-col-60{width:60%}
	.elementor-column.elementor-col-66{width:66.666%}
	.elementor-column.elementor-col-70{width:70%}
	.elementor-column.elementor-col-75{width:75%}
	.elementor-column.elementor-col-80{width:80%}
	.elementor-column.elementor-col-83{width:83.333%}
	.elementor-column.elementor-col-90{width:90%}
	.elementor-column.elementor-col-100{width:100%}
}
@media (max-width:767px){
	.elementor-section .elementor-container{flex-wrap:wrap}
	.elementor-column{width:100%}
	.elementor-reverse-mobile>.elementor-container>:first-child{order:10}
	.elementor-reverse-mobile>.elementor-container>:nth-child(2){order:9}
	.elementor-reverse-mobile>.elementor-container>:nth-child(3){order:8}
	.elementor-reverse-mobile>.elementor-container>:nth-child(4){order:7}
}
@media (min-width:768px) and (max-width:1024px){
	.elementor-reverse-tablet>.elementor-container>:first-child{order:10}
	.elementor-reverse-tablet>.elementor-container>:nth-child(2){order:9}
	.elementor-reverse-tablet>.elementor-container>:nth-child(3){order:8}
}
.elementor-background-overlay,.elementor-background-video-container{position:absolute;inset:0;pointer-events:none}
.elementor-background-overlay{z-index:0}
.elementor-section>.elementor-container,.elementor-column>.elementor-widget-wrap>*:not(.elementor-background-overlay){position:relative;z-index:1}
.elementor-background-video-container{overflow:hidden;z-index:0;direction:ltr}
.elementor-background-video-container iframe,.elementor-background-video-container video{position:absolute;top:50%;left:50%;width:100%;height:100%;min-width:177.77vh;min-height:56.25vw;transform:translate(-50%,-50%);object-fit:cover;max-width:none;pointer-events:none}
.elementor-shape{overflow:hidden;position:absolute;left:0;width:100%;line-height:0;direction:ltr;z-index:0;pointer-events:none}
.elementor-shape-top{top:-1px}
.elementor-shape-bottom{bottom:-1px;transform:rotate(180deg)}
.elementor-shape svg{display:block;width:calc(100% + 1.3px);position:relative;left:50%;transform:translateX(-50%);height:60px}
.elementor-shape .elementor-shape-fill{fill:#fff;transform-origin:center;transform:rotateY(0deg)}

/* ---------- Containers ---------- */
.e-con{--container-max-width:var(--ace2d-container-width,1140px);position:relative;display:flex;flex-direction:column;gap:var(--ace2d-widgets-spacing,20px);padding:var(--ace2d-container-padding-top,10px) var(--ace2d-container-padding-right,10px) var(--ace2d-container-padding-bottom,10px) var(--ace2d-container-padding-left,10px);margin:0;width:100%;max-width:100%;min-width:0;box-sizing:border-box}
.e-con.e-con-boxed{align-items:stretch}
.e-con>.e-con-inner{display:flex;flex-direction:column;gap:inherit;width:100%;max-width:var(--container-max-width);margin:0 auto;padding:0;min-width:0;flex-grow:1}
.e-con.e-con-full{max-width:100%}
.e-con .e-con{padding:var(--ace2d-container-padding-top,10px) var(--ace2d-container-padding-right,10px) var(--ace2d-container-padding-bottom,10px) var(--ace2d-container-padding-left,10px)}
.e-con.e-child{max-width:100%}
.e-con>.elementor-widget,.e-con>.e-con-inner>.elementor-widget{max-width:100%;min-width:0}
.e-con.e-flex>.elementor-widget,.e-con.e-flex>.e-con-inner>.elementor-widget{flex:0 1 auto}
.e-con-full>.e-con,.e-con-inner>.e-con{flex-shrink:1;flex-basis:auto}
.e-con.e-grid,.e-con.e-grid>.e-con-inner{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,auto);grid-auto-flow:row}
.e-con.e-grid.e-con-boxed{display:flex}
.e-con>.elementor-shape,.e-con>.elementor-background-video-container{z-index:0}
.e-con>*:not(.elementor-shape):not(.elementor-background-video-container){position:relative;z-index:1}
.e-con.ace2d-has-overlay::before{z-index:0}
a.e-con{color:inherit}

/* ---------- Visibility ---------- */
@media (min-width:1025px){.elementor-hidden-desktop{display:none!important}}
@media (min-width:768px) and (max-width:1024px){.elementor-hidden-tablet{display:none!important}}
@media (max-width:767px){.elementor-hidden-mobile{display:none!important}}
@media (min-width:1367px){.elementor-hidden-widescreen{display:none!important}}

/* ---------- Grid helper (posts, social icons, share buttons) ---------- */
.elementor-grid{display:grid;grid-column-gap:var(--grid-column-gap,30px);grid-row-gap:var(--grid-row-gap,30px)}
.elementor-grid-0 .elementor-grid{display:inline-flex;flex-wrap:wrap;gap:var(--grid-column-gap,8px)}
.elementor-grid-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}
.elementor-grid-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}
.elementor-grid-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}
.elementor-grid-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}
.elementor-grid-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}
.elementor-grid-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}
@media (max-width:1024px){
	.elementor-grid-tablet-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}
	.elementor-grid-tablet-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}
	.elementor-grid-tablet-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}
	.elementor-grid-tablet-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}
}
@media (max-width:767px){
	.elementor-grid-mobile-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}
	.elementor-grid-mobile-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}
	.elementor-grid-mobile-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}
}

/* ---------- Heading ---------- */
.elementor-heading-title{padding:0;margin:0;line-height:1}
.elementor-widget-heading .elementor-heading-title[class*=elementor-size-]>a{color:inherit;font-size:inherit;line-height:inherit}
.elementor-widget-heading .elementor-heading-title.elementor-size-small{font-size:15px}
.elementor-widget-heading .elementor-heading-title.elementor-size-medium{font-size:19px}
.elementor-widget-heading .elementor-heading-title.elementor-size-large{font-size:29px}
.elementor-widget-heading .elementor-heading-title.elementor-size-xl{font-size:39px}
.elementor-widget-heading .elementor-heading-title.elementor-size-xxl{font-size:59px}

/* ---------- Text editor / drop cap ---------- */
.elementor-widget-text-editor p:last-child{margin-bottom:0}
.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:#69727d;color:#fff}
.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap{color:#69727d;border:3px solid;background-color:transparent}
.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap{margin-top:8px}
.elementor-drop-cap{float:left;text-align:center;line-height:1;font-size:50px;margin-right:10px}
.elementor-drop-cap-view-default .elementor-drop-cap{margin-top:8px}
.elementor-drop-cap-view-stacked .elementor-drop-cap,.elementor-drop-cap-view-framed .elementor-drop-cap{width:1em;height:1em;display:flex;align-items:center;justify-content:center;border-radius:50%;padding:.35em;box-sizing:content-box}

/* ---------- Image ---------- */
.elementor-widget-image{text-align:center}
.elementor-widget-image a{display:inline-block}
.elementor-widget-image img{vertical-align:middle;display:inline-block}
.elementor-widget-image .wp-caption{margin:0}
.widget-image-caption{margin-top:10px;font-size:.9em}

/* ---------- Button ---------- */
.elementor-button{display:inline-block;line-height:1;background-color:#69727d;font-size:15px;padding:12px 24px;border-radius:3px;color:#fff;fill:#fff;text-align:center;transition:all .3s;cursor:pointer;border:none}
.elementor-button:hover,.elementor-button:focus,.elementor-button:visited{color:#fff}
.elementor-button-content-wrapper{display:flex;justify-content:center;align-items:center;gap:5px;flex-direction:row}
.elementor-button.ace2d-icon-right .elementor-button-content-wrapper{flex-direction:row-reverse}
.elementor-button-icon{display:inline-flex;align-items:center}
.elementor-button-icon svg{width:1em;height:auto;fill:currentColor}
.elementor-button-text{flex-grow:0}
.elementor-button.elementor-size-xs{font-size:13px;padding:10px 20px;border-radius:2px}
.elementor-button.elementor-size-sm{font-size:15px;padding:12px 24px;border-radius:3px}
.elementor-button.elementor-size-md{font-size:16px;padding:15px 30px;border-radius:4px}
.elementor-button.elementor-size-lg{font-size:18px;padding:20px 40px;border-radius:5px}
.elementor-button.elementor-size-xl{font-size:20px;padding:25px 50px;border-radius:6px}
.elementor-button-info{background-color:#5bc0de}
.elementor-button-success{background-color:#5cb85c}
.elementor-button-warning{background-color:#f0ad4e}
.elementor-button-danger{background-color:#d9534f}
.elementor-widget-button .elementor-button-wrapper{text-align:left}
.elementor-align-left .elementor-button-wrapper{text-align:left}
.elementor-align-center .elementor-button-wrapper{text-align:center}
.elementor-align-right .elementor-button-wrapper{text-align:right}
.elementor-align-justify .elementor-button{width:100%}
@media (max-width:1024px){
	.elementor-tablet-align-left .elementor-button-wrapper{text-align:left}
	.elementor-tablet-align-center .elementor-button-wrapper{text-align:center}
	.elementor-tablet-align-right .elementor-button-wrapper{text-align:right}
	.elementor-tablet-align-justify .elementor-button{width:100%}
}
@media (max-width:767px){
	.elementor-mobile-align-left .elementor-button-wrapper{text-align:left}
	.elementor-mobile-align-center .elementor-button-wrapper{text-align:center}
	.elementor-mobile-align-right .elementor-button-wrapper{text-align:right}
	.elementor-mobile-align-justify .elementor-button{width:100%}
}

/* ---------- Divider / spacer ---------- */
.elementor-widget-divider{--divider-border-style:solid;--divider-color:#0c0d0e;--divider-border-width:1px}
.elementor-divider{display:flex;align-items:center;padding-block:15px;line-height:0}
.elementor-divider-separator{display:flex;margin:0 auto;direction:ltr;border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-color);align-items:center}
.elementor-divider--element .elementor-divider-separator{border-top:0}
.elementor-divider--element .elementor-divider-separator:before,.elementor-divider--element .elementor-divider-separator:after{content:"";display:block;flex-grow:1;border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-color)}
.elementor-divider__element{margin:0 20px;flex-shrink:0;line-height:1}
.elementor-divider__text{font-size:15px;line-height:1}
.elementor-spacer-inner{height:var(--spacer-size,50px)}

/* ---------- Icon ---------- */
.elementor-icon-wrapper{line-height:1}
.elementor-icon{display:inline-block;line-height:1;transition:all .3s;color:#69727d;font-size:50px;text-align:center}
.elementor-icon i,.elementor-icon svg{width:1em;height:1em;position:relative;display:block}
.elementor-icon i:before{position:absolute;left:50%;transform:translateX(-50%)}
.elementor-icon svg{fill:currentColor}
.elementor-view-stacked .elementor-icon{padding:.5em;background-color:#69727d;color:#fff;fill:#fff}
.elementor-view-framed .elementor-icon{padding:.5em;color:#69727d;border:3px solid #69727d;background-color:transparent}
.elementor-shape-circle .elementor-icon{border-radius:50%}
.elementor-shape-rounded .elementor-icon{border-radius:10%}

/* ---------- Icon box / image box ---------- */
.elementor-icon-box-wrapper,.elementor-image-box-wrapper{display:flex;flex-direction:column;text-align:center}
.elementor-icon-box-wrapper .elementor-icon-box-icon,.elementor-image-box-img{flex:0 0 auto;margin-bottom:15px}
.elementor-icon-box-title,.elementor-image-box-title{margin:0 0 .4em}
.elementor-icon-box-title a,.elementor-image-box-title a{color:inherit}
.elementor-icon-box-description,.elementor-image-box-description{margin:0}
.elementor-image-box-img{display:inline-block;width:30%;margin-left:auto;margin-right:auto}
.elementor-image-box-img img{display:block;width:100%}
.elementor-position-left .elementor-icon-box-wrapper,.elementor-position-left .elementor-image-box-wrapper{flex-direction:row;text-align:left}
.elementor-position-right .elementor-icon-box-wrapper,.elementor-position-right .elementor-image-box-wrapper{flex-direction:row-reverse;text-align:right}
.elementor-position-left .elementor-icon-box-icon,.elementor-position-right .elementor-icon-box-icon,.elementor-position-left .elementor-image-box-img,.elementor-position-right .elementor-image-box-img{margin-bottom:0}
.elementor-position-left .elementor-icon-box-icon,.elementor-position-left .elementor-image-box-img{margin-right:15px}
.elementor-position-right .elementor-icon-box-icon,.elementor-position-right .elementor-image-box-img{margin-left:15px}
.elementor-position-left .elementor-icon-box-content,.elementor-position-right .elementor-icon-box-content,.elementor-position-left .elementor-image-box-content,.elementor-position-right .elementor-image-box-content{flex-grow:1}
.elementor-vertical-align-middle .elementor-icon-box-wrapper,.elementor-vertical-align-middle .elementor-image-box-wrapper{align-items:center}
.elementor-vertical-align-bottom .elementor-icon-box-wrapper,.elementor-vertical-align-bottom .elementor-image-box-wrapper{align-items:flex-end}
@media (max-width:767px){
	.elementor-position-left .elementor-icon-box-wrapper,.elementor-position-right .elementor-icon-box-wrapper,.elementor-position-left .elementor-image-box-wrapper,.elementor-position-right .elementor-image-box-wrapper{flex-direction:column;text-align:center}
	.elementor-position-left .elementor-icon-box-icon,.elementor-position-right .elementor-icon-box-icon,.elementor-position-left .elementor-image-box-img,.elementor-position-right .elementor-image-box-img{margin:0 auto 15px}
	.elementor-mobile-position-left .elementor-icon-box-wrapper{flex-direction:row;text-align:left}
}

/* ---------- Icon list ---------- */
.elementor-icon-list-items{list-style-type:none;margin:0;padding:0}
.elementor-icon-list-item{display:flex;align-items:center;margin:0;padding:0;position:relative;font-size:inherit}
.elementor-icon-list-item>a,.elementor-icon-list-item>.elementor-icon-list-text{display:flex;align-items:center}
.elementor-icon-list-item>a{width:100%;color:inherit}
.elementor-icon-list-items.elementor-inline-items{display:flex;flex-wrap:wrap;gap:16px}
.elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item>a{width:auto}
.elementor-icon-list-icon{display:flex;flex-shrink:0;position:relative;top:0}
.elementor-icon-list-icon i{width:1.25em;font-size:14px;text-align:center}
.elementor-icon-list-icon svg{width:14px;height:14px;fill:currentColor}
.elementor-icon-list-icon+.elementor-icon-list-text{padding-left:5px}
.elementor-icon-list-item .elementor-icon-list-icon i{color:var(--e-global-color-primary,#6ec1e4)}

/* ---------- Star rating ---------- */
.elementor-star-rating{color:#ccd6df;font-family:inherit;display:inline-block;letter-spacing:2px}
.elementor-star-rating i{display:inline-block;position:relative;font-style:normal;cursor:default}
.elementor-star-rating .elementor-star-full{color:#f0ad4e}
.elementor-star-rating i[class*=elementor-star-]:not(.elementor-star-full):not(.elementor-star-empty){background:linear-gradient(90deg,#f0ad4e 50%,#ccd6df 50%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.elementor-star-rating__wrapper{display:flex;align-items:center;gap:10px}
.elementor-widget-star-rating .elementor-star-rating{font-size:20px}

/* ---------- Gallery ---------- */
.elementor-image-gallery .gallery{display:grid;grid-template-columns:repeat(var(--ace2d-gallery-cols,4),1fr);gap:15px;margin:0}
.elementor-image-gallery .gallery-item{margin:0;width:auto!important;max-width:none!important}
.elementor-image-gallery .gallery-item img{display:block;width:100%;height:auto;margin:0 auto}
.elementor-image-gallery .gallery-caption{font-size:.85em;text-align:center;padding-top:6px}
@media (max-width:767px){.elementor-image-gallery .gallery{grid-template-columns:repeat(2,1fr)}}

/* ---------- Carousel (swiper-compatible markup, own engine) ---------- */
.swiper.ace2d-carousel{position:relative;overflow:hidden;width:100%}
.ace2d-carousel .swiper-wrapper{display:flex;transition-property:transform;box-sizing:content-box;will-change:transform}
.ace2d-carousel .swiper-slide{flex-shrink:0;position:relative;box-sizing:border-box}
.ace2d-carousel.ace2d-fade .swiper-wrapper{transform:none!important}
.ace2d-carousel.ace2d-fade .swiper-slide{transition-property:opacity;opacity:0;pointer-events:none}
.ace2d-carousel.ace2d-fade .swiper-slide.swiper-slide-active{opacity:1;pointer-events:auto}
.ace2d-carousel .swiper-slide-inner{margin:0}
.ace2d-carousel .swiper-slide-image{display:block;width:100%}
.ace2d-stretch .swiper-slide-image,.elementor-image-carousel.ace2d-stretch img{width:100%}
.elementor-image-carousel-caption{text-align:center;padding-top:8px}
.elementor-swiper-button{position:absolute;top:50%;transform:translateY(-50%);z-index:5;cursor:pointer;font-size:25px;color:rgba(238,238,238,.9);display:flex;align-items:center;justify-content:center;width:1.4em;height:1.4em;text-shadow:0 0 3px rgba(0,0,0,.35)}
.elementor-swiper-button-prev{left:10px}
.elementor-swiper-button-next{right:10px}
.ace2d-arrows-outside{overflow:visible}
.ace2d-arrows-outside .elementor-swiper-button-prev{left:-40px}
.ace2d-arrows-outside .elementor-swiper-button-next{right:-40px}
.swiper-pagination{position:relative;text-align:center;margin-top:12px;display:flex;justify-content:center;gap:6px;flex-wrap:wrap}
.swiper-pagination-bullet{width:8px;height:8px;border-radius:50%;background:#000;opacity:.2;cursor:pointer;border:0;padding:0;transition:opacity .2s}
.swiper-pagination-bullet-active{opacity:1;background:var(--e-global-color-primary,#000)}
.elementor-slides .swiper-slide,.elementor-slides-wrapper .swiper-slide{height:400px;overflow:hidden}
.elementor-slides-wrapper .swiper-pagination{position:absolute;bottom:14px;left:0;right:0;margin:0;z-index:5}
.elementor-slides-wrapper .swiper-pagination-bullet{background:#fff;opacity:.6}
.elementor-slides-wrapper .swiper-pagination-bullet-active{opacity:1;background:#fff}
.swiper-slide-bg{position:absolute;inset:0;background-size:cover;background-position:50%;min-width:100%;min-height:100%}
.swiper-slide .elementor-background-overlay{z-index:1}
.swiper-slide-inner{position:absolute;inset:0;display:flex;padding:50px;z-index:2;color:#fff;text-decoration:none}
.elementor--h-position-left .swiper-slide-inner{justify-content:flex-start}
.elementor--h-position-center .swiper-slide-inner{justify-content:center}
.elementor--h-position-right .swiper-slide-inner{justify-content:flex-end}
.elementor--v-position-top .swiper-slide-inner{align-items:flex-start}
.elementor--v-position-middle .swiper-slide-inner{align-items:center}
.elementor--v-position-bottom .swiper-slide-inner{align-items:flex-end}
.swiper-slide-contents{max-width:66%}
.elementor-slide-heading{font-size:35px;font-weight:700;line-height:1;margin-bottom:30px;color:#fff}
.elementor-slide-description{font-size:17px;line-height:1.4;margin-bottom:30px;color:#fff}
.elementor-slide-button{display:inline-block;background:transparent;border:2px solid #fff;color:#fff;border-radius:3px;font-weight:700}
.swiper-slide-active .swiper-slide-contents[data-animation]{animation-duration:1.25s;animation-fill-mode:both;animation-name:var(--ace2d-anim,fadeInUp)}
.elementor-ken-burns{transition:transform 10s linear}
.swiper-slide-active .elementor-ken-burns--in{transform:scale(1.3)}
.elementor-testimonial{text-align:center}
.elementor-testimonial__content{margin-bottom:16px}
.elementor-testimonial__text{font-size:1.1em;line-height:1.6;font-style:italic}
.elementor-testimonial__footer,.elementor-testimonial__header{display:flex;align-items:center;justify-content:center;gap:12px}
.elementor-testimonial__header{justify-content:flex-start;text-align:left;margin-bottom:14px}
.elementor-testimonial__image img{width:60px;height:60px;border-radius:50%;object-fit:cover}
.elementor-testimonial__cite{display:flex;flex-direction:column;font-style:normal;text-align:left}
.elementor-testimonial__name{font-weight:700}
.elementor-testimonial__title{font-size:.85em;opacity:.8}
.elementor-testimonial__icon{margin-left:auto;font-size:18px;color:#1da1f2}
.elementor-testimonial--skin-bubble .elementor-testimonial__content{background:#f9fafa;padding:20px;border-radius:6px;position:relative}
.elementor-reviews .elementor-testimonial{background:#fff;border:1px solid #e1e8ed;border-radius:8px;padding:20px;text-align:left}
.elementor-carousel-image{background-size:cover;background-position:50%;height:300px;border-radius:4px}
.ace2d-media-carousel a{display:block;position:relative}

/* ---------- Counter / progress ---------- */
.elementor-counter{display:flex;flex-direction:column;align-items:stretch;gap:6px}
.elementor-counter-number-wrapper{display:flex;font-size:69px;font-weight:600;line-height:1;justify-content:center}
.elementor-counter-number-prefix,.elementor-counter-number-suffix{flex-grow:0;white-space:pre-wrap}
.elementor-counter-title{text-align:center;font-size:19px;font-weight:400;line-height:2.5}
.elementor-progress-wrapper{position:relative;background-color:#eee;color:#fff;height:100%;border-radius:2px}
.elementor-progress-bar{display:flex;background-color:#69727d;width:0;font-size:11px;height:30px;line-height:30px;border-radius:2px;transition:width 1s ease-in-out;overflow:hidden}
.elementor-progress-text{flex-grow:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-left:15px}
.elementor-progress-percentage{padding-right:15px}
.elementor-widget-progress .elementor-title{display:block;margin-bottom:6px}
.progress-info .elementor-progress-bar{background-color:#5bc0de}
.progress-success .elementor-progress-bar{background-color:#5cb85c}
.progress-warning .elementor-progress-bar{background-color:#f0ad4e}
.progress-danger .elementor-progress-bar{background-color:#d9534f}

/* ---------- Testimonial ---------- */
.elementor-testimonial-wrapper{overflow:hidden;text-align:center}
.elementor-testimonial-wrapper .elementor-testimonial-content{font-size:1.3em;margin-bottom:20px}
.elementor-testimonial-meta{width:100%;line-height:1}
.elementor-testimonial-meta-inner{display:inline-flex;align-items:center;gap:15px}
.elementor-testimonial-image img{width:60px;height:60px;border-radius:50%;object-fit:cover}
.elementor-testimonial-image-position-top .elementor-testimonial-meta-inner{flex-direction:column}
.elementor-testimonial-details{text-align:left}
.elementor-testimonial-image-position-top .elementor-testimonial-details{text-align:center}
.elementor-testimonial-name{font-weight:700;line-height:1.5}
.elementor-testimonial-job{font-size:.85em}
.elementor-testimonial-text-align-left{text-align:left}
.elementor-testimonial-text-align-right{text-align:right}

/* ---------- Tabs / accordion / toggle ---------- */
.elementor-tabs{text-align:left}
.elementor-tabs-wrapper{display:flex;border-bottom:1px solid #d5d8dc}
.elementor-tab-title{cursor:pointer;outline:none;font-weight:700;line-height:1;padding:20px 25px}
.elementor-tab-title a{color:inherit}
.elementor-tabs .elementor-tab-desktop-title{border:1px solid transparent;border-bottom:none;margin-bottom:-1px;background:transparent}
.elementor-tabs .elementor-tab-desktop-title.elementor-active{border-color:#d5d8dc;background:inherit}
.elementor-tabs-content-wrapper .elementor-tab-content{padding:20px;border:1px solid #d5d8dc;border-top:0}
.elementor-tabs .elementor-tab-mobile-title{display:none;border-bottom:1px solid #d5d8dc}
.elementor-tabs-view-vertical .elementor-tabs{display:flex}
.elementor-tabs-view-vertical .elementor-tabs-wrapper{flex-direction:column;width:25%;border-bottom:0;border-right:1px solid #d5d8dc;flex-shrink:0}
.elementor-tabs-view-vertical .elementor-tabs .elementor-tab-desktop-title{border:1px solid transparent;border-right:0;margin:0 -1px 0 0}
.elementor-tabs-view-vertical .elementor-tabs .elementor-tab-desktop-title.elementor-active{border-color:#d5d8dc}
.elementor-tabs-view-vertical .elementor-tabs-content-wrapper{flex-grow:1}
.elementor-tabs-view-vertical .elementor-tabs-content-wrapper .elementor-tab-content{border-top:1px solid #d5d8dc;border-left:0}
.elementor-tabs-alignment-center .elementor-tabs-wrapper{justify-content:center}
.elementor-tabs-alignment-end .elementor-tabs-wrapper{justify-content:flex-end}
.elementor-tabs-alignment-stretch .elementor-tab-desktop-title{flex-grow:1;text-align:center}
@media (max-width:767px){
	.elementor-tabs .elementor-tabs-wrapper{display:none}
	.elementor-tabs .elementor-tab-mobile-title{display:block}
	.elementor-tabs .elementor-tab-content[hidden]{display:none}
	.elementor-tabs-view-vertical .elementor-tabs{display:block}
}
.elementor-tab-content[hidden]{display:none}
.elementor-accordion,.elementor-toggle{text-align:left}
.elementor-accordion-item{border:1px solid #d5d8dc}
.elementor-accordion-item+.elementor-accordion-item{border-top:none}
.elementor-accordion .elementor-tab-title{padding:15px 20px;display:flex;align-items:center;gap:0}
.elementor-accordion .elementor-tab-title.elementor-active{border-bottom:1px solid #d5d8dc}
.elementor-accordion .elementor-tab-content{padding:15px 20px;border-top:0}
.elementor-toggle-item{margin-bottom:0}
.elementor-toggle .elementor-tab-title{padding:15px;border-bottom:1px solid #d5d8dc;display:flex;align-items:center}
.elementor-toggle .elementor-tab-content{padding:15px;border-bottom:1px solid #d5d8dc}
.elementor-accordion-icon,.elementor-toggle-icon{display:inline-flex;width:1.5em}
.elementor-accordion-icon-right,.elementor-toggle-icon-right{order:2;margin-left:auto;justify-content:flex-end}
.elementor-accordion-title,.elementor-toggle-title{flex-grow:1;color:inherit}
.elementor-tab-title .elementor-accordion-icon-opened,.elementor-tab-title .elementor-toggle-icon-opened{display:none}
.elementor-tab-title.elementor-active .elementor-accordion-icon-closed,.elementor-tab-title.elementor-active .elementor-toggle-icon-closed{display:none}
.elementor-tab-title.elementor-active .elementor-accordion-icon-opened,.elementor-tab-title.elementor-active .elementor-toggle-icon-opened{display:inline-block}

/* Nested tabs / accordion */
.e-n-tabs{display:flex;flex-direction:column;gap:10px}
.e-n-tabs-heading{display:flex;flex-wrap:wrap;gap:10px}
.e-n-tab-title{display:flex;align-items:center;gap:8px;padding:12px 20px;background:#f1f2f3;border:0;border-radius:4px;cursor:pointer;font:inherit;color:inherit}
.e-n-tab-title[aria-selected=true]{background:#e2e4e7}
.e-n-tab-content[hidden]{display:none}
.e-n-tabs--dir-inline-start .e-n-tabs{flex-direction:row}
.e-n-tabs--dir-inline-start .e-n-tabs-heading{flex-direction:column;flex-wrap:nowrap}
.e-n-tabs--dir-inline-end .e-n-tabs{flex-direction:row-reverse}
.e-n-tabs--dir-inline-end .e-n-tabs-heading{flex-direction:column}
.e-n-tabs-content{flex-grow:1}
.e-n-accordion-item{border:1px solid #d5d8dc;margin-bottom:-1px}
.e-n-accordion-item-title{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;cursor:pointer;list-style:none;gap:10px}
.e-n-accordion-item-title::-webkit-details-marker{display:none}
.e-n-accordion-item-title-text{margin:0;font-size:inherit}
.e-n-accordion-item .e-opened{display:none}
.e-n-accordion-item[open] .e-opened{display:inline}
.e-n-accordion-item[open] .e-closed{display:none}

/* ---------- Social icons ---------- */
.elementor-social-icons-wrapper{font-size:0;display:flex;flex-wrap:wrap;gap:5px}
.e-grid-align-center .elementor-social-icons-wrapper{justify-content:center}
.e-grid-align-left .elementor-social-icons-wrapper{justify-content:flex-start}
.e-grid-align-right .elementor-social-icons-wrapper{justify-content:flex-end}
.elementor-widget-social-icons:not(.elementor-grid-0) .elementor-social-icons-wrapper{display:grid}
.elementor-widget-social-icons.elementor-grid-2 .elementor-social-icons-wrapper{grid-template-columns:repeat(2,auto)}
.elementor-widget-social-icons.elementor-grid-3 .elementor-social-icons-wrapper{grid-template-columns:repeat(3,auto)}
.elementor-widget-social-icons.elementor-grid-4 .elementor-social-icons-wrapper{grid-template-columns:repeat(4,auto)}
.elementor-social-icon{background-color:#69727d;font-size:var(--icon-size,25px);line-height:var(--icon-size,25px);width:calc(var(--icon-size,25px) + 2 * .5em);height:calc(var(--icon-size,25px) + 2 * .5em);display:inline-flex;align-items:center;justify-content:center;text-align:center;cursor:pointer;color:#fff}
.elementor-social-icon i{color:#fff}
.elementor-social-icon svg{fill:#fff;width:1em;height:1em}
.elementor-social-icon:hover{opacity:.9;color:#fff}
.elementor-shape-rounded .elementor-social-icon{border-radius:10%}
.elementor-shape-circle .elementor-social-icon{border-radius:50%}
.elementor-social-icon-facebook,.elementor-social-icon-facebook-f{background-color:#3b5998}
.elementor-social-icon-twitter,.elementor-social-icon-x-twitter{background-color:#1da1f2}
.elementor-social-icon-youtube{background-color:#cd201f}
.elementor-social-icon-instagram{background-color:#262626}
.elementor-social-icon-linkedin,.elementor-social-icon-linkedin-in{background-color:#0077b5}
.elementor-social-icon-pinterest,.elementor-social-icon-pinterest-p{background-color:#bd081c}
.elementor-social-icon-whatsapp{background-color:#25d366}
.elementor-social-icon-tiktok{background-color:#000}
.elementor-social-icon-github{background-color:#333}
.elementor-social-icon-dribbble{background-color:#ea4c89}
.elementor-social-icon-behance{background-color:#1769ff}
.elementor-social-icon-vimeo,.elementor-social-icon-vimeo-v{background-color:#1ab7ea}
.elementor-social-icon-telegram,.elementor-social-icon-telegram-plane{background-color:#2ca5e0}
.elementor-social-icon-reddit{background-color:#ff4500}
.elementor-social-icon-snapchat,.elementor-social-icon-snapchat-ghost{background-color:#fffc00}
.elementor-social-icon-snapchat i{color:#000}
.elementor-social-icon-wordpress{background-color:#21759b}
.elementor-social-icon-spotify{background-color:#2ebd59}
.elementor-social-icon-envelope{background-color:#ea4335}

/* ---------- Alert ---------- */
.elementor-alert{padding:15px;border-left:5px solid transparent;position:relative;text-align:left}
.elementor-alert .elementor-alert-title{display:block;font-weight:700}
.elementor-alert .elementor-alert-description{font-size:13px}
.elementor-alert button.elementor-alert-dismiss{position:absolute;right:10px;top:10px;padding:3px;font-size:20px;line-height:1;background:transparent;color:inherit;border:none;cursor:pointer}
.elementor-alert.elementor-alert-info{color:#31708f;background-color:#d9edf7;border-color:#bcdff1}
.elementor-alert.elementor-alert-success{color:#3c763d;background-color:#dff0d8;border-color:#cae6be}
.elementor-alert.elementor-alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#f9f0c3}
.elementor-alert.elementor-alert-danger{color:#a94442;background-color:#f2dede;border-color:#e8c4c4}

/* ---------- Video / maps / embeds ---------- */
.elementor-wrapper{position:relative}
.ace2d-aspect{position:relative;overflow:hidden;width:100%}
.ace2d-aspect iframe,.ace2d-aspect video,.ace2d-aspect .elementor-custom-embed-image-overlay{position:absolute;inset:0;width:100%;height:100%;border:0;background:#000}
.ace2d-aspect-169{aspect-ratio:16/9}.ace2d-aspect-219{aspect-ratio:21/9}.ace2d-aspect-43{aspect-ratio:4/3}.ace2d-aspect-32{aspect-ratio:3/2}.ace2d-aspect-11{aspect-ratio:1/1}.ace2d-aspect-916{aspect-ratio:9/16}
.ace2d-aspect video{object-fit:cover}
.elementor-custom-embed-image-overlay{background-size:cover;background-position:50%;cursor:pointer;display:flex;align-items:center;justify-content:center}
.elementor-custom-embed-play{color:#fff;font-size:100px;line-height:1;opacity:.85;text-shadow:0 0 15px rgba(0,0,0,.4);transition:opacity .2s}
.elementor-custom-embed-play:hover{opacity:1}
.elementor-custom-embed iframe{display:block;width:100%;height:300px;border:0}
.elementor-soundcloud-wrapper iframe{border:0}

/* ---------- Forms ---------- */
.elementor-form-fields-wrapper{display:flex;flex-wrap:wrap}
.elementor-field-group{display:flex;flex-wrap:wrap;align-items:center;margin-bottom:10px;padding-right:5px;padding-left:5px}
.elementor-form-fields-wrapper{margin-left:-5px;margin-right:-5px}
.elementor-field-group.elementor-column{min-height:1px}
.elementor-field-group .elementor-field-label{width:100%;display:block;margin-bottom:4px;cursor:pointer}
.elementor-labels-inline .elementor-field-group>.elementor-field-label{width:auto;padding-right:10px;margin-bottom:0}
.elementor-field-group .elementor-field-textual{width:100%;max-width:100%;border:1px solid #69727d;background-color:transparent;color:#1f2124;vertical-align:middle;flex-grow:1;padding:5px 14px;border-radius:3px;min-height:40px;font:inherit}
.elementor-field-group .elementor-field-textual:focus{box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);outline:0}
.elementor-field-group textarea.elementor-field-textual{min-height:auto}
.elementor-field-textual.elementor-size-xs{font-size:13px;min-height:33px;padding:4px 12px}
.elementor-field-textual.elementor-size-md{font-size:16px;min-height:47px;padding:6px 16px}
.elementor-field-textual.elementor-size-lg{font-size:18px;min-height:59px;padding:7px 20px}
.elementor-field-textual.elementor-size-xl{font-size:20px;min-height:72px;padding:8px 24px}
.elementor-select-wrapper{position:relative;width:100%;display:flex;align-items:center}
.elementor-select-wrapper select{appearance:none;-webkit-appearance:none;padding-right:30px}
.elementor-select-wrapper .select-caret-down-wrapper{position:absolute;right:10px;pointer-events:none;font-size:11px}
.elementor-field-subgroup{display:flex;flex-wrap:wrap;width:100%}
.elementor-field-subgroup .elementor-field-option{display:block;width:100%;padding-right:10px}
.elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option{width:auto}
.elementor-field-option label{display:inline-block;cursor:pointer}
.elementor-mark-required .elementor-field-label:after{content:"*";color:red;padding-left:.2em}
.elementor-field-type-submit{align-items:stretch}
.e-form__buttons{display:flex}
.e-form__buttons .elementor-button{width:100%}
.elementor-button-align-start .e-form__buttons{justify-content:flex-start}
.elementor-button-align-start .e-form__buttons .elementor-button,.elementor-button-align-center .e-form__buttons .elementor-button,.elementor-button-align-end .e-form__buttons .elementor-button{width:auto}
.elementor-button-align-center .e-form__buttons{justify-content:center}
.elementor-button-align-end .e-form__buttons{justify-content:flex-end}
.elementor-form .elementor-button[type=submit]{border:none}
.elementor-form .elementor-button[disabled]{opacity:.6;cursor:wait}
.elementor-message{margin:10px 0;font-size:1em;line-height:1}
.elementor-message:before{font-family:"Font Awesome 5 Free";font-weight:900;margin-right:5px}
.elementor-message.elementor-message-success{color:#5cb85c}
.elementor-message.elementor-message-success:before{content:"\f00c"}
.elementor-message.elementor-message-danger{color:#d9534f}
.elementor-message.elementor-message-danger:before{content:"\f071"}
.elementor-message.elementor-help-inline{color:#d9534f;font-size:.9em;width:100%;margin:4px 0 0}
.elementor-message.elementor-help-inline:before{content:none}
.elementor-field-group.elementor-error .elementor-field{border-color:#d9534f}
.elementor-col-100{width:100%}.elementor-col-80{width:80%}.elementor-col-75{width:75%}.elementor-col-70{width:70%}.elementor-col-66{width:66.666%}.elementor-col-60{width:60%}.elementor-col-50{width:50%}.elementor-col-40{width:40%}.elementor-col-33{width:33.333%}.elementor-col-30{width:30%}.elementor-col-25{width:25%}.elementor-col-20{width:20%}
.elementor-form .elementor-field-group.elementor-column{width:100%}
.elementor-form .elementor-field-group.elementor-col-80{width:80%}.elementor-form .elementor-field-group.elementor-col-75{width:75%}.elementor-form .elementor-field-group.elementor-col-70{width:70%}.elementor-form .elementor-field-group.elementor-col-66{width:66.666%}.elementor-form .elementor-field-group.elementor-col-60{width:60%}.elementor-form .elementor-field-group.elementor-col-50{width:50%}.elementor-form .elementor-field-group.elementor-col-40{width:40%}.elementor-form .elementor-field-group.elementor-col-33{width:33.333%}.elementor-form .elementor-field-group.elementor-col-30{width:30%}.elementor-form .elementor-field-group.elementor-col-25{width:25%}.elementor-form .elementor-field-group.elementor-col-20{width:20%}
@media (max-width:767px){.elementor-form .elementor-field-group.elementor-column{width:100%}.elementor-form .elementor-field-group.elementor-mobile-col-50{width:50%}}
.elementor-login .elementor-remember-me label{display:flex;gap:6px;align-items:center}

/* ---------- Posts / portfolio / loop ---------- */
.elementor-posts-container{display:grid;grid-template-columns:repeat(3,1fr);column-gap:30px;row-gap:35px}
.elementor-grid-1 .elementor-posts-container{grid-template-columns:1fr}
.elementor-grid-2 .elementor-posts-container{grid-template-columns:repeat(2,1fr)}
.elementor-grid-4 .elementor-posts-container{grid-template-columns:repeat(4,1fr)}
.elementor-grid-5 .elementor-posts-container{grid-template-columns:repeat(5,1fr)}
.elementor-grid-6 .elementor-posts-container{grid-template-columns:repeat(6,1fr)}
@media (max-width:1024px){.elementor-grid-tablet-1 .elementor-posts-container{grid-template-columns:1fr}.elementor-grid-tablet-2 .elementor-posts-container{grid-template-columns:repeat(2,1fr)}.elementor-grid-tablet-3 .elementor-posts-container{grid-template-columns:repeat(3,1fr)}}
@media (max-width:767px){.elementor-grid-mobile-1 .elementor-posts-container{grid-template-columns:1fr}.elementor-grid-mobile-2 .elementor-posts-container{grid-template-columns:repeat(2,1fr)}}
.elementor-post{display:flex;flex-direction:column;position:relative;overflow:hidden}
.elementor-post__thumbnail__link{display:block;width:100%;position:relative}
.elementor-post__thumbnail{position:relative;overflow:hidden;padding-bottom:66%}
.elementor-post__thumbnail img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .3s}
.elementor-post:hover .elementor-post__thumbnail img{transform:scale(1.03)}
.elementor-post__text{display:flex;flex-direction:column;flex-grow:1}
.elementor-posts--thumbnail-top .elementor-post__thumbnail__link{margin-bottom:20px}
.elementor-posts--thumbnail-left .elementor-post{flex-direction:row}
.elementor-posts--thumbnail-left .elementor-post__thumbnail__link{width:30%;margin-right:20px;flex-shrink:0}
.elementor-posts--thumbnail-right .elementor-post{flex-direction:row-reverse}
.elementor-posts--thumbnail-right .elementor-post__thumbnail__link{width:30%;margin-left:20px;flex-shrink:0}
.elementor-post__title{font-size:18px;margin:0 0 10px}
.elementor-post__title a{color:inherit}
.elementor-post__meta-data{font-size:12px;color:#adadad;margin-bottom:13px}
.elementor-post__excerpt p{margin:0 0 10px;font-size:14px;line-height:1.5}
.elementor-post__read-more{font-size:12px;font-weight:700;text-transform:uppercase;align-self:flex-start}
.elementor-posts--skin-cards .elementor-post__card{display:flex;flex-direction:column;height:100%;background:#fff;border-radius:3px;box-shadow:0 0 10px rgba(0,0,0,.15);overflow:hidden;position:relative}
.elementor-posts--skin-cards .elementor-post__thumbnail__link{margin-bottom:0}
.elementor-posts--skin-cards .elementor-post__text{padding:20px 30px 10px}
.elementor-post__card-footer{padding:15px 30px;border-top:1px solid #eaeaea;margin:0}
.elementor-post__badge{position:absolute;top:15px;right:15px;background:var(--e-global-color-accent,#61ce70);color:#fff;font-size:12px;padding:4px 12px;border-radius:999px;z-index:2}
.elementor-post__avatar{position:relative;z-index:2;margin:-30px 0 0 30px}
.elementor-post__avatar img{border-radius:50%;width:60px;height:60px}
.elementor-pagination{display:flex;gap:10px;justify-content:center;margin-top:30px;flex-wrap:wrap}
.elementor-pagination .page-numbers{padding:6px 12px;border:1px solid #e3e3e3;border-radius:3px}
.elementor-pagination .page-numbers.current{background:#f5f5f5}
.elementor-portfolio{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.elementor-portfolio-item{position:relative;overflow:hidden}
.elementor-portfolio-item .elementor-post__thumbnail__link{padding-bottom:66%;display:block;position:relative}
.elementor-portfolio-item__img{position:absolute;inset:0;padding:0}
.elementor-portfolio-item__img img{width:100%;height:100%;object-fit:cover}
.elementor-portfolio-item__overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.55);opacity:0;transition:opacity .3s;padding:10px;text-align:center}
.elementor-portfolio-item:hover .elementor-portfolio-item__overlay{opacity:1}
.elementor-portfolio-item__title{color:#fff;margin:0;font-size:18px}
.elementor-portfolio__filters{display:flex;flex-wrap:wrap;justify-content:center;gap:20px;list-style:none;margin:0 0 20px;padding:0}
.elementor-portfolio__filter{cursor:pointer;opacity:.6}
.elementor-portfolio__filter.elementor-active{opacity:1;font-weight:600}
.ace2d-filtered-out{display:none!important}
.elementor-loop-container{display:grid;grid-template-columns:repeat(3,1fr)}
.elementor-grid-1 .elementor-loop-container{grid-template-columns:1fr}.elementor-grid-2 .elementor-loop-container{grid-template-columns:repeat(2,1fr)}.elementor-grid-4 .elementor-loop-container{grid-template-columns:repeat(4,1fr)}
@media (max-width:1024px){.elementor-grid-tablet-2 .elementor-loop-container{grid-template-columns:repeat(2,1fr)}.elementor-grid-tablet-1 .elementor-loop-container{grid-template-columns:1fr}}
@media (max-width:767px){.elementor-grid-mobile-1 .elementor-loop-container{grid-template-columns:1fr}}

/* Pro gallery */
.e-gallery-container{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.e-gallery-masonry{display:block;column-count:4;column-gap:10px}
.e-gallery-masonry .e-gallery-item{display:block;break-inside:avoid;margin-bottom:10px}
.e-gallery-justified{display:flex;flex-wrap:wrap}
.e-gallery-justified .e-gallery-item{flex:1 1 220px;height:220px}
.e-gallery-justified .e-gallery-image{height:100%}
.e-gallery-item{position:relative;overflow:hidden;display:block}
.e-gallery-image{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.e-gallery-item:hover .e-gallery-image{transform:scale(1.05)}
.elementor-gallery-item__overlay{position:absolute;inset:0;transition:background .3s}
.e-gallery-item:hover .elementor-gallery-item__overlay{background:rgba(0,0,0,.25)}
.elementor-gallery__titles-container{display:flex;gap:16px;justify-content:center;margin-bottom:16px;flex-wrap:wrap}

/* ---------- Price table / list / ribbon ---------- */
.elementor-widget-price-table{position:relative;overflow:hidden}
.elementor-price-table{text-align:center}
.elementor-price-table__header{background:var(--e-global-color-secondary,#555);padding:20px 0}
.elementor-price-table__heading{margin:0;padding:0;line-height:1.2;font-size:19px;font-weight:600;color:#fff}
.elementor-price-table__subheading{font-size:13px;font-weight:400;color:#fff}
.elementor-price-table__price{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;flex-direction:row;font-weight:800;font-size:65px;line-height:1;padding:40px 0;color:#555}
.elementor-price-table__currency,.elementor-price-table__fractional-part{font-size:calc(1em * .4);align-self:flex-start;line-height:1}
.elementor-price-table__after-price{display:flex;flex-direction:column;align-items:flex-start;align-self:stretch;text-align:left}
.elementor-price-table__original-price{margin-right:15px;text-decoration:line-through;font-size:.5em;line-height:1;font-weight:400;align-self:center}
.elementor-price-table__period{font-size:13px;font-weight:500;width:100%}
.elementor-price-table__features-list{list-style-type:none;margin:0;padding:0;line-height:1;color:#7a7a7a}
.elementor-price-table__features-list li{font-size:14px;line-height:1;margin:0;padding:15px 0}
.elementor-price-table__features-list.ace2d-divided li:not(:first-child){border-top:2px solid #e9e9e9}
.elementor-price-table__feature-inner{margin-left:15px;margin-right:15px;display:flex;align-items:center;justify-content:center;gap:6px}
.elementor-price-table__footer{padding:30px 0}
.elementor-price-table__additional_info{margin:0;font-size:13px;line-height:1.4;margin-top:15px}
.elementor-ribbon{position:absolute;z-index:1;top:0;left:0;right:auto;transform:rotate(0);width:150px;overflow:hidden;height:150px;pointer-events:none}
.elementor-ribbon-inner{text-align:center;left:0;width:200%;transform:translateY(-50%) translateX(-50%) translateX(35px) rotate(-45deg);margin-top:35px;font-size:13px;line-height:2;font-weight:800;text-transform:uppercase;background:#000;color:#fff}
.elementor-ribbon.elementor-ribbon-right{left:auto;right:0;transform:rotate(90deg)}
.elementor-price-list{list-style:none;padding:0;margin:0}
.elementor-price-list-item{display:flex;align-items:flex-start;gap:20px;color:inherit}
.elementor-price-list-text{flex-grow:1}
.elementor-price-list-header{display:flex;align-items:center;font-weight:600;font-size:19px}
.elementor-price-list-separator{flex-grow:1;margin:0 10px;border-bottom:2px dotted;height:0;align-self:center;opacity:.6}
.elementor-price-list-description{margin:5px 0 0;font-size:14px}

/* ---------- Flip box ---------- */
.elementor-flip-box{height:280px;position:relative;perspective:1000px;transform-style:preserve-3d}
.elementor-flip-box__layer{position:absolute;inset:0;background-color:#4054b2;transition:all .6s ease-in-out;overflow:hidden}
.elementor-flip-box__back{background-color:#03b2cb}
.elementor-flip-box__layer__overlay{display:flex;height:100%;flex-direction:column;justify-content:center;align-items:stretch;text-align:center;padding:35px}
.elementor-flip-box__layer__title{font-size:21px;font-weight:600;line-height:1;margin:0 0 15px;color:#fff}
.elementor-flip-box__layer__description{font-size:14px;line-height:1.5;color:#fff}
.elementor-flip-box__button{margin-top:20px;align-self:center;background:transparent;border:2px solid #fff;color:#fff}
.elementor-flip-box__image img{width:50%;margin:0 auto 15px;display:block}
.elementor-flip-box .elementor-icon-wrapper{margin-bottom:15px}
.elementor-flip-box .elementor-icon{color:#fff}
.elementor-flip-box--effect-flip .elementor-flip-box__layer{backface-visibility:hidden}
.elementor-flip-box--effect-flip .elementor-flip-box__back{transform:rotateX(180deg)}
.elementor-flip-box--effect-flip.elementor-flip-box--direction-left .elementor-flip-box__back,.elementor-flip-box--effect-flip.elementor-flip-box--direction-right .elementor-flip-box__back{transform:rotateY(180deg)}
.elementor-flip-box--effect-flip .elementor-flip-box:hover .elementor-flip-box__front,.elementor-flip-box--effect-flip .elementor-flip-box:focus-within .elementor-flip-box__front{transform:rotateX(-180deg)}
.elementor-flip-box--effect-flip.elementor-flip-box--direction-down .elementor-flip-box:hover .elementor-flip-box__front{transform:rotateX(180deg)}
.elementor-flip-box--effect-flip.elementor-flip-box--direction-left .elementor-flip-box:hover .elementor-flip-box__front{transform:rotateY(-180deg)}
.elementor-flip-box--effect-flip.elementor-flip-box--direction-right .elementor-flip-box:hover .elementor-flip-box__front{transform:rotateY(180deg)}
.elementor-flip-box--effect-flip .elementor-flip-box:hover .elementor-flip-box__back,.elementor-flip-box--effect-flip .elementor-flip-box:focus-within .elementor-flip-box__back{transform:none}
.elementor-flip-box--3d .elementor-flip-box__layer__inner{transform:translateZ(90px) scale(.91)}
.elementor-flip-box--effect-fade .elementor-flip-box__back{opacity:0}
.elementor-flip-box--effect-fade .elementor-flip-box:hover .elementor-flip-box__back{opacity:1}
.elementor-flip-box--effect-zoom-in .elementor-flip-box__back{transform:scale(.7);opacity:0}
.elementor-flip-box--effect-zoom-in .elementor-flip-box:hover .elementor-flip-box__back{transform:scale(1);opacity:1}
.elementor-flip-box--effect-zoom-out .elementor-flip-box__front{z-index:2}
.elementor-flip-box--effect-zoom-out .elementor-flip-box:hover .elementor-flip-box__front{transform:scale(.7);opacity:0}
.elementor-flip-box--effect-slide .elementor-flip-box__back,.elementor-flip-box--effect-push .elementor-flip-box__back{transform:translateY(100%)}
.elementor-flip-box--effect-slide .elementor-flip-box:hover .elementor-flip-box__back,.elementor-flip-box--effect-push .elementor-flip-box:hover .elementor-flip-box__back{transform:none}
.elementor-flip-box--effect-push .elementor-flip-box:hover .elementor-flip-box__front{transform:translateY(-100%)}
.elementor-flip-box--effect-slide.elementor-flip-box--direction-down .elementor-flip-box__back,.elementor-flip-box--effect-push.elementor-flip-box--direction-down .elementor-flip-box__back{transform:translateY(-100%)}
.elementor-flip-box--effect-slide.elementor-flip-box--direction-left .elementor-flip-box__back,.elementor-flip-box--effect-push.elementor-flip-box--direction-left .elementor-flip-box__back{transform:translateX(100%)}
.elementor-flip-box--effect-slide.elementor-flip-box--direction-right .elementor-flip-box__back,.elementor-flip-box--effect-push.elementor-flip-box--direction-right .elementor-flip-box__back{transform:translateX(-100%)}

/* ---------- Call to action ---------- */
.elementor-cta{position:relative;display:flex;overflow:hidden;transition:.5s;color:inherit}
.elementor-cta__bg-wrapper{position:relative;min-height:200px;width:100%;overflow:hidden}
.elementor-cta__bg,.elementor-cta__bg-overlay{position:absolute;inset:0;background-size:cover;background-position:50%;transition:all .4s}
.elementor-cta__content{display:flex;flex-wrap:wrap;align-items:center;align-content:center;justify-content:center;padding:35px;width:100%;position:relative;z-index:1;text-align:center;background:#f9fafa}
.elementor-cta__content-item{width:100%;margin:0 0 15px}
.elementor-cta__content-item:last-child{margin-bottom:0}
.elementor-cta__title{font-size:23px}
.elementor-cta--skin-classic .elementor-cta{flex-direction:column}
.elementor-cta--skin-cover .elementor-cta{display:block}
.elementor-cta--skin-cover .elementor-cta__bg-wrapper{position:absolute;inset:0;min-height:0}
.elementor-cta--skin-cover .elementor-cta__content{min-height:280px;background:transparent;color:#fff}
.elementor-cta--skin-cover .elementor-cta__bg-overlay{background-color:rgba(0,0,0,.4)}
.elementor-cta--layout-image-left .elementor-cta{flex-direction:row}
.elementor-cta--layout-image-right .elementor-cta{flex-direction:row-reverse}
.elementor-cta--layout-image-left .elementor-cta__bg-wrapper,.elementor-cta--layout-image-right .elementor-cta__bg-wrapper{width:auto;min-width:50%}
@media (max-width:767px){.elementor-cta--mobile-layout-image-above .elementor-cta{flex-direction:column}}
.elementor-bg-transform .elementor-cta:hover .elementor-bg{transition:transform 1.5s}
.elementor-bg-transform-zoom-in .elementor-cta:hover .elementor-bg{transform:scale(1.2)}
.elementor-bg-transform-zoom-out .elementor-bg{transform:scale(1.2)}
.elementor-bg-transform-zoom-out .elementor-cta:hover .elementor-bg{transform:scale(1)}
.elementor-bg-transform-move-left .elementor-cta:hover .elementor-bg{transform:scale(1.2) translateX(-8%)}
.elementor-bg-transform-move-right .elementor-cta:hover .elementor-bg{transform:scale(1.2) translateX(8%)}
.elementor-bg-transform-move-up .elementor-cta:hover .elementor-bg{transform:scale(1.2) translateY(-8%)}
.elementor-bg-transform-move-down .elementor-cta:hover .elementor-bg{transform:scale(1.2) translateY(8%)}

/* ---------- Animated headline ---------- */
.elementor-headline{font-size:43px;line-height:1.2;margin:0}
.elementor-headline-dynamic-wrapper{display:inline-block;position:relative}
.elementor-headline-dynamic-wrapper svg{position:absolute;top:50%;left:50%;width:calc(100% + 20px);height:calc(100% + 20px);transform:translate(-50%,-50%);overflow:visible;pointer-events:none}
.elementor-headline-dynamic-wrapper svg path{stroke:red;stroke-width:9;fill:none;stroke-dasharray:1500;stroke-dashoffset:1500;stroke-linecap:round;stroke-linejoin:round}
.elementor-headline.e-animated svg path{animation:ace2d-headline-dash var(--ace2d-hl-duration,1.2s) ease-in-out forwards}
.elementor-headline.e-hide-highlight svg path{opacity:0;transition:opacity .4s}
@keyframes ace2d-headline-dash{to{stroke-dashoffset:0}}
.elementor-headline-dynamic-text{position:relative;z-index:1;display:inline-block;white-space:nowrap}
.elementor-headline-animation-type-drop-in .elementor-headline-dynamic-text,.elementor-headline[class*=elementor-headline-animation-type-] .elementor-headline-dynamic-wrapper .elementor-headline-dynamic-text:not(.elementor-headline-text-active){display:none}
.elementor-headline-animation-type-drop-in .elementor-headline-dynamic-text.elementor-headline-text-active{display:inline-block}
.elementor-headline-text-active{animation:ace2d-word-in .5s ease both}
.elementor-headline-animation-type-typing .elementor-headline-text-active{animation:none}
.elementor-headline-animation-type-typing .elementor-headline-dynamic-wrapper:after{content:"";position:absolute;right:-4px;top:10%;height:80%;width:2px;background:currentColor;animation:ace2d-blink .8s infinite}
@keyframes ace2d-word-in{from{opacity:0;transform:translateY(-.4em)}to{opacity:1;transform:none}}
@keyframes ace2d-blink{50%{opacity:0}}
.elementor-headline-animation-type-flip .elementor-headline-text-active{animation-name:flipInX}
.elementor-headline-animation-type-swirl .elementor-headline-text-active{animation-name:rotateIn}
.elementor-headline-animation-type-blinds .elementor-headline-text-active,.elementor-headline-animation-type-wave .elementor-headline-text-active{animation-name:fadeInUp}
.elementor-headline-animation-type-slide .elementor-headline-text-active{animation-name:fadeInLeft}
.elementor-headline-animation-type-slide-down .elementor-headline-text-active{animation-name:fadeInDown}

/* ---------- Countdown ---------- */
.elementor-countdown-wrapper{display:flex;flex-direction:row;gap:10px;margin:0 auto}
.elementor-countdown-item{flex:1 1 0;background:var(--e-global-color-primary,#69727d);color:#fff;padding:20px 0;text-align:center;border-radius:3px}
.elementor-countdown-digits,.elementor-countdown-label{line-height:1}
.elementor-countdown-digits{font-size:69px}
.elementor-countdown-label{font-size:19px}
.elementor-countdown--label-block .elementor-countdown-digits,.elementor-countdown--label-block .elementor-countdown-label{display:block}
.elementor-countdown--label-inline .elementor-countdown-item{display:flex;align-items:baseline;justify-content:center;gap:6px}
.elementor-countdown-expire--message{padding:20px;text-align:center}

/* ---------- Share buttons ---------- */
.elementor-share-buttons--view-icon .elementor-share-btn__text,.elementor-share-buttons--view-text .elementor-share-btn__icon{display:none}
.elementor-share-btn{display:flex;align-items:center;overflow:hidden;cursor:pointer;height:4.5em;font-size:10px;transition:.2s;color:#fff;justify-content:flex-start}
.elementor-share-btn__icon{display:flex;align-items:center;justify-content:center;align-self:stretch;width:4.5em;font-size:1.7em;flex-shrink:0}
.elementor-share-btn__text{padding:0 1em;flex-grow:1;display:flex;align-items:center;align-self:stretch;font-size:1.5em}
.elementor-share-btn__title{font-weight:700}
.elementor-share-buttons--align-center .elementor-grid{justify-content:center}
.elementor-share-buttons--align-right .elementor-grid{justify-content:flex-end}
.elementor-share-buttons--shape-rounded .elementor-share-btn{border-radius:.5em}
.elementor-share-buttons--shape-circle .elementor-share-btn{border-radius:99.9em}
.elementor-share-buttons--skin-minimal .elementor-share-btn,.elementor-share-buttons--skin-framed .elementor-share-btn{background:transparent!important;color:#333;border:2px solid currentColor}
.elementor-share-buttons--skin-gradient .elementor-share-btn__text{background-image:linear-gradient(90deg,rgba(0,0,0,.12),transparent)}
.elementor-share-btn_facebook{background-color:#3b5998}
.elementor-share-btn_twitter{background-color:#1da1f2}
.elementor-share-btn_linkedin{background-color:#0077b5}
.elementor-share-btn_pinterest{background-color:#bd081c}
.elementor-share-btn_reddit{background-color:#ff4500}
.elementor-share-btn_vk{background-color:#45668e}
.elementor-share-btn_tumblr{background-color:#35465c}
.elementor-share-btn_digg{background-color:#005be2}
.elementor-share-btn_skype{background-color:#00aff0}
.elementor-share-btn_telegram{background-color:#2ca5e0}
.elementor-share-btn_pocket{background-color:#ef4056}
.elementor-share-btn_xing{background-color:#026466}
.elementor-share-btn_whatsapp{background-color:#25d366}
.elementor-share-btn_email{background-color:#ea4335}
.elementor-share-btn_print{background-color:#aaa}
.elementor-share-btn_threads{background-color:#000}

/* ---------- Nav menu ---------- */
.elementor-nav-menu,.elementor-nav-menu ul{list-style:none;margin:0;padding:0}
.elementor-nav-menu--main .elementor-nav-menu{display:flex;flex-wrap:wrap}
.elementor-nav-menu--layout-vertical .elementor-nav-menu{flex-direction:column}
.elementor-nav-menu__align-center .elementor-nav-menu--main .elementor-nav-menu{justify-content:center}
.elementor-nav-menu__align-right .elementor-nav-menu--main .elementor-nav-menu{justify-content:flex-end}
.elementor-nav-menu__align-justify .elementor-nav-menu--main .elementor-nav-menu>li{flex-grow:1;text-align:center}
.elementor-nav-menu li{position:relative}
.elementor-nav-menu a{display:flex;align-items:center;line-height:20px;padding:13px 20px;color:inherit;transition:.3s}
.elementor-nav-menu--main .elementor-item{position:relative;color:var(--e-global-color-text,#33373d)}
.elementor-nav-menu .sub-arrow{display:inline-flex;margin-left:6px;font-size:10px;line-height:1}
.elementor-nav-menu--main .elementor-nav-menu--dropdown{position:absolute;top:100%;left:0;min-width:200px;background:#fff;box-shadow:0 6px 20px rgba(0,0,0,.08);opacity:0;visibility:hidden;transform:translateY(6px);transition:.2s;z-index:100}
.elementor-nav-menu--main .elementor-nav-menu--dropdown .elementor-nav-menu--dropdown{top:0;left:100%}
.elementor-nav-menu--main li:hover>.elementor-nav-menu--dropdown,.elementor-nav-menu--main li:focus-within>.elementor-nav-menu--dropdown{opacity:1;visibility:visible;transform:none}
.elementor-nav-menu--dropdown a{padding:10px 20px;color:#33373d}
.elementor-nav-menu--dropdown a:hover,.elementor-nav-menu--dropdown a.elementor-item-active{background:#3f444b;color:#fff}
.e--pointer-underline .elementor-item:after,.e--pointer-overline .elementor-item:before,.e--pointer-double-line .elementor-item:before,.e--pointer-double-line .elementor-item:after{content:"";position:absolute;left:0;width:100%;height:3px;background:var(--e-global-color-accent,#61ce70);opacity:0;transition:.3s}
.e--pointer-underline .elementor-item:after,.e--pointer-double-line .elementor-item:after{bottom:0}
.e--pointer-overline .elementor-item:before,.e--pointer-double-line .elementor-item:before{top:0}
.e--pointer-underline .elementor-item:hover:after,.e--pointer-underline .elementor-item-active:after,.e--pointer-overline .elementor-item:hover:before,.e--pointer-overline .elementor-item-active:before,.e--pointer-double-line .elementor-item:hover:before,.e--pointer-double-line .elementor-item:hover:after,.e--pointer-double-line .elementor-item-active:before,.e--pointer-double-line .elementor-item-active:after{opacity:1}
.e--pointer-framed .elementor-item:before{content:"";position:absolute;inset:0;border:3px solid var(--e-global-color-accent,#61ce70);opacity:0;transition:.3s}
.e--pointer-framed .elementor-item:hover:before,.e--pointer-framed .elementor-item-active:before{opacity:1}
.e--pointer-background .elementor-item:before{content:"";position:absolute;inset:0;z-index:-1;background:var(--e-global-color-accent,#61ce70);opacity:0;transition:.3s}
.e--pointer-background .elementor-item:hover,.e--pointer-background .elementor-item-active{color:#fff}
.e--pointer-background .elementor-item:hover:before,.e--pointer-background .elementor-item-active:before{opacity:1}
.e--pointer-text .elementor-item:hover{color:var(--e-global-color-accent,#61ce70)}
.elementor-menu-toggle{display:none;align-items:center;justify-content:center;font-size:22px;padding:.25em;cursor:pointer;border-radius:3px;background:rgba(0,0,0,.05);color:#33373d;width:max-content}
.elementor-menu-toggle .elementor-menu-toggle__icon--close{display:none}
.elementor-menu-toggle.elementor-active .elementor-menu-toggle__icon--close{display:inline}
.elementor-menu-toggle.elementor-active .elementor-menu-toggle__icon--open{display:none}
.elementor-widget-nav-menu .elementor-widget-container{position:relative}
.elementor-nav-menu__container.elementor-nav-menu--dropdown{display:none;position:absolute;top:100%;right:0;min-width:220px;z-index:1000;background:#fff;margin-top:10px;box-shadow:0 10px 30px rgba(0,0,0,.12)}
.elementor-nav-menu--stretch .elementor-nav-menu__container.elementor-nav-menu--dropdown{right:auto;min-width:0;box-shadow:0 14px 24px -12px rgba(0,0,0,.2)}
.elementor-nav-menu__container.elementor-nav-menu--dropdown .elementor-nav-menu--dropdown{position:static;display:block;opacity:1;visibility:visible;transform:none;box-shadow:none;padding-left:16px}
.elementor-nav-menu__container.elementor-nav-menu--dropdown.ace2d-open{display:block}
.elementor-nav-menu__text-align-center .elementor-nav-menu--dropdown .elementor-nav-menu a{justify-content:center}
.elementor-nav-menu--stretch .elementor-nav-menu__container.elementor-nav-menu--dropdown{position:absolute;left:0;right:0;z-index:999}
.elementor-nav-menu--dropdown-all .elementor-menu-toggle{display:flex}
.elementor-nav-menu--dropdown-all .elementor-nav-menu--main{display:none}
@media (max-width:1024px){
	.elementor-nav-menu--dropdown-tablet .elementor-menu-toggle{display:flex}
	.elementor-nav-menu--dropdown-tablet .elementor-nav-menu--main{display:none}
}
@media (min-width:1025px){.elementor-nav-menu--dropdown-tablet .elementor-nav-menu__container.elementor-nav-menu--dropdown{display:none!important}}
@media (max-width:767px){
	.elementor-nav-menu--dropdown-mobile .elementor-menu-toggle{display:flex}
	.elementor-nav-menu--dropdown-mobile .elementor-nav-menu--main{display:none}
}
@media (min-width:768px){.elementor-nav-menu--dropdown-mobile .elementor-nav-menu__container.elementor-nav-menu--dropdown{display:none!important}}
.elementor-nav-menu--dropdown-none .elementor-menu-toggle,.elementor-nav-menu--dropdown-none .elementor-nav-menu--dropdown.elementor-nav-menu__container{display:none!important}

/* ---------- Blockquote ---------- */
.elementor-blockquote{margin:0;padding:0;border:0;font-style:normal;background:none;quotes:none;color:inherit}
.elementor-blockquote__content{margin:0 0 16px;font-size:1.2em;line-height:1.5}
.elementor-blockquote footer{display:flex;justify-content:space-between;align-items:center;gap:10px}
.elementor-blockquote__author{font-weight:700;font-style:normal}
.elementor-blockquote__tweet-button{display:inline-flex;gap:6px;align-items:center;color:#1da1f2;font-weight:600;font-size:.9em}
.elementor-blockquote--skin-border .elementor-blockquote{border-left:7px solid #d5d8dc;padding-left:20px}
.elementor-blockquote--skin-quotation .elementor-blockquote:before{content:"\201C";font-size:100px;color:#d5d8dc;font-family:Times New Roman,Times,serif;font-weight:900;line-height:1;display:block;height:.6em}
.elementor-blockquote--skin-boxed .elementor-blockquote{background:#f9fafa;padding:30px}
.elementor-blockquote--align-center .elementor-blockquote{text-align:center}
.elementor-blockquote--align-center footer{justify-content:center}
.elementor-blockquote--align-right .elementor-blockquote{text-align:right}

/* ---------- TOC / code / hotspot / lottie ---------- */
.elementor-widget-table-of-contents .elementor-widget-container{border:1px solid #9da5ae;border-radius:3px;overflow:hidden}
.elementor-toc__header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-bottom:1px solid #9da5ae;background:#f8f9fa}
.elementor-toc__header-title{margin:0;font-size:18px}
.elementor-toc__toggle-button{cursor:pointer;transition:transform .3s}
.elementor-toc--collapsed .elementor-toc__toggle-button{transform:rotate(180deg)}
.elementor-toc--collapsed .elementor-toc__body{display:none}
.elementor-toc__body{padding:16px 20px;max-height:none;overflow-y:auto}
.elementor-toc__list-wrapper{margin:0;padding-left:20px}
.elementor-toc__list-wrapper .elementor-toc__list-wrapper{padding-left:16px}
.elementor-toc__list-item{margin:4px 0}
.elementor-toc__list-item-text{color:inherit}
.elementor-toc__list-item-text.elementor-item-active{font-weight:700}
.ace2d-code{position:relative;border-radius:6px;overflow:hidden;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.ace2d-code pre{margin:0;padding:18px;overflow:auto;display:flex;gap:16px;line-height:1.6;font-size:14px;tab-size:4}
.ace2d-code--dark pre{background:#1e1e2e;color:#e4e4ef}
.ace2d-code--light pre{background:#f6f8fa;color:#24292f}
.ace2d-code code{background:none;padding:0;font:inherit;color:inherit;white-space:pre}
.ace2d-line-numbers{opacity:.45;text-align:right;user-select:none;white-space:pre}
.ace2d-code-copy{position:absolute;top:8px;right:8px;font-size:12px;padding:4px 10px;border-radius:4px;border:0;background:rgba(255,255,255,.15);color:inherit;cursor:pointer}
.ace2d-code--light .ace2d-code-copy{background:rgba(0,0,0,.08)}
.e-hotspot-wrapper{position:relative;display:inline-block;width:100%}
.e-hotspot-wrapper>img{width:100%;display:block}
.e-hotspot{position:absolute;transform:translate(-50%,-50%);z-index:2}
.e-hotspot__button{display:flex;align-items:center;gap:6px;background:var(--e-global-color-primary,#000);color:#fff;border-radius:999px;padding:.5em;font-size:14px;cursor:pointer;box-shadow:0 0 0 0 rgba(0,0,0,.3);animation:ace2d-pulse 2s infinite}
@keyframes ace2d-pulse{70%{box-shadow:0 0 0 12px rgba(0,0,0,0)}100%{box-shadow:0 0 0 0 rgba(0,0,0,0)}}
.e-hotspot__tooltip{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translateX(-50%);min-width:180px;background:#fff;color:#333;padding:10px 14px;border-radius:6px;box-shadow:0 6px 20px rgba(0,0,0,.15);opacity:0;visibility:hidden;transition:.2s;font-size:14px}
.e-hotspot--tooltip-position-bottom .e-hotspot__tooltip{bottom:auto;top:calc(100% + 10px)}
.e-hotspot--tooltip-position-left .e-hotspot__tooltip{left:auto;right:calc(100% + 10px);bottom:50%;transform:translateY(50%)}
.e-hotspot--tooltip-position-right .e-hotspot__tooltip{left:calc(100% + 10px);bottom:50%;transform:translateY(50%)}
.e-hotspot--trigger-mouseenter:hover .e-hotspot__tooltip,.e-hotspot.ace2d-open .e-hotspot__tooltip{opacity:1;visibility:visible}
.e-lottie__container{display:inline-block;width:100%;max-width:100%}

/* ---------- Theme widgets ---------- */
.elementor-post-info{display:flex;flex-wrap:wrap;gap:12px;list-style:none;margin:0;padding:0}
.elementor-post-info .elementor-icon-list-item a{color:inherit}
.elementor-post-navigation{display:flex;justify-content:space-between;align-items:center;overflow:hidden}
.elementor-post-navigation-borders-yes{border-top:1px solid #d5d8dc;border-bottom:1px solid #d5d8dc;padding:10px 0}
.elementor-post-navigation__link{width:45%;overflow:hidden}
.elementor-post-navigation__link a{display:flex;align-items:center;gap:10px;color:inherit;max-width:100%}
.elementor-post-navigation__next{text-align:right}
.elementor-post-navigation__next a{justify-content:flex-end}
.elementor-post-navigation__link__prev,.elementor-post-navigation__link__next{display:flex;flex-direction:column;overflow:hidden}
.post-navigation__prev--label,.post-navigation__next--label{font-size:.8em;text-transform:uppercase}
.post-navigation__prev--title,.post-navigation__next--title{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.post-navigation__arrow-wrapper{font-size:30px}
.elementor-post-navigation__separator{width:1px;height:40px;background:#d5d8dc}
.elementor-author-box{display:flex;align-items:center;gap:20px}
.elementor-author-box__avatar img{width:100px;height:100px;border-radius:50%;object-fit:cover}
.elementor-author-box__name{margin:0 0 6px}
.elementor-author-box--layout-image-above .elementor-author-box{flex-direction:column}
.elementor-author-box--layout-image-right .elementor-author-box{flex-direction:row-reverse}
.elementor-author-box--align-center .elementor-author-box{text-align:center;justify-content:center}
.elementor-search-form__container{display:flex;overflow:hidden;border:1px solid #ddd;min-height:50px;border-radius:3px}
.elementor-search-form__input{flex-grow:1;border:0;background:transparent;padding:0 16px;min-width:0;font:inherit;outline:0}
.elementor-search-form__submit{border:0;background:var(--e-global-color-secondary,#818a91);color:#fff;font-size:16px;min-width:50px;cursor:pointer;padding:0 14px}
.elementor-search-form__icon{display:flex;align-items:center;padding-left:14px;opacity:.6}
.elementor-search-form--skin-minimal .elementor-search-form__container{border-width:0 0 1px}
.elementor-search-form__toggle{display:inline-flex;font-size:22px;cursor:pointer;padding:6px}
.elementor-search-form--skin-full_screen .elementor-search-form__container{position:fixed;inset:0;z-index:9998;background:rgba(0,0,0,.85);border:0;align-items:center;padding:0 15%;opacity:0;visibility:hidden;transition:.3s;border-radius:0}
.elementor-search-form--skin-full_screen .elementor-search-form__container.ace2d-open{opacity:1;visibility:visible}
.elementor-search-form--skin-full_screen .elementor-search-form__input{color:#fff;font-size:40px;border-bottom:1px solid #fff;text-align:center}
.elementor-search-form--skin-full_screen .dialog-close-button{position:absolute;top:30px;right:30px;color:#fff;font-size:30px;cursor:pointer}
.ace2d-breadcrumbs p{margin:0}

/* ---------- Popups & lightbox ---------- */
.ace2d-popup{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background-color:rgba(0,0,0,.8);padding:20px}
.ace2d-popup[hidden]{display:none}
.ace2d-popup.ace2d-popup--no-overlay{background:none;pointer-events:none}
.ace2d-popup.ace2d-popup--no-overlay .dialog-widget-content{pointer-events:auto}
.ace2d-popup .dialog-widget-content{position:relative;background:#fff;max-width:100%;max-height:100%;overflow:auto;box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);animation-duration:.6s}
.ace2d-popup .dialog-message{width:640px;max-width:100vw;max-height:100vh;overflow:auto}
.ace2d-popup .dialog-close-button{position:absolute;top:12px;right:12px;font-size:20px;line-height:1;cursor:pointer;z-index:5;color:#333;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%}
body.ace2d-popup-no-scroll{overflow:hidden}
.ace2d-lightbox{position:fixed;inset:0;z-index:10000;background:rgba(0,0,0,.9);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .25s}
.ace2d-lightbox.ace2d-open{opacity:1}
.ace2d-lightbox img{max-width:90vw;max-height:85vh;box-shadow:0 10px 40px rgba(0,0,0,.4)}
.ace2d-lightbox iframe{width:min(90vw,1200px);aspect-ratio:16/9;border:0}
.ace2d-lightbox button{position:absolute;background:none;border:0;color:#fff;font-size:28px;cursor:pointer;padding:16px;opacity:.8}
.ace2d-lightbox button:hover{opacity:1}
.ace2d-lightbox .ace2d-lb-close{top:10px;right:10px}
.ace2d-lightbox .ace2d-lb-prev{left:10px;top:50%;transform:translateY(-50%)}
.ace2d-lightbox .ace2d-lb-next{right:10px;top:50%;transform:translateY(-50%)}
.ace2d-lightbox .ace2d-lb-counter{position:absolute;top:22px;left:24px;color:#fff;font-size:14px;opacity:.8}

/* ---------- Motion ---------- */
.ace2d-sticky.ace2d-is-stuck{z-index:99}
.animated{animation-duration:1.25s;animation-fill-mode:both}
.animated.animated-slow{animation-duration:2s}
.animated.animated-fast{animation-duration:.75s}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes fadeInDown{from{opacity:0;transform:translate3d(0,-100%,0)}to{opacity:1;transform:none}}
@keyframes fadeInUp{from{opacity:0;transform:translate3d(0,100%,0)}to{opacity:1;transform:none}}
@keyframes fadeInLeft{from{opacity:0;transform:translate3d(-100%,0,0)}to{opacity:1;transform:none}}
@keyframes fadeInRight{from{opacity:0;transform:translate3d(100%,0,0)}to{opacity:1;transform:none}}
@keyframes zoomIn{from{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}
@keyframes zoomInDown{from{opacity:0;transform:scale3d(.1,.1,.1) translate3d(0,-1000px,0)}60%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(0,60px,0)}}
@keyframes zoomInUp{from{opacity:0;transform:scale3d(.1,.1,.1) translate3d(0,1000px,0)}60%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(0,-60px,0)}}
@keyframes bounceIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}20%{transform:scale3d(1.1,1.1,1.1)}40%{transform:scale3d(.9,.9,.9)}60%{opacity:1;transform:scale3d(1.03,1.03,1.03)}80%{transform:scale3d(.97,.97,.97)}to{opacity:1;transform:scaleX(1)}}
@keyframes bounceInUp{from{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}to{transform:none}}
@keyframes bounceInDown{from{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}to{transform:none}}
@keyframes slideInUp{from{transform:translate3d(0,100%,0);visibility:visible}to{transform:none}}
@keyframes slideInDown{from{transform:translate3d(0,-100%,0);visibility:visible}to{transform:none}}
@keyframes slideInLeft{from{transform:translate3d(-100%,0,0);visibility:visible}to{transform:none}}
@keyframes slideInRight{from{transform:translate3d(100%,0,0);visibility:visible}to{transform:none}}
@keyframes rotateIn{from{transform:rotate(-200deg);opacity:0}to{transform:none;opacity:1}}
@keyframes flipInX{from{transform:perspective(400px) rotateX(90deg);opacity:0}40%{transform:perspective(400px) rotateX(-20deg)}60%{transform:perspective(400px) rotateX(10deg);opacity:1}to{transform:perspective(400px)}}
@keyframes flipInY{from{transform:perspective(400px) rotateY(90deg);opacity:0}40%{transform:perspective(400px) rotateY(-20deg)}60%{transform:perspective(400px) rotateY(10deg);opacity:1}to{transform:perspective(400px)}}
@keyframes lightSpeedIn{from{transform:translate3d(100%,0,0) skewX(-30deg);opacity:0}60%{transform:skewX(20deg);opacity:1}80%{transform:skewX(-5deg)}to{transform:none}}
@keyframes pulse{50%{transform:scale3d(1.05,1.05,1.05)}}
@keyframes rubberBand{30%{transform:scale3d(1.25,.75,1)}40%{transform:scale3d(.75,1.25,1)}50%{transform:scale3d(1.15,.85,1)}65%{transform:scale3d(.95,1.05,1)}75%{transform:scale3d(1.05,.95,1)}}
@keyframes headShake{6.5%{transform:translateX(-6px) rotateY(-9deg)}18.5%{transform:translateX(5px) rotateY(7deg)}31.5%{transform:translateX(-3px) rotateY(-5deg)}43.5%{transform:translateX(2px) rotateY(3deg)}50%{transform:none}}
@keyframes tada{10%,20%{transform:scale3d(.9,.9,.9) rotate(-3deg)}30%,50%,70%,90%{transform:scale3d(1.1,1.1,1.1) rotate(3deg)}40%,60%,80%{transform:scale3d(1.1,1.1,1.1) rotate(-3deg)}}
@keyframes ace2d-gradient-shift{to{background-position:200% center}}
.fadeIn{animation-name:fadeIn}.fadeInDown{animation-name:fadeInDown}.fadeInUp{animation-name:fadeInUp}.fadeInLeft{animation-name:fadeInLeft}.fadeInRight{animation-name:fadeInRight}.zoomIn{animation-name:zoomIn}.zoomInDown{animation-name:zoomInDown}.zoomInUp{animation-name:zoomInUp}.bounceIn{animation-name:bounceIn}.bounceInUp{animation-name:bounceInUp}.bounceInDown{animation-name:bounceInDown}.slideInUp{animation-name:slideInUp}.slideInDown{animation-name:slideInDown}.slideInLeft{animation-name:slideInLeft}.slideInRight{animation-name:slideInRight}.rotateIn{animation-name:rotateIn}.flipInX{animation-name:flipInX;backface-visibility:visible}.flipInY{animation-name:flipInY;backface-visibility:visible}.lightSpeedIn{animation-name:lightSpeedIn;animation-timing-function:ease-out}.pulse{animation-name:pulse}.rubberBand{animation-name:rubberBand}.headShake{animation-name:headShake}.tada{animation-name:tada}
/* Hover animations */
[class*=elementor-animation-]{transition-duration:.3s;transition-property:transform}
.elementor-animation-grow:hover{transform:scale(1.1)}
.elementor-animation-shrink:hover{transform:scale(.9)}
.elementor-animation-pulse:hover{animation:pulse 1s linear infinite}
.elementor-animation-pulse-grow:hover{animation:pulse .3s linear infinite alternate}
.elementor-animation-push:hover{animation:pulse .3s linear 1}
.elementor-animation-pop:hover{transform:scale(1.15)}
.elementor-animation-bob:hover{transform:translateY(-8px)}
.elementor-animation-float:hover{transform:translateY(-8px)}
.elementor-animation-sink:hover{transform:translateY(8px)}
.elementor-animation-wobble-horizontal:hover{animation:headShake .8s ease-in-out}
.elementor-animation-buzz:hover{animation:headShake .15s linear infinite}
.elementor-animation-rotate:hover{transform:rotate(4deg)}
.elementor-animation-grow-rotate:hover{transform:scale(1.1) rotate(4deg)}
.elementor-animation-skew:hover{transform:skew(-10deg)}
@media (prefers-reduced-motion:reduce){.animated,[class*=elementor-animation-]:hover{animation:none!important;transition:none!important}.elementor-invisible{visibility:visible}}

/* ---------- Creative (Happy Addons style) ---------- */
.ha-dual-btn-wrapper{display:inline-flex;align-items:center}
.elementor-widget-ha-dual-button .elementor-widget-container{text-align:center}
.ha-dual-btn-item{position:relative;display:flex}
.ha-dual-btn{display:inline-flex;align-items:center;gap:8px;padding:15px 30px;color:#fff;line-height:1;transition:.3s;font-weight:600}
.ha-dual-btn--left{background:var(--e-global-color-primary,#562dd4);border-radius:30px 0 0 30px;padding-right:40px}
.ha-dual-btn--right{background:var(--e-global-color-secondary,#e3297d);border-radius:0 30px 30px 0;padding-left:40px}
.ha-dual-btn-connector{position:absolute;right:0;top:50%;transform:translate(50%,-50%);z-index:2;width:30px;height:30px;line-height:30px;border-radius:50%;background:#fff;color:#333;text-align:center;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 4px rgba(255,255,255,.3)}
.ha-gradient-heading{margin:0;font-size:40px;line-height:1.2;display:inline-block}
.elementor-widget-ha-gradient-heading .elementor-widget-container{line-height:1}
.ha-card{display:flex;flex-direction:column;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.06);height:100%}
.ha-card--left .ha-card{flex-direction:row}.ha-card--right .ha-card{flex-direction:row-reverse}
.ha-card--left .ha-card-figure,.ha-card--right .ha-card-figure{width:40%;flex-shrink:0}
.ha-card-figure{position:relative;margin:0}
.ha-card-figure img{display:block;width:100%}
.ha-badge{position:absolute;top:16px;left:16px;padding:4px 12px;border-radius:999px;font-size:12px;background:var(--e-global-color-accent,#e2498a);color:#fff}
.ha-card-body{padding:24px;display:flex;flex-direction:column;gap:12px;flex-grow:1}
.ha-card-title,.ha-infobox-title,.ha-member-name,.ha-steps-title{margin:0;font-size:22px}
.ha-card-text p,.ha-infobox-text p,.ha-member-bio p{margin:0}
.ha-btn{align-self:flex-start}
.ha-infobox{padding:30px;background:#fff;border-radius:8px;display:flex;flex-direction:column;align-items:inherit}
.elementor-widget-ha-infobox .ha-infobox{align-items:center}
.ha-infobox-figure{margin:0 auto 20px;display:inline-flex;font-size:40px;line-height:1}
.ha-infobox-figure img{width:80px}
.ha-infobox-body{display:flex;flex-direction:column;gap:12px}
.ha-infobox .ha-btn{align-self:center}
.ha-member{text-align:center;background:#fff;border-radius:8px;overflow:hidden}
.ha-member-figure{margin:0}
.ha-member-figure img{display:block;width:100%}
.ha-member-body{padding:20px}
.ha-member-position{opacity:.75;margin-top:6px}
.ha-member-bio{margin-top:12px}
.ha-member-links{display:flex;justify-content:center;gap:8px;margin-top:16px}
.ha-member-link{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#f2f2f6;color:#555;transition:.2s}
.ha-member-link:hover{background:var(--e-global-color-primary,#562dd4);color:#fff}
.ha-skill{position:relative;height:30px;background:#eee;border-radius:4px;overflow:hidden}
.ha-skill-level{height:100%;width:0;background:var(--e-global-color-primary,#562dd4);color:#fff;display:flex;align-items:center;transition:width 1.2s ease;border-radius:4px}
.ha-skills--inside .ha-skill-info{display:flex;justify-content:space-between;width:100%;padding:0 12px;white-space:nowrap}
.ha-skills--outside .ha-skill-info{display:flex;justify-content:space-between;margin-bottom:6px}
.ha-steps{position:relative;display:flex;flex-direction:column;align-items:center;gap:14px}
.ha-steps-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;width:2.2em;height:2.2em;border-radius:50%;background:var(--e-global-color-primary,#562dd4);color:#fff;font-size:40px}
.ha-steps-label{position:absolute;top:-6px;right:-14px;font-size:12px;line-height:1;padding:5px 9px;border-radius:999px;background:var(--e-global-color-accent,#e2498a);color:#fff;white-space:nowrap}
.ha-step-arrow{position:absolute;top:2.2em;right:-20%;color:#e6e6e6;font-size:28px;transform:translateY(-50%)}
.ha-step-description p{margin:0}
.ha-compare{position:relative;overflow:hidden;user-select:none;--ha-compare:50%;line-height:0}
.ha-compare img{display:block;width:100%;pointer-events:none}
.ha-compare-before{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--ha-compare)) 0 0)}
.ha-compare-before img{height:100%;object-fit:cover}
.ha-compare--vertical .ha-compare-before{clip-path:inset(0 0 calc(100% - var(--ha-compare)) 0)}
.ha-compare-handle{position:absolute;top:50%;left:var(--ha-compare);transform:translate(-50%,-50%);width:44px;height:44px;border-radius:50%;border:3px solid #fff;color:#fff;display:flex;align-items:center;justify-content:center;cursor:ew-resize;z-index:3;font-size:16px;line-height:1;background:rgba(0,0,0,.2)}
.ha-compare-handle:before,.ha-compare-handle:after{content:"";position:absolute;left:50%;width:3px;height:9999px;background:#fff;transform:translateX(-50%)}
.ha-compare-handle:before{bottom:100%}.ha-compare-handle:after{top:100%}
.ha-compare--vertical .ha-compare-handle{left:50%;top:var(--ha-compare);cursor:ns-resize}
.ha-compare--vertical .ha-compare-handle:before,.ha-compare--vertical .ha-compare-handle:after{width:9999px;height:3px;top:50%;left:auto;bottom:auto;transform:translateY(-50%)}
.ha-compare--vertical .ha-compare-handle:before{right:100%}.ha-compare--vertical .ha-compare-handle:after{left:100%}
.ha-compare-label{position:absolute;top:16px;padding:6px 12px;border-radius:4px;background:rgba(0,0,0,.5);color:#fff;font-size:13px;line-height:1.2;z-index:2}
.ha-compare-label--before{left:16px}.ha-compare-label--after{right:16px}
.ha-timeline{position:relative;padding:10px 0}
.ha-timeline:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:3px;background:#e6e6e6;transform:translateX(-50%)}
.ha-timeline-item{position:relative;width:50%;padding:0 40px 40px}
.ha-timeline--center .ha-timeline-item--odd{margin-right:50%;text-align:right}
.ha-timeline--center .ha-timeline-item--even{margin-left:50%}
.ha-timeline-icon{position:absolute;top:0;width:36px;height:36px;border-radius:50%;background:#fff;border:3px solid var(--e-global-color-primary,#562dd4);display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--e-global-color-primary,#562dd4);z-index:2}
.ha-timeline--center .ha-timeline-item--odd .ha-timeline-icon{right:-18px}
.ha-timeline--center .ha-timeline-item--even .ha-timeline-icon{left:-18px}
.ha-timeline-content{background:#f7f7f9;padding:20px;border-radius:8px;position:relative}
.ha-timeline-date{display:block;font-weight:700;margin-bottom:6px;color:var(--e-global-color-accent,#e2498a)}
.ha-timeline-title{margin:0 0 8px;font-size:20px}
.ha-timeline-figure{margin:0 0 12px}.ha-timeline-figure img{border-radius:6px}
.ha-timeline--left:before,.ha-timeline--right:before{left:18px}
.ha-timeline--left .ha-timeline-item,.ha-timeline--right .ha-timeline-item{width:100%;padding-left:60px;padding-right:0;text-align:left}
.ha-timeline--left .ha-timeline-icon,.ha-timeline--right .ha-timeline-icon{left:0}
@media (max-width:767px){.ha-timeline:before{left:18px}.ha-timeline .ha-timeline-item{width:100%;margin:0!important;padding-left:60px;padding-right:0;text-align:left!important}.ha-timeline .ha-timeline-icon{left:0!important;right:auto!important}}
.ace2d-reveal{opacity:0;transform:translateY(30px);transition:opacity .7s,transform .7s}
.ace2d-reveal.ace2d-revealed,.ace2d-editor-preview .ace2d-reveal{opacity:1;transform:none}
.ha-news-ticker{display:flex;align-items:stretch;overflow:hidden;background:#f5f5f5;border-radius:4px}
.ha-news-ticker-label{flex-shrink:0;display:flex;align-items:center;padding:10px 18px;background:var(--e-global-color-primary,#562dd4);color:#fff;font-weight:700;z-index:2}
.ha-news-ticker-track{overflow:hidden;flex-grow:1;display:flex;align-items:center}
.ha-news-ticker-list{display:flex;gap:40px;list-style:none;margin:0;padding:0 20px;white-space:nowrap;animation:ace2d-ticker linear infinite}
.ha-news-ticker--pause:hover .ha-news-ticker-list{animation-play-state:paused}
@keyframes ace2d-ticker{to{transform:translateX(-50%)}}
.ha-cs-nav{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:30px}
.ha-cs-toggle{position:relative;width:56px;height:30px;border-radius:999px;border:0;background:#ccc;cursor:pointer;padding:0;transition:.2s}
.ha-cs-toggle[aria-checked=true]{background:var(--e-global-color-accent,#e2498a)}
.ha-cs-knob{position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;transition:.2s}
.ha-cs-toggle[aria-checked=true] .ha-cs-knob{left:29px}
.ha-cs-label{opacity:.55;font-weight:600;cursor:pointer}
.ha-cs-label.is-active{opacity:1}
.ha-cs-pane[hidden]{display:none}
.ha-logo-grid{display:grid;grid-template-columns:repeat(3,1fr);--ha-logo-border:#e8e8e8}
.ha-logo-grid-item{display:flex;align-items:center;justify-content:center;height:150px;padding:20px;margin:0}
.ha-logo-grid-item img{max-height:100%;width:auto;object-fit:contain;transition:.3s}
.ha-logo-grid--box{gap:16px}.ha-logo-grid--box .ha-logo-grid-item{border:1px solid var(--ha-logo-border);border-radius:6px}
.ha-logo-grid--border .ha-logo-grid-item{border-right:1px solid var(--ha-logo-border);border-bottom:1px solid var(--ha-logo-border)}
.ha-logo-grid--tictactoe .ha-logo-grid-item{box-shadow:1px 1px 0 var(--ha-logo-border)}
.ha-fun-factor{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}
.ha-fun-factor__media{font-size:40px;color:var(--e-global-color-primary,#562dd4);line-height:1}
.ha-fun-factor__content{display:flex;flex-direction:column;gap:6px}
.ha-fun-factor__content-number{font-size:42px;font-weight:700;line-height:1;justify-content:center}
.ha-number-body{display:inline-flex;align-items:center;justify-content:center;width:80px;height:80px;border-radius:50%;background:var(--e-global-color-primary,#562dd4);color:#fff;font-size:32px;font-weight:700}
.elementor-widget-ha-number .elementor-widget-container{text-align:center}
.ha-business-hour{background:#fff;padding:24px;border-radius:8px}
.ha-business-hour-title{margin:0 0 14px;font-size:20px}
.ha-business-hour-list{list-style:none;margin:0;padding:0}
.ha-business-hour-item{display:flex;justify-content:space-between;gap:16px;padding:10px 0}
.ha-business-hour-item:not(:last-child){border-bottom:1px solid #e6e6e6}
.ha-table-wrap--scroll{overflow-x:auto}
.ha-table{width:100%;border-collapse:collapse}
.ha-table th,.ha-table td{padding:12px 16px;border:1px solid #e6e6e6;text-align:left}
.ha-table th{background:var(--e-global-color-primary,#562dd4);color:#fff}
.ace2d-marquee{overflow:hidden;width:100%}
.ace2d-marquee-track{display:flex;width:max-content}
.ace2d-marquee-group{display:flex;align-items:center;gap:40px;padding-right:40px;flex-shrink:0;animation:ace2d-marquee var(--ace2d-marquee-duration,20s) linear infinite}
.ace2d-marquee--right .ace2d-marquee-group{animation-direction:reverse}
.ace2d-marquee--pause:hover .ace2d-marquee-group{animation-play-state:paused}
.ace2d-marquee-item{font-size:32px;font-weight:700;white-space:nowrap}
.ace2d-marquee-item img{height:60px;width:auto;display:block}
.ace2d-marquee-sep{opacity:.5}
@keyframes ace2d-marquee{to{transform:translateX(-100%)}}
.ace2d-ihe{position:relative;display:block;overflow:hidden;height:350px;margin:0;color:#fff}
.ace2d-ihe img{width:100%;height:100%;object-fit:cover;transition:transform .5s,filter .5s}
.ace2d-ihe-caption{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:24px;background:rgba(20,20,40,.65);transition:.4s}
.ace2d-ihe-title{margin:0 0 6px;color:inherit;font-size:22px}
.ace2d-ihe-desc{margin:0;opacity:.9}
.ace2d-ihe--slide-up .ace2d-ihe-caption{transform:translateY(100%)}
.ace2d-ihe--slide-up:hover .ace2d-ihe-caption{transform:none}
.ace2d-ihe--fade .ace2d-ihe-caption{opacity:0}
.ace2d-ihe--fade:hover .ace2d-ihe-caption{opacity:1}
.ace2d-ihe--zoom .ace2d-ihe-caption{opacity:0}
.ace2d-ihe--zoom:hover img{transform:scale(1.15)}
.ace2d-ihe--zoom:hover .ace2d-ihe-caption{opacity:1}
.ace2d-ihe--blur .ace2d-ihe-caption{opacity:0}
.ace2d-ihe--blur:hover img{filter:blur(4px)}
.ace2d-ihe--blur:hover .ace2d-ihe-caption{opacity:1}
.ace2d-ihe--grayscale img{filter:grayscale(1)}
.ace2d-ihe--grayscale:hover img{filter:none}
.ace2d-ihe--grayscale .ace2d-ihe-caption{background:linear-gradient(transparent,rgba(0,0,0,.7))!important}
.ace2d-ihe--reveal .ace2d-ihe-caption{clip-path:inset(0 50% 0 50%)}
.ace2d-ihe--reveal:hover .ace2d-ihe-caption{clip-path:inset(0 0 0 0)}
.ha-pricing-table{position:relative;padding:40px 30px;background:#fff;border-radius:10px;box-shadow:0 15px 40px rgba(0,0,0,.06);text-align:center;overflow:hidden}
.ha-pricing-table-badge{position:absolute;top:18px;right:-34px;transform:rotate(45deg);padding:6px 40px;background:var(--e-global-color-accent,#e2498a);color:#fff;font-size:11px;font-weight:700;text-transform:uppercase}
.ha-pricing-table-title{margin:0 0 20px;font-size:22px}
.ha-pricing-table-price{margin-bottom:24px;color:var(--e-global-color-primary,#562dd4)}
.ha-pricing-table-price-tag{font-size:56px;font-weight:800;line-height:1}
.ha-pricing-table-currency{font-size:.45em;vertical-align:super;margin-right:2px}
.ha-pricing-table-period{font-size:14px;opacity:.7;margin-top:6px;color:#666}
.ha-pricing-table-features-title{font-size:16px;margin:0 0 12px}
.ha-pricing-table-features-list{list-style:none;margin:0 0 28px;padding:0}
.ha-pricing-table-features-list li{padding:8px 0}
.ha-pricing-table-feature--yes i{color:#4caf50}
.ha-pricing-table-feature--no{opacity:.55;text-decoration:line-through}
.ha-pricing-table-feature--no i{color:#e53935}
.ace2d-stack{display:inline-flex;align-items:center}
.ace2d-stack-item{width:56px;height:56px;border-radius:50%;overflow:hidden;border:3px solid #fff;display:inline-flex;align-items:center;justify-content:center;background:#eee;position:relative;transition:transform .2s}
.ace2d-stack-item:not(:first-child){margin-left:-16px}
.ace2d-stack-item:hover{transform:translateY(-4px);z-index:2}
.ace2d-stack-item img{width:100%;height:100%;object-fit:cover}
.ace2d-stack-extra{background:var(--e-global-color-primary,#562dd4);color:#fff;font-weight:700;font-size:14px}
.ace2d-stack-item[data-tooltip]:hover:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);background:#222;color:#fff;font-size:12px;padding:4px 8px;border-radius:4px;white-space:nowrap}
.ace2d-stack-wrap{display:block}
.ace2d-cbtn{--ace2d-cbtn-bg:var(--e-global-color-primary,#562dd4);--ace2d-cbtn-hover:var(--e-global-color-accent,#e2498a);position:relative;display:inline-flex;align-items:center;gap:10px;padding:16px 32px;border-radius:6px;color:#fff;background:var(--ace2d-cbtn-bg);overflow:hidden;font-weight:600;transition:color .3s,box-shadow .3s,transform .3s;isolation:isolate}
.ace2d-cbtn:before{content:"";position:absolute;inset:0;z-index:-1;transition:transform .4s ease}
.ace2d-cbtn--fill-left:before{background:var(--ace2d-cbtn-hover);transform:scaleX(0);transform-origin:left}
.ace2d-cbtn--fill-left:hover:before{transform:scaleX(1)}
.ace2d-cbtn--fill-up:before{background:var(--ace2d-cbtn-hover);transform:scaleY(0);transform-origin:bottom}
.ace2d-cbtn--fill-up:hover:before{transform:scaleY(1)}
.ace2d-cbtn--shine:before{background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.45) 50%,transparent 70%);transform:translateX(-120%)}
.ace2d-cbtn--shine:hover:before{transform:translateX(120%)}
.ace2d-cbtn--outline-pop{background:transparent;color:var(--ace2d-cbtn-bg);box-shadow:inset 0 0 0 2px var(--ace2d-cbtn-bg)}
.ace2d-cbtn--outline-pop:hover{background:var(--ace2d-cbtn-bg);color:#fff;transform:translateY(-3px);box-shadow:0 10px 20px rgba(0,0,0,.15)}
.ace2d-cbtn--arrow-slide .ace2d-cbtn-icon{transition:transform .3s}
.ace2d-cbtn--arrow-slide:hover .ace2d-cbtn-icon{transform:translateX(6px)}
.ace2d-cbtn--glow:hover{box-shadow:0 0 0 4px rgba(255,255,255,.4),0 0 24px var(--ace2d-cbtn-bg)}
.ace2d-cbtn:hover{color:#fff}
.ace2d-adv-accordion .elementor-accordion-item{border:0;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.05)}
.ace2d-adv-accordion .elementor-accordion-item+.elementor-accordion-item{border:0}
.ace2d-pg{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.elementor-grid-1 .ace2d-pg{grid-template-columns:1fr}.elementor-grid-2 .ace2d-pg{grid-template-columns:repeat(2,1fr)}.elementor-grid-4 .ace2d-pg{grid-template-columns:repeat(4,1fr)}
@media (max-width:1024px){.elementor-grid-tablet-2 .ace2d-pg{grid-template-columns:repeat(2,1fr)}.elementor-grid-tablet-1 .ace2d-pg{grid-template-columns:1fr}}
@media (max-width:767px){.elementor-grid-mobile-1 .ace2d-pg{grid-template-columns:1fr}}
.ace2d-pg-card{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 8px 24px rgba(0,0,0,.06);display:flex;flex-direction:column}
.ace2d-pg-thumb{display:block;aspect-ratio:16/10;overflow:hidden}
.ace2d-pg-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.ace2d-pg-card:hover .ace2d-pg-thumb img{transform:scale(1.05)}
.ace2d-pg-body{padding:20px;display:flex;flex-direction:column;gap:10px}
.ace2d-pg-badge{align-self:flex-start;font-size:12px;padding:3px 10px;border-radius:999px;background:var(--e-global-color-accent,#e2498a);color:#fff}
.ace2d-pg-title{margin:0;font-size:20px}.ace2d-pg-title a{color:inherit}
.ace2d-pg-excerpt{margin:0;opacity:.8}
.ace2d-pg-meta{display:flex;align-items:center;gap:10px;font-size:13px;opacity:.75}
.ace2d-pg-meta img{border-radius:50%}
.ace2d-scroll-img{display:block;height:400px;overflow:hidden;position:relative;border-radius:6px}
.ace2d-scroll-img img{width:100%;height:auto;display:block;transform:translateY(0);transition:transform var(--ace2d-scroll-duration,3s) ease-in-out}
.ace2d-scroll-img--down:hover img{transform:translateY(calc(-100% + var(--ace2d-scroll-frame,400px)))}
.ace2d-scroll-img--up img{position:absolute;bottom:0}
.ace2d-scroll-img--up:hover img{transform:translateY(calc(100% - var(--ace2d-scroll-frame,400px)))}

/* Unsupported widgets / empty placeholders (editor only). */
.ace2d-unknown,.ace2d-empty-placeholder{padding:14px;border:1px dashed #c3c4c7;color:#646970;font-size:13px;text-align:center;background:#f6f7f7}
