.elementor-kit-9{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#0B1420;--e-global-color-9ac2aeb:#0B1420;--e-global-color-3a16d56:#C0A073;--e-global-color-7aadd75:#FFFFFF;}.elementor-kit-9 e-page-transition{background-color:#FFBC7D;}.elementor-kit-9 button,.elementor-kit-9 input[type="button"],.elementor-kit-9 input[type="submit"],.elementor-kit-9 .elementor-button{border-radius:12px 12px 12px 12px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ms-selection */
::selection{background:#C0A073;color:#0B1420;text-shadow:none}
::-moz-selection{background:#C0A073;color:#0B1420;text-shadow:none}

/* ms-selection-v2: override the theme's default accent in any load order */
html body ::selection,html body *::selection{background:#C0A073!important;color:#0B1420!important;text-shadow:none!important}
html body ::-moz-selection,html body *::-moz-selection{background:#C0A073!important;color:#0B1420!important;text-shadow:none!important}

/* ms-article-slider: article image must not stretch/zoom while the page is still loading */
.post .item .img-post img{width:100%;height:100%;object-fit:cover}
.tmt-posts-slid.swiper:not(.swiper-initialized) .swiper-wrapper{display:flex;flex-wrap:nowrap}
.tmt-posts-slid.swiper:not(.swiper-initialized) .swiper-slide{flex:0 0 33.3333%;width:33.3333%}
@media (max-width:1023px){.tmt-posts-slid.swiper:not(.swiper-initialized) .swiper-slide{flex-basis:50%;width:50%}}
@media (max-width:767px){.tmt-posts-slid.swiper:not(.swiper-initialized) .swiper-slide{flex-basis:100%;width:100%}}

/* ms-hero-slider: before Swiper starts, show only the first slide at full width */
.tmt-slider.tmt-slider-yes:not(.swiper-initialized) .swiper-wrapper{display:flex;flex-wrap:nowrap}
.tmt-slider.tmt-slider-yes:not(.swiper-initialized) .swiper-slide{flex:0 0 100%;width:100%}
.tmt-slider.tmt-slider-yes:not(.swiper-initialized) .swiper-slide:not(:first-child){display:none}

/* ms-micro: small, light micro-interactions (transform/opacity only, disabled for reduced motion) */
.ms-live-dot{position:relative;display:inline-block;width:9px;height:9px;border-radius:50%;background:#E5484D;margin-inline-end:8px;vertical-align:middle}
:focus-visible{outline:2px solid #C0A073;outline-offset:3px}
@keyframes msPing{0%{transform:scale(1);opacity:.7}80%,100%{transform:scale(3.2);opacity:0}}
@keyframes msBlink{0%,100%{opacity:1}50%{opacity:.55}}
@keyframes msRing{0%{transform:scale(.92);opacity:.8}100%{transform:scale(1.6);opacity:0}}
@keyframes msWaPulse{0%,55%{transform:scale(1);opacity:0}62%{opacity:.45}100%{transform:scale(1.75);opacity:0}}
@media (prefers-reduced-motion:no-preference){
 html{scroll-behavior:smooth}
 .ms-live-dot{animation:msBlink 1.8s ease-in-out infinite}
 .ms-live-dot::after{content:'';position:absolute;inset:0;border-radius:50%;background:#E5484D;animation:msPing 1.8s cubic-bezier(0,0,.2,1) infinite}
 .ms-live .elementor-widget-icon .elementor-icon{position:relative}
 .ms-live .elementor-widget-icon .elementor-icon::after{content:'';position:absolute;inset:-6px;border-radius:50%;border:1px solid rgba(192,160,115,.55);opacity:0;animation:msRing 2.8s ease-out infinite}
 .whatsapp-pupup::before{content:'';position:absolute;inset:0;border-radius:inherit;background:inherit;z-index:-1;opacity:0;animation:msWaPulse 4s ease-out infinite;pointer-events:none}
 .elementor-widget-button .elementor-button{transition:transform .25s ease,background-color .25s ease,color .25s ease,border-color .25s ease}
 .elementor-widget-button .elementor-button:hover{transform:translateY(-2px)}
 .elementor-widget-button .elementor-button .elementor-button-icon{transition:transform .25s ease}
 .elementor-widget-button .elementor-button:hover .elementor-button-icon{transform:translateX(-4px)}
 .post .item .img-post img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}
 .post .item:hover .img-post img{transform:scale(1.06)}
}

/* ms-responsive: mobile/tablet usability layer */
html{-webkit-text-size-adjust:100%}
body{overflow-x:hidden}
@supports (overflow:clip){body{overflow-x:clip}}
img,video,iframe,svg{max-width:100%}
a,button,[role=button]{-webkit-tap-highlight-color:rgba(192,160,115,.25)}
.elementor-sticky--effects{box-shadow:0 8px 24px rgba(11,20,32,.10)}
@media (max-width:1024px){
 .elementor-widget-button .elementor-button{min-height:46px}
 .bars{display:inline-flex!important;align-items:center;justify-content:center;min-width:46px;min-height:46px;font-size:22px}
 .drop-down-btn{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
 .responsive-fix .main-menu a{min-height:48px;display:flex;align-items:center}
 .ms-hdr>.elementor-container{flex-wrap:nowrap}
 .ms-hdr .elementor-column{min-width:0}
}
@media (min-width:768px) and (max-width:1024px){
 .tmt-slider.tmt-slider-yes,.tmt-slider .tmt-slider-item{height:auto!important}
 .tmt-slider .tmt-slider-item{aspect-ratio:2/1}
 .tmt-slider .tmt-slider-item>img{height:100%!important;object-fit:cover}
}
@media (max-width:767px){
 input,select,textarea{font-size:16px!important}
 body{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}
 .ms-mbar{position:fixed;left:0;right:0;bottom:0;z-index:997;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px))!important}
 .whatsapp-pupup{bottom:84px!important}
 .whatsapp-chat{bottom:142px!important;max-width:calc(100vw - 24px)}
 .elementor-widget-themento_slides{background:#0B1420;padding-bottom:34px}
 .tmt-slider.tmt-slider-yes,.tmt-slider .tmt-slider-item{height:auto!important}
 .tmt-slider .tmt-slider-item{display:flex!important;flex-direction:column}
 .tmt-slider .tmt-slider-item>img{height:auto!important;aspect-ratio:2/1;object-fit:cover}
 .tmt-slider .tmt-slider-item .content{position:static!important;height:auto!important;width:100%;background:#0B1420!important;padding:18px 18px 22px!important;align-items:stretch;text-align:right}
 .tmt-slider .tmt-slider-item .content>div{width:100%!important;margin:0!important}
 .tmt-slider .slide-heading{font-size:18px!important;line-height:1.55;font-weight:800}
 .tmt-slider .slide-description{font-size:14px!important;line-height:1.9;color:#C7D0DF!important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
 .tmt-slider .slide-button a{display:block;padding:12px 16px;background:#C0A073;border-color:#C0A073;color:#0B1420;border-radius:12px;font-weight:800;text-align:center}
}

/* ms-v3 START */
/* rounded buttons: same 12px as the visit-request button */
.elementor-button,.elementor-widget-button .elementor-button,.elementor-button-link,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce .single_add_to_cart_button,.wp-block-button__link,.comment-form input[type=submit],input.submit,.submit-btn_ph,.mf-btn-wraper button,.metform-btn,button.mf-btn,.wpcf7-submit,.post-password-form input[type=submit],.tmt-slider .slide-button a,.tmt-btn{border-radius:12px!important}

/* no flash of coloured alt text while article images load */
.post .item .img-post{background:#EFEBE4}
.post .item .img-post img{color:transparent}

/* icon+heading cards: transform/opacity only, hover-only motion */
.e-con.e-child:has(>.elementor-widget-icon):has(>.elementor-widget-heading){position:relative;overflow:hidden;transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s ease,border-color .3s ease;
 &::before{content:'';position:absolute;top:0;inset-inline:0;height:3px;background:linear-gradient(90deg,#C0A073,#E4CFA8);transform:scaleX(0);transform-origin:right center;transition:transform .45s cubic-bezier(.2,.7,.2,1);pointer-events:none}
 .elementor-icon{position:relative;transition:transform .4s cubic-bezier(.34,1.56,.64,1),color .3s ease}
 .elementor-icon svg{transition:fill .3s ease}
 .elementor-heading-title{transition:color .3s ease}
 &:active{transform:translateY(-2px) scale(.985)}
 @media (hover:hover){
  &:hover{transform:translateY(-8px);box-shadow:0 22px 48px rgba(11,20,32,.14);border-color:rgba(192,160,115,.65)!important;
   &::before{transform:scaleX(1)}
   .elementor-icon{transform:translateY(-4px) rotate(-8deg) scale(1.14);color:#C0A073}
   .elementor-icon svg{fill:#C0A073}
   .elementor-icon::after{content:'';position:absolute;inset:-8px;border-radius:50%;border:1.5px solid rgba(192,160,115,.55);animation:msRing 1.2s ease-out;pointer-events:none}
   .elementor-heading-title{color:#C0A073}
  }
 }
}
.elementor-widget-tmt-advanced-icon-box .tmt-advanced-icon-box-icon{transition:transform .4s cubic-bezier(.34,1.56,.64,1)}
@media (hover:hover){.elementor-widget-tmt-advanced-icon-box:hover .tmt-advanced-icon-box-icon{transform:translateY(-3px) scale(1.08) rotate(-6deg)}}

/* footer */
.ms-footer{position:relative;overflow:hidden;isolation:isolate;padding-bottom:16px!important}
.ms-footer::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;z-index:2;background:linear-gradient(90deg,transparent,#C0A073 20%,#E4CFA8 50%,#C0A073 80%,transparent)}
.ms-footer::after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(620px 320px at 12% 0%,rgba(192,160,115,.16),transparent 70%),radial-gradient(540px 340px at 92% 100%,rgba(192,160,115,.10),transparent 70%)}
.ms-footer .elementor-widget-tmt-scroll-to-top,.ms-footer .elementor-widget-tmt-whatsapp{position:absolute;width:0;height:0;margin:0}
.ms-footer .e-con-inner>.e-child:first-child{transition:box-shadow .4s ease}
@media (hover:hover){.ms-footer .e-con-inner>.e-child:first-child:hover{box-shadow:0 24px 56px rgba(0,0,0,.38),0 0 0 1px rgba(192,160,115,.45)}}
.ms-footer .ms-ft-title .elementor-heading-title{position:relative;padding-bottom:14px;margin-bottom:4px}
.ms-footer .ms-ft-title .elementor-heading-title::after{content:'';position:absolute;bottom:0;inset-inline-start:0;width:38px;height:3px;border-radius:3px;background:linear-gradient(90deg,#C0A073,#E4CFA8);transition:width .35s ease}
.ms-footer .e-child:hover>.ms-ft-title .elementor-heading-title::after{width:68px}
.ms-footer .elementor-nav-menu--main .elementor-item{display:flex!important;align-items:center;gap:10px;color:#B7C3D9!important;font-size:14px;padding:9px 0!important;transition:color .25s ease,transform .25s ease}
.ms-footer .elementor-nav-menu--main li+li{border-top:1px dashed rgba(255,255,255,.07)}
.ms-footer .elementor-nav-menu--main .elementor-item::before{content:'';flex:none;width:6px;height:6px;border-radius:2px;background:#C0A073;opacity:.55;transform:rotate(45deg);transition:transform .25s ease,opacity .25s ease}
.ms-footer .elementor-nav-menu--main .elementor-item:hover,.ms-footer .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#C0A073!important}
@media (hover:hover){.ms-footer .elementor-nav-menu--main .elementor-item:hover{transform:translateX(-6px)}.ms-footer .elementor-nav-menu--main .elementor-item:hover::before{opacity:1;transform:rotate(45deg) scale(1.4)}}
.ms-footer .elementor-widget-tmt-post-list img{border-radius:12px;object-fit:cover;transition:transform .5s ease}
.ms-footer .elementor-widget-tmt-post-list .list-title a{color:#E6ECF7;font-size:14px;line-height:1.9;transition:color .25s ease}
.ms-footer .elementor-widget-tmt-post-list .list-title a:hover{color:#C0A073}
.ms-footer .elementor-widget-tmt-post-list .meta-data,.ms-footer .elementor-widget-tmt-post-list .meta-data a{color:#8E9BB3;font-size:12px}
@media (hover:hover){.ms-footer .elementor-widget-tmt-post-list a:hover img{transform:scale(1.08)}}
.ms-footer .tmt-advanced-icon-box{align-items:center}
.ms-footer .tmt-advanced-icon-box-icon .tmt-icon-wrapper{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;background:rgba(192,160,115,.12);border:1px solid rgba(192,160,115,.35);color:#C0A073;transition:background-color .3s ease,color .3s ease,transform .3s ease}
.ms-footer .tmt-advanced-icon-box-icon .tmt-icon-wrapper i{color:inherit;font-size:15px}
.ms-footer .tmt-advanced-icon-box-title,.ms-footer .tmt-advanced-icon-box-title span{color:#E6ECF7;font-size:14px;font-weight:500;transition:color .25s ease}
@media (hover:hover){.ms-footer .tmt-advanced-icon-box:hover .tmt-icon-wrapper{background:#C0A073;color:#0B1420;transform:translateY(-2px)}.ms-footer .tmt-advanced-icon-box:hover .tmt-advanced-icon-box-title span{color:#C0A073}}
.ms-footer .ms-ft-news input,.ms-footer .ms-ft-news .mf-input{background:rgba(255,255,255,.05)!important;border:1px solid rgba(255,255,255,.16)!important;border-radius:12px!important;color:#fff!important;min-height:48px;transition:border-color .25s ease,box-shadow .25s ease}
.ms-footer .ms-ft-news input::placeholder{color:#8E9BB3}
.ms-footer .ms-ft-news input:focus{border-color:#C0A073!important;box-shadow:0 0 0 3px rgba(192,160,115,.22)!important;outline:none}
.ms-footer .ms-ft-news .mf-btn-wraper button,.ms-footer .ms-ft-news .metform-btn{background:#C0A073!important;color:#0B1420!important;border:0!important;font-weight:800;min-height:48px;transition:transform .25s ease,box-shadow .25s ease}
@media (hover:hover){.ms-footer .ms-ft-news .mf-btn-wraper button:hover,.ms-footer .ms-ft-news .metform-btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(192,160,115,.35)}}
.ms-footer .btn-top a{border-radius:12px!important;transition:transform .25s ease,box-shadow .25s ease}
@media (hover:hover){.ms-footer .btn-top a:hover{transform:translateY(-4px);box-shadow:0 10px 24px rgba(0,0,0,.35)}}
.ms-footer .elementor-widget-text-editor p{margin:0}

/* gold divider: thin line with a single soft glint (transform only) */
.ms-footer .elementor-element-97c9f29{position:relative;overflow:hidden;padding:0!important;height:2px;min-height:2px!important;background:linear-gradient(90deg,transparent,rgba(192,160,115,.6),transparent)!important}
.ms-footer .elementor-element-97c9f29::after{content:'';position:absolute;top:0;bottom:0;left:0;width:26%;background:linear-gradient(90deg,transparent,#F2E3C2,transparent);transform:translate3d(-130%,0,0);animation:msGlint 6s ease-in-out infinite}
@keyframes msGlint{0%,40%{transform:translate3d(-130%,0,0)}100%{transform:translate3d(480%,0,0)}}

/* forms: required mark + validation in theme gold instead of red */
.mf-input-required-indicator,.mf-error-message{color:#C0A073!important}
.mf-error-message{font-weight:600}
.mf-input-wrapper .mf-input[aria-invalid=true],.mf-input-wrapper .mf-input.mf-invalid{border-color:#C0A073!important}





/* materials: 3D card flip of the stone itself (nothing added): item stays still so there is no hover flicker; image + title flip around the vertical axis and the content is un-mirrored at the edge-on midpoint, so the back shows the same stone */
.ms-materials>.e-child{perspective:900px}
.ms-materials>.e-child>.elementor-widget{transition:transform .7s cubic-bezier(.45,0,.55,1)}
.ms-materials>.e-child>.elementor-widget>.elementor-widget-container{transition:transform 0s linear .35s}
.ms-materials>.e-child:hover>.elementor-widget{transform:rotateY(180deg)}.ms-materials>.e-child:hover>.elementor-widget>.elementor-widget-container{transform:scaleX(-1)}
/* ms-search: fix clipped last letter of the select text + attention micro-interactions (transform/opacity only) */
.ms-market .ms-search.ms-search .ms-field.ms-field select{padding:13px 4px 13px 36px!important;line-height:1.9!important;text-overflow:clip!important;letter-spacing:0!important;text-align:right}
.ms-search{position:relative;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease,border-color .35s ease}
.ms-search:focus-within{border-color:#C0A073!important;box-shadow:0 18px 40px -16px rgba(192,160,115,.55)!important}
.ms-search .ms-field{border-radius:18px;transition:background-color .25s ease}
.ms-search .ms-field svg{transition:transform .35s cubic-bezier(.34,1.56,.64,1)}
.ms-search .ms-field:focus-within{background:rgba(192,160,115,.09)}
.ms-search .ms-field:focus-within svg{transform:scale(1.18) rotate(-8deg)}
.ms-search .ms-field::after{transition:transform .25s ease,border-color .25s ease}
.ms-search .ms-field:focus-within::after{transform:rotate(-135deg)!important;margin-top:-2px!important;border-color:#C0A073!important}
.ms-search .ms-btn{position:relative;overflow:hidden}
.ms-search .ms-btn svg{transition:transform .35s cubic-bezier(.34,1.56,.64,1)}
.ms-search .ms-btn:active{transform:scale(.97)!important}
@media (hover:hover){
 .ms-search:hover{transform:translateY(-2px);border-color:#C0A073!important;box-shadow:0 18px 40px -16px rgba(192,160,115,.55)!important}
 .ms-search .ms-field:hover{background:rgba(192,160,115,.09)}
 .ms-search .ms-field:hover svg{transform:scale(1.18) rotate(-8deg)}
 .ms-search .ms-btn:hover svg{transform:scale(1.2) rotate(-12deg)}
}
.ms-search::before{content:'';position:absolute;inset:-1px;border-radius:inherit;border:1.5px solid #C0A073;opacity:0;pointer-events:none;animation:msBarPulse 2.6s ease-out 1.5s 3}
 .ms-search .ms-btn::after{content:'';position:absolute;top:0;bottom:0;left:0;width:40%;background:linear-gradient(100deg,transparent,rgba(228,207,168,.5),transparent);transform:translate3d(-150%,0,0) skewX(-18deg);animation:msShine 4.5s ease-in-out 2s infinite;pointer-events:none}
@keyframes msBarPulse{0%{opacity:.6;transform:scale(1)}100%{opacity:0;transform:scale(1.05,1.3)}}
@keyframes msShine{0%,60%{transform:translate3d(-150%,0,0) skewX(-18deg)}100%{transform:translate3d(430%,0,0) skewX(-18deg)}}

/* ms-micro2: extra micro-interactions. hover-triggered, transform/opacity only; only 3 tiny looping animations (2 banner icons + search pulse) */
@keyframes msFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes msWiggle{0%{transform:rotate(0)}25%{transform:rotate(-14deg) scale(1.15)}60%{transform:rotate(8deg) scale(1.1)}100%{transform:rotate(0) scale(1)}}
@keyframes msBarPulse2{0%{opacity:.6;transform:scale(1)}12%,100%{opacity:0;transform:scale(1.05,1.3)}}

/* 4 feature boxes under the header: icon glyph wiggles, press feedback */
.ms-features .e-child .e-child:hover .elementor-icon i{animation:msWiggle .6s ease}
.ms-features .e-child .e-child:active{transform:translateY(-3px) scale(.99)}

/* factory-visit + consultation banner cards: light sweep, floating icon, arrow nudge */
.ms-market .e-child .e-child:has(>.elementor-widget-icon):has(>.elementor-widget-button){
 &::after{content:'';position:absolute;top:0;bottom:0;left:0;width:42%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.6),transparent);transform:translate3d(-140%,0,0) skewX(-18deg);pointer-events:none}
 .elementor-widget-icon .elementor-icon{animation:msFloat 5s ease-in-out infinite}
 .elementor-button-icon{transition:transform .3s ease}
 &:hover{
  &::after{transform:translate3d(340%,0,0) skewX(-18deg);transition:transform .9s ease}
  .elementor-widget-icon .elementor-icon{animation:none;transform:scale(1.12) rotate(-8deg)}
  .elementor-icon i{animation:msWiggle .6s ease}
  .elementor-button-icon{transform:translateX(-5px)}
 }
}

/* smart search: attention pulse every ~8s instead of 3 times only */
.ms-search::before{animation:msBarPulse2 8s ease-out 2s infinite}

/* site-wide polish */
body .elementor-widget-button .elementor-button:active{transform:translateY(0) scale(.97)}
input:not([type=checkbox]):not([type=radio]):not([type=submit]):focus,textarea:focus,select:focus{border-color:#C0A073;box-shadow:0 0 0 3px rgba(192,160,115,.2);outline:none}
.post .item .img-post{overflow:hidden}
.post .item .img-post img{transition:transform .6s cubic-bezier(.2,.8,.2,1)}
@media (hover:hover){.post .item:hover .img-post img{transform:scale(1.06)}}
/* ms-v3 END */

/* ms-viz: AI visualizer section (before/after sweep, steps, glow) */
.ms-viz-sec{position:relative;overflow:hidden}
.ms-viz-sec::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 12% 8%,rgba(192,160,115,.16),transparent 40%),radial-gradient(circle at 92% 96%,rgba(192,160,115,.08),transparent 42%);pointer-events:none}
.ms-viz-sec>.e-con-inner{position:relative}
.ms-viz{position:relative;overflow:hidden}
.ms-viz .ms-viz-img{position:absolute!important;inset:0;width:100%!important;height:100%;margin:0!important}
.ms-viz .ms-viz-img .elementor-widget-container{height:100%}
.ms-viz .ms-viz-img img{width:100%;height:100%;object-fit:cover;display:block}
.ms-viz-after{clip-path:inset(0 0 0 50%)}
.ms-viz-handle{position:absolute!important;top:0;bottom:0;left:50%;width:2px!important;min-width:2px;margin:0 0 0 -1px!important;padding:0!important;background:linear-gradient(180deg,rgba(192,160,115,0),#C0A073 16%,#C0A073 84%,rgba(192,160,115,0));z-index:3;pointer-events:none}
.ms-viz-handle .elementor-widget-icon{position:absolute!important;top:50%;left:50%;transform:translate(-50%,-50%);width:auto!important;box-shadow:0 8px 24px rgba(0,0,0,.35);border-radius:50%}
.ms-viz-tag{position:absolute!important;top:16px;z-index:4;width:auto!important}
.ms-viz-tag-before{right:16px}
.ms-viz-tag-after{left:16px}
.ms-viz-step{transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .35s ease,background-color .35s ease}
.ms-viz-step:hover{transform:translateX(-6px);border-color:rgba(192,160,115,.5)!important;background-color:rgba(192,160,115,.07)!important}
@keyframes msSweepClip{0%,6%{clip-path:inset(0 0 0 100%)}44%,58%{clip-path:inset(0 0 0 0%)}96%,100%{clip-path:inset(0 0 0 100%)}}
@keyframes msSweepHandle{0%,6%{left:100%}44%,58%{left:0%}96%,100%{left:100%}}
@media (prefers-reduced-motion:no-preference){
 .ms-viz-after{animation:msSweepClip 10s ease-in-out infinite}
 .ms-viz-handle{animation:msSweepHandle 10s ease-in-out infinite}
}

/* ms-viz-fix: right-aligned steps (RTL) */
.ms-viz-step .elementor-icon-box-content{text-align:right}
.ms-viz-step .elementor-icon-box-title,.ms-viz-step .elementor-icon-box-description{text-align:right}

/* ms-editor-guard: neutralise front-end-only rules inside the Elementor editor preview */
html:has(body.elementor-editor-active){scroll-behavior:auto!important}
body.elementor-editor-active{overflow-x:visible!important;padding-bottom:0!important}
.elementor-editor-active .ms-mbar{position:static!important}
.elementor-editor-active .ms-viz-after,.elementor-editor-active .ms-viz-handle,.elementor-editor-active .ms-live-dot,.elementor-editor-active .ms-live-dot::after{animation:none!important}

/* ms-mobile-header: hamburger first (right side in RTL) on mobile only */
@media (max-width:767px){.ms-hdr .ms-hc-nav{order:-1}}

/* ms-fluid-desktop START: on desktops wider than 1440px scale the whole layout proportionally so it looks the same as on a ~1366px screen (content never shrinks into a narrow strip). Not applied inside the Elementor editor. */
@media (min-width:1440px){body:not(.elementor-editor-active){zoom:1.054}}
@media (min-width:1520px){body:not(.elementor-editor-active){zoom:1.113}}
@media (min-width:1600px){body:not(.elementor-editor-active){zoom:1.171}}
@media (min-width:1680px){body:not(.elementor-editor-active){zoom:1.23}}
@media (min-width:1760px){body:not(.elementor-editor-active){zoom:1.288}}
@media (min-width:1840px){body:not(.elementor-editor-active){zoom:1.347}}
@media (min-width:1920px){body:not(.elementor-editor-active){zoom:1.406}}
@media (min-width:2000px){body:not(.elementor-editor-active){zoom:1.464}}
@media (min-width:2080px){body:not(.elementor-editor-active){zoom:1.523}}
@media (min-width:2160px){body:not(.elementor-editor-active){zoom:1.581}}
@media (min-width:2240px){body:not(.elementor-editor-active){zoom:1.64}}
@media (min-width:2320px){body:not(.elementor-editor-active){zoom:1.698}}
@media (min-width:2400px){body:not(.elementor-editor-active){zoom:1.757}}
@media (min-width:2480px){body:not(.elementor-editor-active){zoom:1.816}}
@media (min-width:2560px){body:not(.elementor-editor-active){zoom:1.874}}
@media (min-width:2640px){body:not(.elementor-editor-active){zoom:1.933}}
@media (min-width:2720px){body:not(.elementor-editor-active){zoom:1.991}}
@media (min-width:2800px){body:not(.elementor-editor-active){zoom:2.05}}
@media (min-width:2880px){body:not(.elementor-editor-active){zoom:2.108}}
@media (min-width:2960px){body:not(.elementor-editor-active){zoom:2.167}}
@media (min-width:3040px){body:not(.elementor-editor-active){zoom:2.225}}
@media (min-width:3120px){body:not(.elementor-editor-active){zoom:2.284}}
@media (min-width:3200px){body:not(.elementor-editor-active){zoom:2.343}}
@media (min-width:3280px){body:not(.elementor-editor-active){zoom:2.401}}
@media (min-width:3360px){body:not(.elementor-editor-active){zoom:2.46}}
@media (min-width:3440px){body:not(.elementor-editor-active){zoom:2.518}}
@media (min-width:3520px){body:not(.elementor-editor-active){zoom:2.577}}
@media (min-width:3600px){body:not(.elementor-editor-active){zoom:2.635}}
@media (min-width:3680px){body:not(.elementor-editor-active){zoom:2.694}}
@media (min-width:3760px){body:not(.elementor-editor-active){zoom:2.753}}
@media (min-width:3840px){body:not(.elementor-editor-active){zoom:2.811}}
/* ms-fluid-desktop END */

/* ms-carousel-preinit START: before Swiper starts, give every slide its final width so the page does not stretch/jump while loading (loop-carousel 4/3/2 + gap 18/18/10, image-carousel 5/5/2 + gap 30) */
.elementor-widget-loop-carousel .swiper:not(.swiper-initialized){overflow:hidden}
.elementor-widget-loop-carousel .swiper:not(.swiper-initialized) .swiper-wrapper{display:flex;flex-wrap:nowrap;gap:18px}
.elementor-widget-loop-carousel .swiper:not(.swiper-initialized) .swiper-slide{flex:0 0 calc((100% - 54px) / 4);width:calc((100% - 54px) / 4);min-width:0}
.elementor-widget-image-carousel .swiper:not(.swiper-initialized){overflow:hidden}
.elementor-widget-image-carousel .swiper:not(.swiper-initialized) .swiper-wrapper{display:flex;flex-wrap:nowrap;gap:30px}
.elementor-widget-image-carousel .swiper:not(.swiper-initialized) .swiper-slide{flex:0 0 calc((100% - 120px) / 5);width:calc((100% - 120px) / 5);min-width:0}
@media (max-width:1024px){
 .elementor-widget-loop-carousel .swiper:not(.swiper-initialized) .swiper-slide{flex-basis:calc((100% - 36px) / 3);width:calc((100% - 36px) / 3)}
}
@media (max-width:767px){
 .elementor-widget-loop-carousel .swiper:not(.swiper-initialized) .swiper-wrapper{gap:10px}
 .elementor-widget-loop-carousel .swiper:not(.swiper-initialized) .swiper-slide{flex-basis:calc((100% - 10px) / 2);width:calc((100% - 10px) / 2)}
 .elementor-widget-image-carousel .swiper:not(.swiper-initialized) .swiper-slide{flex-basis:calc((100% - 30px) / 2);width:calc((100% - 30px) / 2)}
}
/* ms-carousel-preinit END *//* End custom CSS */