/* ==========================================================
   v3.2.44 — Widget Stage / Interactive UI System 2.0
   Slider / Carousel / FAQ / Tabs / Accordion
   Base: v3.2.44
   ========================================================== */

/* Shared interactive surface */
.wpst-ew-hero-slider,
.wpst-ew-image-carousel,
.wpst-ew-card-carousel,
.wpst-content-slider,
.wpst-ew-testimonial-slider{
  position:relative;
  touch-action:pan-y;
  -webkit-tap-highlight-color:transparent;
}

/* WPSoft Navigation premium mobile drawer (local controls > global tokens > defaults). */
@media(max-width:1024px){
  .wpst-nav-mobile-hamburger .wpst-navigation{
    --wps-mobile-menu-bg:var(--wpst-nav-mobile-bg,linear-gradient(160deg,#071426 0%,#0b1930 52%,#081221 100%));
    --wps-mobile-menu-text:var(--wpst-nav-mobile-color,var(--wpst-color-text-inverse,#e8eef8));
    --wps-mobile-menu-active-bg:linear-gradient(100deg,#3468ff,#713de6,#8e20c7);
    --wps-mobile-menu-active-color:#fff;--wps-mobile-menu-radius:16px;--wps-mobile-menu-item-height:58px;
    --wps-mobile-menu-gap:6px;--wps-mobile-menu-chevron:rgba(226,232,240,.72);
    --wps-mobile-menu-close-bg:rgba(255,255,255,.08);--wps-mobile-menu-close-color:#fff;
  }
  .wpst-nav-mobile-hamburger .wpst-nav-mobile-panel{
    width:min(var(--wpst-nav-mobile-width,90vw),90vw)!important;max-width:var(--wps-mobile-menu-max-width,410px);
    height:100dvh!important;max-height:100dvh!important;padding:max(14px,env(safe-area-inset-top)) 14px max(14px,env(safe-area-inset-bottom))!important;
    overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;background:var(--wps-mobile-menu-bg)!important;color:var(--wps-mobile-menu-text)!important;
    border:1px solid rgba(255,255,255,.08);box-shadow:inset 1px 0 rgba(255,255,255,.035),-24px 0 60px rgba(1,6,18,.36);
    transition:transform .36s cubic-bezier(.22,.8,.2,1)!important;
  }
  .wpst-nav-overlay-yes .wpst-nav-overlay{background:var(--wpst-nav-overlay-bg,rgba(2,8,23,.62));backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);transition:opacity .32s ease,visibility .32s ease}
  .wpst-nav-mobile-hamburger .wpst-nav-mobile-head{min-height:64px;padding:4px 2px 12px!important;border:0;border-bottom:1px solid rgba(255,255,255,.09);border-radius:0;background:transparent;justify-content:space-between}
  .wpst-nav-mobile-brand{min-width:0;display:flex;align-items:center}.wpst-nav-mobile-brand .custom-logo-link{display:flex}.wpst-nav-mobile-brand .custom-logo{display:block;width:auto;max-width:180px;max-height:42px;object-fit:contain}
  .wpst-nav-site-title{color:var(--wps-mobile-menu-text)!important;font-size:17px;font-weight:750;line-height:1.2;text-decoration:none}
  .wpst-nav-mobile-hamburger .wpst-nav-close{position:relative;flex:0 0 46px;width:46px;height:46px;margin-left:14px;border:1px solid rgba(255,255,255,.09);border-radius:15px;background:var(--wps-mobile-menu-close-bg)!important;color:var(--wps-mobile-menu-close-color)!important;font-size:0;box-shadow:inset 0 1px rgba(255,255,255,.05)}
  .wpst-nav-close span::before,.wpst-nav-close span::after{content:"";position:absolute;left:13px;top:22px;width:20px;height:2px;border-radius:2px;background:currentColor}.wpst-nav-close span::before{transform:rotate(45deg)}.wpst-nav-close span::after{transform:rotate(-45deg)}
  .wpst-nav-mobile-hamburger .wpst-nav-menu-host{padding:16px 0!important}
  .wpst-nav-mobile-hamburger .wpst-nav-mobile-footer{margin-top:auto;padding:14px 0 0!important;border-top:1px solid rgba(255,255,255,.09)}
  .wpst-nav-mobile-hamburger .wpst-nav-mobile-cta{min-height:58px;border-radius:16px}
}

/* Single-source menus, separate server-rendered desktop/drawer hosts. */
@media(max-width:1024px){
 .wpst-nav-mobile-hamburger .wpst-nav-desktop-host{display:none}
 .wpst-nav-mobile-hamburger .wps-mobile-drawer{display:flex}
 .wps-mobile-drawer .wpst-nav-mobile-cta{position:relative;z-index:2;pointer-events:auto}
 .wps-mobile-drawer .wpst-nav-mobile-cta::before,.wps-mobile-drawer .wpst-nav-mobile-cta::after,.wps-mobile-drawer .wpst-nav-mobile-cta>*{pointer-events:none}
}
@media(min-width:768px) and (max-width:1024px){
 .wpst-nav-breakpoint-767.wpst-nav-mobile-hamburger .wpst-nav-desktop-host{display:block!important}
 .wpst-nav-breakpoint-767.wpst-nav-mobile-hamburger .wps-mobile-drawer{display:none!important;visibility:hidden!important;pointer-events:none!important}
}
@media(min-width:1025px){
 .wpst-nav-mobile-panel{display:none!important;visibility:hidden!important;pointer-events:none!important}
 .wpst-nav-desktop-host{display:block}
}
@media(max-width:767px){
  .wpst-nav-mobile-hamburger .wpst-navigation-menu{gap:var(--wps-mobile-menu-gap)!important}
  .wpst-nav-mobile-hamburger .wpst-navigation-menu>li{overflow:visible;border-radius:var(--wps-mobile-menu-radius)!important}
  .wpst-nav-mobile-hamburger .wpst-navigation-menu>li>a{min-height:var(--wps-mobile-menu-item-height)!important;padding:12px 17px!important;border-radius:var(--wps-mobile-menu-radius)!important;color:var(--wps-mobile-menu-text)!important;font-size:15px;font-weight:650;line-height:1.35}
  .wpst-nav-mobile-hamburger .wpst-navigation-menu>li>a:hover,.wpst-nav-mobile-hamburger .wpst-navigation-menu>li>a:focus-visible{background:var(--wpst-nav-mobile-hover,rgba(255,255,255,.07))!important;color:var(--wps-mobile-menu-text)!important}
  .wpst-nav-mobile-hamburger .wpst-navigation-menu>li:is(.current-menu-item,.current_page_item,.current-menu-ancestor,.current-menu-parent,.current_page_ancestor)>a{background:var(--wps-mobile-menu-active-bg)!important;color:var(--wps-mobile-menu-active-color)!important;-webkit-text-fill-color:currentColor!important;box-shadow:var(--wps-mobile-active-shadow,none)!important}
  .wpst-nav-mobile-hamburger .wpst-nav-subtoggle{width:42px;height:42px;margin-right:8px;border-radius:13px;color:var(--wps-mobile-menu-chevron)!important;background:rgba(255,255,255,.045)}
  .wpst-nav-mobile-hamburger .wpst-navigation .is-sub-open>.sub-menu{max-height:1000px;padding:6px 0 6px 14px!important;border-left:1px solid rgba(255,255,255,.12)!important}
  .wpst-nav-mobile-hamburger .wpst-navigation .sub-menu a{min-height:48px;color:var(--wps-mobile-menu-text)!important;border-radius:12px}
}
@media(min-width:768px) and (max-width:1024px){
  .wpst-nav-breakpoint-1024.wpst-nav-mobile-hamburger .wpst-navigation-menu{gap:var(--wps-mobile-menu-gap)!important}
  .wpst-nav-breakpoint-1024.wpst-nav-mobile-hamburger .wpst-navigation-menu>li>a{min-height:var(--wps-mobile-menu-item-height)!important;color:var(--wps-mobile-menu-text)!important;border-radius:var(--wps-mobile-menu-radius)!important}
  .wpst-nav-breakpoint-1024.wpst-nav-mobile-hamburger .wpst-navigation-menu>li:is(.current-menu-item,.current_page_item,.current-menu-ancestor,.current-menu-parent)>a{background:var(--wps-mobile-menu-active-bg)!important;color:var(--wps-mobile-menu-active-color)!important}
}
@media(prefers-reduced-motion:reduce){.wpst-nav-mobile-panel,.wpst-nav-overlay,.wpst-nav-subtoggle span,.wpst-navigation .sub-menu{transition-duration:.01ms!important;animation-duration:.01ms!important}}
.wpst-ew-hero-slider button,
.wpst-ew-image-carousel button,
.wpst-ew-card-carousel button,
.wpst-content-slider button{
  touch-action:manipulation;
}

/* HERO SLIDER 2.0 */
.wpst-ew-hero-slider{
  --wpst-slider-control-bg:rgba(255,255,255,.12);
  --wpst-slider-control-hover:rgba(255,255,255,.22);
  --wpst-slider-arrow-color:#fff;
  --wpst-slider-arrow-hover-color:#fff;
  --wpst-slider-dot:rgba(255,255,255,.35);
  --wpst-slider-dot-active:#fff;
  isolation:isolate;
  overflow:hidden;
}
.wpst-ew-hero-slide{
  position:absolute;
  inset:0;
  opacity:0;
  visibility:hidden;
  transform:scale(1.015);
  transition:opacity .55s ease,transform .75s ease,visibility .55s ease;
  background-position:var(--wpst-hero-bg-x,50%) var(--wpst-hero-bg-y,50%);
  background-size:cover;
}
.wpst-ew-hero-slide.is-active{
  position:relative;
  opacity:1;
  visibility:visible;
  transform:none;
  z-index:1;
}
.wpst-ew-hero-overlay{
  position:absolute;
  inset:0;
  z-index:0;
}
.wpst-ew-hero-slide-inner{
  position:relative;
  z-index:2;
  transform:translate(var(--wpst-hero-content-offset-x,0px),var(--wpst-hero-content-offset-y,0px));
}
.wpst-ew-hero-slide small{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  margin-bottom:14px;
  font-size:10px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.wpst-ew-hero-slide h2{
  margin:0 0 18px;
  font-size:clamp(42px,6vw,82px);
  line-height:.96;
  letter-spacing:-.055em;
  text-wrap:balance;
}
.wpst-ew-hero-slide p{
  max-width:62ch;
  margin:0;
  font-size:clamp(15px,1.4vw,18px);
  line-height:1.7;
}
.wpst-ew-hero-slide a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:48px;
  margin-top:26px;
  padding:0 17px;
  text-decoration:none;
  font-weight:850;
  transition:transform .2s ease,box-shadow .2s ease;
}
.wpst-ew-hero-slide a:hover{
  transform:translateY(-2px);
  box-shadow:none;
}
.wpst-slider-action-icon{
  display:grid;
  place-items:center;
  transition:transform .2s ease;
}
.wpst-ew-hero-slide a:hover .wpst-slider-action-icon{transform:translateX(3px)}
.wpst-ew-slider-prev,
.wpst-ew-slider-next{
  position:absolute;
  top:50%;
  z-index:5;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.14);
  border-radius:14px;
  background:var(--wpst-slider-control-bg);
  color:var(--wpst-slider-arrow-color,#fff);
  backdrop-filter:blur(10px);
  transform:translateY(-50%);
  cursor:pointer;
  transition:background-color .2s ease,transform .2s ease;
}
.wpst-ew-slider-prev{left:18px}
.wpst-ew-slider-next{right:18px}
.wpst-ew-slider-prev:hover,
.wpst-ew-slider-next:hover{
  background:var(--wpst-slider-control-hover);
  color:var(--wpst-slider-arrow-hover-color,var(--wpst-slider-arrow-color,#fff));
  transform:translateY(-50%) scale(1.04);
}
.wpst-ew-slider-dots{
  position:absolute;
  left:50%;
  bottom:18px;
  z-index:5;
  display:flex;
  align-items:center;
  gap:7px;
  transform:translateX(-50%);
}
.wpst-ew-slider-dots button{
  width:7px;
  height:7px;
  padding:0;
  border:0;
  border-radius:999px;
  background:var(--wpst-slider-dot);
  transition:width .2s ease,background-color .2s ease;
  cursor:pointer;
}
.wpst-ew-slider-dots button.is-active{
  width:24px;
  background:var(--wpst-slider-dot-active);
}
.wpst-hero-slider-style-editorial .wpst-ew-hero-slide h2{
  max-width:11ch;
  font-size:clamp(48px,7vw,96px);
  line-height:.9;
}
.wpst-hero-slider-style-minimal .wpst-ew-hero-slide h2{max-width:13ch}
.wpst-hero-slider-style-minimal .wpst-ew-hero-overlay{opacity:.72}
.wpst-hero-slider-style-glass .wpst-ew-hero-slide-inner{
  max-width:760px;
  padding:30px!important;
  border:1px solid rgba(255,255,255,.16);
  border-radius:24px;
  background:rgba(15,23,42,.32);
  backdrop-filter:blur(16px);
}

/* IMAGE CAROUSEL 2.0 */
.wpst-ew-image-carousel,
.wpst-ew-card-carousel{
  overflow:hidden;
}
.wpst-ew-carousel-track,
.wpst-ew-card-carousel-track{
  display:flex;
  align-items:stretch;
  will-change:transform;
  transition:transform .38s cubic-bezier(.22,1,.36,1);
}
.wpst-ew-image-carousel figure{
  position:relative;
  flex:0 0 calc((100% - (var(--wpst-carousel-visible-desktop,3) - 1) * 18px) / var(--wpst-carousel-visible-desktop,3));
  min-width:0;
  margin:0;
  overflow:hidden;
  background:#eef2f7;
}
.wpst-ew-image-carousel figure img{
  width:100%;
  height:100%;
  display:block;
  object-fit:var(--wpst-carousel-fit,cover);
  transition:transform .45s ease;
}
.wpst-image-carousel-style-modern .wpst-ew-image-carousel figure,
.wpst-carousel-shadow-yes .wpst-ew-image-carousel figure{
  box-shadow:0 12px 28px rgba(15,23,42,.08);
}
.wpst-image-carousel-style-editorial .wpst-ew-image-carousel figure:nth-child(even){
  transform:translateY(18px);
}
.wpst-image-carousel-style-soft .wpst-ew-image-carousel figure{
  padding:7px;
  background:#f8fafc;
  border:1px solid #edf1f5;
}
.wpst-image-carousel-style-borderless .wpst-ew-image-carousel figure{
  border-radius:0!important;
}
.wpst-ew-image-carousel figure:hover img{transform:scale(1.035)}

/* CARD CAROUSEL 2.0 */
.wpst-ew-card-carousel-track>article{
  flex:0 0 calc((100% - (var(--wpst-carousel-visible-desktop,3) - 1) * 18px) / var(--wpst-carousel-visible-desktop,3));
  min-width:0;
  overflow:hidden;
  border:1px solid #e2e8f0;
  background:#fff;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.wpst-ew-card-media{
  position:relative;
  overflow:hidden;
  background:#eef2f7;
}
.wpst-ew-card-media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transition:transform .45s ease;
}
.wpst-ew-card-copy{padding:18px}
.wpst-card-carousel-icon{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  margin-bottom:14px;
  border-radius:11px;
  background:#eff6ff;
  color:#2563eb;
}
.wpst-ew-card-copy h3{
  margin:0 0 7px;
  font-size:20px;
  line-height:1.2;
  letter-spacing:-.025em;
}
.wpst-ew-card-copy p{
  margin:0;
  color:#64748b;
  line-height:1.65;
}
.wpst-card-carousel-style-elevated .wpst-ew-card-carousel-track>article:hover{
  transform:translateY(-5px);
  box-shadow:0 18px 38px rgba(15,23,42,.1);
}
.wpst-card-carousel-style-soft .wpst-ew-card-carousel-track>article{
  border-color:transparent;
  background:#f8fafc;
}
.wpst-card-carousel-style-editorial .wpst-ew-card-copy h3{
  font-size:25px;
  line-height:1.08;
}
.wpst-card-carousel-style-dark .wpst-ew-card-carousel-track>article{
  border-color:#243047;
  background:#0f172a;
  color:#fff;
}
.wpst-card-carousel-style-dark .wpst-ew-card-copy p{color:#94a3b8}

/* Shared carousel controls */
.wpst-ew-carousel-nav,
.wpst-ew-card-nav{
  display:flex;
  justify-content:flex-end;
  gap:7px;
  margin-top:14px;
}
.wpst-ew-carousel-nav button,
.wpst-ew-card-nav button{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid #e2e8f0;
  border-radius:12px;
  background:#fff;
  color:#0f172a;
  cursor:pointer;
  transition:.2s ease;
}
.wpst-ew-carousel-nav button:hover,
.wpst-ew-card-nav button:hover{
  border-color:#bfdbfe;
  background:#eff6ff;
  color:#2563eb;
}
.wpst-ew-carousel-nav button:disabled,
.wpst-ew-card-nav button:disabled{
  opacity:.35;
  cursor:not-allowed;
}

/* CONTENT SLIDER 2.0 */
.wpst-content-slider{
  overflow:hidden;
  border-radius:24px;
}
.wpst-content-slide{
  display:none;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  min-height:460px;
}
.wpst-content-slide.is-active{
  display:grid;
  animation:wpstContentSlideIn .32s ease;
}
@keyframes wpstContentSlideIn{
  from{opacity:0;transform:translateY(8px)}
  to{opacity:1;transform:none}
}
.wpst-content-slide-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(26px,5vw,58px);
  background:#fff;
}
.wpst-content-slide-copy small{
  margin-bottom:12px;
  color:#2563eb;
  font-size:10px;
  font-weight:900;
  letter-spacing:.12em;
}
.wpst-content-slide-copy h3{
  margin:0 0 14px;
  font-size:clamp(34px,4.5vw,62px);
  line-height:1;
  letter-spacing:-.045em;
}
.wpst-content-slide-copy p{
  margin:0;
  color:#64748b;
  line-height:1.7;
}
.wpst-content-slide-copy a{
  display:inline-flex;
  align-items:center;
  gap:7px;
  width:max-content;
  margin-top:22px;
  color:#0f172a;
  text-decoration:none;
  font-weight:850;
}
.wpst-content-slide-media{
  min-height:420px;
  background:#eef2f7;
}
.wpst-content-slide-media img{
  width:100%;
  height:100%;
  min-height:420px;
  display:block;
  object-fit:cover;
}
.wpst-content-slider-nav{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:12px;
  background:#f8fafc;
  border-top:1px solid #edf1f5;
}
.wpst-content-slider-nav>button{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border:1px solid #e2e8f0;
  border-radius:11px;
  background:#fff;
  color:#0f172a;
  cursor:pointer;
}
.wpst-content-slider-dots{
  display:flex;
  gap:6px;
  align-items:center;
}
.wpst-content-slider-dots button{
  width:7px;
  height:7px;
  padding:0;
  border:0;
  border-radius:99px;
  background:#cbd5e1;
}
.wpst-content-slider-dots button.is-active{
  width:20px;
  background:#2563eb;
}
.wpst-content-slider-style-editorial .wpst-content-slide-copy h3{
  font-size:clamp(42px,5.5vw,74px);
  line-height:.94;
}
.wpst-content-slider-style-dark .wpst-content-slide-copy{
  background:#0f172a;
  color:#fff;
}
.wpst-content-slider-style-dark .wpst-content-slide-copy p{color:#94a3b8}
.wpst-content-slider-style-dark .wpst-content-slide-copy a{color:#fff}
.wpst-content-slider-style-soft .wpst-content-slide-copy{background:#f8fafc}

/* FAQ 2.0 */
.wpst-ew-faq{
  --faq-accent:#2563eb;
  --faq-title:#0f172a;
  --faq-text:#64748b;
  display:grid;
  gap:9px;
}
.wpst-ew-faq details{
  border:1px solid #e2e8f0;
  background:#fff;
  overflow:hidden;
}
.wpst-ew-faq summary{
  min-height:58px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:15px 17px;
  color:var(--faq-title);
  list-style:none;
  cursor:pointer;
  font-weight:800;
}
.wpst-ew-faq summary::-webkit-details-marker{display:none}
.wpst-faq-toggle{
  width:32px;
  height:32px;
  flex:0 0 32px;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:#f1f5f9;
  color:var(--faq-accent);
  transition:transform .22s ease,background-color .22s ease;
}
.wpst-ew-faq details[open] .wpst-faq-toggle{
  transform:rotate(45deg);
  background:#eff6ff;
}
.wpst-faq-answer{
  padding:0 17px 17px;
  color:var(--faq-text);
  line-height:1.72;
}
.wpst-faq-style-cards .wpst-ew-faq details[open]{
  border-color:#bfdbfe;
  box-shadow:0 12px 28px rgba(15,23,42,.06);
}
.wpst-faq-style-soft .wpst-ew-faq details{
  border-color:transparent;
  background:#f8fafc;
}
.wpst-faq-style-dark .wpst-ew-faq details{
  border-color:#243047;
  background:#0f172a;
}
.wpst-faq-style-dark .wpst-ew-faq{
  --faq-title:#fff;
  --faq-text:#94a3b8;
}

/* TABS 2.0 */
.wpst-ew-tabs{
  --tabs-accent:#2563eb;
  --tabs-nav-bg:#f1f5f9;
  --tabs-panel-bg:#fff;
}
.wpst-ew-tabs-nav{
  display:flex;
  gap:5px;
  padding:5px;
  overflow-x:auto;
  scrollbar-width:none;
  background:var(--tabs-nav-bg);
}
.wpst-ew-tabs-nav::-webkit-scrollbar{display:none}
.wpst-ew-tabs-nav button{
  flex:0 0 auto;
  min-height:42px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:0 13px;
  border:0;
  border-radius:11px;
  background:transparent;
  color:#64748b;
  font-weight:800;
  cursor:pointer;
  white-space:nowrap;
}
.wpst-ew-tabs-nav button i{
  display:grid;
  place-items:center;
  color:currentColor;
}
.wpst-ew-tabs-nav button.is-active{
  background:#fff;
  color:var(--tabs-accent);
  box-shadow:0 4px 14px rgba(15,23,42,.07);
}
.wpst-ew-tabs-panels article{
  margin-top:9px;
  padding:22px;
  border:1px solid #e2e8f0;
  background:var(--tabs-panel-bg);
}
.wpst-ew-tabs-panels article h3{
  margin:0 0 10px;
  font-size:24px;
  letter-spacing:-.03em;
}
.wpst-ew-tabs-panels article>div{
  color:#64748b;
  line-height:1.75;
}
.wpst-tabs-style-line .wpst-ew-tabs-nav{
  padding:0;
  border-bottom:1px solid #e2e8f0;
  border-radius:0!important;
  background:transparent;
}
.wpst-tabs-style-line .wpst-ew-tabs-nav button{
  border-bottom:2px solid transparent;
  border-radius:0;
}
.wpst-tabs-style-line .wpst-ew-tabs-nav button.is-active{
  border-bottom-color:var(--tabs-accent);
  background:transparent;
  box-shadow:none;
}
.wpst-tabs-style-cards .wpst-ew-tabs-nav{
  background:transparent;
  padding:0;
}
.wpst-tabs-style-cards .wpst-ew-tabs-nav button{
  border:1px solid #e2e8f0;
  background:#fff;
}
.wpst-tabs-style-vertical .wpst-ew-tabs{
  display:grid;
  grid-template-columns:minmax(180px,.35fr) minmax(0,.65fr);
  gap:16px;
}
.wpst-tabs-style-vertical .wpst-ew-tabs-nav{
  flex-direction:column;
  align-self:start;
}
.wpst-tabs-style-vertical .wpst-ew-tabs-nav button{
  width:100%;
  justify-content:flex-start;
}
.wpst-tabs-style-vertical .wpst-ew-tabs-panels article{margin-top:0}

/* ACCORDION 2.0 */
.wpst-adv-accordion{
  --acc-accent:#2563eb;
  --acc-title:#0f172a;
  --acc-text:#64748b;
  display:grid;
  gap:9px;
}
.wpst-adv-acc-item{
  border:1px solid #e2e8f0;
  background:#fff;
  overflow:hidden;
}
.wpst-adv-acc-item summary{
  min-height:60px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:14px 16px;
  list-style:none;
  cursor:pointer;
}
.wpst-adv-acc-item summary::-webkit-details-marker{display:none}
.wpst-adv-acc-title{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  color:var(--acc-title);
}
.wpst-adv-acc-title>i{
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:#eff6ff;
  color:var(--acc-accent);
}
.wpst-adv-acc-title b{
  font-size:15px;
  line-height:1.35;
}
.wpst-acc-toggle{
  width:32px;
  height:32px;
  flex:0 0 32px;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:#f8fafc;
  color:var(--acc-accent);
  transition:transform .22s ease;
}
.wpst-adv-acc-item[open] .wpst-acc-toggle{transform:rotate(180deg)}
.wpst-adv-acc-content{
  padding:0 16px 18px 60px;
  color:var(--acc-text);
  line-height:1.75;
}
.wpst-accordion-style-clean .wpst-adv-acc-item{
  border-width:0 0 1px;
  border-radius:0!important;
}
.wpst-accordion-style-soft .wpst-adv-acc-item{
  border-color:transparent;
  background:#f8fafc;
}
.wpst-accordion-style-dark .wpst-adv-acc-item{
  border-color:#243047;
  background:#0f172a;
}
.wpst-accordion-style-dark .wpst-adv-accordion{
  --acc-title:#fff;
  --acc-text:#94a3b8;
}

/* Mobile/touch */
@media(max-width:767px){
  .wpst-ew-slider-prev,
  .wpst-ew-slider-next{
    width:40px!important;
    height:40px!important;
    top:auto;
    bottom:16px;
    transform:none;
  }
  .wpst-ew-slider-prev{left:16px}
  .wpst-ew-slider-next{right:16px}
  .wpst-ew-slider-prev:hover,
  .wpst-ew-slider-next:hover{transform:none}
  .wpst-ew-slider-dots{bottom:28px}
  .wpst-ew-hero-slide-inner{padding:60px 20px 90px!important}
  .wpst-ew-hero-slide h2{font-size:clamp(38px,12vw,58px)}
  .wpst-ew-image-carousel figure{
    flex-basis:calc((100% - (var(--wpst-carousel-visible-mobile,1) - 1) * 18px) / var(--wpst-carousel-visible-mobile,1));
  }
  .wpst-ew-card-carousel-track>article{
    flex-basis:calc((100% - (var(--wpst-carousel-visible-mobile,1) - 1) * 18px) / var(--wpst-carousel-visible-mobile,1));
  }
  .wpst-content-slide,
  .wpst-content-slide.is-active{grid-template-columns:1fr}
  .wpst-content-slide-media,
  .wpst-content-slide-media img{min-height:260px}
  .wpst-tabs-style-vertical .wpst-ew-tabs{grid-template-columns:1fr}
  .wpst-tabs-style-vertical .wpst-ew-tabs-nav{flex-direction:row}
  .wpst-adv-acc-content{padding-left:16px}
}
@media(min-width:768px) and (max-width:1024px){
  .wpst-ew-image-carousel figure{
    flex-basis:calc((100% - (var(--wpst-carousel-visible-tablet,2) - 1) * 18px) / var(--wpst-carousel-visible-tablet,2));
  }
  .wpst-ew-card-carousel-track>article{
    flex-basis:calc((100% - (var(--wpst-carousel-visible-tablet,2) - 1) * 18px) / var(--wpst-carousel-visible-tablet,2));
  }
}
@media(prefers-reduced-motion:reduce){
  .wpst-ew-hero-slide,
  .wpst-ew-carousel-track,
  .wpst-ew-card-carousel-track,
  .wpst-content-slide.is-active,
  .wpst-faq-toggle,
  .wpst-acc-toggle,
  .wpst-ew-image-carousel img,
  .wpst-ew-card-media img{
    animation:none!important;
    transition:none!important;
  }
}


/* ==========================================================
   v3.2.44 — Widget Stage / Media + Contact + Footer UI 2.0
   Base: v3.2.44
   ========================================================== */

/* Gallery Zoom 2.0 */
.wpst-gallery-zoom-pro{
  --gallery-accent:#2563eb;
}
.wpst-gallery-zoom-item{
  position:relative;
  overflow:hidden;
  background:#eef2f7;
  transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;
}
.wpst-gallery-zoom-item img{
  width:100%;
  display:block;
  object-fit:var(--wpst-gallery-fit,cover);
  transition:transform .45s ease,filter .35s ease;
}
.wpst-gallery-zoom-icon{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:13px;
  box-shadow:0 12px 26px rgba(15,23,42,.12);
}
.wpst-gallery-carousel-controls,
.wpst-video-gallery-controls{
  display:flex;
  justify-content:flex-end;
  gap:7px;
  margin-bottom:12px;
}
.wpst-gallery-carousel-controls button,
.wpst-video-gallery-controls button{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid #e2e8f0;
  border-radius:12px;
  background:#fff;
  color:#0f172a;
  cursor:pointer;
  transition:.2s ease;
}
.wpst-gallery-carousel-controls button:hover,
.wpst-video-gallery-controls button:hover{
  border-color:#bfdbfe;
  background:#eff6ff;
  color:#2563eb;
}
.wpst-gallery-zoom-pro.is-carousel,
.wpst-video-gallery-pro.is-carousel{
  scroll-behavior:smooth;
  overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-x pan-y;
}
.wpst-gallery-zoom-pro.is-carousel[data-snap="1"] .wpst-gallery-zoom-item,
.wpst-video-gallery-pro.is-carousel .wpst-video-card{
  scroll-snap-align:start;
}
.wpst-gallery-style-modern .wpst-gallery-zoom-item{
  box-shadow:0 12px 28px rgba(15,23,42,.08);
}
.wpst-gallery-style-editorial .wpst-gallery-zoom-item:nth-of-type(3n+1){
  transform:translateY(12px);
}
.wpst-gallery-style-soft .wpst-gallery-zoom-item{
  padding:6px;
  border:1px solid #edf1f5;
  background:#f8fafc;
}
.wpst-gallery-style-dark .wpst-gallery-zoom-item{
  background:#0f172a;
  box-shadow:0 16px 34px rgba(15,23,42,.16);
}

/* Video Gallery 2.0 */
.wpst-video-card{
  position:relative;
  overflow:hidden;
  border:1px solid #e2e8f0;
  background:#fff;
  color:#0f172a;
  text-decoration:none;
  transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;
}
.wpst-video-poster{
  position:relative;
  display:block;
  overflow:hidden;
  background:#0f172a;
}
.wpst-video-poster img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transition:transform .5s ease;
}
.wpst-video-play{
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  border-radius:16px;
  box-shadow:0 12px 30px rgba(0,0,0,.16);
  transition:transform .22s ease;
}
.wpst-video-card:hover .wpst-video-poster img{transform:scale(1.035)}
.wpst-video-card:hover .wpst-video-play{transform:scale(1.06)}
.wpst-video-info{
  display:block;
  padding:15px 16px 17px;
}
.wpst-video-info small{
  display:block;
  margin-bottom:5px;
  color:#2563eb;
  font-size:9px;
  font-weight:900;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.wpst-video-info strong{
  display:block;
  font-size:18px;
  line-height:1.22;
  letter-spacing:-.02em;
}
.wpst-video-gallery-style-cinematic .wpst-video-card{
  border-color:transparent;
  background:#0f172a;
  color:#fff;
}
.wpst-video-gallery-style-cinematic .wpst-video-info small{color:#93c5fd}
.wpst-video-gallery-style-clean .wpst-video-card:hover{
  transform:translateY(-4px);
  box-shadow:0 16px 34px rgba(15,23,42,.08);
}
.wpst-video-gallery-style-editorial .wpst-video-info strong{
  font-size:22px;
}
.wpst-video-gallery-style-dark .wpst-video-card{
  border-color:#243047;
  background:#0b1220;
  color:#fff;
}

/* WPForms 2.0 */
.wpst-wpforms-shell{
  --wpst-form-shell-bg:#fff;
}
.wpst-wpforms-shell .wpforms-form{
  margin:0;
}
.wpst-wpforms-shell .wpforms-field{
  padding:0!important;
}
.wpst-wpforms-shell .wpforms-field-label{
  margin-bottom:7px!important;
  font-weight:750!important;
}
.wpst-wpforms-shell :is(
  input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
  textarea,
  select
){
  width:100%!important;
  min-height:48px;
  padding:10px 12px!important;
  border:1px solid #dfe6ee!important;
  border-radius:12px;
  box-shadow:none!important;
  transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease!important;
}
.wpst-wpforms-shell textarea{
  min-height:150px;
  resize:vertical;
}
.wpst-wpforms-shell :is(input,textarea,select):focus{
  outline:none!important;
  border-color:#93b4ff!important;
  box-shadow:0 0 0 4px rgba(49,92,245,.09)!important;
}
.wpst-wpforms-shell .wpforms-submit{
  min-height:48px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 18px!important;
  border:0!important;
  font-weight:800!important;
  cursor:pointer!important;
  transition:transform .18s ease,box-shadow .18s ease!important;
}
.wpst-wpforms-shell .wpforms-submit:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 26px rgba(15,23,42,.12);
}
.wpst-wpforms-style-card .wpst-wpforms-shell{
  padding:26px;
  border:1px solid #e2e8f0;
  background:var(--wpst-form-shell-bg,#fff);
  box-shadow:0 16px 36px rgba(15,23,42,.06);
}
.wpst-wpforms-style-soft .wpst-wpforms-shell{
  padding:26px;
  background:var(--wpst-form-shell-bg,#f8fafc);
}
.wpst-wpforms-style-dark .wpst-wpforms-shell{
  padding:26px;
  background:var(--wpst-form-shell-bg,#0f172a);
  color:#fff;
}
.wpst-wpforms-style-dark .wpst-wpforms-shell :is(.wpforms-field-label,.wpforms-field-sublabel){color:#e2e8f0!important}
.wpst-wpforms-style-dark .wpst-wpforms-shell :is(input:not([type="submit"]),textarea,select){
  border-color:#334155!important;
  background:#111c2f!important;
  color:#fff!important;
}
.wpst-wpforms-button-full-yes .wpforms-submit-container,
.wpst-wpforms-button-full-yes .wpforms-submit{
  width:100%!important;
}

/* Contact Cards 2.0 */
.wpst-ew-contact-cards{
  --contact-accent:#2563eb;
  --contact-bg:#fff;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.wpst-ew-contact-cards article{
  min-width:0;
  padding:20px;
  border:1px solid #e2e8f0;
  background:var(--contact-bg);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.wpst-contact-native-icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  margin-bottom:16px;
  border-radius:12px;
  background:color-mix(in srgb,var(--contact-accent) 10%,transparent);
  color:var(--contact-accent);
}
.wpst-ew-contact-cards small{
  display:block;
  margin-bottom:6px;
  color:#94a3b8;
  font-size:9px;
  font-weight:850;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.wpst-ew-contact-cards strong,
.wpst-ew-contact-cards a{
  color:#0f172a;
  font-size:15px;
  font-weight:800;
  line-height:1.35;
  text-decoration:none;
}
.wpst-ew-contact-cards a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
.wpst-ew-contact-cards a b{
  display:grid;
  place-items:center;
  color:var(--contact-accent);
  transition:transform .2s ease;
}
.wpst-ew-contact-cards a:hover b{transform:translate(2px,-2px)}
.wpst-contact-cards-style-clean .wpst-ew-contact-cards article:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 30px rgba(15,23,42,.07);
}
.wpst-contact-cards-style-soft .wpst-ew-contact-cards article{
  border-color:transparent;
  background:var(--contact-bg,#f8fafc);
}
.wpst-contact-cards-style-bordered .wpst-ew-contact-cards article:hover{
  border-color:var(--contact-accent);
}
.wpst-contact-cards-style-dark .wpst-ew-contact-cards article{
  border-color:#243047;
  background:#0f172a;
}
.wpst-contact-cards-style-dark .wpst-ew-contact-cards strong,
.wpst-contact-cards-style-dark .wpst-ew-contact-cards a{color:#fff}

/* Footer Brand 2.0 */
.wpst-ew-footer-brand{
  --footer-brand-accent:#2563eb;
}
.wpst-footer-brand-logo{
  display:block;
  width:140px;
  max-width:100%;
  height:auto;
  margin-bottom:16px;
}
.wpst-footer-brand-name{
  display:block;
  margin-bottom:14px;
  font-size:24px;
  letter-spacing:-.04em;
}
.wpst-ew-footer-brand p{
  max-width:46ch;
  margin:0;
  color:inherit;
  opacity:.72;
  line-height:1.7;
}
.wpst-footer-brand-contact{
  display:grid;
  gap:7px;
  margin-top:16px;
}
.wpst-footer-brand-contact a{
  width:max-content;
  max-width:100%;
  display:flex;
  align-items:center;
  gap:8px;
  color:inherit;
  text-decoration:none;
}
.wpst-footer-brand-contact a i{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:color-mix(in srgb,var(--footer-brand-accent) 10%,transparent);
  color:var(--footer-brand-accent);
}
.wpst-footer-brand-style-compact .wpst-footer-brand-contact{
  display:flex;
  flex-wrap:wrap;
  gap:8px 14px;
}
.wpst-footer-brand-style-soft .wpst-ew-footer-brand{
  padding:20px;
  border-radius:18px;
  background:rgba(148,163,184,.08);
}
.wpst-footer-brand-style-dark .wpst-ew-footer-brand{
  padding:20px;
  border-radius:18px;
  background:#0f172a;
  color:#fff;
}

/* Footer Links 2.0 */
.wpst-ew-footer-links h4,
.wpst-ew-footer-social h4{
  margin:0 0 14px;
  font-size:13px;
  letter-spacing:-.015em;
}
.wpst-ew-footer-links ul{
  display:grid;
  gap:3px;
  margin:0;
  padding:0;
  list-style:none;
}
.wpst-ew-footer-links a{
  min-height:36px;
  display:flex;
  align-items:center;
  gap:7px;
  color:inherit;
  text-decoration:none;
  border-radius:8px;
}
.wpst-ew-footer-links a>span{flex:1}
.wpst-ew-footer-links a small{
  padding:3px 6px;
  border-radius:999px;
  background:rgba(148,163,184,.12);
  font-size:8px;
}
.wpst-ew-footer-links a i{
  display:grid;
  place-items:center;
  opacity:.55;
  transition:transform .18s ease,opacity .18s ease;
}
.wpst-ew-footer-links a:hover i{
  opacity:1;
  transform:translate(2px,-2px);
}
.wpst-footer-links-style-line .wpst-ew-footer-links li+li{
  border-top:1px solid rgba(148,163,184,.18);
}
.wpst-footer-links-style-soft .wpst-ew-footer-links a{
  padding-inline:8px;
}
.wpst-footer-links-style-soft .wpst-ew-footer-links a:hover{
  background:rgba(148,163,184,.08);
}
.wpst-footer-links-style-compact .wpst-ew-footer-links ul{
  gap:0;
}
.wpst-footer-links-style-compact .wpst-ew-footer-links a{min-height:30px}

/* Footer Newsletter 2.0 */
.wpst-ew-footer-newsletter{
  --newsletter-accent:#2563eb;
}
.wpst-ew-footer-newsletter>small{
  display:block;
  margin-bottom:8px;
  color:var(--newsletter-accent);
  font-size:9px;
  font-weight:900;
  letter-spacing:.12em;
}
.wpst-ew-footer-newsletter h3{
  margin:0 0 8px;
  font-size:22px;
  line-height:1.15;
  letter-spacing:-.03em;
}
.wpst-ew-footer-newsletter p{
  margin:0;
  opacity:.7;
  line-height:1.6;
}
.wpst-ew-footer-newsletter form{
  display:flex;
  gap:7px;
  margin-top:16px;
}
.wpst-footer-newsletter-field{
  flex:1;
  min-width:0;
  min-height:44px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 11px;
  border:1px solid rgba(148,163,184,.28);
  border-radius:11px;
  background:rgba(255,255,255,.06);
}
.wpst-footer-newsletter-field>i{
  display:grid;
  place-items:center;
  opacity:.55;
}
.wpst-footer-newsletter-field input{
  width:100%;
  min-width:0;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
  color:inherit!important;
}
.wpst-ew-footer-newsletter button{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:0 14px;
  border:0;
  border-radius:11px;
  background:var(--newsletter-accent);
  color:#fff;
  font-weight:800;
  cursor:pointer;
}
.wpst-ew-footer-newsletter em{
  display:block;
  margin-top:8px;
  opacity:.5;
  font-size:9px;
  font-style:normal;
}
.wpst-footer-newsletter-style-soft .wpst-ew-footer-newsletter{
  padding:18px;
  border-radius:16px;
  background:rgba(148,163,184,.08);
}
.wpst-footer-newsletter-style-inline .wpst-ew-footer-newsletter>p,
.wpst-footer-newsletter-style-inline .wpst-ew-footer-newsletter>small{
  display:none;
}
.wpst-footer-newsletter-style-dark .wpst-ew-footer-newsletter{
  padding:18px;
  border-radius:16px;
  background:#0f172a;
  color:#fff;
}

/* Footer Social 2.0 */
.wpst-ew-footer-social>div{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
.wpst-ew-footer-social a{
  min-height:36px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:0 9px;
  border:1px solid rgba(148,163,184,.2);
  border-radius:10px;
  color:inherit;
  text-decoration:none;
  transition:transform .18s ease,border-color .18s ease,background-color .18s ease;
}
.wpst-ew-footer-social a:hover{
  transform:translateY(-2px);
  border-color:rgba(148,163,184,.4);
}
.wpst-ew-footer-social a b{
  display:grid;
  place-items:center;
  font-weight:700;
}
.wpst-ew-footer-social a span{font-size:10px;font-weight:700}
.wpst-footer-social-style-icons .wpst-ew-footer-social a{
  width:38px;
  height:38px;
  justify-content:center;
  padding:0;
}
.wpst-footer-social-style-icons .wpst-ew-footer-social a span{display:none}
.wpst-footer-social-style-pills .wpst-ew-footer-social a{
  border-radius:999px;
}
.wpst-footer-social-style-minimal .wpst-ew-footer-social a{
  padding:0;
  border-color:transparent;
  background:transparent;
}

/* Touch + mobile */
@media(max-width:767px){
  .wpst-gallery-carousel-controls button,
  .wpst-video-gallery-controls button{
    width:44px;
    height:44px;
  }
  .wpst-ew-contact-cards{
    grid-template-columns:1fr!important;
  }
  .wpst-ew-footer-newsletter form{
    flex-direction:column;
  }
  .wpst-ew-footer-newsletter button{
    width:100%;
  }
}
@media(prefers-reduced-motion:reduce){
  .wpst-gallery-zoom-item,
  .wpst-gallery-zoom-item img,
  .wpst-video-card,
  .wpst-video-poster img,
  .wpst-video-play,
  .wpst-ew-contact-cards article,
  .wpst-ew-footer-links a i,
  .wpst-ew-footer-social a{
    transition:none!important;
    transform:none!important;
  }
}


/* ==========================================================
   v3.2.45 — Video auto poster + Footer Brand contact fix
   ========================================================== */

/* Footer Brand 2.0: legacy footer CSS used `a span` as the old icon box.
   The text now has an explicit class and must never inherit that box size. */
.wpst-ew-footer-brand .wpst-footer-brand-contact{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  align-items:start;
  gap:8px;
}
.wpst-ew-footer-brand .wpst-footer-brand-contact .wpst-footer-contact-link{
  width:max-content;
  max-width:100%;
  min-height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  gap:9px;
  padding:0;
  color:inherit;
  text-decoration:none;
  line-height:1.35;
  opacity:.88;
}
.wpst-ew-footer-brand .wpst-footer-brand-contact .wpst-footer-contact-icon{
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
  flex:0 0 32px!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:10px!important;
  background:color-mix(in srgb,var(--footer-brand-accent,#2563eb) 10%,transparent)!important;
  color:var(--footer-brand-accent,#2563eb)!important;
  opacity:1!important;
  font-style:normal!important;
}
.wpst-ew-footer-brand .wpst-footer-brand-contact .wpst-footer-contact-icon svg{
  width:15px!important;
  height:15px!important;
  display:block!important;
}
.wpst-ew-footer-brand .wpst-footer-brand-contact .wpst-footer-contact-text{
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  display:block!important;
  place-items:unset!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:inherit!important;
  opacity:1!important;
  overflow-wrap:anywhere;
}
.wpst-footer-brand-style-compact .wpst-ew-footer-brand .wpst-footer-brand-contact{
  display:flex;
  flex-wrap:wrap;
  gap:8px 16px;
}
.wpst-footer-brand-style-dark .wpst-ew-footer-brand .wpst-footer-contact-icon{
  background:rgba(255,255,255,.09)!important;
}
@media(max-width:767px){
  .wpst-ew-footer-brand .wpst-footer-brand-contact .wpst-footer-contact-link{
    width:100%;
  }
}


/* ==========================================================
   v3.2.54 — Mobile Layout Stabilization
   Fixes mobile collisions seen in section cards + FAQ.
   ========================================================== */
@media (max-width:767px){
  /* Do not let generic responsive typography/spacing create horizontal overflow. */
  .elementor-widget[class*="wpst-"],
  .elementor-widget[class*="wpst-"] > .elementor-widget-container,
  .wpst-premium-section,
  .wpst-premium-section > .e-con-inner{
    min-width:0;
    max-width:100%;
  }

  /* Content/card actions: keep the CTA in document flow on phones.
     This prevents the floating arrow button from covering title/body copy. */
  :where(
    .wpst-ew-card,
    .wpst-service-card,
    .wpst-feature-card,
    .wpst-ew-feature-card,
    .wpst-ew-card-carousel article,
    .wpst-feature-mosaic article,
    .wpst-ew-icon-grid article
  ){
    min-width:0;
    overflow:hidden;
  }
  :where(
    .wpst-ew-card,
    .wpst-service-card,
    .wpst-feature-card,
    .wpst-ew-feature-card,
    .wpst-ew-card-carousel article,
    .wpst-feature-mosaic article,
    .wpst-ew-icon-grid article
  ) :is(h2,h3,h4,p){
    max-width:100%;
    overflow-wrap:normal;
    word-break:normal;
  }
  :where(
    .wpst-ew-card,
    .wpst-service-card,
    .wpst-feature-card,
    .wpst-ew-feature-card,
    .wpst-ew-card-carousel article,
    .wpst-feature-mosaic article,
    .wpst-ew-icon-grid article
  ) > :is(a,[class*="action"],[class*="link"]){
    position:static;
    transform:none;
    margin-top:14px;
  }

  /* FAQ: force a stable horizontal summary row. The title must never rotate,
     overlap the answer, or inherit transforms from open-state icon rules. */
  .wpst-ew-faq{
    width:100%;
    min-width:0;
    gap:12px;
  }
  .wpst-ew-faq details{
    width:100%;
    min-width:0;
    overflow:hidden;
  }
  .wpst-ew-faq summary{
    position:relative;
    width:100%;
    min-width:0;
    min-height:64px;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 42px;
    align-items:center;
    gap:12px;
    padding:14px 14px 14px 18px!important;
    writing-mode:horizontal-tb!important;
    text-orientation:mixed!important;
    transform:none!important;
  }
  .wpst-ew-faq summary > span{
    display:block;
    min-width:0;
    max-width:100%;
    margin:0;
    padding:0;
    position:static!important;
    transform:none!important;
    rotate:none!important;
    writing-mode:horizontal-tb!important;
    text-orientation:mixed!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:break-word;
    line-height:1.35;
  }
  .wpst-ew-faq .wpst-faq-toggle{
    position:static!important;
    grid-column:2;
    grid-row:1;
    justify-self:end;
    width:42px!important;
    height:42px!important;
    min-width:42px;
    min-height:42px;
    margin:0;
    flex:none;
  }
  .wpst-ew-faq details[open] .wpst-faq-toggle{
    transform:rotate(45deg)!important;
  }
  .wpst-ew-faq .wpst-faq-answer,
  .wpst-ew-faq details > div{
    position:static!important;
    width:100%;
    min-width:0;
    margin:0;
    padding:2px 18px 18px!important;
    transform:none!important;
    writing-mode:horizontal-tb!important;
    overflow-wrap:break-word;
  }
}

@media (max-width:480px){
  .wpst-ew-faq summary{
    grid-template-columns:minmax(0,1fr) 40px;
    padding:13px 12px 13px 16px!important;
  }
  .wpst-ew-faq .wpst-faq-toggle{
    width:40px!important;
    height:40px!important;
    min-width:40px;
    min-height:40px;
  }
  .wpst-ew-faq .wpst-faq-answer,
  .wpst-ew-faq details > div{
    padding:2px 16px 16px!important;
  }
}


/* ==========================================================
   v3.2.55 — Service Cards selector collision fix
   Old generic `i` / `span` selectors must never affect CTA internals.
   ========================================================== */
.wpst-ew-service-cards-pro article > .wpst-service-icon{
  position:static;
  display:grid;
  place-items:center;
}
.wpst-ew-service-cards-pro article > .wpst-service-action{
  position:static!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  display:inline-flex!important;
  align-items:center;
  justify-content:flex-start;
  gap:7px;
  margin-top:24px;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
}
.wpst-ew-service-cards-pro article > .wpst-service-action > i{
  position:static!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:inherit!important;
  font-size:inherit!important;
  transform:none;
}
.wpst-ew-service-cards-pro article > .wpst-service-action > i svg{
  width:14px!important;
  height:14px!important;
  display:block;
}

@media(max-width:767px){
  .wpst-ew-service-cards-pro article{
    min-height:0!important;
    padding:22px!important;
  }
  .wpst-ew-service-cards-pro article > .wpst-service-icon{
    width:48px!important;
    height:48px!important;
    margin:0 0 22px!important;
  }
  .wpst-ew-service-cards-pro article > h3{
    margin:0 0 8px!important;
  }
  .wpst-ew-service-cards-pro article > p{
    margin:0!important;
  }
  .wpst-ew-service-cards-pro article > .wpst-service-action{
    margin-top:14px!important;
  }
}


/* ==========================================================
   v3.2.56 — Responsive / Legacy CSS Stabilization
   Targeted cleanup after full widget selector audit.
   ========================================================== */

/* Feature Mosaic: only its explicit icon may float in the card corner. */
.wpst-fm-cards article{position:relative;min-width:0}
.wpst-fm-cards .wpst-feature-mosaic-icon{
  position:absolute;
  right:20px;
  top:18px;
}
.wpst-fm-cards article :is(h2,h3,h4,p){
  min-width:0;
  max-width:100%;
}

/* Footer Brand: text and icon are semantically separate. */
.wpst-footer-brand-contact .wpst-footer-contact-text{
  position:static!important;
  width:auto!important;
  height:auto!important;
  display:block!important;
  background:transparent!important;
  border:0!important;
}
.wpst-footer-brand-contact .wpst-footer-contact-icon{
  flex:0 0 auto;
}

/* General mobile layout guard for the complex section families used in templates. */
@media(max-width:767px){
  :is(
    .wpst-ew-feature-mosaic,
    .wpst-ew-feature-list,
    .wpst-ew-service-cards-pro,
    .wpst-ew-process-steps-pro,
    .wpst-ew-pricing-grid,
    .wpst-ew-contact-cards,
    .wpst-ew-tabs,
    .wpst-adv-accordion
  ){
    min-width:0;
    max-width:100%;
  }

  .wpst-ew-feature-mosaic{
    grid-template-columns:1fr!important;
  }
  .wpst-fm-main{
    min-height:280px;
  }
  .wpst-fm-cards{
    display:grid;
    grid-template-columns:1fr!important;
    min-width:0;
  }
  .wpst-fm-cards article{
    min-width:0;
    padding-right:58px;
  }
  .wpst-fm-cards .wpst-feature-mosaic-icon{
    right:16px;
    top:16px;
  }

  /* Prevent desktop hover transforms from leaving touch layouts shifted. */
  :is(
    .wpst-ew-service-cards-pro article,
    .wpst-fm-cards article,
    .wpst-ew-feature-items article,
    .wpst-ew-contact-cards article,
    .wpst-ew-pricing
  ){
    transform:none!important;
  }

  /* Long Turkish content and user-entered labels must stay inside cards. */
  :is(
    .wpst-ew-service-cards-pro,
    .wpst-fm-cards,
    .wpst-ew-feature-items,
    .wpst-ew-contact-cards,
    .wpst-ew-pricing,
    .wpst-ew-faq,
    .wpst-adv-accordion
  ) :is(h1,h2,h3,h4,h5,h6,p,a,strong,span,em){
    max-width:100%;
    overflow-wrap:break-word;
    word-break:normal;
  }
}

@media(min-width:768px) and (max-width:1024px){
  .wpst-ew-feature-mosaic{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .wpst-fm-cards{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}


/* ==========================================================
   v3.2.57 — Group Responsive Stabilization
   Hero / Slider / Carousel / Gallery / Tabs / Pricing / Contact
   ========================================================== */

/* Shared width safety */
:is(
  .wpst-ew-hero-split-modern,
  .wpst-ew-hero-slider,
  .wpst-content-slider,
  .wpst-ew-image-carousel,
  .wpst-ew-card-carousel,
  .wpst-gallery-zoom-pro,
  .wpst-video-gallery-pro,
  .wpst-ew-tabs,
  .wpst-ew-pricing,
  .wpst-ew-contact-cards,
  .wpst-wpforms-shell,
  .wpst-ew-testimonial-slider
){
  min-width:0;
  max-width:100%;
}

/* Slider tracks/items must be allowed to shrink instead of forcing page width. */
:is(
  .wpst-ew-slider-track,
  .wpst-content-slider-track,
  .wpst-ew-carousel-track,
  .wpst-ew-card-carousel-track,
  .wpst-ew-testimonial-track
){
  min-width:0;
}

/* Gallery/video cards must never exceed carousel viewport. */
:is(
  .wpst-gallery-zoom-item,
  .wpst-video-card,
  .wpst-ew-card-carousel article
){
  min-width:0;
  max-width:100%;
}

@media(max-width:767px){

  /* ---------- HERO ---------- */
  .wpst-ew-hero-split-modern{
    width:100%;
    grid-template-columns:minmax(0,1fr)!important;
    gap:24px!important;
    min-height:0!important;
    padding:28px 20px!important;
    border-radius:22px;
  }
  .wpst-hsm-copy,
  .wpst-hsm-media{
    min-width:0;
    width:100%;
  }
  .wpst-hsm-copy h1{
    max-width:100%;
    font-size:clamp(36px,11vw,54px)!important;
    line-height:1!important;
    overflow-wrap:break-word;
  }
  .wpst-hsm-copy p{
    max-width:100%;
  }
  .wpst-hsm-actions{
    display:grid;
    grid-template-columns:1fr;
    width:100%;
    gap:9px;
  }
  .wpst-hsm-actions a{
    width:100%;
    min-height:48px;
  }
  .wpst-hsm-media,
  .wpst-hsm-media img,
  .wpst-hsm-placeholder{
    min-height:280px!important;
  }
  .wpst-hsm-float{
    left:12px;
    right:12px;
    bottom:12px;
    min-width:0;
    max-width:calc(100% - 24px);
  }

  /* ---------- HERO SLIDER ---------- */
  .wpst-ew-hero-slider{
    width:100%;
    overflow:hidden;
    border-radius:20px;
  }
  .wpst-ew-hero-slide{
    min-width:0;
  }
  .wpst-ew-hero-slide-inner{
    width:100%;
    min-width:0;
    padding:48px 20px 94px!important;
  }
  .wpst-ew-hero-slide h2{
    max-width:100%;
    font-size:clamp(36px,11vw,56px)!important;
    overflow-wrap:break-word;
  }
  .wpst-ew-hero-slide p{
    max-width:100%;
  }
  .wpst-ew-hero-slide a{
    min-height:46px;
    max-width:100%;
  }
  .wpst-ew-slider-prev,
  .wpst-ew-slider-next{
    bottom:16px!important;
    top:auto!important;
    width:42px!important;
    height:42px!important;
  }
  .wpst-ew-slider-dots{
    bottom:29px!important;
    max-width:calc(100% - 120px);
    overflow:hidden;
  }

  /* ---------- CONTENT SLIDER ---------- */
  .wpst-content-slider{
    width:100%;
    border-radius:20px;
  }
  .wpst-content-slide,
  .wpst-content-slide.is-active{
    grid-template-columns:minmax(0,1fr)!important;
    min-height:0!important;
  }
  .wpst-content-slide-copy{
    min-width:0;
    padding:28px 20px!important;
  }
  .wpst-content-slide-copy h3{
    max-width:100%;
    font-size:clamp(32px,10vw,48px)!important;
    overflow-wrap:break-word;
  }
  .wpst-content-slide-copy a{
    max-width:100%;
  }
  .wpst-content-slide-media,
  .wpst-content-slide-media img{
    min-height:240px!important;
    max-height:360px;
  }
  .wpst-content-slider-nav{
    min-height:58px;
  }

  /* ---------- CAROUSELS ---------- */
  .wpst-ew-image-carousel,
  .wpst-ew-card-carousel{
    width:100%;
    overflow:hidden;
  }
  .wpst-ew-carousel-track,
  .wpst-ew-card-carousel-track{
    width:auto;
    min-width:0;
  }
  .wpst-ew-image-carousel figure,
  .wpst-ew-card-carousel-track>article{
    min-width:0;
    max-width:100%;
  }
  .wpst-ew-carousel-nav,
  .wpst-ew-card-nav{
    justify-content:flex-start;
  }
  .wpst-ew-carousel-nav button,
  .wpst-ew-card-nav button{
    width:44px;
    height:44px;
    flex:0 0 44px;
  }

  /* ---------- GALLERY / VIDEO GALLERY ---------- */
  .wpst-gallery-zoom-pro,
  .wpst-video-gallery-pro{
    max-width:100%;
    min-width:0;
  }
  .wpst-gallery-zoom-pro.is-carousel,
  .wpst-video-gallery-pro.is-carousel{
    overflow-x:auto;
    overflow-y:hidden;
    overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
  }
  .wpst-gallery-zoom-pro.is-carousel .wpst-gallery-zoom-item,
  .wpst-video-gallery-pro.is-carousel .wpst-video-card{
    scroll-snap-align:start;
    max-width:min(86vw,360px);
  }
  .wpst-gallery-carousel-controls,
  .wpst-video-gallery-controls{
    justify-content:flex-start;
    margin-bottom:10px;
  }
  .wpst-gallery-carousel-controls button,
  .wpst-video-gallery-controls button{
    width:44px;
    height:44px;
    flex:0 0 44px;
  }
  .wpst-gallery-zoom-icon,
  .wpst-video-play{
    pointer-events:none;
  }

  /* ---------- TABS ---------- */
  .wpst-ew-tabs{
    width:100%;
    min-width:0;
  }
  .wpst-ew-tabs-nav{
    width:100%;
    max-width:100%;
    display:flex!important;
    flex-direction:row!important;
    gap:6px;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;
  }
  .wpst-ew-tabs-nav button{
    flex:0 0 auto;
    min-height:44px;
    scroll-snap-align:start;
  }
  .wpst-tabs-style-vertical .wpst-ew-tabs{
    display:block!important;
  }
  .wpst-tabs-style-vertical .wpst-ew-tabs-nav{
    flex-direction:row!important;
  }
  .wpst-ew-tabs-panels,
  .wpst-ew-tabs-panels article{
    min-width:0;
    max-width:100%;
  }
  .wpst-ew-tabs-panels article{
    padding:18px 16px;
  }

  /* ---------- PRICING ---------- */
  .wpst-ew-pricing{
    width:100%;
    max-width:none!important;
    padding:24px 20px!important;
    border-radius:20px;
  }
  .wpst-ew-price{
    min-width:0;
    flex-wrap:wrap;
    align-items:flex-end;
    font-size:clamp(34px,12vw,50px)!important;
  }
  .wpst-ew-pricing li{
    min-width:0;
    align-items:flex-start;
  }
  .wpst-ew-pricing li>span{
    flex:0 0 25px;
  }
  .wpst-ew-pricing .wpst-ew-button,
  .wpst-ew-pricing a[class*="button"]{
    width:100%;
    min-height:48px;
    justify-content:center;
  }

  /* ---------- CONTACT ---------- */
  .wpst-ew-contact-cards{
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px;
  }
  .wpst-ew-contact-cards article{
    width:100%;
    min-width:0;
    padding:18px;
  }
  .wpst-ew-contact-cards a,
  .wpst-ew-contact-cards strong{
    min-width:0;
    overflow-wrap:anywhere;
  }
  .wpst-wpforms-shell{
    width:100%;
    max-width:100%;
    min-width:0;
    padding:18px 16px!important;
    border-radius:18px!important;
  }
  .wpst-wpforms-shell .wpforms-field-container,
  .wpst-wpforms-shell .wpforms-field,
  .wpst-wpforms-shell input,
  .wpst-wpforms-shell select,
  .wpst-wpforms-shell textarea{
    min-width:0!important;
    max-width:100%!important;
  }
  .wpst-wpforms-shell .wpforms-submit{
    width:100%!important;
    min-height:48px!important;
  }

  /* ---------- TESTIMONIAL / PORTFOLIO ---------- */
  .wpst-ew-testimonial-slider{
    width:100%;
    min-width:0;
    padding:24px 18px 76px!important;
  }
  .wpst-ew-testimonial-slider blockquote{
    max-width:100%;
    overflow-wrap:break-word;
  }
  .wpst-ew-testimonial-controls{
    left:18px!important;
    right:auto!important;
    bottom:18px!important;
  }
  .wpst-ew-portfolio{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .wpst-ew-portfolio>a,
  .wpst-ew-project-media{
    min-width:0;
    max-width:100%;
  }
}

/* Tablet: avoid desktop-style split layouts becoming too narrow. */
@media(min-width:768px) and (max-width:1024px){
  .wpst-ew-hero-split-modern{
    grid-template-columns:minmax(0,1fr)!important;
    min-height:0!important;
  }
  .wpst-hsm-media{
    min-height:380px;
  }
  .wpst-content-slide,
  .wpst-content-slide.is-active{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .wpst-ew-contact-cards{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .wpst-tabs-style-vertical .wpst-ew-tabs{
    grid-template-columns:minmax(180px,.35fr) minmax(0,.65fr);
  }
}

/* Touch devices should not keep desktop hover-only displacement. */
@media(hover:none), (pointer:coarse){
  :is(
    .wpst-ew-hero-slide a,
    .wpst-hsm-actions a,
    .wpst-ew-card-carousel-track>article,
    .wpst-gallery-zoom-item,
    .wpst-video-card,
    .wpst-ew-pricing,
    .wpst-ew-contact-cards article,
    .wpst-ew-portfolio>a
  ){
    transform:none!important;
  }
}


/* ==========================================================
   v3.2.58 — Remaining Widget Families Stabilization
   Blog / Post / Team / Process / Stats / Logo / CTA / Image tools
   ========================================================== */

:is(
  .wpst-blog-listing,
  .wpst-blog-grid,
  .wpst-related-posts,
  .wpst-post-content,
  .wpst-team-pro,
  .wpst-ew-process-steps-pro,
  .wpst-ew-timeline-modern,
  .wpst-ew-icon-steps,
  .wpst-ew-stats-grid,
  .wpst-ew-number-cards,
  .wpst-ew-logo-cloud,
  .wpst-ew-logo-marquee,
  .wpst-ew-cta,
  .wpst-ew-morphing-cta,
  .wpst-ew-image-text,
  .wpst-ew-before-after,
  .wpst-image-reveal,
  .wpst-ew-image-hotspots
){
  min-width:0;
  max-width:100%;
}

@media(max-width:767px){

  /* ---------- BLOG / ARCHIVE / SINGLE ---------- */
  .wpst-blog-listing,
  .wpst-blog-grid,
  .wpst-related-posts-grid{
    grid-template-columns:minmax(0,1fr)!important;
    gap:16px!important;
  }
  .wpst-blog-card,
  .wpst-related-post-card{
    min-width:0;
    max-width:100%;
  }
  .wpst-blog-thumb,
  .wpst-related-post-thumb,
  .wpst-post-image{
    min-width:0;
    max-width:100%;
    overflow:hidden;
  }
  .wpst-blog-thumb img,
  .wpst-related-post-thumb img,
  .wpst-post-image img{
    width:100%;
    max-width:100%;
    height:auto;
    object-fit:cover;
  }
  .wpst-blog-card-body,
  .wpst-related-post-body{
    min-width:0;
    padding:18px 16px!important;
  }
  .wpst-blog-card h3,
  .wpst-related-post-card h3,
  .wpst-post-title{
    max-width:100%;
    overflow-wrap:break-word;
  }
  .wpst-blog-meta,
  .wpst-post-meta{
    display:flex;
    flex-wrap:wrap;
    gap:7px 10px;
    min-width:0;
  }
  .wpst-blog-toolbar{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .wpst-blog-search{
    width:100%;
    min-width:0;
  }
  .wpst-blog-search input{
    min-width:0;
    width:100%;
  }
  .wpst-blog-filters{
    display:flex;
    max-width:100%;
    overflow-x:auto;
    gap:7px;
    padding-bottom:4px;
    scrollbar-width:none;
  }
  .wpst-blog-filters::-webkit-scrollbar{display:none}
  .wpst-blog-filters a{
    flex:0 0 auto;
    min-height:40px;
  }
  .wpst-blog-pagination,
  .wpst-blog-loadmore{
    max-width:100%;
    overflow-x:auto;
  }
  .wpst-post-navigation{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .wpst-post-nav-prev,
  .wpst-post-nav-next{
    width:100%;
    min-width:0;
  }
  .wpst-post-share{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
  }
  .wpst-post-content :is(img,video,iframe,table,pre){
    max-width:100%;
  }
  .wpst-post-content table{
    display:block;
    overflow-x:auto;
  }
  .wpst-post-content pre{
    overflow-x:auto;
  }

  /* ---------- TEAM ---------- */
  .wpst-team-pro{
    display:flex!important;
    width:100%;
    gap:14px!important;
    overflow-x:auto!important;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    padding-bottom:8px;
    scrollbar-width:none;
  }
  .wpst-team-pro::-webkit-scrollbar{display:none}
  .wpst-team-pro article{
    flex:0 0 min(82vw,320px)!important;
    min-width:0;
    max-width:320px;
    scroll-snap-align:start;
  }

  /* ---------- PROCESS / TIMELINE / STEPS ---------- */
  .wpst-ew-process-steps-pro{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    border:0!important;
    overflow:visible!important;
  }
  .wpst-ew-process-steps-pro article{
    width:100%;
    min-width:0;
    border:1px solid #e2e8f0!important;
    border-radius:16px;
    padding:18px!important;
  }
  .wpst-ew-icon-steps{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .wpst-ew-icon-steps article{
    min-width:0;
    max-width:100%;
  }
  .wpst-ew-timeline-modern{
    min-width:0;
  }
  .wpst-ew-timeline-modern:before{
    left:24px!important;
  }
  .wpst-ew-timeline-modern article{
    grid-template-columns:48px minmax(0,1fr)!important;
    gap:12px!important;
    min-width:0;
  }
  .wpst-ew-timeline-modern article>i{
    display:none!important;
  }

  /* ---------- STATS / COUNTERS ---------- */
  .wpst-ew-stats-grid,
  .wpst-ew-number-cards{
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
  }
  .wpst-ew-stats-grid article,
  .wpst-ew-number-cards article{
    min-width:0;
    min-height:0!important;
    padding:18px!important;
  }
  .wpst-ew-animated-counter,
  .wpst-ew-counter{
    min-width:0;
    max-width:100%;
  }
  .wpst-ew-animated-counter strong,
  .wpst-ew-counter strong{
    font-size:clamp(34px,13vw,54px)!important;
    overflow-wrap:normal;
  }

  /* ---------- LOGOS ---------- */
  .wpst-ew-logo-cloud,
  .wpst-logo-grid-pro{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
  .wpst-ew-logo-cloud>*,
  .wpst-logo-grid-pro>*{
    min-width:0;
  }
  .wpst-ew-logo-cloud img,
  .wpst-logo-grid-pro img{
    max-width:100%;
    height:auto;
    object-fit:contain;
  }
  .wpst-ew-logo-marquee{
    overflow:hidden;
  }
  .wpst-ew-logo-marquee-track{
    min-width:max-content;
  }

  /* ---------- CTA ---------- */
  .wpst-ew-cta,
  .wpst-ew-morphing-cta{
    width:100%;
    min-width:0;
    padding:28px 20px!important;
    border-radius:20px!important;
  }
  .wpst-ew-cta{
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:20px!important;
  }
  .wpst-cta-copy{
    width:100%;
    min-width:0;
  }
  .wpst-cta-copy :is(h2,h3,p){
    max-width:100%;
  }
  .wpst-ew-cta .wpst-ew-button,
  .wpst-ew-morphing-cta .wpst-ew-button,
  .wpst-ew-morphing-cta a[class*="button"]{
    width:100%;
    min-height:48px;
    justify-content:center;
  }
  .wpst-cta-shape{
    right:-150px!important;
    top:auto!important;
    bottom:-120px!important;
    width:280px!important;
    height:280px!important;
    pointer-events:none;
  }

  /* ---------- IMAGE + TEXT / REVEAL / BEFORE-AFTER ---------- */
  .wpst-ew-image-text{
    grid-template-columns:minmax(0,1fr)!important;
    gap:22px!important;
  }
  .wpst-ew-image-text.is-reverse .wpst-ew-image-text-media{
    order:0!important;
  }
  .wpst-ew-image-text-media{
    width:100%;
    min-height:260px!important;
  }
  .wpst-ew-image-text-media img{
    min-height:260px!important;
    max-height:420px;
  }
  .wpst-image-text-style-overlap .wpst-ew-image-text-copy,
  .wpst-image-text-style-overlap .wpst-ew-image-text.is-reverse .wpst-ew-image-text-copy{
    margin:0!important;
    padding:20px!important;
  }
  .wpst-image-reveal,
  .wpst-image-reveal-media{
    min-width:0;
    max-width:100%;
  }
  .wpst-image-reveal-media img{
    max-width:100%;
  }
  .wpst-ew-before-after{
    min-width:0;
    max-width:100%;
    overflow:hidden;
  }
  .wpst-ew-before-after input{
    left:6%!important;
    width:88%!important;
    max-width:88%;
  }
  .wpst-ba-label{
    max-width:45%;
    white-space:normal;
    text-align:center;
  }

  /* ---------- IMAGE HOTSPOTS ---------- */
  .wpst-ew-image-hotspots{
    min-width:0;
    max-width:100%;
    overflow:hidden;
  }
  .wpst-ew-image-hotspots img{
    max-width:100%;
    height:auto;
  }
  .wpst-hotspot{
    min-width:40px;
    min-height:40px;
    touch-action:manipulation;
  }
}

/* Tablet tuning */
@media(min-width:768px) and (max-width:1024px){
  .wpst-blog-listing,
  .wpst-blog-grid,
  .wpst-related-posts-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .wpst-ew-process-steps-pro{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .wpst-ew-stats-grid,
  .wpst-ew-number-cards{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .wpst-ew-logo-cloud,
  .wpst-logo-grid-pro{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

/* Touch devices: remove hover-only movement on remaining card families. */
@media(hover:none), (pointer:coarse){
  :is(
    .wpst-blog-card,
    .wpst-related-post-card,
    .wpst-team-pro article,
    .wpst-ew-process-steps-pro article,
    .wpst-ew-stats-grid article,
    .wpst-ew-number-cards article,
    .wpst-image-reveal,
    .wpst-ew-image-text-media img
  ){
    transform:none!important;
  }
}


/* v3.2.87 — Video Gallery 3.0 compatibility overrides */
.wpst-video-gallery-pro .wpst-video-play svg{
  fill:none!important;
}
.wpst-video-gallery-pro .wpst-video-play svg circle{
  display:none!important;
}
.wpst-video-gallery-pro .wpst-video-play svg path{
  fill:currentColor!important;
  stroke:none!important;
}


/* ==========================================================
   v3.2.92 · Widget Quality Round 5.0
   Deep controls + composition differentiation
   ========================================================== */

/* Gradient Heading */
.wpst-gradient-heading-layout-center .wpst-ew-gradient-heading{text-align:center;margin-inline:auto}
.wpst-gradient-heading-layout-split .wpst-ew-gradient-heading{
  display:grid;grid-template-columns:minmax(180px,.4fr) minmax(0,1fr);column-gap:clamp(28px,5vw,72px);align-items:start
}
.wpst-gradient-heading-layout-split .wpst-ew-gradient-heading small{grid-column:1}
.wpst-gradient-heading-layout-split .wpst-ew-gradient-heading h2,
.wpst-gradient-heading-layout-split .wpst-ew-gradient-heading p{grid-column:2}
.wpst-gradient-heading-layout-display .wpst-ew-gradient-heading h2{
  font-size:clamp(46px,8vw,120px);line-height:.88;letter-spacing:-.065em
}
.wpst-gradient-heading-mode-accent .wpst-ew-gradient-heading h2{
  -webkit-text-fill-color:initial;background:none;color:inherit
}
.wpst-gradient-heading-mode-accent .wpst-ew-gradient-heading h2:after{
  content:"";display:block;width:min(180px,30%);height:7px;margin-top:18px;border-radius:999px;
  background:linear-gradient(90deg,var(--wpst-g1),var(--wpst-g2))
}

/* Commerce Hero */
.wpst-ew-hero-commerce{position:relative;overflow:hidden}
.wpst-commerce-layout-editorial .wpst-ew-hero-commerce{
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)
}
.wpst-commerce-layout-editorial .wpst-hc-copy h1{font-size:clamp(48px,7vw,104px);line-height:.9}
.wpst-commerce-layout-product-focus .wpst-ew-hero-commerce{
  grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr)
}
.wpst-commerce-layout-product-focus .wpst-hc-media img{object-fit:contain}
.wpst-commerce-layout-center .wpst-ew-hero-commerce{
  grid-template-columns:minmax(0,1fr);text-align:center
}
.wpst-commerce-layout-center .wpst-hc-copy{margin-inline:auto;max-width:850px}
.wpst-commerce-layout-center .wpst-hc-media{margin-inline:auto}
.wpst-ew-hero-commerce .wpst-hc-media{overflow:hidden}
.wpst-ew-hero-commerce .wpst-hc-media>b{background:var(--wpst-commerce-accent,#7c3aed)}

/* Promo Banner */
.wpst-promo-banner{position:relative;isolation:isolate;overflow:hidden}
.wpst-promo-banner:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.35}
.wpst-promo-banner>*{position:relative;z-index:2}
.wpst-promo-media-left .wpst-promo-banner .wpst-promo-media{order:-1}
.wpst-promo-layout-editorial .wpst-promo-banner{
  grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);align-items:end
}
.wpst-promo-layout-editorial .wpst-promo-copy h3{
  font-size:clamp(38px,5vw,72px);line-height:.95;letter-spacing:-.05em
}

/* Icon List */
.wpst-ew-icon-list{display:grid}
.wpst-ew-icon-list-content{display:flex;flex-direction:column;min-width:0;row-gap:3px}
.wpst-ew-icon-list-content>h3,.wpst-ew-icon-list-content>p{margin:0}

/* v3.3.36 — compact checklist presentation, based on the reference list style. */
.elementor-widget.wpst-icon-list-layout-checklist .wpst-ew-icon-list{
  gap:8px;
}
.elementor-widget.wpst-icon-list-layout-checklist .wpst-ew-icon-list article{
  display:flex;
  align-items:flex-start;
  gap:8px;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  min-width:0;
}
.elementor-widget.wpst-icon-list-layout-checklist .wpst-ew-icon-list-icon{
  width:18px;
  height:18px;
  flex:0 0 18px;
  margin-top:1px;
  border-radius:999px;
  background:#f4e8c8;
  color:#916b24;
  font-size:11px;
  line-height:1;
}
.elementor-widget.wpst-icon-list-layout-checklist .wpst-ew-icon-list-icon :is(svg,.wpst-icon-svg){
  width:11px;
  height:11px;
}
.elementor-widget.wpst-icon-list-layout-checklist .wpst-ew-icon-list-content{
  flex:1 1 auto;
  min-width:0;
}
.elementor-widget.wpst-icon-list-layout-checklist .wpst-ew-icon-list h3{
  margin:0;
  font-size:14px;
  line-height:1.35;
  font-weight:600;
}
.elementor-widget.wpst-icon-list-layout-checklist .wpst-ew-icon-list p{
  margin:0;
  font-size:13px;
  line-height:1.5;
}
.wpst-icon-list-layout-minimal .wpst-ew-icon-list article{
  padding-inline:0!important;border-radius:0!important;border-width:0 0 1px!important;background:transparent!important
}
.wpst-icon-list-layout-rows .wpst-ew-icon-list article{
  display:grid;grid-template-columns:56px minmax(0,1fr);align-items:center
}
.wpst-icon-list-layout-compact .wpst-ew-icon-list article{padding:12px}
.wpst-icon-list-layout-compact .wpst-ew-icon-list-icon{width:36px;height:36px}

/* Icon Steps */
.wpst-ew-icon-steps{position:relative}
.wpst-icon-steps-layout-line .wpst-ew-icon-steps:before{
  content:"";position:absolute;left:7%;right:7%;top:48px;height:1px;background:var(--wpst-step-line,#dbe3ee)
}
.wpst-icon-steps-layout-line .wpst-ew-icon-steps article{background:transparent;border:0;box-shadow:none}
.wpst-icon-steps-layout-minimal .wpst-ew-icon-steps article{
  background:transparent;border-width:0 0 1px;border-radius:0!important;box-shadow:none
}
.wpst-icon-steps-layout-editorial .wpst-ew-icon-steps article h3{
  font-size:clamp(26px,3vw,42px);letter-spacing:-.04em
}
.wpst-ew-icon-steps-icon{color:var(--wpst-step-accent,#315cf5)}

.wpst-icon-steps-layout-reference-dark .wpst-ew-icon-steps{align-items:stretch}
.wpst-icon-steps-layout-reference-dark .wpst-ew-icon-steps article{
  position:relative;display:flex;align-items:center;justify-content:flex-start;gap:22px;
  min-height:100%;padding:0;background:transparent;border:0;box-shadow:none;overflow:visible
}
.wpst-icon-steps-layout-reference-dark .wpst-ew-step-main{
  display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px;min-width:0;flex:1 1 auto
}
.wpst-icon-steps-layout-reference-dark .wpst-ew-icon-steps-icon{
  width:72px;height:72px;border-radius:999px;background:transparent;
  border:1.5px solid color-mix(in srgb,var(--wpst-step-accent,#c8a56a) 72%, #ffffff 28%);
  color:var(--wpst-step-accent,#c8a56a);box-shadow:none;flex:0 0 auto
}
.wpst-icon-steps-layout-reference-dark .wpst-ew-icon-steps-icon :is(svg,.wpst-icon-svg,i){
  color:inherit;fill:currentColor
}
.wpst-icon-steps-layout-reference-dark .wpst-ew-step-copy{min-width:0}
.wpst-icon-steps-layout-reference-dark .wpst-ew-step-no{
  position:static;display:block;margin:0 0 6px;color:var(--wpst-step-accent,#c8a56a);
  font-size:18px;font-weight:800;letter-spacing:.08em;line-height:1
}
.wpst-icon-steps-layout-reference-dark .wpst-ew-icon-steps article h3{
  margin:0 0 6px;color:var(--e-global-color-text,#fff);font-size:clamp(21px,2.1vw,32px);
  line-height:1.12;letter-spacing:-.02em
}
.wpst-icon-steps-layout-reference-dark .wpst-ew-icon-steps article p{
  margin:0;color:color-mix(in srgb,var(--e-global-color-text,#ffffff) 74%, transparent);
  font-size:14px;line-height:1.55
}
.wpst-icon-steps-layout-reference-dark .wpst-ew-step-arrow{
  display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;align-self:center;
  color:var(--wpst-step-accent,#c8a56a);font-size:26px;line-height:1;opacity:.92;transform:translateY(-1px)
}
.wpst-icon-steps-layout-reference-dark .wpst-ew-icon-steps article:last-child .wpst-ew-step-arrow{display:none}
@media(max-width:1024px){
  .wpst-icon-steps-layout-reference-dark .wpst-ew-icon-steps article{gap:14px}
  .wpst-icon-steps-layout-reference-dark .wpst-ew-step-main{gap:14px}
  .wpst-icon-steps-layout-reference-dark .wpst-ew-icon-steps-icon{width:64px;height:64px}
  .wpst-icon-steps-layout-reference-dark .wpst-ew-step-arrow{font-size:22px}
}
@media(max-width:767px){
  .wpst-icon-steps-layout-reference-dark .wpst-ew-icon-steps article{padding:0 0 18px}
  .wpst-icon-steps-layout-reference-dark .wpst-ew-step-main{gap:12px}
  .wpst-icon-steps-layout-reference-dark .wpst-ew-icon-steps-icon{width:58px;height:58px}
  .wpst-icon-steps-layout-reference-dark .wpst-ew-step-no{font-size:16px;margin-bottom:4px}
  .wpst-icon-steps-layout-reference-dark .wpst-ew-icon-steps article h3{font-size:22px}
  .wpst-icon-steps-layout-reference-dark .wpst-ew-step-arrow{display:none}
}

/* Process Steps Pro */
.wpst-process-connector-no .wpst-ew-process-steps-pro:before,
.wpst-process-connector-no .wpst-ew-process-steps-pro article:after{display:none!important}
.wpst-ew-process-steps-pro article>b{color:var(--wpst-process-accent,#315cf5)}
.wpst-process-layout-cards .wpst-ew-process-steps-pro article{
  border:1px solid #e5e7eb;background:#fff
}
.wpst-process-layout-editorial .wpst-ew-process-steps-pro article{
  grid-template-columns:90px minmax(0,1fr);padding-inline:0!important;border-radius:0!important;border-width:0 0 1px!important
}

/* Timeline */
.wpst-timeline-line-no .wpst-ew-timeline-modern:before,
.wpst-timeline-line-no .wpst-ew-timeline-modern article>i{display:none!important}
.wpst-ew-timeline-modern article>span{color:var(--wpst-timeline-accent,#315cf5)}
.wpst-timeline-layout-cards .wpst-ew-timeline-modern article>div{
  border:1px solid #e5e7eb;background:#fff;padding:18px
}
.wpst-timeline-layout-milestones .wpst-ew-timeline-modern article>span{
  font-size:clamp(30px,4vw,54px);font-weight:900;letter-spacing:-.05em
}

/* Flip Box */
.wpst-ew-flip-box{perspective:1200px}
.wpst-flip-front{position:relative}
.wpst-flip-front:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none}
.wpst-flip-front>div{position:relative;z-index:2}
.wpst-flip-badge{
  display:inline-flex;margin-bottom:12px;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.14);
  color:#fff;font-size:9px;font-weight:900;letter-spacing:.08em
}
.wpst-flip-direction-vertical .wpst-ew-flip-box:hover .wpst-flip-inner{transform:rotateX(180deg)}
.wpst-flip-direction-vertical .wpst-flip-back{transform:rotateX(180deg)}
.wpst-flip-direction-fade .wpst-flip-inner{transform:none!important}
.wpst-flip-direction-fade .wpst-flip-back{transform:none;opacity:0;transition:opacity .35s ease}
.wpst-flip-direction-fade .wpst-ew-flip-box:hover .wpst-flip-back{opacity:1}
.wpst-flip-direction-fade .wpst-ew-flip-box:hover .wpst-flip-front{opacity:0}

@media(max-width:767px){
  .wpst-gradient-heading-layout-split .wpst-ew-gradient-heading{grid-template-columns:minmax(0,1fr)}
  .wpst-gradient-heading-layout-split .wpst-ew-gradient-heading small,
  .wpst-gradient-heading-layout-split .wpst-ew-gradient-heading h2,
  .wpst-gradient-heading-layout-split .wpst-ew-gradient-heading p{grid-column:1}
  .wpst-icon-steps-layout-line .wpst-ew-icon-steps:before{display:none}
}


/* ==========================================================
   v3.2.93 · Widget + Template Library Quality Round 6.0
   ========================================================== */

/* Floating Icons */
.wpst-floating-icons-layout-grid .wpst-ew-floating-icons{display:grid}
.wpst-floating-icons-layout-grid .wpst-ew-floating-icons article{transform:none!important}
.wpst-floating-icons-layout-compact .wpst-ew-floating-icons article{padding:12px}
.wpst-floating-icons-layout-compact .wpst-ew-floating-icons article>div{width:34px;height:34px}

/* Form Shell */
.wpst-form-shell-position-left .wpst-form-shell-form{order:-1}
.wpst-form-shell-layout-editorial .wpst-form-shell{
  grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)
}
.wpst-form-shell-layout-editorial .wpst-form-shell-copy h3{
  font-size:clamp(42px,6vw,78px);line-height:.94;letter-spacing:-.055em
}

/* Hover Reveal */
.wpst-hover-reveal-layout-editorial .wpst-ew-hover-reveal{
  grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr)
}
.wpst-hover-reveal-layout-editorial .wpst-ew-hover-reveal article:first-child{grid-row:span 2}
.wpst-hover-reveal-layout-full .wpst-ew-hover-reveal{grid-template-columns:1fr!important}
.wpst-hover-reveal-layout-full .wpst-ew-hover-reveal article{min-height:520px}

/* Hospitality */
.wpst-hospitality-layout-editorial .wpst-ew-hero-hospitality .wpst-hh-copy{
  max-width:900px
}
.wpst-hospitality-layout-editorial .wpst-ew-hero-hospitality .wpst-hh-copy h1{
  font-size:clamp(52px,8vw,112px);line-height:.88;letter-spacing:-.06em
}
.wpst-hospitality-layout-center .wpst-ew-hero-hospitality{
  text-align:center;justify-content:center
}
.wpst-hospitality-layout-center .wpst-hh-copy{margin-inline:auto}
.wpst-hospitality-layout-center .wpst-hh-rating{left:50%;right:auto;transform:translateX(-50%)}

/* Booking Strip */
.wpst-ew-booking-strip{gap:var(--wpst-quality-gap,12px)}
.wpst-ew-booking-strip>div{min-width:0}
.wpst-ew-booking-strip>a{white-space:nowrap}

/* Expert Profile */
.wpst-expert-profile{gap:var(--wpst-quality-gap,24px)}
.wpst-expert-layout-editorial .wpst-expert-profile{
  grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)
}
.wpst-expert-layout-editorial .wpst-expert-copy h3{
  font-size:clamp(38px,5vw,68px);letter-spacing:-.05em
}

/* Number Cards */
.wpst-ew-number-cards{gap:var(--wpst-quality-gap,18px)}
.wpst-ew-number-cards article>span{
  font-variant-numeric:tabular-nums
}

/* Parallax Image */
.wpst-ew-parallax-image{isolation:isolate}
.wpst-ew-parallax-image figcaption{
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px)
}

/* Price List */
.wpst-price-list{gap:var(--wpst-quality-gap,0)}
.wpst-price-list-layout-cards .wpst-price-list article{
  margin-bottom:12px;border:1px solid #e5e7eb
}
.wpst-price-list-layout-dots .wpst-price-list article:before{
  content:"";flex:1;border-bottom:1px dotted #cbd5e1;order:2;margin:0 12px
}

/* Product Showcase */
.wpst-ew-product-showcase{gap:var(--wpst-quality-gap,18px)}
.wpst-ew-product-showcase article{
  transition:transform .25s ease,box-shadow .25s ease
}
.wpst-ew-product-showcase article:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 42px rgba(15,23,42,.10)
}

@media(max-width:767px){
  .wpst-hover-reveal-layout-editorial .wpst-ew-hover-reveal,
  .wpst-form-shell-layout-editorial .wpst-form-shell,
  .wpst-expert-layout-editorial .wpst-expert-profile{
    grid-template-columns:1fr
  }
  .wpst-hover-reveal-layout-editorial .wpst-ew-hover-reveal article:first-child{grid-row:auto}
  .wpst-hover-reveal-layout-full .wpst-ew-hover-reveal article{min-height:380px}
}


/* ==========================================================
   v3.2.96 · WPSoft Widget Spacing System
   Fixes adjacent widget and internal-item "sticking" issues.
   ========================================================== */

/*
 * 1) Adjacent WPSoft Elementor widgets
 * Elementor themes/containers can set widget spacing to zero. WPSoft widgets
 * therefore carry a small local fallback. The value is responsive and can be
 * changed from WPSoft Gelişmiş > Widgetlar Arası Otomatik Boşluk.
 */
.elementor-widget[class*="elementor-widget-wpsoft-"]{
  --wpst-widget-stack-gap:18px;
}

/* Legacy Elementor columns. */
.elementor-widget-wrap >
.elementor-widget[class*="elementor-widget-wpsoft-"] +
.elementor-widget[class*="elementor-widget-wpsoft-"]{
  margin-block-start:var(--wpst-widget-stack-gap,18px);
}

/* Modern Elementor containers.
   Keep this deliberately smaller than a section gap so an existing container
   gap is not visually exaggerated. */
.e-con >
.elementor-widget[class*="elementor-widget-wpsoft-"] +
.elementor-widget[class*="elementor-widget-wpsoft-"],
.e-con-inner >
.elementor-widget[class*="elementor-widget-wpsoft-"] +
.elementor-widget[class*="elementor-widget-wpsoft-"]{
  margin-block-start:var(--wpst-widget-stack-gap,18px);
}

/*
 * 2) Internal collections which previously relied on an optional Elementor
 * control and therefore could render with gap:0 when first inserted.
 */
.wpst-ew-icon-list{
  gap:var(--wpst-responsive-gap,16px);
}
.wpst-ew-mega-quicknav{
  gap:var(--wpst-responsive-gap,14px);
}
.wpst-ew-reveal-cards{
  gap:var(--wpst-responsive-gap,18px);
}
.wpst-progress-pro{
  gap:var(--wpst-responsive-gap,16px);
}
.wpst-fancy-layout-split .wpst-ew-fancy-box{
  gap:var(--wpst-responsive-gap,24px);
}
.wpst-mega-promo-layout-split .wpst-ew-mega-promo,
.wpst-mega-banner-layout-split .wpst-ew-mega-banner{
  gap:var(--wpst-responsive-gap,18px);
}
.wpst-ew-logo-cloud>div{
  gap:var(--wpst-responsive-gap,18px);
}

/* Quality-round widgets retain a useful fallback before users touch controls. */
.wpst-ew-floating-icons,
.wpst-ew-number-cards,
.wpst-ew-product-showcase,
.wpst-ew-hover-reveal{
  gap:var(--wpst-quality-gap,var(--wpst-responsive-gap,18px));
}
.wpst-price-list{
  gap:var(--wpst-quality-gap,var(--wpst-responsive-gap,12px));
}

/*
 * Connected/segmented widgets intentionally keep their original tight layout:
 * booking strip, logo grid, connected process timeline, hero split media.
 */

/* Prevent old theme resets from collapsing card/list spacing. */
.wpst-ew-service-cards-pro,
.wpst-ew-contact-cards,
.wpst-ew-icon-steps,
.wpst-ew-portfolio,
.wpst-ew-team,
.wpst-ew-testimonials{
  row-gap:max(12px,var(--wpst-responsive-gap,12px));
}

@media(max-width:1024px){
  .elementor-widget[class*="elementor-widget-wpsoft-"]{
    --wpst-widget-stack-gap:16px;
  }
}
@media(max-width:767px){
  .elementor-widget[class*="elementor-widget-wpsoft-"]{
    --wpst-widget-stack-gap:14px;
  }
  .wpst-ew-icon-list,
  .wpst-ew-reveal-cards,
  .wpst-ew-floating-icons,
  .wpst-ew-number-cards,
  .wpst-ew-product-showcase,
  .wpst-ew-hover-reveal{
    gap:var(--wpst-responsive-gap,14px);
  }
}


/* v3.2.97 · Service Carousel Pro compatibility */
.wpst-ew-service-carousel .wpst-ew-card-carousel-track{
  align-items:stretch;
}
.wpst-ew-service-carousel .wpst-ew-card-prev:disabled,
.wpst-ew-service-carousel .wpst-ew-card-next:disabled{
  opacity:.38;
  cursor:not-allowed;
}


/* ==========================================================
   v3.3.01 · Responsive Quality Tour 1.0
   Cross-device safety layer for all WPSoft Elementor widgets.
   ========================================================== */

/* Core sizing safety */
.elementor-widget[class*="elementor-widget-wpsoft-"],
.elementor-widget[class*="elementor-widget-wpsoft-"] > .elementor-widget-container{
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
.elementor-widget[class*="elementor-widget-wpsoft-"] > .elementor-widget-container :where(
  section,article,div,figure,figcaption,header,footer,nav,ul,ol,li,a,span,strong,small,em
){
  min-width:0;
  box-sizing:border-box;
}
.elementor-widget[class*="elementor-widget-wpsoft-"] :where(img,video,iframe,svg){
  max-width:100%;
}
.elementor-widget[class*="elementor-widget-wpsoft-"] :where(h1,h2,h3,h4,h5,h6,p,li,a,strong,span){
  overflow-wrap:break-word;
  word-break:normal;
}
.elementor-widget[class*="elementor-widget-wpsoft-"] :where(a,button,input,select,textarea){
  max-width:100%;
}

/* Common grid children must be shrinkable. */
:where(
 .wpst-ew-service-cards-pro,.wpst-ew-stats-grid,.wpst-ew-number-cards,.wpst-ew-contact-cards,
 .wpst-ew-portfolio,.wpst-ew-icon-grid,.wpst-ew-badge-grid,.wpst-ew-icon-list,.wpst-ew-reveal-cards,
 .wpst-ew-trust-badges,.wpst-story-cards,.wpst-fm-cards,.wpst-ew-process-steps-pro,.wpst-ew-icon-steps
) > *{
  min-width:0;
}

/* Media consistency */
:where(
 .wpst-service-media,.wpst-service-carousel-media,.wpst-story-media,.wpst-ew-project-media,
 .wpst-hsm-media,.wpst-hb-image,.wpst-hi-media,.wpst-hm-media,.wpst-hc-media,.wpst-content-slide-media,
 .wpst-fm-main
) img{
  width:100%;
  max-width:100%;
  display:block;
  object-fit:cover;
}

/* Responsive controls must win over old generic fallback CSS. */
.elementor-widget[class*="elementor-widget-wpsoft-"] :where(
 .wpst-ew-stats-grid,.wpst-ew-contact-cards,.wpst-ew-portfolio,.wpst-ew-icon-grid,
 .wpst-ew-badge-grid,.wpst-ew-icon-list,.wpst-ew-reveal-cards,.wpst-ew-trust-badges,
 .wpst-story-cards,.wpst-fm-cards
){
  min-width:0;
}

/* Tables intentionally scroll rather than crush columns. */
.wpst-advanced-table-wrap,
.wpst-table-scroll{
  max-width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}

/* Keep horizontal components horizontal where intended. */
:where(
 .wpst-ew-image-carousel,.wpst-ew-card-carousel,.wpst-ew-service-carousel,
 .wpst-video-gallery-pro.is-carousel,.wpst-gallery-zoom-pro.is-carousel
){
  max-width:100%;
  min-width:0;
}

/* Tablet quality pass */
@media(min-width:768px) and (max-width:1024px){
  .elementor-widget[class*="elementor-widget-wpsoft-"]{
    --wpst-qa-inline:22px;
  }

  :where(
   .wpst-ew-hero-bento,.wpst-ew-hero-medical,.wpst-ew-hero-industry,.wpst-ew-hero-commerce,
   .wpst-ew-hero-hospitality,.wpst-ew-hero-split-modern,.wpst-content-slide
  ){
    min-width:0;
  }

  :where(.wpst-hb-main,.wpst-hm-copy,.wpst-hi-copy,.wpst-hc-copy,.wpst-hh-copy,.wpst-content-slide-copy){
    min-width:0;
    max-width:100%;
  }

  :where(.wpst-hb-main,.wpst-hm-copy,.wpst-hi-copy,.wpst-hc-copy,.wpst-hh-copy,.wpst-content-slide-copy)
  :where(h1,h2,h3){
    max-width:100%;
  }

  /* Avoid oversized decorative cards escaping tablet viewport. */
  :where(.wpst-hb-stat,.wpst-hb-note,.wpst-hsm-float,.wpst-hh-rating){
    max-width:min(90%,320px);
  }
}

/* Mobile quality pass */
@media(max-width:767px){
  .elementor-widget[class*="elementor-widget-wpsoft-"]{
    --wpst-qa-inline:18px;
  }

  .elementor-widget[class*="elementor-widget-wpsoft-"] > .elementor-widget-container{
    width:100%;
    max-width:100%;
  }

  .elementor-widget[class*="elementor-widget-wpsoft-"] :where(h1,h2){
    max-width:100%;
    text-wrap:balance;
    overflow-wrap:anywhere;
  }
  .elementor-widget[class*="elementor-widget-wpsoft-"] :where(h3,h4,h5,h6,p,li,a){
    max-width:100%;
    overflow-wrap:break-word;
  }

  /* Touch targets */
  .elementor-widget[class*="elementor-widget-wpsoft-"] :where(
    button,[role="button"],.wpst-ew-button,.wpst-adv-button,
    .wpst-ew-slider-prev,.wpst-ew-slider-next,
    .wpst-ew-card-prev,.wpst-ew-card-next,
    .wpst-gallery-carousel-prev,.wpst-gallery-carousel-next
  ){
    min-width:44px;
    min-height:44px;
  }

  /* Forms */
  .elementor-widget[class*="elementor-widget-wpsoft-"] :where(input,select,textarea){
    width:100%;
    min-width:0;
  }

  /* Absolute decorative pieces must not force page width. */
  :where(.wpst-hb-stat,.wpst-hb-note,.wpst-hsm-float,.wpst-hh-rating){
    max-width:calc(100% - 28px);
  }

  /* Hero actions wrap naturally instead of overflowing. */
  :where(
    .wpst-hsm-actions,.wpst-hs-actions,.wpst-hsp-actions,.wpst-hi-actions,.wpst-hm-actions,
    .wpst-hc-actions,.wpst-hh-actions,.wpst-ew-cta-actions
  ){
    max-width:100%;
    flex-wrap:wrap;
  }

  /* Trust badges default to useful two-column phone layout; Elementor's
     explicit responsive column control can still override via !important. */
  .wpst-ew-trust-badges{
    min-width:0;
  }

  /* Slider/carousel controls stay within viewport. */
  :where(
    .wpst-content-slider-nav,.wpst-service-carousel-nav,.wpst-ew-card-nav,
    .wpst-gallery-carousel-controls,.wpst-video-carousel-controls
  ){
    max-width:100%;
  }

  /* Modal/dialog safety */
  :where(.wpst-modal-dialog,.wpst-gallery-lightbox-inner,.wpst-video-lightbox-inner){
    width:min(calc(100vw - 28px),960px)!important;
    max-width:calc(100vw - 28px)!important;
  }

  /* Large image areas should not create a fixed-height trap unless the user
     explicitly set a mobile responsive height control. */
  :where(.wpst-hb-image,.wpst-hm-media,.wpst-hi-media,.wpst-content-slide-media){
    max-width:100%;
  }
}

/* Small phones */
@media(max-width:430px){
  .elementor-widget[class*="elementor-widget-wpsoft-"]{
    --wpst-qa-inline:14px;
  }

  .wpst-countdown-cells{
    min-width:0;
  }
  .wpst-countdown-cells b{
    min-width:0;
  }

  .wpst-service-card-content,
  .wpst-service-carousel-content,
  .wpst-story-copy{
    min-width:0;
  }
}

/* Reduced motion should never break layout state. */
@media(prefers-reduced-motion:reduce){
  .elementor-widget[class*="elementor-widget-wpsoft-"] *,
  .elementor-widget[class*="elementor-widget-wpsoft-"] *::before,
  .elementor-widget[class*="elementor-widget-wpsoft-"] *::after{
    scroll-behavior:auto!important;
  }
}


/* ==========================================================
   v3.3.02 · Responsive Quality Tour 2.0
   Footer, animated widgets, hotspots and modal refinements.
   ========================================================== */

.wpst-ew-footer-social>div{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
}
.wpst-ew-footer-links ul{
  margin:0;
  padding:0;
  list-style:none;
}
.wpst-ew-footer-links li,
.wpst-ew-footer-links a{
  min-width:0;
}
.wpst-ew-footer-newsletter form{
  display:flex;
  align-items:stretch;
  max-width:100%;
}
.wpst-ew-footer-newsletter form>*{
  min-width:0;
}
.wpst-footer-newsletter-field{
  flex:1 1 auto;
  min-width:0;
}
.wpst-footer-newsletter-field input{
  min-width:0;
  width:100%;
}
.wpst-ew-animated-heading{
  max-width:100%;
}
.wpst-ew-animated-word{
  display:inline-block;
  max-width:100%;
}
.wpst-ew-animated-counter{
  max-width:100%;
}
.wpst-ew-image-hotspots{
  position:relative;
  max-width:100%;
  overflow:hidden;
}
.wpst-hotspot>b{
  max-width:min(320px,calc(100vw - 32px));
}
.wpst-modal-dialog{
  max-width:calc(100vw - 28px);
  box-sizing:border-box;
}
.wpst-modal-content{
  max-width:100%;
  overflow-wrap:break-word;
}

@media(max-width:767px){
  .wpst-ew-footer-social>div{
    width:100%;
  }
  .wpst-footer-social-style-icon-label .wpst-ew-footer-social a,
  .wpst-footer-social-style-pills .wpst-ew-footer-social a{
    max-width:100%;
  }

  .wpst-ew-footer-links ul{
    width:100%;
  }
  .wpst-ew-footer-links a{
    width:100%;
  }

  .wpst-ew-footer-newsletter form{
    width:100%;
  }
  .wpst-ew-footer-newsletter form>button{
    flex:0 0 auto;
  }

  .wpst-ew-animated-heading{
    white-space:normal!important;
    overflow-wrap:anywhere;
  }
  .wpst-ew-animated-word{
    white-space:normal!important;
  }

  .wpst-ew-image-hotspots{
    width:100%;
  }
  .wpst-hotspot{
    min-width:40px;
    min-height:40px;
    touch-action:manipulation;
  }
  .wpst-hotspot>b{
    width:min(260px,calc(100vw - 32px));
  }

  .wpst-modal-overlay{
    padding:14px;
  }
  .wpst-modal-dialog{
    width:100%;
    max-width:100%!important;
  }
}

@media(max-width:430px){
  .wpst-ew-footer-social a span{
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .wpst-ew-footer-newsletter form{
    flex-direction:column;
  }
  .wpst-ew-footer-newsletter form>button{
    width:100%;
  }
  .wpst-modal-overlay{
    padding:10px;
  }
}


/* v3.3.18.7 · Elementor footer widget hover color neutralization */
.elementor-editor-active :is(
  .wpst-ew-footer-links,
  .wpst-ew-footer-brand,
  .wpst-ew-footer-social,
  .wpst-ew-footer-newsletter
) a,
.elementor-editor-active :is(
  .wpst-ew-footer-links,
  .wpst-ew-footer-brand,
  .wpst-ew-footer-social,
  .wpst-ew-footer-newsletter
) a:hover,
.elementor-editor-active :is(
  .wpst-ew-footer-links,
  .wpst-ew-footer-brand,
  .wpst-ew-footer-social,
  .wpst-ew-footer-newsletter
) a:focus{
  color:inherit!important;
}

/* Icon accents intentionally keep their configured accent color. */
.elementor-editor-active .wpst-ew-footer-brand .wpst-footer-contact-icon{
  color:var(--footer-brand-accent,#2563eb)!important;
}


/* ==========================================================
   v3.3.18.8 · Footer Links 2.1 · Vertical / Horizontal layout
   ========================================================== */
.wpst-ew-footer-links{
  --wpst-footer-links-direction:vertical;
  --wpst-footer-links-wrap:wrap;
  --wpst-footer-links-columns:1;
  --wpst-footer-links-align:left;
}
.wpst-ew-footer-links ul{
  display:grid;
  grid-template-columns:repeat(var(--wpst-footer-links-columns,1),minmax(0,1fr));
}

/* Elementor writes the responsive select value into the custom property.
   Horizontal mode switches the list from grid to flex. */
.wpst-ew-footer-links ul[style*="--wpst-footer-links-direction:horizontal"],
.elementor-element[style*="--wpst-footer-links-direction:horizontal"] .wpst-ew-footer-links ul{
  flex-direction:row;
  flex-wrap:var(--wpst-footer-links-wrap,wrap);
  align-items:center;
  grid-template-columns:none!important;
}

.elementor-element[style*="--wpst-footer-links-align:left"] .wpst-ew-footer-links ul{
  justify-content:flex-start;
}
.elementor-element[style*="--wpst-footer-links-align:center"] .wpst-ew-footer-links ul{
  justify-content:center;
}
.elementor-element[style*="--wpst-footer-links-align:right"] .wpst-ew-footer-links ul{
  justify-content:flex-end;
}

/* Horizontal links should size to content instead of stretching as columns. */
.elementor-element[style*="--wpst-footer-links-direction:horizontal"] .wpst-ew-footer-links li{
  flex:0 0 auto;
}
.elementor-element[style*="--wpst-footer-links-direction:horizontal"] .wpst-ew-footer-links a{
  width:auto;
  min-height:34px;
  white-space:nowrap;
}

/* Line preset in horizontal mode becomes a subtle separator instead of stacked rows. */
.elementor-element.wpst-footer-links-style-line[style*="--wpst-footer-links-direction:horizontal"] .wpst-ew-footer-links li+li{
  border-top:0!important;
  border-left:1px solid rgba(148,163,184,.22);
  padding-left:12px;
}

/* Mobile safeguard: nowrap may scroll instead of breaking the footer width. */
@media(max-width:767px){
  .elementor-element[style*="--wpst-footer-links-direction:horizontal"][style*="--wpst-footer-links-wrap:nowrap"] .wpst-ew-footer-links ul{
    overflow-x:auto;
    overflow-y:hidden;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .elementor-element[style*="--wpst-footer-links-direction:horizontal"][style*="--wpst-footer-links-wrap:nowrap"] .wpst-ew-footer-links ul::-webkit-scrollbar{
    display:none;
  }
}


/* ==========================================================
   v3.3.18.9 · Footer Links 2.2
   ========================================================== */
.wpst-ew-footer-links{
  --wpst-footer-link-color:inherit;
  --wpst-footer-link-hover:var(--wpst-primary,#2563eb);
  --wpst-footer-link-active:var(--wpst-primary,#2563eb);
  --wpst-footer-link-pad-x:0px;
}
.wpst-ew-footer-links a{
  position:relative;
  padding-inline:var(--wpst-footer-link-pad-x,0px);
  color:var(--wpst-footer-link-color,inherit)!important;
  transition:color .18s ease,background .18s ease,transform .18s ease,box-shadow .18s ease;
}
.wpst-ew-footer-links a:hover,
.wpst-ew-footer-links a:focus-visible{
  color:var(--wpst-footer-link-hover,var(--wpst-primary,#2563eb))!important;
}
.wpst-ew-footer-links a i svg{
  width:var(--wpst-footer-link-icon-size,13px);
  height:var(--wpst-footer-link-icon-size,13px);
}
.elementor-element.wpst-footer-links-icons- .wpst-ew-footer-links a i,
.elementor-element.wpst-footer-links-icons-yes .wpst-ew-footer-links a i{display:grid}
.elementor-element.wpst-footer-links-icons-no .wpst-ew-footer-links a i{display:none!important}

/* hover variants */
.elementor-element.wpst-footer-links-hover-none .wpst-ew-footer-links a:hover{
  transform:none!important;
  background:transparent!important;
}
.elementor-element.wpst-footer-links-hover-slide .wpst-ew-footer-links a:hover{
  transform:translateX(3px);
}
.elementor-element.wpst-footer-links-hover-underline .wpst-ew-footer-links a:after{
  content:"";
  position:absolute;
  left:var(--wpst-footer-link-pad-x,0px);
  right:var(--wpst-footer-link-pad-x,0px);
  bottom:3px;
  height:1px;
  background:currentColor;
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .18s ease;
}
.elementor-element.wpst-footer-links-hover-underline .wpst-ew-footer-links a:hover:after{
  transform:scaleX(1);
}
.elementor-element.wpst-footer-links-hover-background .wpst-ew-footer-links a:hover{
  background:rgba(148,163,184,.10);
}
.elementor-element.wpst-footer-links-hover-pill .wpst-ew-footer-links a{
  border-radius:999px;
}
.elementor-element.wpst-footer-links-hover-pill .wpst-ew-footer-links a:hover{
  background:rgba(148,163,184,.12);
}

/* separators */
.elementor-element.wpst-footer-links-separator-line .wpst-ew-footer-links li+li{
  border-top:1px solid rgba(148,163,184,.18);
}
.elementor-element[style*="--wpst-footer-links-direction:horizontal"].wpst-footer-links-separator-line .wpst-ew-footer-links li+li{
  border-top:0;
  border-left:1px solid rgba(148,163,184,.18);
  padding-left:12px;
}
.elementor-element.wpst-footer-links-separator-dot .wpst-ew-footer-links li+li:before{
  content:"•";
  margin-right:8px;
  opacity:.35;
}
.elementor-element[style*="--wpst-footer-links-direction:horizontal"].wpst-footer-links-separator-dot .wpst-ew-footer-links li{
  display:flex;
  align-items:center;
}

/* active link */
.elementor-element.wpst-footer-links-active-accent .wpst-ew-footer-links li.is-current>a{
  color:var(--wpst-footer-link-active,var(--wpst-primary,#2563eb))!important;
}
.elementor-element.wpst-footer-links-active-underline .wpst-ew-footer-links li.is-current>a:after{
  content:"";
  position:absolute;
  left:var(--wpst-footer-link-pad-x,0px);
  right:var(--wpst-footer-link-pad-x,0px);
  bottom:3px;
  height:1px;
  background:var(--wpst-footer-link-active,var(--wpst-primary,#2563eb));
}
.elementor-element.wpst-footer-links-active-pill .wpst-ew-footer-links li.is-current>a{
  color:var(--wpst-footer-link-active,var(--wpst-primary,#2563eb))!important;
  background:rgba(148,163,184,.12);
  border-radius:999px;
}


/* ==========================================================
   v3.3.18.10 · Footer Links horizontal layout fix
   Elementor now writes display:grid/flex directly from the responsive control.
   ========================================================== */
.wpst-ew-footer-links ul{
  align-items:stretch;
}

/* When Elementor outputs display:flex for Yatay mode these properties become active. */
.wpst-ew-footer-links ul[style*="display:flex"],
.wpst-ew-footer-links ul[style*="display: flex"]{
  flex-direction:row;
  align-items:center;
}

/* Since Elementor may render responsive selector CSS in a stylesheet rather than inline,
   the flex-safe item rules are harmless in grid mode and guarantee correct sizing in flex mode. */
.wpst-ew-footer-links ul{
  row-gap:inherit;
}
.wpst-ew-footer-links li{
  min-width:0;
}
.wpst-ew-footer-links ul[style*="display:flex"] li,
.wpst-ew-footer-links ul[style*="display: flex"] li{
  flex:0 0 auto;
}
.wpst-ew-footer-links ul[style*="display:flex"] a,
.wpst-ew-footer-links ul[style*="display: flex"] a{
  width:auto;
  white-space:nowrap;
}

/* Fallback for Elementor-generated stylesheet rules:
   flex-wrap/justify-content are now generated directly by Elementor, so no attribute
   detection is required for the actual layout. */


/* ==========================================================
   v3.3.18.11 · Footer Brand 2.1
   ========================================================== */
.wpst-ew-footer-brand{
  --wpst-footer-brand-contact-color:inherit;
  --wpst-footer-brand-contact-hover:var(--footer-brand-accent,#2563eb);
}
.wpst-footer-brand-contact{
  display:flex;
  flex-direction:column;
  flex-wrap:wrap;
  align-items:flex-start;
}
.wpst-footer-brand-contact a{
  color:var(--wpst-footer-brand-contact-color,inherit)!important;
  transition:color .18s ease,transform .18s ease;
}
.wpst-footer-brand-contact a:hover,
.wpst-footer-brand-contact a:focus-visible{
  color:var(--wpst-footer-brand-contact-hover,var(--footer-brand-accent,#2563eb))!important;
}
.wpst-footer-brand-contact a:hover{
  transform:translateY(-1px);
}

/* Alignment helpers */
.elementor-element[style*="text-align:center"] .wpst-ew-footer-brand .wpst-footer-brand-logo{
  margin-left:auto;
  margin-right:auto;
}
.elementor-element[style*="text-align:center"] .wpst-ew-footer-brand p{
  margin-left:auto;
  margin-right:auto;
}
.elementor-element[style*="text-align:center"] .wpst-footer-brand-contact{
  align-items:center;
  justify-content:center;
}
.elementor-element[style*="text-align:right"] .wpst-ew-footer-brand .wpst-footer-brand-logo{
  margin-left:auto;
  margin-right:0;
}
.elementor-element[style*="text-align:right"] .wpst-ew-footer-brand p{
  margin-left:auto;
  margin-right:0;
}
.elementor-element[style*="text-align:right"] .wpst-footer-brand-contact{
  align-items:flex-end;
  justify-content:flex-end;
}

/* Row contact layout */
.wpst-footer-brand-contact[style*="flex-direction:row"],
.wpst-footer-brand-contact[style*="flex-direction: row"]{
  align-items:center;
}
.wpst-footer-brand-contact[style*="flex-direction:row"] a,
.wpst-footer-brand-contact[style*="flex-direction: row"] a{
  width:auto;
}

/* Elementor may output generated responsive CSS instead of inline styles.
   Links are sized to content so row mode remains clean. */
.wpst-footer-brand-contact a{
  width:max-content;
  max-width:100%;
}

/* Icon-less mode stays compact. */
.elementor-element.wpst-footer-brand-icons-no .wpst-footer-contact-link{
  gap:0;
}

/* Mobile row safeguard */
@media(max-width:767px){
  .wpst-footer-brand-contact{
    max-width:100%;
  }
  .wpst-footer-brand-contact a{
    min-width:0;
  }
  .wpst-footer-contact-text{
    overflow-wrap:anywhere;
  }
}


/* ==========================================================
   v3.3.18.12 · Footer Social 2.1
   ========================================================== */
.wpst-ew-footer-social{
  --wpst-footer-social-color:inherit;
  --wpst-footer-social-hover:var(--wpst-primary,#2563eb);
  --wpst-footer-social-icon-bg:rgba(148,163,184,.10);
  --wpst-footer-social-border:rgba(148,163,184,.22);
}
.wpst-ew-footer-social>div{
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  align-items:center;
}
.wpst-ew-footer-social a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--wpst-footer-social-color,inherit)!important;
  text-decoration:none;
  transition:color .18s ease,transform .18s ease,background .18s ease,border-color .18s ease;
}
.wpst-ew-footer-social a:hover,
.wpst-ew-footer-social a:focus-visible{
  color:var(--wpst-footer-social-hover,var(--wpst-primary,#2563eb))!important;
}
.wpst-ew-footer-social a>b{
  display:grid;
  place-items:center;
  border:1px solid var(--wpst-footer-social-border,rgba(148,163,184,.22));
  background:var(--wpst-footer-social-icon-bg,rgba(148,163,184,.10));
  transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;
}

/* shape */
.elementor-element.wpst-footer-social-shape-none .wpst-ew-footer-social a>b{
  border:0!important;
  background:transparent!important;
  border-radius:0!important;
}
.elementor-element.wpst-footer-social-shape-circle .wpst-ew-footer-social a>b{
  border-radius:50%!important;
}
.elementor-element.wpst-footer-social-shape-rounded .wpst-ew-footer-social a>b{
  border-radius:12px!important;
}
.elementor-element.wpst-footer-social-shape-square .wpst-ew-footer-social a>b{
  border-radius:0!important;
}

/* hover */
.elementor-element.wpst-footer-social-hover-none .wpst-ew-footer-social a:hover{
  transform:none!important;
}
.elementor-element.wpst-footer-social-hover-lift .wpst-ew-footer-social a:hover{
  transform:translateY(-2px);
}
.elementor-element.wpst-footer-social-hover-scale .wpst-ew-footer-social a:hover b{
  transform:scale(1.08);
}
.elementor-element.wpst-footer-social-hover-fill .wpst-ew-footer-social a:hover b{
  background:var(--wpst-footer-social-hover,var(--wpst-primary,#2563eb));
  border-color:var(--wpst-footer-social-hover,var(--wpst-primary,#2563eb));
  color:#fff;
}
.elementor-element.wpst-footer-social-hover-outline .wpst-ew-footer-social a:hover b{
  background:transparent;
  border-color:currentColor;
}

/* platform brand colors, opt-in */
.elementor-element.wpst-footer-social-brand-yes .wpst-ew-footer-social a[data-platform*="instagram"]{--wpst-platform:#e1306c}
.elementor-element.wpst-footer-social-brand-yes .wpst-ew-footer-social a[data-platform*="linkedin"]{--wpst-platform:#0a66c2}
.elementor-element.wpst-footer-social-brand-yes .wpst-ew-footer-social a[data-platform*="youtube"]{--wpst-platform:#ff0000}
.elementor-element.wpst-footer-social-brand-yes .wpst-ew-footer-social a[data-platform*="facebook"]{--wpst-platform:#1877f2}
.elementor-element.wpst-footer-social-brand-yes .wpst-ew-footer-social a[data-platform*="x"],
.elementor-element.wpst-footer-social-brand-yes .wpst-ew-footer-social a[data-platform*="twitter"]{--wpst-platform:#111}
.elementor-element.wpst-footer-social-brand-yes .wpst-ew-footer-social a[data-platform*="tiktok"]{--wpst-platform:#111}
.elementor-element.wpst-footer-social-brand-yes .wpst-ew-footer-social a[data-platform*="whatsapp"]{--wpst-platform:#25d366}
.elementor-element.wpst-footer-social-brand-yes .wpst-ew-footer-social a:hover{
  color:var(--wpst-platform,var(--wpst-footer-social-hover))!important;
}
.elementor-element.wpst-footer-social-brand-yes.wpst-footer-social-hover-fill .wpst-ew-footer-social a:hover b{
  background:var(--wpst-platform,var(--wpst-footer-social-hover));
  border-color:var(--wpst-platform,var(--wpst-footer-social-hover));
  color:#fff;
}

/* only icon preset */
.elementor-element.wpst-footer-social-style-icons .wpst-ew-footer-social a>span{
  display:none!important;
}

/* vertical mode */
.wpst-ew-footer-social>div[style*="flex-direction:column"],
.wpst-ew-footer-social>div[style*="flex-direction: column"]{
  align-items:flex-start;
}

/* mobile nowrap safeguard */
@media(max-width:767px){
  .wpst-ew-footer-social>div{
    max-width:100%;
  }
  .wpst-ew-footer-social>div[style*="flex-wrap:nowrap"],
  .wpst-ew-footer-social>div[style*="flex-wrap: nowrap"]{
    overflow-x:auto;
    overflow-y:hidden;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .wpst-ew-footer-social>div[style*="flex-wrap:nowrap"]::-webkit-scrollbar,
  .wpst-ew-footer-social>div[style*="flex-wrap: nowrap"]::-webkit-scrollbar{
    display:none;
  }
}


/* v3.3.18.21.13.4 · Hero Slider arrow foreground colors */
.wpst-ew-hero-slider .wpst-ew-slider-prev svg,
.wpst-ew-hero-slider .wpst-ew-slider-next svg{
  color:inherit!important;
  fill:none;
  stroke:currentColor!important;
}


/* v3.3.18.21.13.5 · Hero Slider arrow color runtime fix */
.wpst-ew-hero-slider :is(.wpst-ew-slider-prev,.wpst-ew-slider-next){
  color:var(--wpst-slider-arrow-color,var(--wpst-control-color,#fff))!important;
}
.wpst-ew-hero-slider :is(.wpst-ew-slider-prev,.wpst-ew-slider-next)::before{
  border-color:currentColor!important;
}
.wpst-ew-hero-slider :is(.wpst-ew-slider-prev,.wpst-ew-slider-next):hover{
  color:var(--wpst-slider-arrow-hover-color,var(--wpst-slider-arrow-color,#fff))!important;
}
.wpst-ew-hero-slider :is(.wpst-ew-slider-prev,.wpst-ew-slider-next) svg,
.wpst-ew-hero-slider :is(.wpst-ew-slider-prev,.wpst-ew-slider-next) svg *{
  color:inherit!important;
  stroke:currentColor!important;
}


/* ==========================================================
   v3.3.18.21.13.6 · Reviews Carousel
   ========================================================== */
.wpst-reviews-carousel{
  --wpst-reviews-gap:20px;
  --wpst-review-arrow-bg:#fff;
  --wpst-review-arrow-color:#0f172a;
  --wpst-review-arrow-hover-bg:#0f172a;
  --wpst-review-arrow-hover-color:#fff;
  --wpst-review-dot:#cbd5e1;
  --wpst-review-dot-active:#2563eb;
  position:relative;
  min-width:0;
  padding-bottom:58px;
  touch-action:pan-y pinch-zoom;
  -webkit-tap-highlight-color:transparent;
}
.wpst-reviews-carousel-viewport{
  overflow:hidden;
  min-width:0;
  cursor:grab;
}
.wpst-reviews-carousel.is-mouse-dragging .wpst-reviews-carousel-viewport{cursor:grabbing}
.wpst-reviews-carousel-track{
  display:flex;
  align-items:stretch;
  gap:var(--wpst-reviews-gap);
  transition:transform .42s cubic-bezier(.22,1,.36,1);
  will-change:transform;
}
.wpst-reviews-carousel.is-mouse-dragging .wpst-reviews-carousel-track{transition:none}
.wpst-review-carousel-card{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:20px;
  padding:28px;
  border:1px solid #e2e8f0;
  border-radius:22px;
  background:#fff;
  box-shadow:0 12px 34px rgba(15,23,42,.06);
}
.wpst-review-carousel-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.wpst-review-carousel-stars{
  display:flex;
  gap:2px;
  color:#f59e0b;
  letter-spacing:.02em;
  line-height:1;
}
.wpst-review-carousel-stars .is-empty{opacity:.2}
.wpst-review-carousel-stars .is-half{
  background:linear-gradient(90deg,currentColor 50%,color-mix(in srgb,currentColor 20%,transparent) 50%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.wpst-review-source{
  font-size:11px;
  font-weight:750;
  color:#64748b;
}
.wpst-review-carousel-card blockquote{
  flex:1 1 auto;
  margin:0;
  color:#334155;
  font-size:16px;
  line-height:1.75;
}
.wpst-review-carousel-card footer{
  display:flex;
  align-items:center;
  gap:12px;
}
.wpst-review-carousel-card footer img,
.wpst-review-carousel-avatar{
  width:46px;
  height:46px;
  flex:0 0 46px;
  border-radius:50%;
  object-fit:cover;
}
.wpst-review-carousel-avatar{
  display:grid;
  place-items:center;
  background:#eef2ff;
  color:#4f46e5;
  font-weight:850;
}
.wpst-review-carousel-person{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:2px;
}
.wpst-review-carousel-person>span{
  display:flex;
  align-items:center;
  gap:6px;
}
.wpst-review-carousel-person strong{
  color:#0f172a;
  font-size:14px;
}
.wpst-review-carousel-person small{
  color:#64748b;
  font-size:12px;
}
.wpst-review-verified{
  display:grid;
  place-items:center;
  width:16px;
  height:16px;
  border-radius:50%;
  background:#2563eb;
  color:#fff;
  font-size:10px;
  font-style:normal;
  line-height:1;
}
.wpst-reviews-carousel-controls{
  position:absolute;
  right:0;
  bottom:0;
  display:flex;
  gap:8px;
}
.wpst-reviews-carousel :is(.wpst-reviews-prev,.wpst-reviews-next){
  width:44px;
  height:44px;
  min-width:44px;
  min-height:44px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid #e2e8f0;
  border-radius:12px;
  background:var(--wpst-review-arrow-bg);
  color:var(--wpst-review-arrow-color);
  box-shadow:none;
  cursor:pointer;
  transition:.2s ease;
}
.wpst-reviews-carousel :is(.wpst-reviews-prev,.wpst-reviews-next):hover{
  background:var(--wpst-review-arrow-hover-bg);
  color:var(--wpst-review-arrow-hover-color);
}
.wpst-reviews-carousel :is(.wpst-reviews-prev,.wpst-reviews-next):disabled{
  opacity:.35;
  cursor:not-allowed;
}
.wpst-reviews-carousel :is(.wpst-reviews-prev,.wpst-reviews-next) svg,
.wpst-reviews-carousel :is(.wpst-reviews-prev,.wpst-reviews-next) svg *{
  stroke:currentColor!important;
}
.wpst-reviews-carousel-dots{
  position:absolute;
  left:0;
  bottom:13px;
  display:flex;
  align-items:center;
  gap:7px;
}
.wpst-reviews-carousel-dots button{
  width:7px;
  height:7px;
  min-width:7px!important;
  min-height:7px!important;
  padding:0!important;
  border:0!important;
  border-radius:999px;
  background:var(--wpst-review-dot)!important;
  box-shadow:none!important;
  cursor:pointer;
  transition:.2s ease;
}
.wpst-reviews-carousel-dots button.is-active{
  width:24px;
  background:var(--wpst-review-dot-active)!important;
}

/* Card styles */
.wpst-reviews-carousel-style-minimal .wpst-review-carousel-card{
  padding:22px 0;
  border:0;
  border-top:1px solid #e2e8f0;
  border-radius:0!important;
  box-shadow:none;
}
.wpst-reviews-carousel-style-soft .wpst-review-carousel-card{
  border-color:transparent;
  background:#f8fafc;
  box-shadow:none;
}
.wpst-reviews-carousel-style-dark .wpst-review-carousel-card{
  border-color:#1e293b;
  background:#0f172a;
}
.wpst-reviews-carousel-style-dark .wpst-review-carousel-card blockquote,
.wpst-reviews-carousel-style-dark .wpst-review-carousel-person strong{color:#fff}
.wpst-reviews-carousel-style-dark .wpst-review-carousel-person small,
.wpst-reviews-carousel-style-dark .wpst-review-source{color:#94a3b8}
.wpst-reviews-carousel-style-glass .wpst-review-carousel-card{
  border-color:rgba(255,255,255,.28);
  background:rgba(255,255,255,.66);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}

@media(max-width:767px){
  .wpst-reviews-carousel{padding-bottom:62px}
  .wpst-review-carousel-card{padding:22px}
  .wpst-reviews-carousel :is(.wpst-reviews-prev,.wpst-reviews-next){
    width:48px;
    height:48px;
  }
}

/* ==========================================================
   Services Grid · Icon toggle safety
   ========================================================== */
.wpst-ew-service-cards-pro[data-icons="no"] .wpst-service-icon,
.wpst-service-icons- .wpst-ew-service-cards-pro .wpst-service-icon{
  display:none!important;
}


/* ==========================================================
   v3.3.18.21.13.7 · Services Grid icon toggle final fix
   "Iconları Göster = Hayır" means NO service/action icons.
   ========================================================== */
.wpst-ew-service-cards-pro.no-icons .wpst-service-icon,
.wpst-ew-service-cards-pro[data-icons="no"] .wpst-service-icon{
  display:none!important;
  visibility:hidden!important;
  width:0!important;
  height:0!important;
  margin:0!important;
  padding:0!important;
}

/* Service icon toggle only affects card icons. Action icon remains independent. */


/* ==========================================================
   v3.3.18.21.13.8 · Services Grid action refinement
   ========================================================== */
.wpst-ew-service-cards-pro .wpst-service-action{
  width:100%!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px;
  margin-top:24px;
  padding-top:16px!important;
  border-top:1px solid rgba(148,163,184,.18)!important;
  color:inherit;
  font-weight:750;
  text-align:center;
  transition:color .2s ease,transform .2s ease,background-color .2s ease;
}
.wpst-ew-service-cards-pro .wpst-service-action-icon{
  transition:transform .2s ease;
}
.wpst-ew-service-cards-pro .wpst-service-card:hover .wpst-service-action{
  transform:translateY(-1px);
}
.wpst-ew-service-cards-pro .wpst-service-card:hover .wpst-service-action-icon{
  transform:translateX(3px);
}

.wpst-service-action-layout-inline-right .wpst-ew-service-cards-pro .wpst-service-action{justify-content:flex-start!important;text-align:left!important}
.wpst-service-action-layout-inline-left .wpst-ew-service-cards-pro .wpst-service-action{justify-content:flex-start!important;text-align:left!important}
.wpst-service-action-layout-far-right .wpst-ew-service-cards-pro .wpst-service-action{justify-content:space-between!important;text-align:left!important}

/* Action style options */
.wpst-service-action-style-line .wpst-ew-service-cards-pro .wpst-service-action{
  padding:16px 0 0!important;
  background:transparent!important;
  border-radius:0!important;
}
.wpst-service-action-style-soft .wpst-ew-service-cards-pro .wpst-service-action{
  margin-top:22px;
  padding:12px 16px!important;
  border-top:0!important;
  border-radius:12px!important;
  background:rgba(148,163,184,.10)!important;
}
.wpst-service-action-style-pill .wpst-ew-service-cards-pro .wpst-service-action{
  width:auto!important;
  align-self:center;
  margin:22px auto 0;
  padding:11px 18px!important;
  border-top:0!important;
  border-radius:999px!important;
  background:rgba(148,163,184,.10)!important;
}
.wpst-service-action-style-plain .wpst-ew-service-cards-pro .wpst-service-action{
  padding-top:0!important;
  border-top:0!important;
  background:transparent!important;
}

@media(max-width:767px){
  .wpst-ew-service-cards-pro .wpst-service-action{
    margin-top:18px;
    padding-top:14px!important;
  }
}


/* ==========================================================
   v3.3.18.21.13.8.1 · Safe Local Color Reliability
   IMPORTANT: typography sizes/families/line-heights are untouched.
   ========================================================== */

/* Local heading/body colors may override preset fallback colors,
   but typography geometry stays owned by each widget. */
.elementor-widget.elementor-element > .elementor-widget-container{
  color:var(--wpst-local-text-color,inherit);
}

/* Dedicated widget-level controls keep their own selectors.
   This layer exists only as a safe color bridge where variables are present. */
.elementor-widget.elementor-element > .elementor-widget-container :is(h1,h2,h3,h4,h5,h6):not(:where(.wpst-aihtml-root *)){
  color:var(--wpst-local-heading-color,inherit);
}
.elementor-widget.elementor-element > .elementor-widget-container :is(
  p,blockquote,li,label,td,th,.wpst-ew-rich,.wpst-post-excerpt,.wpst-post-content
):not(:where(.wpst-aihtml-root *)){
  color:var(--wpst-local-body-color,inherit);
}


/* ==========================================================
   v3.3.18.21.13.8.2 · Footer Links 2.0 Quality Pass
   ========================================================== */
.wpst-ew-footer-links{
  --wpst-footer-link-bg:transparent;
  --wpst-footer-link-hover-bg:rgba(148,163,184,.10);
  --wpst-footer-link-separator:rgba(148,163,184,.18);
  --wpst-footer-badge-bg:rgba(148,163,184,.12);
  --wpst-footer-badge-color:inherit;
  --wpst-footer-link-pad-y:4px;
  --wpst-footer-link-pad-x:8px;
  --wpst-footer-link-radius:8px;
  --wpst-footer-link-icon-gap:7px;
}

.wpst-ew-footer-links ul{
  min-width:0;
}

.wpst-ew-footer-links a{
  gap:var(--wpst-footer-link-icon-gap,7px)!important;
  padding:
    var(--wpst-footer-link-pad-y,4px)
    var(--wpst-footer-link-pad-x,8px)!important;
  border-radius:var(--wpst-footer-link-radius,8px);
  background:var(--wpst-footer-link-bg,transparent);
  opacity:1;
}

.wpst-ew-footer-links a>span{
  min-width:0;
}

.wpst-ew-footer-links a small{
  margin-left:auto;
  background:var(--wpst-footer-badge-bg,rgba(148,163,184,.12))!important;
  color:var(--wpst-footer-badge-color,inherit)!important;
  white-space:nowrap;
}

.wpst-ew-footer-links a:hover,
.wpst-ew-footer-links a:focus-visible{
  background:var(--wpst-footer-link-hover-bg,transparent);
}

/* Icon visibility modes */
.elementor-element.wpst-footer-links-icon-visibility-always .wpst-ew-footer-links a i{
  opacity:1!important;
}
.elementor-element.wpst-footer-links-icon-visibility-hover .wpst-ew-footer-links a i{
  opacity:0;
}
.elementor-element.wpst-footer-links-icon-visibility-hover .wpst-ew-footer-links a:hover i,
.elementor-element.wpst-footer-links-icon-visibility-hover .wpst-ew-footer-links a:focus-visible i{
  opacity:1;
}
.elementor-element.wpst-footer-links-icon-visibility-subtle .wpst-ew-footer-links a i{
  opacity:.55;
}
.elementor-element.wpst-footer-links-icon-visibility-subtle .wpst-ew-footer-links a:hover i,
.elementor-element.wpst-footer-links-icon-visibility-subtle .wpst-ew-footer-links a:focus-visible i{
  opacity:1;
}

/* Explicit no-icon state always wins over footer template styles. */
.wpst-ew-footer-links.no-icons a i,
.wpst-ew-footer-links[data-icons="no"] a i{
  display:none!important;
}

/* Separator colors */
.elementor-element.wpst-footer-links-separator-line .wpst-ew-footer-links li+li{
  border-color:var(--wpst-footer-link-separator)!important;
}
.elementor-element.wpst-footer-links-separator-dot .wpst-ew-footer-links li+li:before{
  color:var(--wpst-footer-link-separator);
}

/* Hover presets use the user-selected hover background. */
.elementor-element.wpst-footer-links-hover-background .wpst-ew-footer-links a:hover,
.elementor-element.wpst-footer-links-hover-background .wpst-ew-footer-links a:focus-visible,
.elementor-element.wpst-footer-links-hover-pill .wpst-ew-footer-links a:hover,
.elementor-element.wpst-footer-links-hover-pill .wpst-ew-footer-links a:focus-visible{
  background:var(--wpst-footer-link-hover-bg,rgba(148,163,184,.10))!important;
}

/* Pill active style is also configurable through local surface colors. */
.elementor-element.wpst-footer-links-active-pill .wpst-ew-footer-links li.is-current>a{
  background:var(--wpst-footer-link-hover-bg,rgba(148,163,184,.12))!important;
}

/* Horizontal layout: reliable even when Elementor outputs responsive CSS
   instead of an inline style attribute. */
.elementor-widget-wpsoft-footer-links .wpst-ew-footer-links ul{
  max-width:100%;
}
.elementor-widget-wpsoft-footer-links .wpst-ew-footer-links ul[style*="display:flex"],
.elementor-widget-wpsoft-footer-links .wpst-ew-footer-links ul[style*="display: flex"]{
  display:flex!important;
  align-items:center;
}
.elementor-widget-wpsoft-footer-links .wpst-ew-footer-links ul[style*="display:flex"] li,
.elementor-widget-wpsoft-footer-links .wpst-ew-footer-links ul[style*="display: flex"] li{
  flex:0 0 auto;
}
.elementor-widget-wpsoft-footer-links .wpst-ew-footer-links ul[style*="display:flex"] a,
.elementor-widget-wpsoft-footer-links .wpst-ew-footer-links ul[style*="display: flex"] a{
  width:auto!important;
}

/* Mobile touch comfort */
@media(max-width:767px){
  .wpst-ew-footer-links a{
    min-height:max(40px,var(--wpst-footer-link-min-height,40px));
  }
  .wpst-ew-footer-links h4{
    margin-bottom:12px;
  }
}


/* ==========================================================
   v3.3.18.21.13.8.3 · Local Style Color Reliability
   COLOR ONLY — font family/size/line-height/spacing are untouched.
   ========================================================== */
.elementor-widget.elementor-element > .elementor-widget-container{
  background-color:var(--wpst-local-surface)!important;
  border-color:var(--wpst-local-border)!important;
  color:var(--wpst-local-text)!important;
}
.elementor-widget.elementor-element > .elementor-widget-container :is(h1,h2,h3,h4,h5,h6):not(:where(.wpst-aihtml-root *)){
  color:var(--wpst-local-heading)!important;
}
.elementor-widget.elementor-element > .elementor-widget-container :is(
  p,blockquote,li,label,td,th,.wpst-ew-rich,.wpst-post-excerpt,.wpst-post-content
):not(:where(.wpst-aihtml-root *)){
  color:var(--wpst-local-body,var(--wpst-local-text))!important;
}
.elementor-widget.elementor-element > .elementor-widget-container a:not(
  .wpst-ew-button
):not(.wpst-q-button):not([class*="button"]):not(:where(.wpst-aihtml-root *)){
  color:var(--wpst-local-link)!important;
}


/* ==========================================================
   v3.3.18.21.13.8.4 · Footer Widgets Quality Pass
   Brand / Social / Newsletter aligned with Footer Links 2.0
   ========================================================== */

/* Brand 2.0 */
.wpst-ew-footer-brand{
  --wpst-footer-brand-contact-color:inherit;
  --wpst-footer-brand-contact-hover:var(--footer-brand-accent,#2563eb);
  --wpst-footer-brand-icon-color:var(--footer-brand-accent,#2563eb);
  --wpst-footer-brand-icon-bg:rgba(148,163,184,.10);
  --wpst-footer-brand-gap:14px;
  display:flex;
  flex-direction:column;
  gap:var(--wpst-footer-brand-gap);
}
.wpst-ew-footer-brand .wpst-footer-brand-logo{display:block;max-width:100%;height:auto}
.wpst-ew-footer-brand .wpst-footer-brand-name{display:inline-block}
.wpst-ew-footer-brand p{margin:0!important}
.wpst-footer-brand-contact{
  display:flex;
  gap:8px;
  min-width:0;
}
.wpst-footer-contact-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-width:0;
  color:var(--wpst-footer-brand-contact-color,inherit)!important;
  text-decoration:none!important;
}
.wpst-footer-contact-link:hover{color:var(--wpst-footer-brand-contact-hover,var(--footer-brand-accent,#2563eb))!important}
.wpst-footer-contact-icon{
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:10px;
  background:var(--wpst-footer-brand-icon-bg);
  color:var(--wpst-footer-brand-icon-color);
}
.wpst-footer-contact-icon svg,.wpst-footer-contact-icon svg *{stroke:currentColor!important}
.wpst-footer-brand-icons-no .wpst-footer-contact-icon{display:none!important}

/* Social 2.0 */
.wpst-ew-footer-social{
  --wpst-footer-social-color:inherit;
  --wpst-footer-social-hover:var(--wpst-primary,#2563eb);
  --wpst-footer-social-icon-bg:rgba(148,163,184,.10);
  --wpst-footer-social-border:rgba(148,163,184,.20);
  --wpst-footer-social-link-bg:transparent;
  --wpst-footer-social-hover-bg:rgba(148,163,184,.08);
  --wpst-footer-social-pad-x:9px;
  --wpst-footer-social-radius:10px;
}
.wpst-ew-footer-social a{
  padding-left:var(--wpst-footer-social-pad-x)!important;
  padding-right:var(--wpst-footer-social-pad-x)!important;
  border-color:var(--wpst-footer-social-border)!important;
  border-radius:var(--wpst-footer-social-radius)!important;
  background:var(--wpst-footer-social-link-bg)!important;
  color:var(--wpst-footer-social-color)!important;
  box-shadow:none!important;
}
.wpst-ew-footer-social a>b{
  background:var(--wpst-footer-social-icon-bg)!important;
  color:inherit;
}
.wpst-ew-footer-social a>b svg,.wpst-ew-footer-social a>b svg *{stroke:currentColor!important}
.wpst-ew-footer-social a:hover,
.wpst-ew-footer-social a:focus-visible{
  color:var(--wpst-footer-social-hover)!important;
  background:var(--wpst-footer-social-hover-bg)!important;
}
.wpst-footer-social-hover-none .wpst-ew-footer-social a:hover{transform:none!important}
.wpst-footer-social-hover-scale .wpst-ew-footer-social a:hover{transform:scale(1.04)!important}
.wpst-footer-social-hover-fill .wpst-ew-footer-social a:hover{background:var(--wpst-footer-social-hover-bg)!important}
.wpst-footer-social-hover-outline .wpst-ew-footer-social a:hover{background:transparent!important;border-color:currentColor!important}

/* Newsletter 2.0 */
.wpst-ew-footer-newsletter{
  --wpst-newsletter-field-bg:rgba(255,255,255,.06);
  --wpst-newsletter-field-border:rgba(148,163,184,.26);
  --wpst-newsletter-field-color:inherit;
  --wpst-newsletter-button-bg:var(--newsletter-accent,#2563eb);
  --wpst-newsletter-button-color:#fff;
  --wpst-newsletter-button-hover-bg:var(--newsletter-accent,#2563eb);
  --wpst-newsletter-button-hover-color:#fff;
  --wpst-newsletter-radius:12px;
}
.wpst-ew-footer-newsletter form{
  display:flex;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
.wpst-footer-newsletter-field{
  min-width:0;
  flex:1 1 auto;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 12px;
  border:1px solid var(--wpst-newsletter-field-border);
  border-radius:var(--wpst-newsletter-radius);
  background:var(--wpst-newsletter-field-bg);
  color:var(--wpst-newsletter-field-color);
}
.wpst-footer-newsletter-field>i{display:grid;place-items:center;opacity:.65}
.wpst-footer-newsletter-field>i svg,.wpst-footer-newsletter-field>i svg *{stroke:currentColor!important}
.wpst-ew-footer-newsletter input{
  width:100%;
  min-width:0;
  height:auto!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  color:var(--wpst-newsletter-field-color)!important;
  box-shadow:none!important;
}
.wpst-ew-footer-newsletter input::placeholder{color:currentColor;opacity:.5}
.wpst-ew-footer-newsletter button{
  margin:0!important;
  border-radius:var(--wpst-newsletter-radius)!important;
  background:var(--wpst-newsletter-button-bg)!important;
  color:var(--wpst-newsletter-button-color)!important;
  box-shadow:none!important;
}
.wpst-ew-footer-newsletter button:hover{
  background:var(--wpst-newsletter-button-hover-bg)!important;
  color:var(--wpst-newsletter-button-hover-color)!important;
  transform:translateY(-1px);
}
.wpst-ew-footer-newsletter button svg,.wpst-ew-footer-newsletter button svg *{stroke:currentColor!important}

@media(max-width:767px){
  .wpst-ew-footer-brand{--wpst-footer-brand-gap:12px}
  .wpst-ew-footer-social a{min-height:44px}
  .wpst-footer-newsletter-field,
  .wpst-ew-footer-newsletter button{min-height:48px}
}


/* ==========================================================
   v3.3.18.21.13.8.7 · Local Button / Typography Reliability
   Applies only when a local control emits its custom property.
   Widget defaults remain unchanged when controls are empty.
   ========================================================== */

.elementor-widget.elementor-element > .elementor-widget-container :is(
  a.wpst-ew-button,
  a.wpst-q-button,
  .wpst-button,
  .wpst-adv-button,
  [class*="cta"] a,
  a[class*="button"],
  button[class*="button"],
  .wpst-ew-hero-slide a,
  .wpst-content-slide-copy a,
  .wpst-video-bg-copy>a,
  .wpst-ew-video-content>a,
  .wpst-media-card-copy>a,
  .wpst-booking-strip a,
  .wpst-hsm-actions a,
  .wpst-hb-main>a,
  .wpst-hs-actions a,
  .wpst-hsp-inner>a,
  .wpst-hi-copy>a,
  .wpst-hh-copy>a,
  .wpst-hm-copy>a,
  .wpst-hc-copy>a,
  .wpst-ew-footer-newsletter button[type="submit"],
  .wpforms-submit
):not(:where(.wpst-aihtml-root *)){
  color:var(--wpst-local-button-color)!important;
  background-color:var(--wpst-local-button-bg)!important;
  font-size:var(--wpst-local-button-size)!important;
  line-height:var(--wpst-local-button-line)!important;
  letter-spacing:var(--wpst-local-button-letter)!important;
  border-radius:var(--wpst-local-button-radius)!important;
  padding:
    var(--wpst-local-button-pad-top)
    var(--wpst-local-button-pad-right)
    var(--wpst-local-button-pad-bottom)
    var(--wpst-local-button-pad-left)!important;
}

.elementor-widget.elementor-element > .elementor-widget-container :is(
  a.wpst-ew-button,
  a.wpst-q-button,
  .wpst-button,
  .wpst-adv-button,
  [class*="cta"] a,
  a[class*="button"],
  button[class*="button"],
  .wpst-ew-hero-slide a,
  .wpst-content-slide-copy a,
  .wpst-video-bg-copy>a,
  .wpst-ew-video-content>a,
  .wpst-media-card-copy>a,
  .wpst-booking-strip a,
  .wpst-hsm-actions a,
  .wpst-hb-main>a,
  .wpst-hs-actions a,
  .wpst-hsp-inner>a,
  .wpst-hi-copy>a,
  .wpst-hh-copy>a,
  .wpst-hm-copy>a,
  .wpst-hc-copy>a,
  .wpst-ew-footer-newsletter button[type="submit"],
  .wpforms-submit
):hover:not(:where(.wpst-aihtml-root *)){
  color:var(--wpst-local-button-hover-color,var(--wpst-local-button-color))!important;
  background-color:var(--wpst-local-button-hover-bg,var(--wpst-local-button-bg))!important;
}


/* ==========================================================
   v3.3.18.21.13.8.8 · WPSoft Navigation
   ========================================================== */
.wpst-navigation{
  --wpst-nav-gap:8px;
  --wpst-nav-pad-x:12px;
  --wpst-nav-height:44px;
  --wpst-nav-radius:10px;
  --wpst-nav-color:inherit;
  --wpst-nav-hover:inherit;
  --wpst-nav-active:inherit;
  --wpst-nav-hover-bg:rgba(148,163,184,.10);
  --wpst-nav-active-bg:rgba(148,163,184,.12);
  --wpst-nav-dropdown-bg:#fff;
  --wpst-nav-dropdown-color:#0f172a;
  --wpst-nav-dropdown-hover:#f8fafc;
  --wpst-nav-dropdown-width:240px;
  width:100%;
  min-width:0;
}
.wpst-navigation>ul,
.wpst-navigation .wpst-navigation-menu{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:var(--wpst-nav-gap);
  margin:0;
  padding:0;
  list-style:none;
}
.wpst-navigation li{position:relative;margin:0;padding:0;list-style:none}
.wpst-navigation>ul>li>a{
  min-height:var(--wpst-nav-height);
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:0 var(--wpst-nav-pad-x);
  border-radius:var(--wpst-nav-radius);
  color:var(--wpst-nav-color)!important;
  text-decoration:none!important;
  white-space:nowrap;
  transition:.18s ease;
}
.wpst-navigation>ul>li>a:hover,
.wpst-navigation>ul>li>a:focus-visible{
  color:var(--wpst-nav-hover)!important;
  background:var(--wpst-nav-hover-bg);
}
.wpst-navigation li.current-menu-item>a,
.wpst-navigation li.current_page_item>a,
.wpst-navigation li.current-menu-ancestor>a,
.wpst-navigation li.current_page_ancestor>a{
  color:var(--wpst-nav-active)!important;
}
.wpst-navigation-active-pill .wpst-navigation li.current-menu-item>a,
.wpst-navigation-active-pill .wpst-navigation li.current_page_item>a,
.wpst-navigation-active-pill .wpst-navigation li.current-menu-ancestor>a,
.wpst-navigation-active-pill .wpst-navigation li.current_page_ancestor>a{
  background:var(--wpst-nav-active-bg);
}
.wpst-navigation-active-underline .wpst-navigation>ul>li.current-menu-item>a,
.wpst-navigation-active-underline .wpst-navigation>ul>li.current_page_item>a{
  box-shadow:inset 0 -2px currentColor;
}
.wpst-navigation-active-soft .wpst-navigation li.current-menu-item>a,
.wpst-navigation-active-soft .wpst-navigation li.current_page_item>a{
  background:var(--wpst-nav-active-bg);
  box-shadow:0 8px 22px rgba(15,23,42,.08);
}

/* Native dropdown + Mega Menu compatible parent structure */
.wpst-navigation .sub-menu{
  position:absolute;
  z-index:99999;
  top:calc(100% + 8px);
  left:0;
  width:var(--wpst-nav-dropdown-width);
  min-width:var(--wpst-nav-dropdown-width);
  margin:0;
  padding:8px;
  border:1px solid rgba(148,163,184,.20);
  border-radius:14px;
  background:var(--wpst-nav-dropdown-bg);
  color:var(--wpst-nav-dropdown-color);
  box-shadow:0 18px 48px rgba(15,23,42,.12);
  opacity:0;
  visibility:hidden;
  transform:translateY(8px);
  transition:.18s ease;
  list-style:none;
}
.wpst-navigation li:hover>.sub-menu,
.wpst-navigation li:focus-within>.sub-menu{
  opacity:1;
  visibility:visible;
  transform:none;
}
.wpst-navigation .sub-menu a{
  display:flex;
  align-items:center;
  min-height:40px;
  padding:7px 10px;
  border-radius:9px;
  color:var(--wpst-nav-dropdown-color)!important;
  text-decoration:none!important;
}
.wpst-navigation .sub-menu a:hover{background:var(--wpst-nav-dropdown-hover)}
.wpst-navigation .sub-menu .sub-menu{top:0;left:calc(100% + 6px)}

/* v3.3.56 · Dropdown hover bridge
   Keep the submenu hover path continuous across the intentional visual gap. */
@media (min-width:768px){
  .wpst-navigation .sub-menu::before{
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:-12px;
    height:12px;
    background:transparent;
    pointer-events:auto;
  }
  .wpst-navigation .sub-menu .sub-menu::before{
    left:-8px;
    right:auto;
    top:0;
    bottom:0;
    width:8px;
    height:auto;
  }
}

.wpst-nav-submenu-indicator-yes .wpst-navigation .menu-item-has-children>a::after{
  content:"";
  width:6px;height:6px;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translateY(-2px);
  margin-left:3px;
}
.wpst-navigation-empty{
  padding:10px 12px;
  border:1px dashed #cbd5e1;
  border-radius:10px;
  color:#64748b;
  font-size:12px;
  text-align:center;
}

@media(max-width:767px){
  .wpst-nav-mobile-wrap .wpst-navigation>ul{flex-wrap:wrap}
  .wpst-nav-mobile-scroll .wpst-navigation{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .wpst-nav-mobile-scroll .wpst-navigation>ul{justify-content:flex-start;flex-wrap:nowrap;width:max-content}
}


/* ==========================================================
   v3.3.18.21.13.8.13 · Navigation Modern UI Pass
   ========================================================== */
.wpst-navigation{
  --wpst-nav-border:transparent;
  --wpst-nav-underline:2px;
  --wpst-nav-dropdown-border:rgba(148,163,184,.18);
  --wpst-nav-dropdown-active:#2563eb;
  --wpst-nav-dropdown-radius:14px;
  --wpst-nav-dropdown-pad:8px;
}
.wpst-navigation>ul>li>a{
  position:relative;
  isolation:isolate;
  border:1px solid var(--wpst-nav-border,transparent);
  font-weight:650;
  letter-spacing:-.01em;
  transition:
    color .2s ease,
    background-color .2s ease,
    border-color .2s ease,
    transform .2s ease,
    box-shadow .2s ease;
}
.wpst-navigation>ul>li>a::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:4px;
  border-radius:calc(var(--wpst-nav-radius) - 3px);
  background:transparent;
  opacity:0;
  transition:.2s ease;
}

/* Presets */
.wpst-navigation-preset-modern .wpst-navigation>ul>li>a:hover{
  background:var(--wpst-nav-hover-bg);
}
.wpst-navigation-preset-minimal .wpst-navigation>ul>li>a{
  background:transparent!important;
  border-color:transparent!important;
  box-shadow:none!important;
}
.wpst-navigation-preset-floating .wpst-navigation>ul{
  padding:5px;
  border:1px solid rgba(148,163,184,.16);
  border-radius:calc(var(--wpst-nav-radius) + 8px);
  background:rgba(255,255,255,.72);
  box-shadow:0 10px 30px rgba(15,23,42,.07);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
.wpst-navigation-preset-glass .wpst-navigation>ul{
  padding:5px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:calc(var(--wpst-nav-radius) + 8px);
  background:rgba(255,255,255,.13);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
.wpst-navigation-preset-clean .wpst-navigation>ul>li>a{
  background:transparent!important;
  box-shadow:none!important;
}

/* Active styles */
.wpst-navigation-active-outline .wpst-navigation li.current-menu-item>a,
.wpst-navigation-active-outline .wpst-navigation li.current_page_item>a,
.wpst-navigation-active-outline .wpst-navigation li.current-menu-ancestor>a,
.wpst-navigation-active-outline .wpst-navigation li.current_page_ancestor>a{
  border-color:currentColor!important;
  background:transparent!important;
}
.wpst-navigation-active-underline .wpst-navigation>ul>li.current-menu-item>a,
.wpst-navigation-active-underline .wpst-navigation>ul>li.current_page_item>a,
.wpst-navigation-active-underline .wpst-navigation>ul>li.current-menu-ancestor>a,
.wpst-navigation-active-underline .wpst-navigation>ul>li.current_page_ancestor>a{
  box-shadow:none!important;
}
.wpst-navigation-active-underline .wpst-navigation>ul>li.current-menu-item>a::after,
.wpst-navigation-active-underline .wpst-navigation>ul>li.current_page_item>a::after,
.wpst-navigation-active-underline .wpst-navigation>ul>li.current-menu-ancestor>a::after,
.wpst-navigation-active-underline .wpst-navigation>ul>li.current_page_ancestor>a::after{
  content:"";
  position:absolute;
  left:var(--wpst-nav-pad-x);
  right:var(--wpst-nav-pad-x);
  bottom:3px;
  height:var(--wpst-nav-underline);
  border-radius:999px;
  background:currentColor;
}

/* Hover motion */
.wpst-navigation-hover-lift .wpst-navigation>ul>li>a:hover{transform:translateY(-2px)}
.wpst-navigation-hover-slide .wpst-navigation>ul>li>a:hover{transform:translateX(2px)}
.wpst-navigation-hover-scale .wpst-navigation>ul>li>a:hover{transform:scale(1.025)}
.wpst-navigation-hover-none .wpst-navigation>ul>li>a:hover{transform:none}

/* Modern dropdown */
.wpst-navigation .sub-menu{
  padding:var(--wpst-nav-dropdown-pad);
  border-color:var(--wpst-nav-dropdown-border);
  border-radius:var(--wpst-nav-dropdown-radius);
  transform:translateY(10px) scale(.985);
  transform-origin:top left;
}
.wpst-navigation li:hover>.sub-menu,
.wpst-navigation li:focus-within>.sub-menu{
  transform:translateY(0) scale(1);
}
.wpst-navigation .sub-menu li+li{
  margin-top:2px;
}
.wpst-navigation .sub-menu a{
  position:relative;
  min-height:42px;
  gap:8px;
  font-size:.94em;
  transition:.18s ease;
}
.wpst-navigation .sub-menu a:hover{
  transform:translateX(2px);
}
.wpst-navigation .sub-menu li.current-menu-item>a,
.wpst-navigation .sub-menu li.current_page_item>a,
.wpst-navigation .sub-menu li.current-menu-ancestor>a{
  color:var(--wpst-nav-dropdown-active)!important;
  background:var(--wpst-nav-dropdown-hover);
}

/* Dropdown shadow levels */
.wpst-navigation-dropdown-shadow-none .wpst-navigation .sub-menu{box-shadow:none!important}
.wpst-navigation-dropdown-shadow-soft .wpst-navigation .sub-menu{box-shadow:0 16px 38px rgba(15,23,42,.10)!important}
.wpst-navigation-dropdown-shadow-medium .wpst-navigation .sub-menu{box-shadow:0 20px 46px rgba(15,23,42,.15)!important}
.wpst-navigation-dropdown-shadow-strong .wpst-navigation .sub-menu{box-shadow:0 24px 58px rgba(15,23,42,.22)!important}

/* Better indicator motion */
.wpst-navigation .menu-item-has-children>a::after{
  transition:transform .18s ease;
}
.wpst-navigation .menu-item-has-children:hover>a::after,
.wpst-navigation .menu-item-has-children:focus-within>a::after{
  transform:rotate(225deg) translate(-1px,-1px);
}

/* Transparent/dark header friendliness: inherit unless user explicitly chooses a color. */
.wpst-header-template.is-glass .wpst-navigation,
.wpst-header-template.is-transparent .wpst-navigation{
  color:inherit;
}
.wpst-header-template.is-glass .wpst-navigation>ul>li>a,
.wpst-header-template.is-transparent .wpst-navigation>ul>li>a{
  color:var(--wpst-nav-color,currentColor)!important;
}

@media(max-width:1024px){
  .wpst-navigation{
    --wpst-nav-gap:4px;
  }
  .wpst-navigation>ul>li>a{
    min-height:max(40px,var(--wpst-nav-height));
  }
}

@media(max-width:767px){
  .wpst-navigation>ul>li>a{
    min-height:max(44px,var(--wpst-nav-height));
  }
  .wpst-navigation-preset-floating .wpst-navigation>ul,
  .wpst-navigation-preset-glass .wpst-navigation>ul{
    box-shadow:none;
  }
}

@media(prefers-reduced-motion:reduce){
  .wpst-navigation *,
  .wpst-navigation *::before,
  .wpst-navigation *::after{
    transition:none!important;
    animation:none!important;
  }
}


/* v3.3.18.21.13.8.15 · WPSoft Site Logo */
.wpst-site-logo{
  display:flex;
  align-items:center;
  width:100%;
  min-width:0;
  line-height:1;
  text-decoration:none!important;
}
.wpst-site-logo img{
  display:block;
  width:148px;
  max-width:100%;
  height:auto;
  object-fit:contain;
  object-position:left center;
}
.wpst-site-logo-title{
  display:inline-block;
  color:inherit;
  font-size:22px;
  font-weight:800;
  line-height:1.1;
  letter-spacing:-.035em;
  white-space:nowrap;
}
.wpst-header-template .elementor-widget-wpsoft-site-logo{
  flex:0 0 auto;
  min-width:0;
}


/* v3.3.18.21.13.8.16 · WPSoft Navigation Mobile */
.wpst-navigation{--wpst-nav-mobile-bg:linear-gradient(160deg,#071426 0%,#091a35 50%,#071326 100%);--wpst-nav-mobile-color:#f7f9ff;--wpst-nav-mobile-hover:rgba(255,255,255,.055);--wpst-nav-overlay-bg:rgba(4,10,20,.55);--wpst-nav-mobile-width:88%;--wpst-nav-toggle-color:#0f172a;--wpst-nav-toggle-bg:rgba(148,163,184,.10)}
.wpst-nav-toggle,.wpst-nav-overlay,.wpst-nav-mobile-head,.wpst-nav-close,.wpst-nav-subtoggle{display:none}
.wpst-nav-mobile-panel{display:none}.wpst-nav-menu-host,.wpst-nav-desktop-host{display:block}
html.wpst-nav-lock,html.wpst-nav-lock body{overflow:hidden!important}

@media(max-width:1024px){
 .wpst-nav-mobile-hamburger .wpst-navigation{display:flex;justify-content:flex-end;width:100%}
 .wpst-nav-mobile-hamburger .wpst-nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;padding:0;border:0;border-radius:12px;background:var(--wpst-nav-toggle-bg);color:var(--wpst-nav-toggle-color);box-shadow:none;cursor:pointer;z-index:100002}
 .wpst-nav-toggle-bars{width:20px;height:16px;display:flex;flex-direction:column;justify-content:space-between}
 .wpst-nav-toggle-bars i{display:block;width:100%;height:2px;border-radius:99px;background:currentColor;transition:.2s}
 .wpst-navigation.is-open .wpst-nav-toggle-bars i:nth-child(1){transform:translateY(7px) rotate(45deg)}
 .wpst-navigation.is-open .wpst-nav-toggle-bars i:nth-child(2){opacity:0}
 .wpst-navigation.is-open .wpst-nav-toggle-bars i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

 .wpst-nav-mobile-hamburger .wpst-nav-mobile-panel{display:flex;flex-direction:column;position:fixed;z-index:100001;top:0;bottom:0;width:min(var(--wpst-nav-mobile-width),92vw);background:var(--wpst-nav-mobile-bg);color:var(--wpst-nav-mobile-color);box-shadow:0 0 44px rgba(15,23,42,.18);overflow:auto;transition:transform .28s cubic-bezier(.22,1,.36,1)}
 .wpst-nav-drawer-right .wpst-nav-mobile-panel{right:0;transform:translateX(105%)}
 .wpst-nav-drawer-left .wpst-nav-mobile-panel{left:0;transform:translateX(-105%)}
 .wpst-navigation.is-open .wpst-nav-mobile-panel{transform:translateX(0)}

 .wpst-nav-overlay-yes .wpst-nav-overlay{display:block;position:fixed;z-index:100000;inset:0;background:var(--wpst-nav-overlay-bg);opacity:0;visibility:hidden;pointer-events:none;transition:.22s}
 .wpst-nav-overlay-yes .wpst-navigation.is-open>.wpst-nav-overlay{opacity:1;visibility:visible;pointer-events:auto}

 .wpst-nav-mobile-head{display:flex;align-items:center;justify-content:space-between;min-height:70px;padding:14px 18px;border-bottom:1px solid rgba(148,163,184,.18)}
 .wpst-nav-mobile-head strong{color:var(--wpst-nav-mobile-color);font-size:16px}
 .wpst-nav-close{display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:10px;background:rgba(148,163,184,.10);color:var(--wpst-nav-mobile-color);font-size:28px;cursor:pointer}
 .wpst-nav-mobile-hamburger .wpst-nav-menu-host{display:block;padding:12px 14px 28px}
 .wpst-nav-mobile-hamburger .wpst-navigation-menu{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:4px!important;width:100%!important}
 .wpst-nav-mobile-hamburger .wpst-navigation-menu>li{width:100%;display:grid;grid-template-columns:1fr auto;align-items:center}
 .wpst-nav-mobile-hamburger .wpst-navigation-menu>li>a{min-height:48px!important;width:100%;padding:10px 12px!important;justify-content:flex-start!important;color:var(--wpst-nav-mobile-color)!important;background:transparent!important;border:0!important;box-shadow:none!important;transform:none!important}
 .wpst-nav-mobile-hamburger .wpst-navigation-menu>li>a:hover{background:var(--wpst-nav-mobile-hover)!important}
 .wpst-nav-mobile-hamburger .wpst-navigation .sub-menu{grid-column:1/-1;position:static!important;width:100%!important;min-width:0!important;max-height:0;overflow:hidden;padding:0!important;margin:0!important;border:0!important;background:transparent!important;box-shadow:none!important;opacity:1!important;visibility:visible!important;transform:none!important;transition:max-height .24s ease!important}
 .wpst-nav-mobile-hamburger .wpst-navigation .is-sub-open>.sub-menu{max-height:800px;padding:4px 0 4px 14px!important}
 .wpst-nav-mobile-hamburger .wpst-nav-subtoggle{display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:10px;background:transparent;color:var(--wpst-nav-mobile-color);cursor:pointer}
 .wpst-nav-subtoggle span{width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:.18s}
 .wpst-nav-subtoggle[aria-expanded="true"] span{transform:rotate(225deg)}
 .wpst-nav-mobile-hamburger .wpst-navigation .menu-item-has-children>a::after{display:none!important}
}

/* 767 breakpoint: tablet keeps desktop menu */
@media(min-width:768px) and (max-width:1024px){
 .wpst-nav-breakpoint-767.wpst-nav-mobile-hamburger .wpst-nav-toggle{display:none!important}
 .wpst-nav-breakpoint-767.wpst-nav-mobile-hamburger .wpst-nav-mobile-panel{display:none!important}.wpst-nav-breakpoint-767.wpst-nav-mobile-hamburger .wpst-nav-menu-host{display:block!important}
 .wpst-nav-breakpoint-767.wpst-nav-mobile-hamburger .wpst-navigation-menu{display:flex!important;flex-direction:row!important;align-items:center!important}
 .wpst-nav-breakpoint-767.wpst-nav-mobile-hamburger .wpst-nav-mobile-head,.wpst-nav-breakpoint-767.wpst-nav-mobile-hamburger .wpst-nav-overlay{display:none!important}
}


/* ==========================================================
   v3.3.18.21.13.8.17 · Modern Mobile Drawer + CTA
   ========================================================== */
.wpst-navigation{
  --wpst-nav-mobile-cta-bg:#2563eb;
  --wpst-nav-mobile-cta-color:#fff;
  --wpst-nav-mobile-cta-hover-bg:#1d4ed8;
}
.wpst-nav-mobile-brand{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
}
.wpst-nav-mobile-brand span{
  color:var(--wpst-nav-mobile-color);
  font-size:17px;
  font-weight:800;
  letter-spacing:-.025em;
  line-height:1.1;
}
.wpst-nav-mobile-brand small{
  color:var(--wpst-nav-mobile-color);
  font-size:10px;
  font-weight:700;
  letter-spacing:.12em;
  opacity:.45;
  text-transform:uppercase;
}
.wpst-nav-mobile-footer{display:none}

@media(max-width:1024px){
  .wpst-nav-mobile-hamburger .wpst-nav-mobile-panel{
    padding:10px;
    background:var(--wpst-nav-mobile-bg);
  }
  .wpst-nav-mobile-hamburger .wpst-nav-mobile-head{
    min-height:66px;
    padding:12px 12px 12px 14px;
    border:1px solid rgba(148,163,184,.14);
    border-radius:16px;
    background:rgba(148,163,184,.055);
  }
  .wpst-nav-mobile-hamburger .wpst-nav-close{
    width:38px;
    height:38px;
    border-radius:12px;
    background:rgba(148,163,184,.12);
    font-size:24px;
    transition:.18s ease;
  }
  .wpst-nav-mobile-hamburger .wpst-nav-close:hover{
    transform:rotate(3deg) scale(1.03);
  }
  .wpst-nav-mobile-hamburger .wpst-nav-menu-host{
    display:block;
    flex:1 1 auto;
    padding:14px 4px 16px;
  }
  .wpst-nav-mobile-hamburger .wpst-navigation-menu{
    gap:6px!important;
  }
  .wpst-nav-mobile-hamburger .wpst-navigation-menu>li{
    border-radius:14px;
    overflow:hidden;
  }
  .wpst-nav-mobile-hamburger .wpst-navigation-menu>li>a{
    min-height:50px!important;
    padding:11px 13px!important;
    border-radius:14px!important;
    font-size:15px;
    font-weight:700;
    letter-spacing:-.01em;
  }
  .wpst-nav-mobile-hamburger .wpst-navigation-menu>li.current-menu-item>a,
  .wpst-nav-mobile-hamburger .wpst-navigation-menu>li.current_page_item>a,
  .wpst-nav-mobile-hamburger .wpst-navigation-menu>li.current-menu-ancestor>a{
    background:var(--wpst-nav-mobile-hover)!important;
  }
  .wpst-nav-mobile-hamburger .wpst-nav-subtoggle{
    width:38px;
    height:38px;
    margin-right:8px;
    border-radius:11px;
    background:rgba(148,163,184,.08);
  }
  .wpst-nav-mobile-hamburger .wpst-navigation .is-sub-open>.sub-menu{
    padding:4px 0 8px 12px!important;
  }
  .wpst-nav-mobile-hamburger .wpst-navigation .sub-menu a{
    min-height:42px;
    border-radius:11px;
    padding:8px 12px;
    font-size:14px;
    opacity:.88;
  }

  .wpst-nav-mobile-hamburger .wpst-nav-mobile-footer{
    display:block;
    flex:0 0 auto;
    padding:10px 4px 4px;
    border-top:1px solid rgba(148,163,184,.14);
  }
  .wpst-nav-mobile-cta{
    width:100%;
    min-height:52px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    padding:12px 18px;
    border-radius:14px;
    background:var(--wpst-nav-mobile-cta-bg)!important;
    color:var(--wpst-nav-mobile-cta-color)!important;
    font-size:14px;
    font-weight:800;
    letter-spacing:-.01em;
    text-decoration:none!important;
    box-shadow:0 12px 26px rgba(37,99,235,.18);
    transition:.2s ease;
  }
  .wpst-nav-mobile-cta:hover,
  .wpst-nav-mobile-cta:focus-visible{
    background:var(--wpst-nav-mobile-cta-hover-bg)!important;
    color:var(--wpst-nav-mobile-cta-color)!important;
    transform:translateY(-1px);
    box-shadow:0 16px 30px rgba(37,99,235,.22);
  }
  .wpst-nav-mobile-cta i{
    font-style:normal;
    transition:transform .2s ease;
  }
  .wpst-nav-mobile-cta:hover i{transform:translateX(3px)}

  /* Desktop header CTA is replaced by drawer CTA on hamburger layouts */
  .wpst-nav-mobile-hamburger .wpst-header-desktop-cta,
  .wpst-header-template .wpst-header-desktop-cta{
    display:none!important;
  }
}

@media(min-width:1025px){
  .wpst-header-template .wpst-header-desktop-cta{
    display:block!important;
  }
}

/* 767px option: preserve desktop CTA/menu on tablet */
@media(min-width:768px) and (max-width:1024px){
  .wpst-nav-breakpoint-767.wpst-nav-mobile-hamburger ~ .wpst-header-desktop-cta,
  .wpst-header-template:has(.wpst-nav-breakpoint-767.wpst-nav-mobile-hamburger) .wpst-header-desktop-cta{
    display:block!important;
  }
}


/* ==========================================================
   v3.3.18.21.13.8.18 · Navigation desktop polish + mobile clean head
   ========================================================== */

/* Desktop navigation polish */
@media(min-width:1025px){
  .wpst-navigation{
    display:flex;
    align-items:center;
    justify-content:center;
  }
  .wpst-navigation>ul,
  .wpst-navigation .wpst-navigation-menu{
    gap:clamp(2px,var(--wpst-nav-gap),10px);
  }
  .wpst-navigation>ul>li>a{
    min-height:42px;
    padding:0 clamp(10px,var(--wpst-nav-pad-x),14px);
    border-radius:10px;
    font-size:14px;
    font-weight:650;
    letter-spacing:-.012em;
    background:transparent;
    box-shadow:none;
  }

  /* Modern preset: cleaner and lighter */
  .wpst-navigation-preset-modern .wpst-navigation>ul>li>a:hover{
    background:rgba(148,163,184,.08);
    transform:translateY(-1px);
  }
  .wpst-navigation-preset-modern.wpst-navigation-active-pill .wpst-navigation li.current-menu-item>a,
  .wpst-navigation-preset-modern.wpst-navigation-active-pill .wpst-navigation li.current_page_item>a,
  .wpst-navigation-preset-modern.wpst-navigation-active-pill .wpst-navigation li.current-menu-ancestor>a,
  .wpst-navigation-preset-modern.wpst-navigation-active-pill .wpst-navigation li.current_page_ancestor>a{
    background:var(--wpst-nav-active-bg,rgba(148,163,184,.10));
    box-shadow:none;
  }

  /* Floating / Glass should not look like a second header bar */
  .wpst-navigation-preset-floating .wpst-navigation>ul,
  .wpst-navigation-preset-glass .wpst-navigation>ul{
    padding:3px;
    border-radius:12px;
    box-shadow:none;
  }
  .wpst-navigation-preset-floating .wpst-navigation>ul{
    background:rgba(255,255,255,.58);
    border-color:rgba(148,163,184,.14);
  }
  .wpst-navigation-preset-glass .wpst-navigation>ul{
    background:rgba(255,255,255,.08);
    border-color:rgba(255,255,255,.18);
  }

  /* Dropdown spacing */
  .wpst-navigation .sub-menu{
    top:calc(100% + 10px);
    padding:8px;
  }
  .wpst-navigation .sub-menu a{
    min-height:40px;
    padding:8px 10px;
    border-radius:9px;
  }
}

/* Mobile drawer header: server-rendered widget branding + close control. */
@media(max-width:1024px){
  .wpst-nav-mobile-hamburger .wpst-nav-mobile-head{
    min-height:52px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:16px;
    padding:7px 7px 7px 10px;
    border:0;
    background:transparent;
  }
  .wpst-nav-mobile-brand{
    display:flex;
    flex:1 1 auto;
    min-width:0;
  }
  .wpst-nav-mobile-hamburger .wpst-nav-close{
    width:40px;
    height:40px;
    border-radius:12px;
    background:rgba(148,163,184,.10);
  }

  /* Cleaner drawer surface */
  .wpst-nav-mobile-hamburger .wpst-nav-mobile-panel{
    padding:8px;
    border-radius:0;
  }
  .wpst-nav-mobile-hamburger .wpst-nav-menu-host{
    padding:6px 4px 14px;
  }
  .wpst-nav-mobile-hamburger .wpst-navigation-menu>li>a{
    min-height:48px!important;
    padding:10px 12px!important;
    border-radius:12px!important;
  }
  .wpst-nav-mobile-hamburger .wpst-nav-mobile-footer{
    padding:10px 4px 4px;
  }
}

/* Transparent/floating header: hamburger should visually belong to header */
@media(max-width:1024px){
  .wpst-header-template .wpst-nav-toggle{
    box-shadow:none!important;
    border:1px solid rgba(148,163,184,.12)!important;
  }
  .wpst-header-template.is-glass .wpst-nav-toggle,
  .wpst-header-template.is-transparent .wpst-nav-toggle{
    background:rgba(255,255,255,.12)!important;
    border-color:rgba(255,255,255,.20)!important;
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
  }
}


/* ==========================================================
   v3.3.18.21.13.8.19 · Desktop Navigation + CTA color fix
   ========================================================== */

/* Advanced Button color variables must always win over theme/global link colors. */
.elementor-widget-wpsoft-advanced-button .wpst-adv-button,
.wpst-header-template .wpst-adv-button{
  color:var(--ab-color,#fff)!important;
}
.elementor-widget-wpsoft-advanced-button .wpst-adv-button span,
.elementor-widget-wpsoft-advanced-button .wpst-adv-button .wpst-adv-button-icon,
.elementor-widget-wpsoft-advanced-button .wpst-adv-button .wpst-adv-button-icon svg,
.wpst-header-template .wpst-adv-button span,
.wpst-header-template .wpst-adv-button .wpst-adv-button-icon,
.wpst-header-template .wpst-adv-button .wpst-adv-button-icon svg{
  color:inherit!important;
  fill:currentColor!important;
  stroke:currentColor!important;
}
.elementor-widget-wpsoft-advanced-button .wpst-adv-button:hover,
.wpst-header-template .wpst-adv-button:hover{
  color:var(--ab-hover-color,#fff)!important;
}

/* Premium desktop nav: clearer spacing, softer active state, modern typography. */
@media(min-width:1025px){
  .elementor-widget-wpsoft-navigation{
    width:auto!important;
    max-width:100%;
  }
  .elementor-widget-wpsoft-navigation .elementor-widget-container{
    display:flex;
    align-items:center;
    justify-content:center;
  }
  .elementor-widget-wpsoft-navigation .wpst-navigation{
    width:auto;
    max-width:100%;
  }
  .elementor-widget-wpsoft-navigation .wpst-navigation>ul,
  .elementor-widget-wpsoft-navigation .wpst-navigation-menu{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:4px!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  .elementor-widget-wpsoft-navigation .wpst-navigation>ul>li{
    display:flex;
    align-items:center;
    margin:0!important;
  }
  .elementor-widget-wpsoft-navigation .wpst-navigation>ul>li>a{
    min-height:42px!important;
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    padding:0 13px!important;
    border:1px solid transparent!important;
    border-radius:11px!important;
    background:transparent!important;
    color:var(--wpst-nav-color,#0f172a);
    font-size:14px!important;
    font-weight:650!important;
    line-height:1!important;
    letter-spacing:-.015em!important;
    text-decoration:none!important;
    white-space:nowrap;
    box-shadow:none!important;
    transform:none;
  }
  .elementor-widget-wpsoft-navigation .wpst-navigation>ul>li>a:hover{
    color:var(--wpst-nav-hover,#2563eb)!important;
    background:var(--wpst-nav-hover-bg,rgba(37,99,235,.055))!important;
    transform:none!important;
  }
  .elementor-widget-wpsoft-navigation .wpst-navigation>ul>li.current-menu-item>a,
  .elementor-widget-wpsoft-navigation .wpst-navigation>ul>li.current_page_item>a,
  .elementor-widget-wpsoft-navigation .wpst-navigation>ul>li.current-menu-ancestor>a,
  .elementor-widget-wpsoft-navigation .wpst-navigation>ul>li.current_page_ancestor>a{
    color:var(--wpst-nav-active,#2563eb)!important;
    background:var(--wpst-nav-active-bg,rgba(37,99,235,.075))!important;
    border-color:rgba(37,99,235,.08)!important;
    box-shadow:none!important;
  }
  /* Avoid underline/outline leftovers from presets making the menu look dated. */
  .elementor-widget-wpsoft-navigation .wpst-navigation>ul>li>a::before,
  .elementor-widget-wpsoft-navigation .wpst-navigation>ul>li>a::after{
    box-shadow:none!important;
  }
  .elementor-widget-wpsoft-navigation.wpst-navigation-active-underline .wpst-navigation>ul>li.current-menu-item>a::after,
  .elementor-widget-wpsoft-navigation.wpst-navigation-active-underline .wpst-navigation>ul>li.current_page_item>a::after{
    left:13px;
    right:13px;
    bottom:3px;
  }
  .elementor-widget-wpsoft-navigation .wpst-navigation .sub-menu{
    margin-top:8px!important;
    padding:7px!important;
    border:1px solid var(--wpst-nav-dropdown-border,rgba(148,163,184,.18))!important;
    border-radius:14px!important;
    background:var(--wpst-nav-dropdown-bg,#fff)!important;
    box-shadow:0 18px 42px rgba(15,23,42,.10)!important;
  }
}

/* Header CTA: compact modern button, not a heavy outlined capsule. */
@media(min-width:1025px){
  .wpst-header-template .wpst-header-desktop-cta .wpst-adv-button{
    min-height:44px;
    padding:0 18px;
    border-radius:12px;
    font-size:14px;
    font-weight:750;
    line-height:1;
    white-space:nowrap;
  }
}


/* ==========================================================
   v3.3.18.21.13.8.20 · Navigation DOM selector root fix
   Mobile drawer introduced .wpst-nav-menu-host, so desktop rules
   must target .wpst-navigation-menu rather than .wpst-navigation > ul.
   ========================================================== */
@media(min-width:1025px){
  .elementor-widget-wpsoft-navigation{
    width:auto!important;
    flex:0 1 auto!important;
  }
  .elementor-widget-wpsoft-navigation > .elementor-widget-container{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
  }
  .elementor-widget-wpsoft-navigation .wpst-navigation{
    display:block!important;
    width:auto!important;
    min-width:0!important;
  }
  .elementor-widget-wpsoft-navigation .wpst-nav-mobile-panel{display:none!important}
  .elementor-widget-wpsoft-navigation .wpst-nav-menu-host{display:block!important}
  .elementor-widget-wpsoft-navigation .wpst-navigation-menu{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:center;
    flex-wrap:nowrap!important;
    gap:6px!important;
    width:auto!important;
    margin:0!important;
    padding:0!important;
    list-style:none!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  .elementor-widget-wpsoft-navigation .wpst-navigation-menu>li{
    position:relative;
    display:flex!important;
    align-items:center!important;
    flex:0 0 auto!important;
    margin:0!important;
    padding:0!important;
  }
  .elementor-widget-wpsoft-navigation .wpst-navigation-menu>li>a{
    position:relative;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:42px!important;
    padding:0 14px!important;
    border:1px solid transparent!important;
    border-radius:11px!important;
    background:transparent!important;
    color:var(--wpst-nav-color,#0f172a)!important;
    font-size:14px;
    font-weight:650;
    line-height:1!important;
    letter-spacing:-.012em;
    text-decoration:none!important;
    white-space:nowrap!important;
    box-shadow:none!important;
    transform:none!important;
    transition:background-color .18s ease,color .18s ease,border-color .18s ease!important;
  }
  .elementor-widget-wpsoft-navigation .wpst-navigation-menu>li>a:hover,
  .elementor-widget-wpsoft-navigation .wpst-navigation-menu>li>a:focus-visible{
    color:var(--wpst-nav-hover,#2563eb)!important;
    background:var(--wpst-nav-hover-bg,rgba(37,99,235,.06))!important;
    border-color:transparent!important;
  }
  .elementor-widget-wpsoft-navigation .wpst-navigation-menu>li.current-menu-item>a,
  .elementor-widget-wpsoft-navigation .wpst-navigation-menu>li.current_page_item>a,
  .elementor-widget-wpsoft-navigation .wpst-navigation-menu>li.current-menu-ancestor>a,
  .elementor-widget-wpsoft-navigation .wpst-navigation-menu>li.current_page_ancestor>a{
    color:var(--wpst-nav-active,#2563eb)!important;
    background:var(--wpst-nav-active-bg,rgba(37,99,235,.08))!important;
    border-color:color-mix(in srgb,var(--wpst-nav-active,#2563eb) 10%,transparent)!important;
    box-shadow:none!important;
  }

  /* Presets now style the actual menu node. */
  .wpst-navigation-preset-floating .wpst-navigation .wpst-navigation-menu,
  .wpst-navigation-preset-glass .wpst-navigation .wpst-navigation-menu{
    padding:4px!important;
    border-radius:14px!important;
  }
  .wpst-navigation-preset-floating .wpst-navigation .wpst-navigation-menu{
    background:rgba(255,255,255,.64)!important;
    border:1px solid rgba(148,163,184,.14)!important;
  }
  .wpst-navigation-preset-glass .wpst-navigation .wpst-navigation-menu{
    background:rgba(255,255,255,.09)!important;
    border:1px solid rgba(255,255,255,.18)!important;
    backdrop-filter:blur(14px)!important;
    -webkit-backdrop-filter:blur(14px)!important;
  }

  /* Dropdown must remain absolute even though its parent menu is inside host. */
  .elementor-widget-wpsoft-navigation .wpst-navigation-menu .sub-menu{
    position:absolute!important;
    top:calc(100% + 9px)!important;
    left:0!important;
    z-index:99999!important;
    width:var(--wpst-nav-dropdown-width,240px)!important;
    min-width:var(--wpst-nav-dropdown-width,240px)!important;
    padding:8px!important;
    border:1px solid var(--wpst-nav-dropdown-border,rgba(148,163,184,.18))!important;
    border-radius:var(--wpst-nav-dropdown-radius,14px)!important;
    background:var(--wpst-nav-dropdown-bg,#fff)!important;
    box-shadow:0 18px 44px rgba(15,23,42,.11)!important;
  }
}

/* Advanced Button: the widget's own selected text colors always win. */
.elementor-widget-wpsoft-advanced-button .wpst-adv-button{
  color:var(--ab-color,#fff)!important;
}
.elementor-widget-wpsoft-advanced-button .wpst-adv-button:hover{
  color:var(--ab-hover-color,var(--ab-color,#fff))!important;
}
.elementor-widget-wpsoft-advanced-button .wpst-adv-button > span,
.elementor-widget-wpsoft-advanced-button .wpst-adv-button-icon{
  color:inherit!important;
}


/* ==========================================================
   v3.3.18.21.13.8.21 · Mobile drawer close-button safe area
   ========================================================== */
@media(max-width:1024px){
  .wpst-nav-mobile-hamburger .wpst-nav-mobile-panel{
    padding-top:max(10px,env(safe-area-inset-top));
    padding-right:max(10px,env(safe-area-inset-right));
    padding-bottom:max(10px,env(safe-area-inset-bottom));
    padding-left:max(10px,env(safe-area-inset-left));
  }

  .wpst-nav-mobile-hamburger .wpst-nav-mobile-head{
    min-height:54px;
    padding:
      max(6px,calc(env(safe-area-inset-top) * .15))
      6px
      6px
      6px;
  }

  .wpst-nav-mobile-hamburger .wpst-nav-close{
    position:relative;
    top:0;
    right:0;
    flex:0 0 auto;
    width:40px;
    height:40px;
    min-width:40px;
    margin:0;
    border-radius:12px;
    z-index:2;
  }

  /* Prevent any header/editor close icon from visually colliding with drawer close. */
  .wpst-nav-mobile-hamburger .wpst-nav-mobile-head{
    isolation:isolate;
  }
}

/* Extra breathing room on narrow iPhone-sized screens. */
@media(max-width:430px){
  .wpst-nav-mobile-hamburger .wpst-nav-mobile-panel{
    padding-top:max(14px,env(safe-area-inset-top));
  }
  .wpst-nav-mobile-hamburger .wpst-nav-mobile-head{
    padding-right:4px;
  }
}


/* ==========================================================
   v3.3.18.21.13.8.22 · Single mobile navigation owner
   WPSoft Navigation widget disables Header Builder legacy drawer.
   ========================================================== */
@media(max-width:1024px){
  .wpsoft-site-header.has-wpst-navigation-widget > .wpst-mobile-drawer,
  .wpsoft-site-header.has-wpst-navigation-widget > .wpst-mobile-overlay,
  .wpsoft-site-header.has-wpst-navigation-widget .wpst-mobile-toggle,
  .wpsoft-site-header.has-wpst-navigation-widget .wpst-mobile-head:not(.wpst-nav-mobile-head){
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }

  /* Modern browsers: cover the first paint before frontend.js adds the class. */
  .wpsoft-site-header:has(.elementor-widget-wpsoft-navigation [data-wpst-nav]) > .wpst-mobile-drawer,
  .wpsoft-site-header:has(.elementor-widget-wpsoft-navigation [data-wpst-nav]) > .wpst-mobile-overlay,
  .wpsoft-site-header:has(.elementor-widget-wpsoft-navigation [data-wpst-nav]) .wpst-mobile-toggle{
    display:none!important;
  }
}


/* ==========================================================
   v3.3.18.21.13.8.23.9 · Elementor mobile header drawer isolation
   ========================================================== */
@media(max-width:1024px){
  /* The mobile Elementor branch is the sole owner of its WPSoft Navigation drawer. */
  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"] .elementor-widget-wpsoft-navigation .wpst-navigation:not(.wpst-nav-viewport-layer){
    position:relative;
    z-index:100002;
  }
  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"] .elementor-widget-wpsoft-navigation .wpst-nav-mobile-panel{
    top:0!important;
    bottom:0!important;
    min-height:100dvh;
    max-height:100dvh;
    color:var(--wpst-nav-mobile-color,#0f172a)!important;
    background:var(--wps-mobile-menu-bg,var(--wpst-nav-mobile-bg))!important;
    isolation:isolate;
  }
  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"] .elementor-widget-wpsoft-navigation .wpst-nav-menu-host,
  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"] .elementor-widget-wpsoft-navigation .wpst-navigation-menu{
    opacity:1!important;
    visibility:visible!important;
  }
  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"] .elementor-widget-wpsoft-navigation .wpst-navigation-menu>li>a{
    opacity:1!important;
    color:var(--wpst-nav-mobile-color,#0f172a)!important;
    -webkit-text-fill-color:currentColor!important;
  }
  /* Legacy Live Builder mobile UI must never leak into the Elementor branch. */
  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"] :is(.wpst-mobile-drawer,.wpst-mobile-overlay,.wpst-mobile-toggle):not(.wpst-nav-mobile-panel):not(.wpst-nav-overlay):not(.wpst-nav-toggle){
    display:none!important;
  }
}


/* The native viewport layer below replaces ancestor mutation/z-index repairs. */

/* v3.3.18.21.13.8.23.15.2 · single close owner only */
@media(max-width:1024px){
  .wpst-nav-mobile-hamburger .wpst-navigation.is-open > .wpst-nav-toggle{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
}

/* ==========================================================
   v3.3.18.21.13.8.23.15 · Elementor mobile = desktop fidelity
   Elementor kaynakli mobil header'da Navigation'in gorsel dili
   masaustu Elementor ayarlarindan aynen miras alinir. Mobil katman
   yalnizca drawer ac/kapat davranisini saglar; farkli menu stili
   veya renk fallback'i uretilmez.
   ========================================================== */
@media(max-width:1024px){
  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"]
  .elementor-widget-wpsoft-navigation .wpst-navigation.is-open .wpst-nav-mobile-panel{
    background:var(--wps-mobile-menu-bg,var(--wpst-nav-mobile-bg))!important;
    color:var(--wps-mobile-menu-text,var(--wpst-nav-mobile-color))!important;
  }

  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"]
  .elementor-widget-wpsoft-navigation .wpst-navigation.is-open .wpst-navigation-menu>li>a{
    color:var(--wpst-nav-color,#0f172a)!important;
    -webkit-text-fill-color:var(--wpst-nav-color,#0f172a)!important;
    font:inherit;
  }

  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"]
  .elementor-widget-wpsoft-navigation .wpst-navigation.is-open .wpst-navigation-menu>li>a:hover,
  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"]
  .elementor-widget-wpsoft-navigation .wpst-navigation.is-open .wpst-navigation-menu>li>a:focus-visible{
    color:var(--wpst-nav-hover,var(--wpst-nav-color,#0f172a))!important;
    -webkit-text-fill-color:var(--wpst-nav-hover,var(--wpst-nav-color,#0f172a))!important;
    background:var(--wpst-nav-hover-bg,transparent)!important;
  }

  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"]
  .elementor-widget-wpsoft-navigation .wpst-navigation.is-open .wpst-navigation-menu>li.current-menu-item>a,
  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"]
  .elementor-widget-wpsoft-navigation .wpst-navigation.is-open .wpst-navigation-menu>li.current_page_item>a,
  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"]
  .elementor-widget-wpsoft-navigation .wpst-navigation.is-open .wpst-navigation-menu>li.current-menu-ancestor>a,
  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"]
  .elementor-widget-wpsoft-navigation .wpst-navigation.is-open .wpst-navigation-menu>li.current_page_ancestor>a{
    color:var(--wpst-nav-active,var(--wpst-nav-color,#0f172a))!important;
    -webkit-text-fill-color:var(--wpst-nav-active,var(--wpst-nav-color,#0f172a))!important;
    background:var(--wpst-nav-active-bg,transparent)!important;
  }

  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"]
  .elementor-widget-wpsoft-navigation .wpst-navigation.is-open .sub-menu a{
    color:var(--wpst-nav-dropdown-color,var(--wpst-nav-color,#0f172a))!important;
    -webkit-text-fill-color:var(--wpst-nav-dropdown-color,var(--wpst-nav-color,#0f172a))!important;
  }

  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"]
  .elementor-widget-wpsoft-navigation .wpst-navigation.is-open :is(.wpst-nav-close,.wpst-nav-subtoggle){
    color:var(--wpst-nav-color,#0f172a)!important;
    -webkit-text-fill-color:var(--wpst-nav-color,#0f172a)!important;
  }

  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"]
  .elementor-widget-wpsoft-navigation .wpst-navigation.is-open .sub-menu a:hover,
  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"]
  .elementor-widget-wpsoft-navigation .wpst-navigation.is-open .sub-menu a:focus-visible{
    background:var(--wpst-nav-dropdown-hover,transparent)!important;
  }

  /* Navigation widget owns its server-rendered drawer CTA. */
  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"]
  .elementor-widget-wpsoft-navigation .wps-mobile-drawer .wpst-nav-mobile-footer{
    display:block!important;
  }
}


/* ==========================================================
   v3.3.18.21.13.8.23.15.10 · Elementor Header desktop compatibility
   Consolidates the former 23.15.5 / 23.15.6 / 23.15.7 alignment patches.
   Existing template sizing is preserved; only the WPSoft header row's
   vertical rhythm and root Elementor padding are normalized on desktop.
   ========================================================== */
@media (min-width:1025px){
  /* Existing templates that carry the WPSoft template class. */
  .wpsoft-site-header .wpst-header-template.e-con{
    --padding-top:4px!important;
    --padding-bottom:4px!important;
    --padding-block-start:4px!important;
    --padding-block-end:4px!important;
    --align-items:center!important;
    padding-block-start:4px!important;
    padding-block-end:4px!important;
    min-height:60px!important;
  }

  .wpsoft-site-header .wpst-header-template.e-con > .e-con-inner{
    min-height:52px!important;
    padding-block:0!important;
    margin-block:0!important;
    align-items:center!important;
    justify-content:space-between!important;
  }

  /* Existing saved Elementor headers do not always carry wpst-header-template.
     Detect the real root container by the WPSoft Logo + Navigation pair. */
  .wpsoft-site-header :is(.wpst-all-template,.wpst-desktop-template) > .elementor{
    margin-block:0!important;
    padding-block:0!important;
  }

  .wpsoft-site-header :is(.wpst-all-template,.wpst-desktop-template)
  > .elementor
  > .e-con:first-child:has(.elementor-widget-wpsoft-site-logo):has(.elementor-widget-wpsoft-navigation){
    --padding-top:4px!important;
    --padding-bottom:4px!important;
    --padding-block-start:4px!important;
    --padding-block-end:4px!important;
    --min-height:60px!important;
    padding-block-start:4px!important;
    padding-block-end:4px!important;
    margin-block:0!important;
    min-height:60px!important;
    align-items:center!important;
  }

  .wpsoft-site-header :is(.wpst-all-template,.wpst-desktop-template)
  > .elementor
  > .e-con:first-child:has(.elementor-widget-wpsoft-site-logo):has(.elementor-widget-wpsoft-navigation)
  > .e-con-inner{
    min-height:52px!important;
    padding-block:0!important;
    margin-block:0!important;
    align-items:center!important;
  }

  /* One vertical alignment contract for Logo + Navigation + Advanced Button. */
  .wpsoft-site-header :is(.wpst-header-template,
    .wpst-all-template > .elementor > .e-con:first-child,
    .wpst-desktop-template > .elementor > .e-con:first-child)
  :is(.elementor-widget-wpsoft-site-logo,.elementor-widget-wpsoft-navigation,.elementor-widget-wpsoft-advanced-button){
    --align-self:center!important;
    align-self:center!important;
    display:flex!important;
    align-items:center!important;
    min-height:52px!important;
    margin-block:0!important;
  }

  .wpsoft-site-header :is(.wpst-header-template,
    .wpst-all-template > .elementor > .e-con:first-child,
    .wpst-desktop-template > .elementor > .e-con:first-child)
  :is(.elementor-widget-wpsoft-site-logo,.elementor-widget-wpsoft-navigation,.elementor-widget-wpsoft-advanced-button)
  > .elementor-widget-container{
    width:100%!important;
    min-height:52px!important;
    height:52px!important;
    display:flex!important;
    align-items:center!important;
    margin:0!important;
    padding-block:0!important;
  }

  .wpsoft-site-header .elementor-widget-wpsoft-site-logo > .elementor-widget-container{justify-content:flex-start!important;}
  .wpsoft-site-header .elementor-widget-wpsoft-navigation > .elementor-widget-container{justify-content:center!important;}
  .wpsoft-site-header .elementor-widget-wpsoft-advanced-button > .elementor-widget-container{justify-content:flex-end!important;}

  .wpsoft-site-header .elementor-widget-wpsoft-site-logo .wpst-site-logo,
  .wpsoft-site-header .elementor-widget-wpsoft-navigation .wpst-navigation,
  .wpsoft-site-header .elementor-widget-wpsoft-advanced-button .wpst-adv-button{
    align-self:center!important;
    margin-block:auto!important;
  }

  .wpsoft-site-header .elementor-widget-wpsoft-site-logo .wpst-site-logo{
    min-height:52px!important;
    height:auto!important;
    display:flex!important;
    align-items:center!important;
    line-height:0!important;
    margin:0!important;
  }
  .wpsoft-site-header .elementor-widget-wpsoft-site-logo .wpst-site-logo img{
    display:block!important;
    margin:0!important;
  }
  .wpsoft-site-header .elementor-widget-wpsoft-navigation .wpst-navigation{
    min-height:52px!important;
    display:flex!important;
    align-items:center!important;
  }
  .wpsoft-site-header .elementor-widget-wpsoft-navigation .wpst-navigation-menu{
    align-items:center!important;
    margin-block:0!important;
  }
  .wpsoft-site-header .elementor-widget-wpsoft-advanced-button .wpst-adv-button{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
}

/* v3.3.18.21.13.8.23.15.13 — Slider interaction consistency */
.wpst-ew-hero-slider[data-touch-swipe="yes"],
.wpst-content-slider[data-touch-swipe="yes"],
.wpst-ew-testimonial-slider[data-touch-swipe="yes"]{
  touch-action:pan-y;
}
.wpst-ew-testimonial-slider[data-mouse-drag="yes"],
.wpst-content-slider[data-mouse-drag="yes"]{
  cursor:grab;
}
.wpst-ew-testimonial-slider[data-mouse-drag="yes"].is-mouse-dragging,
.wpst-content-slider[data-mouse-drag="yes"].is-mouse-dragging{
  cursor:grabbing;
  user-select:none;
}


/* ==========================================================
   v3.3.18.21.13.8.23.15.14 · Local Button / Link Color Authority
   Elementor's "Buton / Link Biçimi" values must be the final visual
   override. Declarations stay inert when a local control is empty.
   ========================================================== */
.elementor-widget.elementor-element > .elementor-widget-container :is(
  a.wpst-ew-button,
  a.wpst-q-button,
  .wpst-button,
  .wpst-adv-button,
  [class*="cta"] a,
  a[class*="button"],
  button[class*="button"],
  .wpst-ew-hero-slide a,
  .wpst-content-slide-copy a,
  .wpst-video-bg-copy > a,
  .wpst-ew-video-content > a,
  .wpst-media-card-copy > a,
  .wpst-booking-strip a,
  .wpst-hsm-actions a,
  .wpst-hb-main > a,
  .wpst-hs-actions a,
  .wpst-hsp-inner > a,
  .wpst-hi-copy > a,
  .wpst-hh-copy > a,
  .wpst-hm-copy > a,
  .wpst-hc-copy > a,
  .wpst-ew-footer-newsletter button[type="submit"],
  .wpforms-submit
):not(:where(.wpst-aihtml-root *)){
  color:var(--wpst-local-button-color)!important;
  background:var(--wpst-local-button-bg)!important;
}

.elementor-widget.elementor-element > .elementor-widget-container :is(
  a.wpst-ew-button,
  a.wpst-q-button,
  .wpst-button,
  .wpst-adv-button,
  [class*="cta"] a,
  a[class*="button"],
  button[class*="button"],
  .wpst-ew-hero-slide a,
  .wpst-content-slide-copy a,
  .wpst-video-bg-copy > a,
  .wpst-ew-video-content > a,
  .wpst-media-card-copy > a,
  .wpst-booking-strip a,
  .wpst-hsm-actions a,
  .wpst-hb-main > a,
  .wpst-hs-actions a,
  .wpst-hsp-inner > a,
  .wpst-hi-copy > a,
  .wpst-hh-copy > a,
  .wpst-hm-copy > a,
  .wpst-hc-copy > a,
  .wpst-ew-footer-newsletter button[type="submit"],
  .wpforms-submit
):is(:hover,:focus-visible):not(:where(.wpst-aihtml-root *)){
  color:var(--wpst-local-button-hover-color,var(--wpst-local-button-color))!important;
  background:var(--wpst-local-button-hover-bg,var(--wpst-local-button-bg))!important;
}

/* Inner labels/icons must follow the locally selected text color instead of
   retaining a preset-specific color on a nested span/icon wrapper. */
.elementor-widget.elementor-element > .elementor-widget-container :is(
  a.wpst-ew-button,
  a.wpst-q-button,
  .wpst-button,
  .wpst-adv-button,
  [class*="cta"] a,
  a[class*="button"],
  button[class*="button"],
  .wpst-ew-hero-slide a,
  .wpst-content-slide-copy a,
  .wpst-video-bg-copy > a,
  .wpst-ew-video-content > a,
  .wpst-media-card-copy > a,
  .wpst-booking-strip a,
  .wpst-hsm-actions a,
  .wpst-hb-main > a,
  .wpst-hs-actions a,
  .wpst-hsp-inner > a,
  .wpst-hi-copy > a,
  .wpst-hh-copy > a,
  .wpst-hm-copy > a,
  .wpst-hc-copy > a
) :is(span,i,svg):not(:where(.wpst-aihtml-root *)){
  color:var(--wpst-local-button-color)!important;
}

.elementor-widget.elementor-element > .elementor-widget-container :is(
  a.wpst-ew-button,
  a.wpst-q-button,
  .wpst-button,
  .wpst-adv-button,
  [class*="cta"] a,
  a[class*="button"],
  button[class*="button"],
  .wpst-ew-hero-slide a,
  .wpst-content-slide-copy a,
  .wpst-video-bg-copy > a,
  .wpst-ew-video-content > a,
  .wpst-media-card-copy > a,
  .wpst-booking-strip a,
  .wpst-hsm-actions a,
  .wpst-hb-main > a,
  .wpst-hs-actions a,
  .wpst-hsp-inner > a,
  .wpst-hi-copy > a,
  .wpst-hh-copy > a,
  .wpst-hm-copy > a,
  .wpst-hc-copy > a
):is(:hover,:focus-visible) :is(span,i,svg):not(:where(.wpst-aihtml-root *)){
  color:var(--wpst-local-button-hover-color,var(--wpst-local-button-color))!important;
}

/* ==========================================================
   v3.3.18.21.13.8.23.15.17 · Unified Button Preset Engine
   Advanced Button "Hazır Buton Türü" and Global Design
   "Widget Hızlı Tasarım > Buton Karakteri" share the same
   palette, hover, border, radius and shadow language.
   Explicit Advanced Button types intentionally beat manual/local
   button color selectors; Custom keeps manual controls.
   ========================================================== */

/* Shared Quick Design palettes — same names and visual language as Advanced Button. */
body.wpst-widget-button-primary .elementor-widget.wpst-preset-global{
  --wpst-quick-btn-radius:14px;
  --wpst-quick-btn-bg:var(--wpst-button-bg,#2563eb);
  --wpst-quick-btn-text:var(--wpst-button-text,#fff);
  --wpst-quick-btn-border:color-mix(in srgb,var(--wpst-button-bg,#2563eb) 26%,transparent);
  --wpst-quick-btn-hover-bg:var(--wpst-button-hover-bg,#1d4ed8);
  --wpst-quick-btn-hover-text:var(--wpst-button-hover-text,#fff);
  --wpst-quick-btn-shadow:0 10px 24px rgba(37,99,235,.22);
  --wpst-quick-btn-hover-shadow:0 14px 32px rgba(37,99,235,.30);
}
body.wpst-widget-button-secondary .elementor-widget.wpst-preset-global{
  --wpst-quick-btn-radius:14px;
  --wpst-quick-btn-bg:var(--wpst-button-secondary-bg,#fff);
  --wpst-quick-btn-text:var(--wpst-button-secondary-text,#0f172a);
  --wpst-quick-btn-border:var(--wpst-button-secondary-border,#cbd5e1);
  --wpst-quick-btn-hover-bg:var(--wpst-button-secondary-hover-bg,#f8fafc);
  --wpst-quick-btn-hover-text:var(--wpst-button-secondary-hover-text,#0f172a);
  --wpst-quick-btn-shadow:0 10px 24px rgba(124,58,237,.22);
  --wpst-quick-btn-hover-shadow:0 14px 32px rgba(124,58,237,.30);
}
body.wpst-widget-button-dark .elementor-widget.wpst-preset-global{
  --wpst-quick-btn-radius:14px;
  --wpst-quick-btn-bg:linear-gradient(135deg,#0f172a 0%,#1e293b 100%);
  --wpst-quick-btn-text:#fff;
  --wpst-quick-btn-border:#0f172a;
  --wpst-quick-btn-hover-bg:linear-gradient(135deg,#020617 0%,#0f172a 100%);
  --wpst-quick-btn-hover-text:#fff;
  --wpst-quick-btn-shadow:0 10px 26px rgba(15,23,42,.24);
  --wpst-quick-btn-hover-shadow:0 14px 34px rgba(15,23,42,.32);
}
body.wpst-widget-button-light .elementor-widget.wpst-preset-global{
  --wpst-quick-btn-radius:14px;
  --wpst-quick-btn-bg:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);
  --wpst-quick-btn-text:#0f172a;
  --wpst-quick-btn-border:#dbe3ef;
  --wpst-quick-btn-hover-bg:linear-gradient(180deg,#f8fafc 0%,#eef2ff 100%);
  --wpst-quick-btn-hover-text:#1d4ed8;
  --wpst-quick-btn-shadow:0 9px 22px rgba(15,23,42,.08);
  --wpst-quick-btn-hover-shadow:0 13px 30px rgba(15,23,42,.13);
}
body.wpst-widget-button-outline .elementor-widget.wpst-preset-global{
  --wpst-quick-btn-radius:14px;
  --wpst-quick-btn-bg:rgba(37,99,235,.06);
  --wpst-quick-btn-text:#2563eb;
  --wpst-quick-btn-border:rgba(37,99,235,.55);
  --wpst-quick-btn-hover-bg:#2563eb;
  --wpst-quick-btn-hover-text:#fff;
  --wpst-quick-btn-shadow:0 6px 18px rgba(37,99,235,.08);
  --wpst-quick-btn-hover-shadow:0 12px 28px rgba(37,99,235,.24);
}
body.wpst-widget-button-soft .elementor-widget.wpst-preset-global{
  --wpst-quick-btn-radius:16px;
  --wpst-quick-btn-bg:linear-gradient(135deg,#eff6ff 0%,#f5f3ff 100%);
  --wpst-quick-btn-text:#4338ca;
  --wpst-quick-btn-border:#dbeafe;
  --wpst-quick-btn-hover-bg:linear-gradient(135deg,#dbeafe 0%,#ede9fe 100%);
  --wpst-quick-btn-hover-text:#3730a3;
  --wpst-quick-btn-shadow:0 8px 20px rgba(79,70,229,.09);
  --wpst-quick-btn-hover-shadow:0 12px 28px rgba(79,70,229,.15);
}
body.wpst-widget-button-gradient .elementor-widget.wpst-preset-global{
  --wpst-quick-btn-radius:15px;
  --wpst-quick-btn-bg:linear-gradient(135deg,#2563eb 0%,#7c3aed 52%,#db2777 100%);
  --wpst-quick-btn-text:#fff;
  --wpst-quick-btn-border:transparent;
  --wpst-quick-btn-hover-bg:linear-gradient(135deg,#1d4ed8 0%,#6d28d9 52%,#be185d 100%);
  --wpst-quick-btn-hover-text:#fff;
  --wpst-quick-btn-shadow:0 12px 28px rgba(79,70,229,.25);
  --wpst-quick-btn-hover-shadow:0 16px 36px rgba(79,70,229,.34);
}
body.wpst-widget-button-glass .elementor-widget.wpst-preset-global{
  --wpst-quick-btn-radius:16px;
  --wpst-quick-btn-bg:linear-gradient(135deg,rgba(255,255,255,.28),rgba(219,234,254,.16));
  --wpst-quick-btn-text:var(--wpst-heading,#0f172a);
  --wpst-quick-btn-border:rgba(148,163,184,.32);
  --wpst-quick-btn-hover-bg:linear-gradient(135deg,rgba(255,255,255,.48),rgba(219,234,254,.26));
  --wpst-quick-btn-hover-text:var(--wpst-heading,#0f172a);
  --wpst-quick-btn-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 10px 26px rgba(15,23,42,.09);
  --wpst-quick-btn-hover-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 14px 32px rgba(15,23,42,.14);
}

/* Advanced Button ready types — final authority after Local Button/Link CSS. */
.elementor-widget-wpsoft-advanced-button.wpst-button-type-primary > .elementor-widget-container .wpst-adv-button{
  --ab-bg:#2563eb!important;--ab-color:#fff!important;--ab-border:rgba(37,99,235,.22)!important;
  --ab-hover:#1d4ed8!important;--ab-hover-color:#fff!important;--ab-hover-border:#1d4ed8!important;
  --ab-icon-color:#fff!important;--ab-hover-icon-color:#fff!important;
  background:linear-gradient(135deg,#2563eb 0%,#0ea5e9 100%)!important;color:#fff!important;border:1px solid rgba(37,99,235,.22)!important;
  border-radius:14px!important;box-shadow:0 10px 24px rgba(37,99,235,.22)!important;
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-primary > .elementor-widget-container .wpst-adv-button:not(.effect-slide):is(:hover,:focus-visible){background:linear-gradient(135deg,#1d4ed8 0%,#0284c7 100%)!important;box-shadow:0 14px 32px rgba(37,99,235,.30)!important;color:#fff!important}

.elementor-widget-wpsoft-advanced-button.wpst-button-type-secondary > .elementor-widget-container .wpst-adv-button{
  --ab-bg:#7c3aed!important;--ab-color:#fff!important;--ab-border:rgba(124,58,237,.24)!important;
  --ab-hover:#6d28d9!important;--ab-hover-color:#fff!important;--ab-hover-border:#6d28d9!important;
  --ab-icon-color:#fff!important;--ab-hover-icon-color:#fff!important;
  background:linear-gradient(135deg,#7c3aed 0%,#a855f7 100%)!important;color:#fff!important;border:1px solid rgba(124,58,237,.24)!important;
  border-radius:14px!important;box-shadow:0 10px 24px rgba(124,58,237,.22)!important;
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-secondary > .elementor-widget-container .wpst-adv-button:not(.effect-slide):is(:hover,:focus-visible){background:linear-gradient(135deg,#6d28d9 0%,#9333ea 100%)!important;box-shadow:0 14px 32px rgba(124,58,237,.30)!important;color:#fff!important}

.elementor-widget-wpsoft-advanced-button.wpst-button-type-dark > .elementor-widget-container .wpst-adv-button{
  --ab-bg:#0f172a!important;--ab-color:#fff!important;--ab-border:#0f172a!important;
  --ab-hover:#020617!important;--ab-hover-color:#fff!important;--ab-hover-border:#020617!important;
  --ab-icon-color:#fff!important;--ab-hover-icon-color:#fff!important;
  background:linear-gradient(135deg,#0f172a 0%,#1e293b 100%)!important;color:#fff!important;border:1px solid #0f172a!important;
  border-radius:14px!important;box-shadow:0 10px 26px rgba(15,23,42,.24)!important;
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-dark > .elementor-widget-container .wpst-adv-button:not(.effect-slide):is(:hover,:focus-visible){background:linear-gradient(135deg,#020617 0%,#0f172a 100%)!important;box-shadow:0 14px 34px rgba(15,23,42,.32)!important;color:#fff!important}

.elementor-widget-wpsoft-advanced-button.wpst-button-type-light > .elementor-widget-container .wpst-adv-button{
  --ab-bg:#fff!important;--ab-color:#0f172a!important;--ab-border:#dbe3ef!important;
  --ab-hover:#f8fafc!important;--ab-hover-color:#1d4ed8!important;--ab-hover-border:#cbd5e1!important;
  --ab-icon-color:#0f172a!important;--ab-hover-icon-color:#1d4ed8!important;
  background:linear-gradient(180deg,#fff 0%,#f8fafc 100%)!important;color:#0f172a!important;border:1px solid #dbe3ef!important;
  border-radius:14px!important;box-shadow:0 9px 22px rgba(15,23,42,.08)!important;
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-light > .elementor-widget-container .wpst-adv-button:not(.effect-slide):is(:hover,:focus-visible){background:linear-gradient(180deg,#f8fafc 0%,#eef2ff 100%)!important;box-shadow:0 13px 30px rgba(15,23,42,.13)!important;color:#1d4ed8!important}

.elementor-widget-wpsoft-advanced-button.wpst-button-type-outline > .elementor-widget-container .wpst-adv-button{
  --ab-bg:rgba(37,99,235,.06)!important;--ab-color:#2563eb!important;--ab-border:rgba(37,99,235,.55)!important;
  --ab-hover:#2563eb!important;--ab-hover-color:#fff!important;--ab-hover-border:#2563eb!important;
  --ab-icon-color:#2563eb!important;--ab-hover-icon-color:#fff!important;
  background:rgba(37,99,235,.06)!important;color:#2563eb!important;border:1px solid rgba(37,99,235,.55)!important;
  border-radius:14px!important;box-shadow:0 6px 18px rgba(37,99,235,.08)!important;
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-outline > .elementor-widget-container .wpst-adv-button:not(.effect-slide):is(:hover,:focus-visible){background:#2563eb!important;box-shadow:0 12px 28px rgba(37,99,235,.24)!important;color:#fff!important}

.elementor-widget-wpsoft-advanced-button.wpst-button-type-soft > .elementor-widget-container .wpst-adv-button{
  --ab-bg:#eff6ff!important;--ab-color:#4338ca!important;--ab-border:#dbeafe!important;
  --ab-hover:#dbeafe!important;--ab-hover-color:#3730a3!important;--ab-hover-border:#c7d2fe!important;
  --ab-icon-color:#4f46e5!important;--ab-hover-icon-color:#3730a3!important;
  background:linear-gradient(135deg,#eff6ff 0%,#f5f3ff 100%)!important;color:#4338ca!important;border:1px solid #dbeafe!important;
  border-radius:16px!important;box-shadow:0 8px 20px rgba(79,70,229,.09)!important;
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-soft > .elementor-widget-container .wpst-adv-button:not(.effect-slide):is(:hover,:focus-visible){background:linear-gradient(135deg,#dbeafe 0%,#ede9fe 100%)!important;box-shadow:0 12px 28px rgba(79,70,229,.15)!important;color:#3730a3!important}

.elementor-widget-wpsoft-advanced-button.wpst-button-type-gradient > .elementor-widget-container .wpst-adv-button{
  --ab-bg:#2563eb!important;--ab-color:#fff!important;--ab-border:transparent!important;
  --ab-hover:#6d28d9!important;--ab-hover-color:#fff!important;--ab-hover-border:transparent!important;
  --ab-icon-color:#fff!important;--ab-hover-icon-color:#fff!important;
  background:linear-gradient(135deg,#2563eb 0%,#7c3aed 52%,#db2777 100%)!important;color:#fff!important;border:1px solid transparent!important;
  border-radius:15px!important;box-shadow:0 12px 28px rgba(79,70,229,.25)!important;
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-gradient > .elementor-widget-container .wpst-adv-button:not(.effect-slide):is(:hover,:focus-visible){background:linear-gradient(135deg,#1d4ed8 0%,#6d28d9 52%,#be185d 100%)!important;box-shadow:0 16px 36px rgba(79,70,229,.34)!important;color:#fff!important}

.elementor-widget-wpsoft-advanced-button.wpst-button-type-glass > .elementor-widget-container .wpst-adv-button{
  --ab-bg:rgba(255,255,255,.28)!important;--ab-color:#0f172a!important;--ab-border:rgba(148,163,184,.32)!important;
  --ab-hover:rgba(255,255,255,.48)!important;--ab-hover-color:#0f172a!important;--ab-hover-border:rgba(148,163,184,.46)!important;
  --ab-icon-color:#0f172a!important;--ab-hover-icon-color:#0f172a!important;
  background:linear-gradient(135deg,rgba(255,255,255,.28),rgba(219,234,254,.16))!important;color:#0f172a!important;border:1px solid rgba(148,163,184,.32)!important;
  border-radius:16px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 10px 26px rgba(15,23,42,.09)!important;
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-glass > .elementor-widget-container .wpst-adv-button:not(.effect-slide):is(:hover,:focus-visible){background:linear-gradient(135deg,rgba(255,255,255,.48),rgba(219,234,254,.26))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 14px 32px rgba(15,23,42,.14)!important;color:#0f172a!important}

/* Labels/icons always follow the selected ready type instead of stale local colors. */
.elementor-widget-wpsoft-advanced-button:not(.wpst-button-type-custom) > .elementor-widget-container .wpst-adv-button :is(.wpst-adv-button-label,.wpst-adv-button-icon,svg){
  color:inherit!important;fill:currentColor!important;stroke:currentColor!important;
}

/* ==========================================================
   v3.3.18.21.13.8.23.15.19 · Global BUTTONS Authority 2.0
   Contract: Elementor Local Style & Typography > explicit
   Advanced Button special preset > Global Design BUTTONS > legacy fallback.
   Generic/Primary/Secondary WPSoft actions read Global BUTTONS directly.
   ========================================================== */

/* Generic WPSoft actions: Global Design BUTTONS is the normal source.
   Local Button / Link variables, when present, are consumed first. */
.elementor-widget[class*="elementor-widget-wpsoft-"] > .elementor-widget-container :is(
  a.wpst-ew-button,
  a.wpst-q-button,
  .wpst-button:not(.wpst-button-secondary),
  [class*="cta"] a,
  a[class*="cta"]:not(.wpst-button-secondary),
  button[class*="cta"]:not(.wpst-button-secondary),
  a[class*="button"]:not(.wpst-button-secondary),
  button[class*="button"]:not(.wpst-button-secondary),
  .wpst-ew-hero-slide a,
  .wpst-content-slide-copy a,
  .wpst-video-bg-copy > a,
  .wpst-ew-video-content > a,
  .wpst-media-card-copy > a,
  .wpst-booking-strip a,
  .wpst-hsm-actions a,
  .wpst-hb-main > a,
  .wpst-hs-actions a,
  .wpst-hsp-inner > a,
  .wpst-hi-copy > a,
  .wpst-hh-copy > a,
  .wpst-hm-copy > a,
  .wpst-hc-copy > a,
  .wpst-ew-footer-newsletter button[type="submit"],
  .wpforms-submit
):not(:where(.wpst-aihtml-root *)){
  color:var(--wpst-local-button-color,var(--wpst-button-text,#fff))!important;
  background:var(--wpst-local-button-bg,var(--wpst-button-bg,#2563eb))!important;
  border-radius:var(--wpst-local-button-radius,var(--wpst-button-radius-global,12px))!important;
  min-height:var(--wpst-button-height,48px);
  padding-left:var(--wpst-local-button-pad-left,var(--wpst-button-padding-x,24px))!important;
  padding-right:var(--wpst-local-button-pad-right,var(--wpst-button-padding-x,24px))!important;
  font-weight:var(--wpst-button-weight,800);
  letter-spacing:var(--wpst-local-button-letter,var(--wpst-button-letter,0em));
  text-transform:var(--wpst-button-transform,none);
}
.elementor-widget[class*="elementor-widget-wpsoft-"] > .elementor-widget-container :is(
  a.wpst-ew-button,
  a.wpst-q-button,
  .wpst-button:not(.wpst-button-secondary),
  [class*="cta"] a,
  a[class*="cta"]:not(.wpst-button-secondary),
  button[class*="cta"]:not(.wpst-button-secondary),
  a[class*="button"]:not(.wpst-button-secondary),
  button[class*="button"]:not(.wpst-button-secondary),
  .wpst-ew-hero-slide a,
  .wpst-content-slide-copy a,
  .wpst-video-bg-copy > a,
  .wpst-ew-video-content > a,
  .wpst-media-card-copy > a,
  .wpst-booking-strip a,
  .wpst-hsm-actions a,
  .wpst-hb-main > a,
  .wpst-hs-actions a,
  .wpst-hsp-inner > a,
  .wpst-hi-copy > a,
  .wpst-hh-copy > a,
  .wpst-hm-copy > a,
  .wpst-hc-copy > a,
  .wpst-ew-footer-newsletter button[type="submit"],
  .wpforms-submit
):is(:hover,:focus-visible):not(:where(.wpst-aihtml-root *)){
  color:var(--wpst-local-button-hover-color,var(--wpst-local-button-color,var(--wpst-button-hover-text,#fff)))!important;
  background:var(--wpst-local-button-hover-bg,var(--wpst-local-button-bg,var(--wpst-button-hover-bg,#1d4ed8)))!important;
}

/* Secondary actions read the Secondary section of Global BUTTONS. */
.elementor-widget[class*="elementor-widget-wpsoft-"] > .elementor-widget-container :is(
  .wpst-button-secondary,
  a.wpst-button-secondary,
  button.wpst-button-secondary
){
  color:var(--wpst-local-button-color,var(--wpst-button-secondary-text,#0f172a))!important;
  background:var(--wpst-local-button-bg,var(--wpst-button-secondary-bg,#fff))!important;
  border-color:var(--wpst-button-secondary-border,#cbd5e1)!important;
  border-radius:var(--wpst-local-button-radius,var(--wpst-button-radius-global,12px))!important;
}
.elementor-widget[class*="elementor-widget-wpsoft-"] > .elementor-widget-container :is(
  .wpst-button-secondary,
  a.wpst-button-secondary,
  button.wpst-button-secondary
):is(:hover,:focus-visible){
  color:var(--wpst-local-button-hover-color,var(--wpst-local-button-color,var(--wpst-button-secondary-hover-text,#0f172a)))!important;
  background:var(--wpst-local-button-hover-bg,var(--wpst-local-button-bg,var(--wpst-button-secondary-hover-bg,#f8fafc)))!important;
}

/* Advanced Button custom + Primary + Secondary are connected to Global BUTTONS.
   Special explicit types (Dark/Light/Outline/Soft/Gradient/Glass) keep their
   consciously selected preset palette until a Local Style color is defined. */
.elementor-widget-wpsoft-advanced-button:is(.wpst-button-type-custom,.wpst-button-type-primary) > .elementor-widget-container .wpst-adv-button{
  --ab-bg:var(--wpst-button-bg,#2563eb)!important;
  --ab-color:var(--wpst-button-text,#fff)!important;
  --ab-border:var(--wpst-button-bg,#2563eb)!important;
  --ab-hover:var(--wpst-button-hover-bg,#1d4ed8)!important;
  --ab-hover-color:var(--wpst-button-hover-text,#fff)!important;
  --ab-hover-border:var(--wpst-button-hover-bg,#1d4ed8)!important;
  background:var(--wpst-local-button-bg,var(--wpst-button-bg,#2563eb))!important;
  color:var(--wpst-local-button-color,var(--wpst-button-text,#fff))!important;
}
.elementor-widget-wpsoft-advanced-button:is(.wpst-button-type-custom,.wpst-button-type-primary) > .elementor-widget-container .wpst-adv-button:is(:hover,:focus-visible){
  background:var(--wpst-local-button-hover-bg,var(--wpst-local-button-bg,var(--wpst-button-hover-bg,#1d4ed8)))!important;
  color:var(--wpst-local-button-hover-color,var(--wpst-local-button-color,var(--wpst-button-hover-text,#fff)))!important;
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-secondary > .elementor-widget-container .wpst-adv-button{
  --ab-bg:var(--wpst-button-secondary-bg,#fff)!important;
  --ab-color:var(--wpst-button-secondary-text,#0f172a)!important;
  --ab-border:var(--wpst-button-secondary-border,#cbd5e1)!important;
  --ab-hover:var(--wpst-button-secondary-hover-bg,#f8fafc)!important;
  --ab-hover-color:var(--wpst-button-secondary-hover-text,#0f172a)!important;
  --ab-hover-border:var(--wpst-button-secondary-border,#cbd5e1)!important;
  background:var(--wpst-local-button-bg,var(--wpst-button-secondary-bg,#fff))!important;
  color:var(--wpst-local-button-color,var(--wpst-button-secondary-text,#0f172a))!important;
  border-color:var(--wpst-button-secondary-border,#cbd5e1)!important;
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-secondary > .elementor-widget-container .wpst-adv-button:is(:hover,:focus-visible){
  background:var(--wpst-local-button-hover-bg,var(--wpst-local-button-bg,var(--wpst-button-secondary-hover-bg,#f8fafc)))!important;
  color:var(--wpst-local-button-hover-color,var(--wpst-local-button-color,var(--wpst-button-secondary-hover-text,#0f172a)))!important;
}

/* Local Elementor Style & Typography is always final, including explicit
   Advanced Button presets. Empty local vars make these declarations inert. */
.elementor-widget.elementor-element > .elementor-widget-container :is(
  a.wpst-ew-button,a.wpst-q-button,.wpst-button,.wpst-adv-button,
  [class*="cta"] a,a[class*="button"],button[class*="button"],
  .wpst-ew-hero-slide a,.wpst-content-slide-copy a,.wpst-video-bg-copy>a,
  .wpst-ew-video-content>a,.wpst-media-card-copy>a,.wpst-booking-strip a,
  .wpst-hsm-actions a,.wpst-hb-main>a,.wpst-hs-actions a,.wpst-hsp-inner>a,
  .wpst-hi-copy>a,.wpst-hh-copy>a,.wpst-hm-copy>a,.wpst-hc-copy>a,
  .wpst-ew-footer-newsletter button[type="submit"],.wpforms-submit
):not(:where(.wpst-aihtml-root *)){
  color:var(--wpst-local-button-color)!important;
  background:var(--wpst-local-button-bg)!important;
  font-size:var(--wpst-local-button-size)!important;
  line-height:var(--wpst-local-button-line)!important;
  letter-spacing:var(--wpst-local-button-letter)!important;
  border-radius:var(--wpst-local-button-radius)!important;
}
.elementor-widget.elementor-element > .elementor-widget-container :is(
  a.wpst-ew-button,a.wpst-q-button,.wpst-button,.wpst-adv-button,
  [class*="cta"] a,a[class*="button"],button[class*="button"],
  .wpst-ew-hero-slide a,.wpst-content-slide-copy a,.wpst-video-bg-copy>a,
  .wpst-ew-video-content>a,.wpst-media-card-copy>a,.wpst-booking-strip a,
  .wpst-hsm-actions a,.wpst-hb-main>a,.wpst-hs-actions a,.wpst-hsp-inner>a,
  .wpst-hi-copy>a,.wpst-hh-copy>a,.wpst-hm-copy>a,.wpst-hc-copy>a,
  .wpst-ew-footer-newsletter button[type="submit"],.wpforms-submit
):is(:hover,:focus-visible):not(:where(.wpst-aihtml-root *)){
  color:var(--wpst-local-button-hover-color,var(--wpst-local-button-color))!important;
  background:var(--wpst-local-button-hover-bg,var(--wpst-local-button-bg))!important;
}
.elementor-widget.elementor-element > .elementor-widget-container :is(
  a.wpst-ew-button,a.wpst-q-button,.wpst-button,.wpst-adv-button,
  [class*="cta"] a,a[class*="button"],button[class*="button"],
  .wpst-ew-hero-slide a,.wpst-content-slide-copy a,.wpst-video-bg-copy>a,
  .wpst-ew-video-content>a,.wpst-media-card-copy>a,.wpst-booking-strip a,
  .wpst-hsm-actions a,.wpst-hb-main>a,.wpst-hs-actions a,.wpst-hsp-inner>a,
  .wpst-hi-copy>a,.wpst-hh-copy>a,.wpst-hm-copy>a,.wpst-hc-copy>a
) :is(span,i,svg):not(:where(.wpst-aihtml-root *)){color:var(--wpst-local-button-color)!important}
.elementor-widget.elementor-element > .elementor-widget-container :is(
  a.wpst-ew-button,a.wpst-q-button,.wpst-button,.wpst-adv-button,
  [class*="cta"] a,a[class*="button"],button[class*="button"],
  .wpst-ew-hero-slide a,.wpst-content-slide-copy a,.wpst-video-bg-copy>a,
  .wpst-ew-video-content>a,.wpst-media-card-copy>a,.wpst-booking-strip a,
  .wpst-hsm-actions a,.wpst-hb-main>a,.wpst-hs-actions a,.wpst-hsp-inner>a,
  .wpst-hi-copy>a,.wpst-hh-copy>a,.wpst-hm-copy>a,.wpst-hc-copy>a
):is(:hover,:focus-visible) :is(span,i,svg):not(:where(.wpst-aihtml-root *)){color:var(--wpst-local-button-hover-color,var(--wpst-local-button-color))!important}


/* Global BUTTONS Authority 2.1 — resolved label/icon color follows the button. */
.elementor-widget[class*="elementor-widget-wpsoft-"] > .elementor-widget-container :is(
  a.wpst-ew-button,a.wpst-q-button,.wpst-button,.wpst-adv-button,
  a[class*="button"],button[class*="button"],a[class*="cta"],button[class*="cta"],
  [class*="cta"] a,.wpst-ew-hero-slide a,.wpst-content-slide-copy a,
  .wpst-video-bg-copy > a,.wpst-ew-video-content > a,.wpst-media-card-copy > a,
  .wpst-booking-strip a,.wpst-hsm-actions a,.wpst-hb-main > a,.wpst-hs-actions a,
  .wpst-hsp-inner > a,.wpst-hi-copy > a,.wpst-hh-copy > a,.wpst-hm-copy > a,.wpst-hc-copy > a
) :is(span,i,svg):not(:where(.wpst-aihtml-root *)){color:inherit!important;}
.elementor-widget[class*="elementor-widget-wpsoft-"] > .elementor-widget-container :is(
  a.wpst-ew-button,a.wpst-q-button,.wpst-button,.wpst-adv-button,
  a[class*="button"],button[class*="button"],a[class*="cta"],button[class*="cta"],[class*="cta"] a
) svg:not(:where(.wpst-aihtml-root *)){fill:currentColor!important;stroke:currentColor!important;}


/* ==========================================================
   v3.3 · Global BUTTONS → Local Override
   Contract:
   1) Global Design > BUTTONS is the baseline color/size system.
   2) Elementor Local Style & Typography overrides only values explicitly set.
   3) Advanced Button ready types keep their visual character, but derive colors
      from Global BUTTONS instead of owning a separate hard-coded palette.
   ========================================================== */

/* Advanced Button — every ready type derives from Global BUTTONS.
   An explicitly defined local color variable always wins for that widget only. */
.elementor-widget-wpsoft-advanced-button > .elementor-widget-container .wpst-adv-button{
  min-height:var(--wpst-button-height,48px);
  padding-left:var(--wpst-local-button-pad-left,var(--wpst-button-padding-x,24px))!important;
  padding-right:var(--wpst-local-button-pad-right,var(--wpst-button-padding-x,24px))!important;
  border-radius:var(--wpst-local-button-radius,var(--wpst-button-radius-global,12px))!important;
  color:var(--wpst-local-button-color,var(--wpst-button-text,#fff))!important;
}

/* Primary — modern global-primary gradient. */
.elementor-widget-wpsoft-advanced-button.wpst-button-type-primary > .elementor-widget-container .wpst-adv-button{
  --ab-bg:var(--wpst-button-bg,#2563eb)!important;
  --ab-color:var(--wpst-button-text,#fff)!important;
  --ab-border:color-mix(in srgb,var(--wpst-button-bg,#2563eb) 72%,transparent)!important;
  --ab-hover:var(--wpst-button-hover-bg,#1d4ed8)!important;
  --ab-hover-color:var(--wpst-button-hover-text,#fff)!important;
  --ab-icon-color:currentColor!important;
  background:var(--wpst-local-button-bg,linear-gradient(135deg,var(--wpst-button-bg,#2563eb) 0%,color-mix(in srgb,var(--wpst-button-bg,#2563eb) 72%,var(--wpst-button-hover-bg,#1d4ed8)) 100%))!important;
  color:var(--wpst-local-button-color,var(--wpst-button-text,#fff))!important;
  border-color:color-mix(in srgb,var(--wpst-button-bg,#2563eb) 58%,transparent)!important;
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-primary > .elementor-widget-container .wpst-adv-button:not(.effect-slide):is(:hover,:focus-visible){
  background:var(--wpst-local-button-hover-bg,var(--wpst-local-button-bg,linear-gradient(135deg,var(--wpst-button-hover-bg,#1d4ed8),color-mix(in srgb,var(--wpst-button-hover-bg,#1d4ed8) 74%,#000))))!important;
  color:var(--wpst-local-button-hover-color,var(--wpst-local-button-color,var(--wpst-button-hover-text,#fff)))!important;
}

/* Secondary — global secondary palette. */
.elementor-widget-wpsoft-advanced-button.wpst-button-type-secondary > .elementor-widget-container .wpst-adv-button{
  --ab-bg:var(--wpst-button-secondary-bg,#fff)!important;
  --ab-color:var(--wpst-button-secondary-text,#0f172a)!important;
  --ab-hover:var(--wpst-button-secondary-hover-bg,#f8fafc)!important;
  --ab-hover-color:var(--wpst-button-secondary-hover-text,#0f172a)!important;
  --ab-icon-color:currentColor!important;
  background:var(--wpst-local-button-bg,var(--wpst-button-secondary-bg,#fff))!important;
  color:var(--wpst-local-button-color,var(--wpst-button-secondary-text,#0f172a))!important;
  border-color:color-mix(in srgb,var(--wpst-button-secondary-text,#0f172a) 18%,transparent)!important;
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-secondary > .elementor-widget-container .wpst-adv-button:not(.effect-slide):is(:hover,:focus-visible){
  background:var(--wpst-local-button-hover-bg,var(--wpst-local-button-bg,var(--wpst-button-secondary-hover-bg,#f8fafc)))!important;
  color:var(--wpst-local-button-hover-color,var(--wpst-local-button-color,var(--wpst-button-secondary-hover-text,#0f172a)))!important;
}

/* Dark — structural variant, color derived from global primary. */
.elementor-widget-wpsoft-advanced-button.wpst-button-type-dark > .elementor-widget-container .wpst-adv-button{
  background:var(--wpst-local-button-bg,linear-gradient(135deg,color-mix(in srgb,var(--wpst-button-bg,#2563eb) 26%,#020617),color-mix(in srgb,var(--wpst-button-hover-bg,#1d4ed8) 20%,#0f172a)))!important;
  color:var(--wpst-local-button-color,var(--wpst-button-text,#fff))!important;
  border-color:color-mix(in srgb,var(--wpst-button-bg,#2563eb) 18%,#020617)!important;
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-dark > .elementor-widget-container .wpst-adv-button:not(.effect-slide):is(:hover,:focus-visible){
  background:var(--wpst-local-button-hover-bg,var(--wpst-local-button-bg,linear-gradient(135deg,color-mix(in srgb,var(--wpst-button-hover-bg,#1d4ed8) 18%,#000),#020617)))!important;
  color:var(--wpst-local-button-hover-color,var(--wpst-local-button-color,var(--wpst-button-hover-text,#fff)))!important;
}

/* Light — structural variant from global primary. */
.elementor-widget-wpsoft-advanced-button.wpst-button-type-light > .elementor-widget-container .wpst-adv-button{
  background:var(--wpst-local-button-bg,linear-gradient(180deg,#fff,color-mix(in srgb,var(--wpst-button-bg,#2563eb) 7%,#fff)))!important;
  color:var(--wpst-local-button-color,var(--wpst-button-bg,#2563eb))!important;
  border-color:color-mix(in srgb,var(--wpst-button-bg,#2563eb) 18%,#dbe3ef)!important;
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-light > .elementor-widget-container .wpst-adv-button:not(.effect-slide):is(:hover,:focus-visible){
  background:var(--wpst-local-button-hover-bg,var(--wpst-local-button-bg,color-mix(in srgb,var(--wpst-button-hover-bg,#1d4ed8) 10%,#fff)))!important;
  color:var(--wpst-local-button-hover-color,var(--wpst-local-button-color,var(--wpst-button-hover-bg,#1d4ed8)))!important;
}

/* Outline — no independent palette; global primary supplies accent. */
.elementor-widget-wpsoft-advanced-button.wpst-button-type-outline > .elementor-widget-container .wpst-adv-button{
  background:var(--wpst-local-button-bg,transparent)!important;
  color:var(--wpst-local-button-color,var(--wpst-button-bg,#2563eb))!important;
  border-color:var(--wpst-button-bg,#2563eb)!important;
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-outline > .elementor-widget-container .wpst-adv-button:not(.effect-slide):is(:hover,:focus-visible){
  background:var(--wpst-local-button-hover-bg,var(--wpst-local-button-bg,var(--wpst-button-hover-bg,#1d4ed8)))!important;
  color:var(--wpst-local-button-hover-color,var(--wpst-button-hover-text,#fff))!important;
  border-color:var(--wpst-button-hover-bg,#1d4ed8)!important;
}

/* Soft — global-primary tinted surface. */
.elementor-widget-wpsoft-advanced-button.wpst-button-type-soft > .elementor-widget-container .wpst-adv-button{
  background:var(--wpst-local-button-bg,color-mix(in srgb,var(--wpst-button-bg,#2563eb) 11%,#fff))!important;
  color:var(--wpst-local-button-color,color-mix(in srgb,var(--wpst-button-bg,#2563eb) 82%,#0f172a))!important;
  border-color:color-mix(in srgb,var(--wpst-button-bg,#2563eb) 20%,transparent)!important;
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-soft > .elementor-widget-container .wpst-adv-button:not(.effect-slide):is(:hover,:focus-visible){
  background:var(--wpst-local-button-hover-bg,var(--wpst-local-button-bg,color-mix(in srgb,var(--wpst-button-hover-bg,#1d4ed8) 17%,#fff)))!important;
  color:var(--wpst-local-button-hover-color,var(--wpst-local-button-color,color-mix(in srgb,var(--wpst-button-hover-bg,#1d4ed8) 86%,#0f172a)))!important;
}

/* Gradient — global primary + global hover; still globally controlled. */
.elementor-widget-wpsoft-advanced-button.wpst-button-type-gradient > .elementor-widget-container .wpst-adv-button{
  background:var(--wpst-local-button-bg,linear-gradient(135deg,var(--wpst-button-bg,#2563eb),color-mix(in srgb,var(--wpst-button-bg,#2563eb) 35%,var(--wpst-button-hover-bg,#1d4ed8)),var(--wpst-button-hover-bg,#1d4ed8)))!important;
  color:var(--wpst-local-button-color,var(--wpst-button-text,#fff))!important;
  border-color:transparent!important;
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-gradient > .elementor-widget-container .wpst-adv-button:not(.effect-slide):is(:hover,:focus-visible){
  background:var(--wpst-local-button-hover-bg,var(--wpst-local-button-bg,linear-gradient(135deg,var(--wpst-button-hover-bg,#1d4ed8),var(--wpst-button-bg,#2563eb))))!important;
  color:var(--wpst-local-button-hover-color,var(--wpst-local-button-color,var(--wpst-button-hover-text,#fff)))!important;
}

/* Glass — translucent global-primary character. */
.elementor-widget-wpsoft-advanced-button.wpst-button-type-glass > .elementor-widget-container .wpst-adv-button{
  background:var(--wpst-local-button-bg,linear-gradient(135deg,color-mix(in srgb,var(--wpst-button-bg,#2563eb) 18%,rgba(255,255,255,.72)),rgba(255,255,255,.28)))!important;
  color:var(--wpst-local-button-color,var(--wpst-button-bg,#2563eb))!important;
  border-color:color-mix(in srgb,var(--wpst-button-bg,#2563eb) 24%,rgba(255,255,255,.55))!important;
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-glass > .elementor-widget-container .wpst-adv-button:not(.effect-slide):is(:hover,:focus-visible){
  background:var(--wpst-local-button-hover-bg,var(--wpst-local-button-bg,linear-gradient(135deg,color-mix(in srgb,var(--wpst-button-hover-bg,#1d4ed8) 24%,rgba(255,255,255,.78)),rgba(255,255,255,.36))))!important;
  color:var(--wpst-local-button-hover-color,var(--wpst-local-button-color,var(--wpst-button-hover-bg,#1d4ed8)))!important;
}

/* Local Elementor icon colors, if explicitly chosen, are the final per-widget override. */
.elementor-widget-wpsoft-advanced-button > .elementor-widget-container .wpst-adv-button .wpst-adv-button-icon{
  color:var(--ab-icon-color,currentColor)!important;
}
.elementor-widget-wpsoft-advanced-button > .elementor-widget-container .wpst-adv-button:is(:hover,:focus-visible) .wpst-adv-button-icon{
  color:var(--ab-hover-icon-color,var(--ab-icon-color,currentColor))!important;
}


/* ==========================================================
   Elementor Mobile Header · Site Logo + Navigation alignment
   The Elementor branch does not use Live Builder .wpst-mobile-head.
   Normalize the real mobile e-con row and the two widget containers.
   ========================================================== */
@media(max-width:1024px){
  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"]
  :is(.wpst-mobile-template,.wpst-all-template)
  > .elementor
  > .e-con:first-child:has(.elementor-widget-wpsoft-site-logo):has(.elementor-widget-wpsoft-navigation),
  .wpsoft-site-header.is-wpst-mobile
  :is(.wpst-mobile-template,.wpst-all-template)
  > .elementor
  > .e-con:first-child:has(.elementor-widget-wpsoft-site-logo):has(.elementor-widget-wpsoft-navigation){
    --align-items:center!important;
    align-items:center!important;
    min-height:64px!important;
    padding-block:0!important;
    margin-block:0!important;
  }

  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"]
  :is(.wpst-mobile-template,.wpst-all-template)
  > .elementor
  > .e-con:first-child:has(.elementor-widget-wpsoft-site-logo):has(.elementor-widget-wpsoft-navigation)
  > .e-con-inner,
  .wpsoft-site-header.is-wpst-mobile
  :is(.wpst-mobile-template,.wpst-all-template)
  > .elementor
  > .e-con:first-child:has(.elementor-widget-wpsoft-site-logo):has(.elementor-widget-wpsoft-navigation)
  > .e-con-inner{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    min-height:64px!important;
    padding-block:0!important;
    margin-block:0!important;
  }

  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"]
  :is(.elementor-widget-wpsoft-site-logo,.elementor-widget-wpsoft-navigation),
  .wpsoft-site-header.is-wpst-mobile
  :is(.wpst-mobile-template,.wpst-all-template)
  :is(.elementor-widget-wpsoft-site-logo,.elementor-widget-wpsoft-navigation){
    --align-self:center!important;
    align-self:center!important;
    display:flex!important;
    align-items:center!important;
    min-height:44px!important;
    margin-block:0!important;
    padding-block:0!important;
  }

  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"]
  :is(.elementor-widget-wpsoft-site-logo,.elementor-widget-wpsoft-navigation)
  > .elementor-widget-container,
  .wpsoft-site-header.is-wpst-mobile
  :is(.wpst-mobile-template,.wpst-all-template)
  :is(.elementor-widget-wpsoft-site-logo,.elementor-widget-wpsoft-navigation)
  > .elementor-widget-container{
    display:flex!important;
    align-items:center!important;
    min-height:44px!important;
    height:44px!important;
    margin:0!important;
    padding-block:0!important;
  }

  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"]
  .elementor-widget-wpsoft-site-logo > .elementor-widget-container,
  .wpsoft-site-header.is-wpst-mobile
  :is(.wpst-mobile-template,.wpst-all-template)
  .elementor-widget-wpsoft-site-logo > .elementor-widget-container{
    justify-content:flex-start!important;
  }

  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"]
  .elementor-widget-wpsoft-navigation > .elementor-widget-container,
  .wpsoft-site-header.is-wpst-mobile
  :is(.wpst-mobile-template,.wpst-all-template)
  .elementor-widget-wpsoft-navigation > .elementor-widget-container{
    justify-content:flex-end!important;
  }

  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"]
  .elementor-widget-wpsoft-site-logo .wpst-site-logo,
  .wpsoft-site-header.is-wpst-mobile
  :is(.wpst-mobile-template,.wpst-all-template)
  .elementor-widget-wpsoft-site-logo .wpst-site-logo{
    display:flex!important;
    align-items:center!important;
    min-height:44px!important;
    height:44px!important;
    margin:0!important;
    padding:0!important;
    line-height:0!important;
  }

  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"]
  .elementor-widget-wpsoft-site-logo .wpst-site-logo img,
  .wpsoft-site-header.is-wpst-mobile
  :is(.wpst-mobile-template,.wpst-all-template)
  .elementor-widget-wpsoft-site-logo .wpst-site-logo img{
    display:block!important;
    margin:0!important;
    vertical-align:middle!important;
    object-position:left center!important;
  }

  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"]
  .elementor-widget-wpsoft-navigation .wpst-navigation,
  .wpsoft-site-header.is-wpst-mobile
  :is(.wpst-mobile-template,.wpst-all-template)
  .elementor-widget-wpsoft-navigation .wpst-navigation{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    min-height:44px!important;
    height:44px!important;
    margin:0!important;
    padding:0!important;
  }

  .wpst-hybrid-header-mobile[data-wpst-header-source="elementor"]
  .elementor-widget-wpsoft-navigation .wpst-nav-toggle,
  .wpsoft-site-header.is-wpst-mobile
  :is(.wpst-mobile-template,.wpst-all-template)
  .elementor-widget-wpsoft-navigation .wpst-nav-toggle{
    align-self:center!important;
    margin:0!important;
    flex:0 0 44px!important;
  }
}

/* ==========================================================
   Navigation 2.0 · Modern Mobile Hamburger System
   Soft / Minimal / Floating / Dark / Accent + morph animation
   ========================================================== */
.wpst-navigation{
  --wpst-nav-toggle-size:46px;
  --wpst-nav-toggle-radius:14px;
}
@media(max-width:1024px){
  .wpst-nav-mobile-hamburger .wpst-nav-toggle{
    width:var(--wpst-nav-toggle-size)!important;
    height:var(--wpst-nav-toggle-size)!important;
    min-width:var(--wpst-nav-toggle-size)!important;
    flex:0 0 var(--wpst-nav-toggle-size)!important;
    border-radius:var(--wpst-nav-toggle-radius)!important;
    position:relative;
    overflow:hidden;
    isolation:isolate;
    transition:transform .2s cubic-bezier(.2,.8,.2,1),background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease!important;
    -webkit-tap-highlight-color:transparent;
  }
  .wpst-nav-mobile-hamburger .wpst-nav-toggle::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    opacity:0;
    background:linear-gradient(145deg,rgba(255,255,255,.24),transparent 58%);
    transition:opacity .2s ease;
  }
  .wpst-nav-mobile-hamburger .wpst-nav-toggle:hover::before{opacity:1}
  .wpst-nav-mobile-hamburger .wpst-nav-toggle:active{transform:scale(.95)}
  .wpst-nav-mobile-hamburger .wpst-nav-toggle-bars{
    width:20px!important;
    height:16px!important;
    position:relative;
  }
  .wpst-nav-mobile-hamburger .wpst-nav-toggle-bars i{
    position:absolute;
    left:0;
    width:20px!important;
    height:2px!important;
    border-radius:999px!important;
    transform-origin:center;
    transition:top .22s cubic-bezier(.2,.8,.2,1),transform .24s cubic-bezier(.2,.8,.2,1),opacity .16s ease,width .2s ease!important;
  }
  .wpst-nav-mobile-hamburger .wpst-nav-toggle-bars i:nth-child(1){top:0}
  .wpst-nav-mobile-hamburger .wpst-nav-toggle-bars i:nth-child(2){top:7px}
  .wpst-nav-mobile-hamburger .wpst-nav-toggle-bars i:nth-child(3){top:14px}

  /* Premium asymmetric resting state. */
  .wpst-hamburger-style-soft .wpst-nav-toggle-bars i:nth-child(2),
  .wpst-hamburger-style-floating .wpst-nav-toggle-bars i:nth-child(2){width:15px!important;left:5px}

  .wpst-hamburger-style-soft .wpst-nav-toggle{
    color:var(--wpst-nav-toggle-color,#0f172a)!important;
    background:var(--wpst-nav-toggle-bg,rgba(148,163,184,.10))!important;
    border:1px solid rgba(148,163,184,.10)!important;
    box-shadow:none!important;
  }
  .wpst-hamburger-style-minimal .wpst-nav-toggle{
    color:var(--wpst-nav-toggle-color,#0f172a)!important;
    background:transparent!important;
    border:1px solid transparent!important;
    box-shadow:none!important;
  }
  .wpst-hamburger-style-minimal .wpst-nav-toggle-bars{height:12px!important}
  .wpst-hamburger-style-minimal .wpst-nav-toggle-bars i:nth-child(1){top:1px}
  .wpst-hamburger-style-minimal .wpst-nav-toggle-bars i:nth-child(2){display:none}
  .wpst-hamburger-style-minimal .wpst-nav-toggle-bars i:nth-child(3){top:9px}
  .wpst-hamburger-style-floating .wpst-nav-toggle{
    color:var(--wpst-nav-toggle-color,#0f172a)!important;
    background:#fff!important;
    border:1px solid rgba(15,23,42,.08)!important;
    box-shadow:0 8px 24px rgba(15,23,42,.10)!important;
  }
  .wpst-hamburger-style-dark .wpst-nav-toggle{
    color:#fff!important;
    background:#0b0b0c!important;
    border:1px solid #0b0b0c!important;
    box-shadow:0 8px 20px rgba(0,0,0,.16)!important;
  }
  .wpst-hamburger-style-accent .wpst-nav-toggle{
    color:#fff!important;
    background:var(--wpst-primary,#2563eb)!important;
    border:1px solid var(--wpst-primary,#2563eb)!important;
    box-shadow:0 8px 20px color-mix(in srgb,var(--wpst-primary,#2563eb) 20%,transparent)!important;
  }

  /* Morph X */
  .wpst-hamburger-animation-morph .wpst-navigation.is-open .wpst-nav-toggle-bars i:nth-child(1){top:7px;transform:rotate(45deg)}
  .wpst-hamburger-animation-morph .wpst-navigation.is-open .wpst-nav-toggle-bars i:nth-child(2){top:7px;opacity:0;width:0!important;left:10px}
  .wpst-hamburger-animation-morph .wpst-navigation.is-open .wpst-nav-toggle-bars i:nth-child(3){top:7px;transform:rotate(-45deg)}
  .wpst-hamburger-animation-morph.wpst-hamburger-style-minimal .wpst-navigation.is-open .wpst-nav-toggle-bars i:nth-child(1){top:5px;transform:rotate(45deg)}
  .wpst-hamburger-animation-morph.wpst-hamburger-style-minimal .wpst-navigation.is-open .wpst-nav-toggle-bars i:nth-child(3){top:5px;transform:rotate(-45deg)}

  /* Rotating X */
  .wpst-hamburger-animation-rotate .wpst-navigation.is-open .wpst-nav-toggle-bars{transform:rotate(90deg);transition:transform .25s ease}
  .wpst-hamburger-animation-rotate .wpst-navigation.is-open .wpst-nav-toggle-bars i:nth-child(1){top:7px;transform:rotate(45deg)}
  .wpst-hamburger-animation-rotate .wpst-navigation.is-open .wpst-nav-toggle-bars i:nth-child(2){opacity:0}
  .wpst-hamburger-animation-rotate .wpst-navigation.is-open .wpst-nav-toggle-bars i:nth-child(3){top:7px;transform:rotate(-45deg)}

  /* Simple X */
  .wpst-hamburger-animation-simple .wpst-navigation.is-open .wpst-nav-toggle-bars i:nth-child(1){top:7px;transform:rotate(45deg)}
  .wpst-hamburger-animation-simple .wpst-navigation.is-open .wpst-nav-toggle-bars i:nth-child(2){opacity:0}
  .wpst-hamburger-animation-simple .wpst-navigation.is-open .wpst-nav-toggle-bars i:nth-child(3){top:7px;transform:rotate(-45deg)}
}
@media(prefers-reduced-motion:reduce){
  .wpst-nav-toggle,.wpst-nav-toggle-bars,.wpst-nav-toggle-bars i{transition:none!important}
}


/* ==========================================================
   Button Preset Engine 3.0 · Full modern color surfaces
   Ready types style the whole button, not only its border.
   Local Elementor color controls remain the final per-widget override.
   ========================================================== */

/* Global Design > Widget Hızlı Tasarım > Buton Karakteri */
body.wpst-widget-button-primary .elementor-widget.wpst-preset-global{
  --wpst-quick-btn-bg:linear-gradient(135deg,var(--wpst-button-bg,var(--wpst-primary,#2563eb)) 0%,color-mix(in srgb,var(--wpst-button-bg,var(--wpst-primary,#2563eb)) 82%,#111827) 100%);
  --wpst-quick-btn-text:var(--wpst-button-text,#fff);
  --wpst-quick-btn-border:transparent;
  --wpst-quick-btn-hover-bg:linear-gradient(135deg,color-mix(in srgb,var(--wpst-button-bg,var(--wpst-primary,#2563eb)) 88%,#000) 0%,color-mix(in srgb,var(--wpst-button-bg,var(--wpst-primary,#2563eb)) 72%,#111827) 100%);
  --wpst-quick-btn-hover-text:#fff;
  --wpst-quick-btn-shadow:0 10px 24px color-mix(in srgb,var(--wpst-button-bg,var(--wpst-primary,#2563eb)) 25%,transparent);
  --wpst-quick-btn-hover-shadow:0 15px 34px color-mix(in srgb,var(--wpst-button-bg,var(--wpst-primary,#2563eb)) 34%,transparent);
}
body.wpst-widget-button-secondary .elementor-widget.wpst-preset-global{
  --wpst-quick-btn-bg:linear-gradient(135deg,#7c3aed 0%,#9333ea 100%);
  --wpst-quick-btn-text:#fff;
  --wpst-quick-btn-border:transparent;
  --wpst-quick-btn-hover-bg:linear-gradient(135deg,#6d28d9 0%,#7e22ce 100%);
  --wpst-quick-btn-hover-text:#fff;
  --wpst-quick-btn-shadow:0 10px 24px rgba(124,58,237,.24);
  --wpst-quick-btn-hover-shadow:0 15px 34px rgba(124,58,237,.34);
}
body.wpst-widget-button-emerald .elementor-widget.wpst-preset-global{
  --wpst-quick-btn-bg:linear-gradient(135deg,#059669 0%,#10b981 100%);
  --wpst-quick-btn-text:#fff;
  --wpst-quick-btn-border:transparent;
  --wpst-quick-btn-hover-bg:linear-gradient(135deg,#047857 0%,#059669 100%);
  --wpst-quick-btn-hover-text:#fff;
  --wpst-quick-btn-shadow:0 10px 24px rgba(5,150,105,.23);
  --wpst-quick-btn-hover-shadow:0 15px 34px rgba(5,150,105,.32);
}
body.wpst-widget-button-sunset .elementor-widget.wpst-preset-global{
  --wpst-quick-btn-bg:linear-gradient(135deg,#f97316 0%,#ef4444 100%);
  --wpst-quick-btn-text:#fff;
  --wpst-quick-btn-border:transparent;
  --wpst-quick-btn-hover-bg:linear-gradient(135deg,#ea580c 0%,#dc2626 100%);
  --wpst-quick-btn-hover-text:#fff;
  --wpst-quick-btn-shadow:0 10px 24px rgba(249,115,22,.24);
  --wpst-quick-btn-hover-shadow:0 15px 34px rgba(239,68,68,.30);
}

/* Advanced Button ready type palettes.
   Palette variables are fallbacks; locally selected Elementor colors override them. */
.elementor-widget-wpsoft-advanced-button.wpst-button-type-primary{
  --ab-preset-bg:linear-gradient(135deg,var(--wpst-button-bg,var(--wpst-primary,#2563eb)) 0%,color-mix(in srgb,var(--wpst-button-bg,var(--wpst-primary,#2563eb)) 80%,#111827) 100%);
  --ab-preset-color:var(--wpst-button-text,#fff);
  --ab-preset-border:transparent;
  --ab-preset-hover-bg:linear-gradient(135deg,color-mix(in srgb,var(--wpst-button-bg,var(--wpst-primary,#2563eb)) 88%,#000) 0%,color-mix(in srgb,var(--wpst-button-bg,var(--wpst-primary,#2563eb)) 70%,#111827) 100%);
  --ab-preset-hover-color:#fff;
  --ab-preset-hover-border:transparent;
  --ab-preset-shadow:0 10px 26px color-mix(in srgb,var(--wpst-button-bg,var(--wpst-primary,#2563eb)) 25%,transparent);
  --ab-preset-hover-shadow:0 15px 36px color-mix(in srgb,var(--wpst-button-bg,var(--wpst-primary,#2563eb)) 34%,transparent);
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-secondary{
  --ab-preset-bg:linear-gradient(135deg,#7c3aed 0%,#9333ea 100%);
  --ab-preset-color:#fff;--ab-preset-border:transparent;
  --ab-preset-hover-bg:linear-gradient(135deg,#6d28d9 0%,#7e22ce 100%);
  --ab-preset-hover-color:#fff;--ab-preset-hover-border:transparent;
  --ab-preset-shadow:0 10px 26px rgba(124,58,237,.24);
  --ab-preset-hover-shadow:0 15px 36px rgba(124,58,237,.34);
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-emerald{
  --ab-preset-bg:linear-gradient(135deg,#059669 0%,#10b981 100%);
  --ab-preset-color:#fff;--ab-preset-border:transparent;
  --ab-preset-hover-bg:linear-gradient(135deg,#047857 0%,#059669 100%);
  --ab-preset-hover-color:#fff;--ab-preset-hover-border:transparent;
  --ab-preset-shadow:0 10px 26px rgba(5,150,105,.23);
  --ab-preset-hover-shadow:0 15px 36px rgba(5,150,105,.32);
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-sunset{
  --ab-preset-bg:linear-gradient(135deg,#f97316 0%,#ef4444 100%);
  --ab-preset-color:#fff;--ab-preset-border:transparent;
  --ab-preset-hover-bg:linear-gradient(135deg,#ea580c 0%,#dc2626 100%);
  --ab-preset-hover-color:#fff;--ab-preset-hover-border:transparent;
  --ab-preset-shadow:0 10px 26px rgba(249,115,22,.24);
  --ab-preset-hover-shadow:0 15px 36px rgba(239,68,68,.31);
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-dark{
  --ab-preset-bg:linear-gradient(135deg,#0f172a 0%,#1e293b 100%);
  --ab-preset-color:#fff;--ab-preset-border:transparent;
  --ab-preset-hover-bg:linear-gradient(135deg,#020617 0%,#0f172a 100%);
  --ab-preset-hover-color:#fff;--ab-preset-hover-border:transparent;
  --ab-preset-shadow:0 10px 26px rgba(15,23,42,.25);
  --ab-preset-hover-shadow:0 15px 36px rgba(15,23,42,.35);
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-light{
  --ab-preset-bg:linear-gradient(180deg,#fff 0%,#f8fafc 100%);
  --ab-preset-color:#0f172a;--ab-preset-border:#dbe3ef;
  --ab-preset-hover-bg:linear-gradient(180deg,#f8fafc 0%,#eef2ff 100%);
  --ab-preset-hover-color:#1d4ed8;--ab-preset-hover-border:#cbd5e1;
  --ab-preset-shadow:0 9px 24px rgba(15,23,42,.08);
  --ab-preset-hover-shadow:0 13px 32px rgba(15,23,42,.14);
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-outline{
  --ab-preset-bg:color-mix(in srgb,var(--wpst-primary,#2563eb) 6%,transparent);
  --ab-preset-color:var(--wpst-primary,#2563eb);
  --ab-preset-border:color-mix(in srgb,var(--wpst-primary,#2563eb) 52%,transparent);
  --ab-preset-hover-bg:var(--wpst-primary,#2563eb);
  --ab-preset-hover-color:#fff;--ab-preset-hover-border:var(--wpst-primary,#2563eb);
  --ab-preset-shadow:0 6px 18px color-mix(in srgb,var(--wpst-primary,#2563eb) 8%,transparent);
  --ab-preset-hover-shadow:0 12px 28px color-mix(in srgb,var(--wpst-primary,#2563eb) 24%,transparent);
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-soft{
  --ab-preset-bg:linear-gradient(135deg,#eff6ff 0%,#f5f3ff 100%);
  --ab-preset-color:#4338ca;--ab-preset-border:#dbeafe;
  --ab-preset-hover-bg:linear-gradient(135deg,#dbeafe 0%,#ede9fe 100%);
  --ab-preset-hover-color:#3730a3;--ab-preset-hover-border:#c7d2fe;
  --ab-preset-shadow:0 8px 20px rgba(79,70,229,.09);
  --ab-preset-hover-shadow:0 12px 28px rgba(79,70,229,.16);
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-gradient{
  --ab-preset-bg:linear-gradient(135deg,#2563eb 0%,#7c3aed 52%,#db2777 100%);
  --ab-preset-color:#fff;--ab-preset-border:transparent;
  --ab-preset-hover-bg:linear-gradient(135deg,#1d4ed8 0%,#6d28d9 52%,#be185d 100%);
  --ab-preset-hover-color:#fff;--ab-preset-hover-border:transparent;
  --ab-preset-shadow:0 12px 30px rgba(79,70,229,.26);
  --ab-preset-hover-shadow:0 17px 38px rgba(79,70,229,.36);
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-glass{
  --ab-preset-bg:linear-gradient(135deg,rgba(255,255,255,.34),rgba(219,234,254,.18));
  --ab-preset-color:var(--wpst-heading,#0f172a);
  --ab-preset-border:rgba(148,163,184,.32);
  --ab-preset-hover-bg:linear-gradient(135deg,rgba(255,255,255,.58),rgba(219,234,254,.30));
  --ab-preset-hover-color:var(--wpst-heading,#0f172a);
  --ab-preset-hover-border:rgba(148,163,184,.44);
  --ab-preset-shadow:inset 0 1px 0 rgba(255,255,255,.65),0 10px 28px rgba(15,23,42,.09);
  --ab-preset-hover-shadow:inset 0 1px 0 rgba(255,255,255,.78),0 15px 34px rgba(15,23,42,.14);
}

/* Final ready-type painting. This deliberately sits after legacy rules. */
.elementor-widget-wpsoft-advanced-button[class*="wpst-button-type-"]:not(.wpst-button-type-custom) .wpst-adv-button{
  background:var(--wpst-local-button-bg,var(--ab-preset-bg))!important;
  color:var(--wpst-local-button-color,var(--ab-preset-color))!important;
  border-color:var(--ab-preset-border)!important;
  box-shadow:var(--ab-preset-shadow)!important;
}
.elementor-widget-wpsoft-advanced-button[class*="wpst-button-type-"]:not(.wpst-button-type-custom) .wpst-adv-button :is(span,i,svg){
  color:var(--wpst-local-button-color,var(--ab-preset-color))!important;
}
.elementor-widget-wpsoft-advanced-button[class*="wpst-button-type-"]:not(.wpst-button-type-custom) .wpst-adv-button:is(:hover,:focus-visible){
  background:var(--wpst-local-button-hover-bg,var(--ab-preset-hover-bg))!important;
  color:var(--wpst-local-button-hover-color,var(--ab-preset-hover-color))!important;
  border-color:var(--ab-preset-hover-border)!important;
  box-shadow:var(--ab-preset-hover-shadow)!important;
}
.elementor-widget-wpsoft-advanced-button[class*="wpst-button-type-"]:not(.wpst-button-type-custom) .wpst-adv-button:is(:hover,:focus-visible) :is(span,i,svg){
  color:var(--wpst-local-button-hover-color,var(--ab-preset-hover-color))!important;
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-glass .wpst-adv-button{
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}


/* ==========================================================
   v3.3.5 · Product Showcase 2.0 Quality System
   ========================================================== */
.elementor-widget-wpsoft-product-showcase{
  --wpst-product-gap:20px;
  --wpst-product-bg:var(--wpst-surface,#fff);
  --wpst-product-border:var(--wpst-border,#e2e8f0);
  --wpst-product-hover-border:color-mix(in srgb,var(--wpst-primary,#2563eb) 45%,var(--wpst-product-border));
  --wpst-product-radius:24px;
  --wpst-product-image-radius:18px;
  --wpst-product-image-h:300px;
  --wpst-product-media-bg:var(--wpst-soft,#f8fafc);
  --wpst-product-title:var(--wpst-heading,#0f172a);
  --wpst-product-desc:var(--wpst-muted,#64748b);
  --wpst-product-price:var(--wpst-heading,#0f172a);
  --wpst-product-badge-bg:color-mix(in srgb,var(--wpst-primary,#2563eb) 9%,#fff);
  --wpst-product-badge-color:var(--wpst-primary,#2563eb);
  --wpst-product-action:var(--wpst-primary,#2563eb);
  --wpst-product-action-hover:color-mix(in srgb,var(--wpst-primary,#2563eb) 76%,#000);
}
.elementor-widget-wpsoft-product-showcase .wpst-ew-product-showcase{
  display:grid;
  gap:var(--wpst-product-gap);
  align-items:stretch;
}
.elementor-widget-wpsoft-product-showcase .wpst-product-card{
  min-width:0;
  overflow:hidden;
  padding:0!important;
  border:1px solid var(--wpst-product-border);
  border-radius:var(--wpst-product-radius);
  background:var(--wpst-product-bg);
  box-shadow:none;
  transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease;
}
.elementor-widget-wpsoft-product-showcase .wpst-product-media{
  position:relative;
  display:block;
  height:var(--wpst-product-image-h);
  margin:12px 12px 0;
  overflow:hidden;
  border-radius:var(--wpst-product-image-radius);
  background:var(--wpst-product-media-bg);
}
.elementor-widget-wpsoft-product-showcase .wpst-product-media img{
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  border-radius:0!important;
  object-fit:cover;
  transition:transform .45s cubic-bezier(.2,.65,.25,1);
}
.elementor-widget-wpsoft-product-showcase .wpst-product-media.is-placeholder{
  display:grid;
  place-items:center;
  color:var(--wpst-muted,#94a3b8);
  font-size:12px;
  font-weight:750;
}
.elementor-widget-wpsoft-product-showcase .wpst-product-content{
  display:flex;
  flex-direction:column;
  min-height:210px;
  padding:20px 20px 22px;
}
.elementor-widget-wpsoft-product-showcase .wpst-product-badge{
  align-self:flex-start;
  display:inline-flex;
  margin:0 0 12px;
  padding:6px 9px;
  border-radius:999px;
  background:var(--wpst-product-badge-bg);
  color:var(--wpst-product-badge-color);
  font-size:10px;
  line-height:1;
  font-weight:850;
  letter-spacing:.02em;
}
.elementor-widget-wpsoft-product-showcase .wpst-product-title{
  margin:0;
  color:var(--wpst-product-title);
  font-size:20px;
  line-height:1.2;
}
.elementor-widget-wpsoft-product-showcase .wpst-product-title a{
  color:inherit!important;
  text-decoration:none!important;
}
.elementor-widget-wpsoft-product-showcase .wpst-product-desc{
  margin:9px 0 0;
  color:var(--wpst-product-desc);
  font-size:13px;
  line-height:1.65;
}
.elementor-widget-wpsoft-product-showcase .wpst-product-bottom{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  margin-top:auto;
  padding-top:20px;
}
.elementor-widget-wpsoft-product-showcase .wpst-product-prices{
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:7px;
}
.elementor-widget-wpsoft-product-showcase .wpst-product-price{
  color:var(--wpst-product-price);
  font-size:18px;
  line-height:1;
  font-weight:850;
}
.elementor-widget-wpsoft-product-showcase .wpst-product-old-price{
  color:var(--wpst-muted,#94a3b8);
  font-size:11px;
}
.elementor-widget-wpsoft-product-showcase .wpst-product-action{
  display:inline-flex;
  align-items:center;
  gap:6px;
  float:none!important;
  flex:0 0 auto;
  color:var(--wpst-product-action)!important;
  text-decoration:none!important;
  font-size:11px;
  line-height:1.2;
  font-weight:850;
  transition:color .22s ease,transform .22s ease;
}
.elementor-widget-wpsoft-product-showcase .wpst-product-action i{
  display:inline-flex;
  align-items:center;
  color:currentColor;
  transition:transform .22s ease;
}
.elementor-widget-wpsoft-product-showcase .wpst-product-action:hover{
  color:var(--wpst-product-action-hover)!important;
}
.elementor-widget-wpsoft-product-showcase .wpst-product-action:hover i{
  transform:translateX(3px);
}

/* Layout variants */
.elementor-widget-wpsoft-product-showcase.wpst-product-layout-minimal .wpst-product-card{
  border-color:transparent;
  background:transparent;
}
.elementor-widget-wpsoft-product-showcase.wpst-product-layout-minimal .wpst-product-media{
  margin:0;
}
.elementor-widget-wpsoft-product-showcase.wpst-product-layout-minimal .wpst-product-content{
  min-height:190px;
  padding:16px 2px 4px;
}

.elementor-widget-wpsoft-product-showcase.wpst-product-layout-editorial .wpst-product-card{
  border-radius:max(var(--wpst-product-radius),28px);
}
.elementor-widget-wpsoft-product-showcase.wpst-product-layout-editorial .wpst-product-media{
  margin:0;
  border-radius:0;
  height:calc(var(--wpst-product-image-h) + 50px);
}
.elementor-widget-wpsoft-product-showcase.wpst-product-layout-editorial .wpst-product-content{
  padding:24px 26px 27px;
}

.elementor-widget-wpsoft-product-showcase.wpst-product-layout-compact .wpst-product-media{
  height:min(var(--wpst-product-image-h),220px);
}
.elementor-widget-wpsoft-product-showcase.wpst-product-layout-compact .wpst-product-content{
  min-height:170px;
  padding:16px;
}
.elementor-widget-wpsoft-product-showcase.wpst-product-layout-compact .wpst-product-desc{
  display:none;
}

/* Hover variants */
.elementor-widget-wpsoft-product-showcase.wpst-product-hover-lift .wpst-product-card:hover{
  transform:translateY(-6px);
  border-color:var(--wpst-product-hover-border);
  box-shadow:0 20px 46px rgba(15,23,42,.10);
}
.elementor-widget-wpsoft-product-showcase.wpst-product-hover-zoom .wpst-product-card:hover{
  border-color:var(--wpst-product-hover-border);
}
.elementor-widget-wpsoft-product-showcase.wpst-product-hover-zoom .wpst-product-card:hover .wpst-product-media img{
  transform:scale(1.055);
}
.elementor-widget-wpsoft-product-showcase.wpst-product-hover-border .wpst-product-card:hover{
  border-color:var(--wpst-product-hover-border);
}
.elementor-widget-wpsoft-product-showcase.wpst-product-hover-none .wpst-product-card:hover{
  transform:none;
  box-shadow:none;
}

/* Shadow choices */
.elementor-widget-wpsoft-product-showcase.wpst-product-shadow-soft .wpst-product-card{
  box-shadow:0 10px 30px rgba(15,23,42,.055);
}
.elementor-widget-wpsoft-product-showcase.wpst-product-shadow-medium .wpst-product-card{
  box-shadow:0 16px 42px rgba(15,23,42,.09);
}
.elementor-widget-wpsoft-product-showcase.wpst-product-shadow-none .wpst-product-card{
  box-shadow:none;
}

/* Hızlı Tasarım presets affect real Product Showcase card surfaces too. */
.elementor-widget-wpsoft-product-showcase.wpst-preset-signature .wpst-product-card{
  border-color:color-mix(in srgb,var(--wpst-border,#e2e8f0) 78%,transparent);
  background:var(--wpst-surface,#fff);
}
.elementor-widget-wpsoft-product-showcase.wpst-preset-corporate .wpst-product-card{
  --wpst-product-radius:16px;
}
.elementor-widget-wpsoft-product-showcase.wpst-preset-soft .wpst-product-card{
  background:var(--wpst-soft,#f8fafc);
  border-color:transparent;
}
.elementor-widget-wpsoft-product-showcase.wpst-preset-dark{
  --wpst-product-bg:#0f172a;
  --wpst-product-border:#263247;
  --wpst-product-title:#f8fafc;
  --wpst-product-desc:#94a3b8;
  --wpst-product-price:#fff;
  --wpst-product-media-bg:#111c2e;
}
.elementor-widget-wpsoft-product-showcase.wpst-preset-minimal .wpst-product-card{
  border-color:transparent;
  box-shadow:none;
}

/* Responsive quality */
@media(max-width:1024px){
  .elementor-widget-wpsoft-product-showcase{
    --wpst-product-image-h:260px;
  }
}
@media(max-width:767px){
  .elementor-widget-wpsoft-product-showcase{
    --wpst-product-image-h:240px;
  }
  .elementor-widget-wpsoft-product-showcase .wpst-product-media{
    margin:10px 10px 0;
  }
  .elementor-widget-wpsoft-product-showcase .wpst-product-content{
    min-height:0;
    padding:18px;
  }
  .elementor-widget-wpsoft-product-showcase .wpst-product-bottom{
    align-items:center;
  }
}


/* ==========================================================
   v3.3.6 · Hover Reveal 2.0 Quality System
   ========================================================== */
.elementor-widget-wpsoft-hover-reveal{
 --wpst-hover-gap:18px;
 --wpst-hover-card-h:420px;
 --wpst-hover-radius:26px;
 --wpst-hover-overlay:rgba(2,6,23,.72);
 --wpst-hover-overlay-active:rgba(2,6,23,.48);
 --wpst-hover-border:rgba(148,163,184,.20);
 --wpst-hover-eyebrow:#dbeafe;
 --wpst-hover-title:#fff;
 --wpst-hover-text:#d7dee9;
 --wpst-hover-action:#fff;
}
.elementor-widget-wpsoft-hover-reveal .wpst-ew-hover-reveal{
 display:grid;
 grid-template-columns:repeat(3,minmax(0,1fr));
 gap:var(--wpst-hover-gap);
}
.elementor-widget-wpsoft-hover-reveal .wpst-hover-card{
 position:relative;
 min-width:0;
 min-height:var(--wpst-hover-card-h);
 overflow:hidden;
 border:1px solid var(--wpst-hover-border);
 border-radius:var(--wpst-hover-radius);
 background:#0f172a;
 isolation:isolate;
}
.elementor-widget-wpsoft-hover-reveal .wpst-hover-media,
.elementor-widget-wpsoft-hover-reveal .wpst-hover-media img{
 position:absolute;
 inset:0;
 width:100%;
 height:100%;
}
.elementor-widget-wpsoft-hover-reveal .wpst-hover-media img{
 display:block;
 object-fit:cover;
 transition:transform .6s cubic-bezier(.2,.7,.2,1),filter .4s ease;
}
.elementor-widget-wpsoft-hover-reveal .wpst-ew-hover-placeholder{
 position:absolute;
 inset:0;
 display:grid;
 place-items:center;
 background:linear-gradient(135deg,#0f172a,#334155);
 color:rgba(255,255,255,.7);
 font-size:clamp(28px,4vw,54px);
 font-weight:900;
 letter-spacing:-.04em;
}
.elementor-widget-wpsoft-hover-reveal .wpst-ew-hover-layer{
 position:absolute;
 inset:0;
 z-index:2;
 display:flex;
 align-items:flex-end;
 padding:28px;
 background:linear-gradient(to top,var(--wpst-hover-overlay),rgba(2,6,23,.04) 72%);
 color:#fff!important;
 text-decoration:none!important;
 transition:background .35s ease;
}
.elementor-widget-wpsoft-hover-reveal .wpst-hover-copy{
 width:100%;
 transform:translateY(34px);
 transition:transform .38s cubic-bezier(.2,.75,.25,1);
}
.elementor-widget-wpsoft-hover-reveal .wpst-hover-eyebrow{
 display:block;
 margin:0 0 10px;
 color:var(--wpst-hover-eyebrow);
 font-size:10px;
 line-height:1.2;
 font-weight:850;
 text-transform:uppercase;
 letter-spacing:.11em;
}
.elementor-widget-wpsoft-hover-reveal .wpst-hover-title{
 margin:0;
 color:var(--wpst-hover-title)!important;
 font-size:clamp(23px,2.3vw,34px);
 line-height:1.08;
 letter-spacing:-.035em;
}
.elementor-widget-wpsoft-hover-reveal .wpst-hover-text{
 max-width:520px;
 margin:10px 0 0;
 color:var(--wpst-hover-text)!important;
 font-size:13px;
 line-height:1.65;
 opacity:0;
 transform:translateY(8px);
 transition:opacity .3s ease,transform .3s ease;
}
.elementor-widget-wpsoft-hover-reveal .wpst-hover-action{
 display:inline-flex!important;
 align-items:center;
 gap:8px;
 margin-top:17px!important;
 color:var(--wpst-hover-action)!important;
 font-size:11px!important;
 font-weight:850!important;
 opacity:0;
 transform:translateY(8px);
 transition:opacity .3s ease,transform .3s ease;
}
.elementor-widget-wpsoft-hover-reveal .wpst-hover-action b{font:inherit}
.elementor-widget-wpsoft-hover-reveal .wpst-hover-action i{display:inline-flex;transition:transform .25s ease}
.elementor-widget-wpsoft-hover-reveal .wpst-hover-card:hover .wpst-hover-copy,
.elementor-widget-wpsoft-hover-reveal .wpst-hover-card:focus-within .wpst-hover-copy{transform:translateY(0)}
.elementor-widget-wpsoft-hover-reveal .wpst-hover-card:hover .wpst-hover-text,
.elementor-widget-wpsoft-hover-reveal .wpst-hover-card:hover .wpst-hover-action,
.elementor-widget-wpsoft-hover-reveal .wpst-hover-card:focus-within .wpst-hover-text,
.elementor-widget-wpsoft-hover-reveal .wpst-hover-card:focus-within .wpst-hover-action{
 opacity:1;transform:translateY(0)
}
.elementor-widget-wpsoft-hover-reveal .wpst-hover-card:hover .wpst-hover-media img{transform:scale(1.055)}
.elementor-widget-wpsoft-hover-reveal .wpst-hover-card:hover .wpst-ew-hover-layer{
 background:linear-gradient(to top,var(--wpst-hover-overlay-active),rgba(2,6,23,.04) 78%)
}
.elementor-widget-wpsoft-hover-reveal .wpst-hover-card:hover .wpst-hover-action i{transform:translateX(4px)}

/* Content position */
.elementor-widget-wpsoft-hover-reveal.wpst-hover-content-top .wpst-ew-hover-layer{align-items:flex-start}
.elementor-widget-wpsoft-hover-reveal.wpst-hover-content-center .wpst-ew-hover-layer{align-items:center}

/* Effects */
.elementor-widget-wpsoft-hover-reveal.wpst-hover-effect-fade .wpst-hover-copy{transform:none}
.elementor-widget-wpsoft-hover-reveal.wpst-hover-effect-fade .wpst-hover-text,
.elementor-widget-wpsoft-hover-reveal.wpst-hover-effect-fade .wpst-hover-action{transform:none}
.elementor-widget-wpsoft-hover-reveal.wpst-hover-effect-zoom .wpst-hover-copy{transform:scale(.96);transform-origin:left bottom}
.elementor-widget-wpsoft-hover-reveal.wpst-hover-effect-zoom .wpst-hover-card:hover .wpst-hover-copy{transform:scale(1)}
.elementor-widget-wpsoft-hover-reveal.wpst-hover-effect-always .wpst-hover-copy{transform:none}
.elementor-widget-wpsoft-hover-reveal.wpst-hover-effect-always .wpst-hover-text,
.elementor-widget-wpsoft-hover-reveal.wpst-hover-effect-always .wpst-hover-action{opacity:1;transform:none}

/* Layouts */
.elementor-widget-wpsoft-hover-reveal.wpst-hover-reveal-layout-editorial .wpst-ew-hover-reveal{
 grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr)!important;
}
.elementor-widget-wpsoft-hover-reveal.wpst-hover-reveal-layout-editorial .wpst-hover-card:first-child{grid-row:span 2}
.elementor-widget-wpsoft-hover-reveal.wpst-hover-reveal-layout-editorial .wpst-hover-card:not(:first-child){min-height:calc((var(--wpst-hover-card-h) - var(--wpst-hover-gap))/2)}
.elementor-widget-wpsoft-hover-reveal.wpst-hover-reveal-layout-full .wpst-ew-hover-reveal{grid-template-columns:1fr!important}
.elementor-widget-wpsoft-hover-reveal.wpst-hover-reveal-layout-full .wpst-hover-card{min-height:max(var(--wpst-hover-card-h),520px)}
.elementor-widget-wpsoft-hover-reveal.wpst-hover-reveal-layout-mosaic .wpst-ew-hover-reveal{grid-template-columns:repeat(12,minmax(0,1fr))!important}
.elementor-widget-wpsoft-hover-reveal.wpst-hover-reveal-layout-mosaic .wpst-hover-card{grid-column:span 4}
.elementor-widget-wpsoft-hover-reveal.wpst-hover-reveal-layout-mosaic .wpst-hover-card:nth-child(4n+1){grid-column:span 7}
.elementor-widget-wpsoft-hover-reveal.wpst-hover-reveal-layout-mosaic .wpst-hover-card:nth-child(4n+2){grid-column:span 5}

/* Shadows */
.elementor-widget-wpsoft-hover-reveal.wpst-hover-shadow-soft .wpst-hover-card{box-shadow:0 14px 36px rgba(15,23,42,.08)}
.elementor-widget-wpsoft-hover-reveal.wpst-hover-shadow-medium .wpst-hover-card{box-shadow:0 20px 48px rgba(15,23,42,.14)}
.elementor-widget-wpsoft-hover-reveal.wpst-hover-shadow-none .wpst-hover-card{box-shadow:none}

/* Presets */
.elementor-widget-wpsoft-hover-reveal.wpst-preset-corporate{--wpst-hover-radius:16px}
.elementor-widget-wpsoft-hover-reveal.wpst-preset-soft{--wpst-hover-radius:30px;--wpst-hover-border:rgba(255,255,255,.28)}
.elementor-widget-wpsoft-hover-reveal.wpst-preset-minimal{--wpst-hover-radius:8px;--wpst-hover-border:transparent}
.elementor-widget-wpsoft-hover-reveal.wpst-preset-dark{--wpst-hover-border:rgba(255,255,255,.13)}

/* Touch/mobile: content must not depend on hover. */
@media(max-width:1024px){
 .elementor-widget-wpsoft-hover-reveal.wpst-hover-reveal-layout-mosaic .wpst-hover-card{grid-column:span 6}
 .elementor-widget-wpsoft-hover-reveal.wpst-hover-reveal-layout-mosaic .wpst-hover-card:nth-child(n){grid-column:span 6}
}
@media(max-width:767px){
 .elementor-widget-wpsoft-hover-reveal .wpst-ew-hover-reveal,
 .elementor-widget-wpsoft-hover-reveal.wpst-hover-reveal-layout-editorial .wpst-ew-hover-reveal,
 .elementor-widget-wpsoft-hover-reveal.wpst-hover-reveal-layout-mosaic .wpst-ew-hover-reveal{
  grid-template-columns:1fr!important
 }
 .elementor-widget-wpsoft-hover-reveal.wpst-hover-reveal-layout-editorial .wpst-hover-card:first-child{grid-row:auto}
 .elementor-widget-wpsoft-hover-reveal.wpst-hover-reveal-layout-mosaic .wpst-hover-card:nth-child(n){grid-column:auto}
 .elementor-widget-wpsoft-hover-reveal .wpst-hover-card{min-height:var(--wpst-hover-card-h)}
 .elementor-widget-wpsoft-hover-reveal .wpst-ew-hover-layer{padding:22px}
 .elementor-widget-wpsoft-hover-reveal .wpst-hover-copy{transform:none}
 .elementor-widget-wpsoft-hover-reveal .wpst-hover-text,
 .elementor-widget-wpsoft-hover-reveal .wpst-hover-action{opacity:1;transform:none}
}
@media(hover:none){
 .elementor-widget-wpsoft-hover-reveal .wpst-hover-copy{transform:none}
 .elementor-widget-wpsoft-hover-reveal .wpst-hover-text,
 .elementor-widget-wpsoft-hover-reveal .wpst-hover-action{opacity:1;transform:none}
}


/* ==========================================================
   v3.3.7 · Booking Strip 2.0 Quality System
   ========================================================== */
.elementor-widget-wpsoft-booking-strip{
 --wpst-booking-gap:8px;
 --wpst-booking-h:72px;
 --wpst-booking-bg:var(--wpst-surface,#fff);
 --wpst-booking-border:var(--wpst-border,#e2e8f0);
 --wpst-booking-radius:22px;
 --wpst-booking-field-bg:transparent;
 --wpst-booking-field-border:transparent;
 --wpst-booking-field-radius:16px;
 --wpst-booking-icon-bg:color-mix(in srgb,var(--wpst-primary,#2563eb) 9%,#fff);
 --wpst-booking-icon-color:var(--wpst-primary,#2563eb);
 --wpst-booking-icon-size:18px;
 --wpst-booking-label:var(--wpst-muted,#64748b);
 --wpst-booking-value:var(--wpst-heading,#0f172a);
 --wpst-booking-btn-bg:var(--wpst-button-bg,var(--wpst-primary,#2563eb));
 --wpst-booking-btn-color:var(--wpst-button-text,#fff);
 --wpst-booking-btn-hover-bg:var(--wpst-button-hover-bg,#1d4ed8);
 --wpst-booking-btn-hover-color:var(--wpst-button-hover-text,#fff);
 --wpst-booking-btn-radius:16px;
}
.elementor-widget-wpsoft-booking-strip .wpst-ew-booking-strip{
 display:grid;
 grid-template-columns:repeat(3,minmax(0,1fr)) auto;
 gap:var(--wpst-booking-gap);
 align-items:stretch;
 padding:8px;
 min-height:var(--wpst-booking-h);
 border:1px solid var(--wpst-booking-border);
 border-radius:var(--wpst-booking-radius);
 background:var(--wpst-booking-bg);
}
.elementor-widget-wpsoft-booking-strip .wpst-booking-field{
 display:flex;
 align-items:center;
 gap:12px;
 min-width:0;
 padding:10px 14px;
 border:1px solid var(--wpst-booking-field-border);
 border-radius:var(--wpst-booking-field-radius);
 background:var(--wpst-booking-field-bg);
}
.elementor-widget-wpsoft-booking-strip .wpst-booking-icon{
 display:grid;
 place-items:center;
 flex:0 0 calc(var(--wpst-booking-icon-size) + 18px);
 width:calc(var(--wpst-booking-icon-size) + 18px);
 height:calc(var(--wpst-booking-icon-size) + 18px);
 border-radius:12px;
 background:var(--wpst-booking-icon-bg);
 color:var(--wpst-booking-icon-color);
}
.elementor-widget-wpsoft-booking-strip .wpst-booking-icon svg{
 width:var(--wpst-booking-icon-size)!important;
 height:var(--wpst-booking-icon-size)!important;
 color:inherit;
 stroke:currentColor;
}
.elementor-widget-wpsoft-booking-strip .wpst-booking-copy{
 display:block;
 min-width:0;
}
.elementor-widget-wpsoft-booking-strip .wpst-booking-field small,
.elementor-widget-wpsoft-booking-strip .wpst-booking-field b{
 display:block;
 margin:0;
}
.elementor-widget-wpsoft-booking-strip .wpst-booking-field small{
 color:var(--wpst-booking-label);
 font-size:9px;
 line-height:1.2;
 font-weight:800;
 letter-spacing:.08em;
 text-transform:uppercase;
}
.elementor-widget-wpsoft-booking-strip .wpst-booking-field b{
 margin-top:4px;
 color:var(--wpst-booking-value);
 font-size:14px;
 line-height:1.25;
 font-weight:800;
 overflow:hidden;
 text-overflow:ellipsis;
 white-space:nowrap;
}
.elementor-widget-wpsoft-booking-strip .wpst-booking-button{
 display:inline-flex;
 align-items:center;
 justify-content:center;
 gap:9px;
 min-width:150px;
 min-height:100%;
 padding:0 20px;
 border-radius:var(--wpst-booking-btn-radius);
 background:var(--wpst-booking-btn-bg)!important;
 color:var(--wpst-booking-btn-color)!important;
 text-decoration:none!important;
 font-weight:850;
 white-space:nowrap;
 transition:transform .22s ease,background .22s ease,color .22s ease,box-shadow .22s ease;
}
.elementor-widget-wpsoft-booking-strip .wpst-booking-button:hover{
 background:var(--wpst-booking-btn-hover-bg)!important;
 color:var(--wpst-booking-btn-hover-color)!important;
 transform:translateY(-1px);
 box-shadow:0 10px 24px color-mix(in srgb,var(--wpst-booking-btn-bg) 22%,transparent);
}
.elementor-widget-wpsoft-booking-strip .wpst-booking-button i{
 display:inline-flex;
 transition:transform .2s ease;
}
.elementor-widget-wpsoft-booking-strip .wpst-booking-button:hover i{transform:translateX(3px)}

/* Layout variants */
.elementor-widget-wpsoft-booking-strip.wpst-booking-layout-cards .wpst-ew-booking-strip{
 background:transparent;
 border-color:transparent;
 padding:0;
}
.elementor-widget-wpsoft-booking-strip.wpst-booking-layout-cards .wpst-booking-field{
 background:var(--wpst-booking-bg);
 border-color:var(--wpst-booking-border);
 box-shadow:0 8px 24px rgba(15,23,42,.055);
}
.elementor-widget-wpsoft-booking-strip.wpst-booking-layout-compact .wpst-ew-booking-strip{
 --wpst-booking-h:60px;
 padding:5px;
}
.elementor-widget-wpsoft-booking-strip.wpst-booking-layout-compact .wpst-booking-field{
 padding:7px 10px;
}
.elementor-widget-wpsoft-booking-strip.wpst-booking-layout-compact .wpst-booking-icon{
 display:none;
}
.elementor-widget-wpsoft-booking-strip.wpst-booking-layout-dark{
 --wpst-booking-bg:#0f172a;
 --wpst-booking-border:#263247;
 --wpst-booking-field-bg:#111c2e;
 --wpst-booking-field-border:#263247;
 --wpst-booking-label:#94a3b8;
 --wpst-booking-value:#f8fafc;
 --wpst-booking-icon-bg:#1e293b;
 --wpst-booking-icon-color:#93c5fd;
 --wpst-booking-btn-bg:#fff;
 --wpst-booking-btn-color:#0f172a;
 --wpst-booking-btn-hover-bg:#e2e8f0;
 --wpst-booking-btn-hover-color:#020617;
}

/* Shadow presets */
.elementor-widget-wpsoft-booking-strip.wpst-booking-shadow-soft .wpst-ew-booking-strip{box-shadow:0 14px 38px rgba(15,23,42,.08)}
.elementor-widget-wpsoft-booking-strip.wpst-booking-shadow-medium .wpst-ew-booking-strip{box-shadow:0 20px 52px rgba(15,23,42,.13)}
.elementor-widget-wpsoft-booking-strip.wpst-booking-shadow-none .wpst-ew-booking-strip{box-shadow:none}

/* Hızlı Tasarım */
.elementor-widget-wpsoft-booking-strip.wpst-preset-corporate{--wpst-booking-radius:16px;--wpst-booking-field-radius:12px;--wpst-booking-btn-radius:12px}
.elementor-widget-wpsoft-booking-strip.wpst-preset-soft{--wpst-booking-bg:var(--wpst-soft,#f8fafc);--wpst-booking-border:transparent}
.elementor-widget-wpsoft-booking-strip.wpst-preset-minimal{--wpst-booking-border:transparent;--wpst-booking-bg:transparent}
.elementor-widget-wpsoft-booking-strip.wpst-preset-dark{
 --wpst-booking-bg:#0f172a;
 --wpst-booking-border:#263247;
 --wpst-booking-value:#fff;
 --wpst-booking-label:#94a3b8;
}

/* Responsive */
@media(min-width:768px) and (max-width:1024px){
 .elementor-widget-wpsoft-booking-strip .wpst-ew-booking-strip{
  grid-template-columns:repeat(2,minmax(0,1fr));
 }
 .elementor-widget-wpsoft-booking-strip .wpst-booking-button{min-height:58px}
 .elementor-widget-wpsoft-booking-strip .wpst-booking-field:nth-of-type(3){grid-column:1/2}
 .elementor-widget-wpsoft-booking-strip .wpst-booking-button{grid-column:2/3}
}
@media(max-width:767px){
 .elementor-widget-wpsoft-booking-strip .wpst-ew-booking-strip{
  grid-template-columns:1fr!important;
  gap:max(8px,var(--wpst-booking-gap));
 }
 .elementor-widget-wpsoft-booking-strip .wpst-booking-field{
  min-height:62px;
 }
 .elementor-widget-wpsoft-booking-strip .wpst-booking-button{
  width:100%;
  min-height:52px;
 }
 .elementor-widget-wpsoft-booking-strip .wpst-booking-field b{
  white-space:normal;
 }
}


/* ==========================================================
   v3.3.8 · Hero Hospitality 2.0 Quality System
   ========================================================== */
.elementor-widget-wpsoft-hero-hospitality{
 --wpst-hh-radius:32px;--wpst-hh-copy-width:820px;
 --wpst-hh-overlay:rgba(2,6,23,.48);
 --wpst-hh-eyebrow:#fff;--wpst-hh-title:#fff;--wpst-hh-text:#e2e8f0;
 --wpst-hh-rating-bg:rgba(255,255,255,.12);--wpst-hh-rating-color:#fff;
}
.elementor-widget-wpsoft-hero-hospitality .wpst-ew-hero-hospitality{
 border-radius:var(--wpst-hh-radius);isolation:isolate;
 align-items:var(--wpst-hero-vertical-align,flex-end);
}
.elementor-widget-wpsoft-hero-hospitality .wpst-hh-bg{transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.elementor-widget-wpsoft-hero-hospitality .wpst-hh-shade{
 background:linear-gradient(90deg,color-mix(in srgb,var(--wpst-hh-overlay) 100%,transparent),transparent 78%),
 linear-gradient(0deg,color-mix(in srgb,var(--wpst-hh-overlay) 88%,transparent),transparent 66%)!important;
}
.elementor-widget-wpsoft-hero-hospitality .wpst-hh-copy{
 width:min(100%,var(--wpst-hh-copy-width));max-width:var(--wpst-hh-copy-width);
 text-align:var(--wpst-hero-content-align,left);
}
.elementor-widget-wpsoft-hero-hospitality .wpst-hh-copy small{color:var(--wpst-hh-eyebrow)}
.elementor-widget-wpsoft-hero-hospitality .wpst-hh-copy h1{color:var(--wpst-hh-title)!important;line-height:.98;text-wrap:balance}
.elementor-widget-wpsoft-hero-hospitality .wpst-hh-copy p{color:var(--wpst-hh-text)!important}
.elementor-widget-wpsoft-hero-hospitality .wpst-hh-rating{
 color:var(--wpst-hh-rating-color);background:var(--wpst-hh-rating-bg);
 border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)
}
.elementor-widget-wpsoft-hero-hospitality.wpst-hh-image-subtle .wpst-ew-hero-hospitality:hover .wpst-hh-bg{transform:scale(1.025)}
.elementor-widget-wpsoft-hero-hospitality.wpst-hh-image-cinematic .wpst-ew-hero-hospitality:hover .wpst-hh-bg{transform:scale(1.06)}

/* Layout variants */
.elementor-widget-wpsoft-hero-hospitality.wpst-hospitality-layout-center .wpst-ew-hero-hospitality{
 justify-content:center;text-align:center
}
.elementor-widget-wpsoft-hero-hospitality.wpst-hospitality-layout-center .wpst-hh-copy{
 margin-inline:auto;text-align:center
}
.elementor-widget-wpsoft-hero-hospitality.wpst-hospitality-layout-luxury .wpst-hh-copy{
 margin-inline:auto;text-align:center;max-width:min(940px,var(--wpst-hh-copy-width))
}
.elementor-widget-wpsoft-hero-hospitality.wpst-hospitality-layout-luxury .wpst-hh-copy h1{
 font-family:Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:-.045em
}
.elementor-widget-wpsoft-hero-hospitality.wpst-hospitality-layout-luxury .wpst-hh-rating{
 left:50%;right:auto;transform:translateX(-50%)
}
.elementor-widget-wpsoft-hero-hospitality.wpst-hospitality-layout-minimal .wpst-hh-shade{
 background:linear-gradient(0deg,color-mix(in srgb,var(--wpst-hh-overlay) 72%,transparent),transparent 72%)!important
}
.elementor-widget-wpsoft-hero-hospitality.wpst-hospitality-layout-minimal .wpst-hh-copy{max-width:680px}

/* Global/preset compatibility */
.elementor-widget-wpsoft-hero-hospitality.wpst-preset-corporate{--wpst-hh-radius:20px}
.elementor-widget-wpsoft-hero-hospitality.wpst-preset-soft{--wpst-hh-radius:38px}
.elementor-widget-wpsoft-hero-hospitality.wpst-preset-minimal{--wpst-hh-radius:12px}
.elementor-widget-wpsoft-hero-hospitality.wpst-preset-dark{--wpst-hh-overlay:rgba(2,6,23,.70)}

@media(max-width:767px){
 .elementor-widget-wpsoft-hero-hospitality .wpst-ew-hero-hospitality{min-height:560px}
 .elementor-widget-wpsoft-hero-hospitality .wpst-hh-copy{padding:28px 24px 96px}
 .elementor-widget-wpsoft-hero-hospitality .wpst-hh-copy h1{font-size:clamp(38px,12vw,58px)}
 .elementor-widget-wpsoft-hero-hospitality .wpst-hh-rating{
  left:24px;right:auto;bottom:22px;transform:none!important
 }
 .elementor-widget-wpsoft-hero-hospitality .wpst-hh-rating span{max-width:190px}
}


/* ==========================================================
   v3.3.9 · Parallax Görsel 2.0 Quality System
   ========================================================== */
.elementor-widget-wpsoft-parallax-image{
 --wpst-parallax-height:520px;--wpst-parallax-radius:28px;
 --wpst-parallax-bg:#0f172a;--wpst-parallax-border:transparent;
 --wpst-parallax-overlay:rgba(2,6,23,.48);
 --wpst-parallax-caption-bg:rgba(15,23,42,.38);
 --wpst-parallax-eyebrow:#dbeafe;--wpst-parallax-title:#fff;--wpst-parallax-text:#e2e8f0;
 --wpst-parallax-caption-width:520px;
}
.elementor-widget-wpsoft-parallax-image .wpst-ew-parallax-image{
 position:relative;height:var(--wpst-parallax-height);min-height:0;margin:0;
 overflow:hidden;isolation:isolate;background:var(--wpst-parallax-bg);
 border:1px solid var(--wpst-parallax-border);border-radius:var(--wpst-parallax-radius)
}
.elementor-widget-wpsoft-parallax-image .wpst-ew-parallax-image>img,
.elementor-widget-wpsoft-parallax-image .wpst-ew-parallax-placeholder{
 position:absolute;inset:-7% 0;width:100%;height:114%;display:block;will-change:transform
}
.elementor-widget-wpsoft-parallax-image .wpst-ew-parallax-image>img{object-fit:cover}
.elementor-widget-wpsoft-parallax-image .wpst-ew-parallax-placeholder{
 display:grid;place-items:center;background:linear-gradient(135deg,#0f172a,#334155);
 color:#cbd5e1;font-size:clamp(30px,6vw,72px);font-weight:900
}
.elementor-widget-wpsoft-parallax-image .wpst-parallax-shade{
 position:absolute;inset:0;z-index:1;pointer-events:none;
 background:linear-gradient(0deg,var(--wpst-parallax-overlay),transparent 72%)
}
.elementor-widget-wpsoft-parallax-image .wpst-ew-parallax-image figcaption{
 position:absolute;z-index:2;left:28px;bottom:28px;width:min(calc(100% - 56px),var(--wpst-parallax-caption-width));
 margin:0;padding:22px;border-radius:20px;background:var(--wpst-parallax-caption-bg);
 color:#fff;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
 border:1px solid rgba(255,255,255,.18)
}
.elementor-widget-wpsoft-parallax-image figcaption small{
 display:block;margin:0 0 9px;color:var(--wpst-parallax-eyebrow);
 font-size:9px;font-weight:850;letter-spacing:.1em;text-transform:uppercase
}
.elementor-widget-wpsoft-parallax-image figcaption h3{
 margin:0;color:var(--wpst-parallax-title)!important;font-size:clamp(26px,3.2vw,46px);
 line-height:1.05;letter-spacing:-.04em
}
.elementor-widget-wpsoft-parallax-image figcaption p{
 margin:10px 0 0;color:var(--wpst-parallax-text)!important;font-size:14px;line-height:1.65
}
.elementor-widget-wpsoft-parallax-image.wpst-parallax-caption-bottom-right figcaption{left:auto;right:28px}
.elementor-widget-wpsoft-parallax-image.wpst-parallax-caption-center figcaption{left:50%;bottom:50%;transform:translate(-50%,50%);text-align:center}
.elementor-widget-wpsoft-parallax-image.wpst-parallax-caption-top-left figcaption{bottom:auto;top:28px}

/* Layouts */
.elementor-widget-wpsoft-parallax-image.wpst-parallax-layout-overlay figcaption{
 background:transparent;border-color:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;padding:0
}
.elementor-widget-wpsoft-parallax-image.wpst-parallax-layout-editorial figcaption{
 background:#fff;color:#0f172a;--wpst-parallax-title:#0f172a;--wpst-parallax-text:#64748b;
 --wpst-parallax-eyebrow:#475569;border-color:#e2e8f0;backdrop-filter:none
}
.elementor-widget-wpsoft-parallax-image.wpst-parallax-layout-minimal figcaption{
 background:rgba(255,255,255,.92);--wpst-parallax-title:#0f172a;--wpst-parallax-text:#475569;
 --wpst-parallax-eyebrow:#64748b;border-color:transparent;backdrop-filter:blur(8px)
}
.elementor-widget-wpsoft-parallax-image.wpst-parallax-shadow-soft .wpst-ew-parallax-image{box-shadow:0 16px 44px rgba(15,23,42,.09)}
.elementor-widget-wpsoft-parallax-image.wpst-parallax-shadow-medium .wpst-ew-parallax-image{box-shadow:0 24px 60px rgba(15,23,42,.15)}
.elementor-widget-wpsoft-parallax-image.wpst-parallax-shadow-none .wpst-ew-parallax-image{box-shadow:none}
.elementor-widget-wpsoft-parallax-image.wpst-preset-corporate{--wpst-parallax-radius:18px}
.elementor-widget-wpsoft-parallax-image.wpst-preset-soft{--wpst-parallax-radius:36px}
.elementor-widget-wpsoft-parallax-image.wpst-preset-minimal{--wpst-parallax-radius:10px}

@media(max-width:767px){
 .elementor-widget-wpsoft-parallax-image .wpst-ew-parallax-image figcaption{
  left:18px!important;right:auto!important;bottom:18px!important;top:auto!important;
  width:calc(100% - 36px);transform:none!important;padding:18px
 }
 .elementor-widget-wpsoft-parallax-image .wpst-ew-parallax-image[data-disable-mobile="1"]>img,
 .elementor-widget-wpsoft-parallax-image .wpst-ew-parallax-image[data-disable-mobile="1"]>.wpst-ew-parallax-placeholder{
  transform:none!important;inset:0;height:100%
 }
}
@media(prefers-reduced-motion:reduce){
 .elementor-widget-wpsoft-parallax-image .wpst-ew-parallax-image>img,
 .elementor-widget-wpsoft-parallax-image .wpst-ew-parallax-placeholder{transform:none!important}
}


/* ==========================================================
   v3.3.10 · Animasyonlu Başlık 2.0 Quality System
   ========================================================== */
.elementor-widget-wpsoft-animated-heading{
 --wpst-ah-color:var(--wpst-heading,#0f172a);
 --wpst-ah-accent:var(--wpst-primary,#2563eb);
 --wpst-ah-size:clamp(36px,5vw,72px);
 --wpst-ah-line:1.02em;
 --wpst-ah-letter:-.04em;
 --wpst-ah-max-width:none;
 --wpst-ah-word-min:0px;
 --wpst-ah-highlight-bg:color-mix(in srgb,var(--wpst-ah-accent) 12%,transparent);
 --wpst-ah-word-radius:12px;
 --wpst-ah-underline:5px;
}
.elementor-widget-wpsoft-animated-heading .wpst-ew-animated-heading{
 max-width:var(--wpst-ah-max-width);
 margin:0;
 color:var(--wpst-ah-color);
 font-size:var(--wpst-ah-size);
 line-height:var(--wpst-ah-line);
 letter-spacing:var(--wpst-ah-letter);
 text-wrap:balance;
}
.elementor-widget-wpsoft-animated-heading .wpst-ew-animated-word{
 display:inline-block;
 position:relative;
 min-width:var(--wpst-ah-word-min);
 color:var(--wpst-ah-accent);
 vertical-align:baseline;
 transition:
  opacity var(--wpst-ah-transition,.32s) ease,
  transform var(--wpst-ah-transition,.32s) ease,
  filter var(--wpst-ah-transition,.32s) ease;
 will-change:opacity,transform,filter;
}
.elementor-widget-wpsoft-animated-heading.wpst-animated-word-display-block .wpst-ew-animated-word{
 display:block;
 width:max-content;
 max-width:100%;
 margin-top:.08em;
}

/* Highlight styles */
.elementor-widget-wpsoft-animated-heading.wpst-animated-highlight-none .wpst-ew-animated-word:after{display:none}
.elementor-widget-wpsoft-animated-heading.wpst-animated-highlight-underline .wpst-ew-animated-word:after{
 content:"";position:absolute;left:0;right:0;bottom:-.08em;
 height:var(--wpst-ah-underline);border-radius:999px;
 background:currentColor;opacity:.18
}
.elementor-widget-wpsoft-animated-heading.wpst-animated-highlight-marker .wpst-ew-animated-word{
 z-index:0
}
.elementor-widget-wpsoft-animated-heading.wpst-animated-highlight-marker .wpst-ew-animated-word:after{
 content:"";position:absolute;z-index:-1;left:-.08em;right:-.08em;bottom:.02em;height:.34em;
 border-radius:.2em;background:var(--wpst-ah-highlight-bg)
}
.elementor-widget-wpsoft-animated-heading.wpst-animated-highlight-pill .wpst-ew-animated-word{
 padding:.06em .22em;
 border-radius:var(--wpst-ah-word-radius);
 background:var(--wpst-ah-highlight-bg)
}
.elementor-widget-wpsoft-animated-heading.wpst-animated-highlight-pill .wpst-ew-animated-word:after{display:none}
.elementor-widget-wpsoft-animated-heading.wpst-animated-highlight-gradient .wpst-ew-animated-word{
 background:linear-gradient(135deg,var(--wpst-ah-accent),color-mix(in srgb,var(--wpst-ah-accent) 45%,#db2777));
 -webkit-background-clip:text;background-clip:text;color:transparent!important
}
.elementor-widget-wpsoft-animated-heading.wpst-animated-highlight-gradient .wpst-ew-animated-word:after{display:none}

/* Animation types */
.elementor-widget-wpsoft-animated-heading.wpst-animated-type-slide .wpst-ew-animated-word.is-out{
 opacity:0;transform:translateY(-.34em)
}
.elementor-widget-wpsoft-animated-heading.wpst-animated-type-slide .wpst-ew-animated-word.is-in{
 animation:wpstAHSlideIn var(--wpst-ah-transition,.32s) ease
}
@keyframes wpstAHSlideIn{from{opacity:0;transform:translateY(.34em)}to{opacity:1;transform:none}}

.elementor-widget-wpsoft-animated-heading.wpst-animated-type-fade .wpst-ew-animated-word.is-out{opacity:0}
.elementor-widget-wpsoft-animated-heading.wpst-animated-type-fade .wpst-ew-animated-word.is-in{animation:wpstAHFadeIn var(--wpst-ah-transition,.32s) ease}
@keyframes wpstAHFadeIn{from{opacity:0}to{opacity:1}}

.elementor-widget-wpsoft-animated-heading.wpst-animated-type-scale .wpst-ew-animated-word.is-out{opacity:0;transform:scale(.88)}
.elementor-widget-wpsoft-animated-heading.wpst-animated-type-scale .wpst-ew-animated-word.is-in{animation:wpstAHScaleIn var(--wpst-ah-transition,.32s) ease}
@keyframes wpstAHScaleIn{from{opacity:0;transform:scale(1.1)}to{opacity:1;transform:none}}

.elementor-widget-wpsoft-animated-heading.wpst-animated-type-blur .wpst-ew-animated-word.is-out{opacity:0;filter:blur(10px);transform:translateY(-.08em)}
.elementor-widget-wpsoft-animated-heading.wpst-animated-type-blur .wpst-ew-animated-word.is-in{animation:wpstAHBlurIn var(--wpst-ah-transition,.32s) ease}
@keyframes wpstAHBlurIn{from{opacity:0;filter:blur(10px)}to{opacity:1;filter:none}}

.elementor-widget-wpsoft-animated-heading.wpst-animated-type-flip .wpst-ew-animated-word{transform-origin:center bottom;perspective:700px}
.elementor-widget-wpsoft-animated-heading.wpst-animated-type-flip .wpst-ew-animated-word.is-out{opacity:0;transform:rotateX(70deg)}
.elementor-widget-wpsoft-animated-heading.wpst-animated-type-flip .wpst-ew-animated-word.is-in{animation:wpstAHFlipIn var(--wpst-ah-transition,.32s) ease}
@keyframes wpstAHFlipIn{from{opacity:0;transform:rotateX(-70deg)}to{opacity:1;transform:none}}

/* Typing uses caret rather than transform */
.elementor-widget-wpsoft-animated-heading.wpst-animated-type-typing .wpst-ew-animated-word{
 border-right:2px solid currentColor;
 padding-right:.08em;
 animation:wpstAHCaret .8s steps(1) infinite
}
.elementor-widget-wpsoft-animated-heading.wpst-animated-type-typing .wpst-ew-animated-word:after{display:none}
@keyframes wpstAHCaret{50%{border-color:transparent}}

/* Preset polish */
.elementor-widget-wpsoft-animated-heading.wpst-preset-corporate{--wpst-ah-letter:-.025em}
.elementor-widget-wpsoft-animated-heading.wpst-preset-editorial{--wpst-ah-letter:-.055em}
.elementor-widget-wpsoft-animated-heading.wpst-preset-soft{--wpst-ah-highlight-bg:color-mix(in srgb,var(--wpst-ah-accent) 10%,#fff)}
.elementor-widget-wpsoft-animated-heading.wpst-preset-dark{--wpst-ah-color:#f8fafc;--wpst-ah-accent:#93c5fd}

/* Mobile quality */
@media(max-width:767px){
 .elementor-widget-wpsoft-animated-heading .wpst-ew-animated-heading{
  white-space:normal!important;
  overflow-wrap:normal;
  word-break:normal;
 }
 .elementor-widget-wpsoft-animated-heading .wpst-ew-animated-word{
  min-width:0!important;
  white-space:normal!important;
 }
}
@media(prefers-reduced-motion:reduce){
 .elementor-widget-wpsoft-animated-heading .wpst-ew-animated-word{
  animation:none!important;transition:none!important
 }
}

/* Cascade anchor: keep premium drawer overrides after legacy compatibility rules. */
@media(max-width:1024px){
 .wpst-nav-mobile-hamburger .wpst-navigation{--wps-mobile-menu-bg:var(--wpst-nav-mobile-bg,linear-gradient(160deg,#071426 0%,#0b1930 52%,#081221 100%));--wps-mobile-menu-text:var(--wpst-nav-mobile-color,var(--wpst-color-text-inverse,#e8eef8));--wps-mobile-menu-active-bg:linear-gradient(100deg,#3468ff,#713de6,#8e20c7);--wps-mobile-menu-active-color:#fff;--wps-mobile-menu-radius:16px;--wps-mobile-menu-item-height:58px;--wps-mobile-menu-gap:6px;--wps-mobile-menu-chevron:rgba(226,232,240,.72);--wps-mobile-menu-close-bg:rgba(255,255,255,.08);--wps-mobile-menu-close-color:#fff}
 .wpst-nav-mobile-hamburger .wpst-nav-mobile-panel{width:min(var(--wpst-nav-mobile-width,90vw),90vw)!important;max-width:var(--wps-mobile-menu-max-width,410px);height:100dvh!important;max-height:100dvh!important;padding:max(14px,env(safe-area-inset-top)) 14px max(14px,env(safe-area-inset-bottom))!important;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;background:var(--wps-mobile-menu-bg)!important;color:var(--wps-mobile-menu-text)!important;border:1px solid rgba(255,255,255,.08);box-shadow:inset 1px 0 rgba(255,255,255,.035),-24px 0 60px rgba(1,6,18,.36);transition:transform .36s cubic-bezier(.22,.8,.2,1)!important}
 .wpst-nav-overlay-yes .wpst-nav-overlay{background:var(--wpst-nav-overlay-bg,rgba(2,8,23,.62));backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
 .wpst-nav-mobile-hamburger .wpst-nav-mobile-head{min-height:64px;padding:4px 2px 12px!important;border:0;border-bottom:1px solid rgba(255,255,255,.09);border-radius:0;background:transparent;justify-content:space-between}
 .wpst-nav-mobile-brand{min-width:0;display:flex;align-items:center}.wpst-nav-mobile-brand .custom-logo-link{display:flex}.wpst-nav-mobile-brand .custom-logo{display:block;width:auto;max-width:180px;max-height:42px;object-fit:contain}.wpst-nav-site-title{color:var(--wps-mobile-menu-text)!important;font-size:17px;font-weight:750;text-decoration:none}
 .wpst-nav-mobile-hamburger .wpst-nav-close{position:relative;flex:0 0 46px;width:46px;height:46px;margin-left:14px;border:1px solid rgba(255,255,255,.09);border-radius:15px;background:var(--wps-mobile-menu-close-bg)!important;color:var(--wps-mobile-menu-close-color)!important;font-size:0}.wpst-nav-close span::before,.wpst-nav-close span::after{content:"";position:absolute;left:13px;top:22px;width:20px;height:2px;border-radius:2px;background:currentColor}.wpst-nav-close span::before{transform:rotate(45deg)}.wpst-nav-close span::after{transform:rotate(-45deg)}
 .wpst-nav-mobile-hamburger .wpst-nav-menu-host{padding:16px 0!important}.wpst-nav-mobile-hamburger .wpst-nav-mobile-footer{margin-top:auto;padding:14px 0 0!important;border-top:1px solid rgba(255,255,255,.09)}
}
@media(max-width:767px){
 .wpst-nav-mobile-hamburger .wpst-navigation-menu{gap:var(--wps-mobile-menu-gap)!important}.wpst-nav-mobile-hamburger .wpst-navigation-menu>li{overflow:visible;border-radius:var(--wps-mobile-menu-radius)!important}.wpst-nav-mobile-hamburger .wpst-navigation-menu>li>a{min-height:var(--wps-mobile-menu-item-height)!important;padding:12px 17px!important;border-radius:var(--wps-mobile-menu-radius)!important;color:var(--wps-mobile-menu-text)!important;font-size:15px;font-weight:650;line-height:1.35}
 .wpst-nav-mobile-hamburger .wpst-navigation-menu>li>a:hover,.wpst-nav-mobile-hamburger .wpst-navigation-menu>li>a:focus-visible{background:var(--wpst-nav-mobile-hover,rgba(255,255,255,.07))!important;color:var(--wps-mobile-menu-text)!important}.wpst-nav-mobile-hamburger .wpst-navigation-menu>li:is(.current-menu-item,.current_page_item,.current-menu-ancestor,.current-menu-parent,.current_page_ancestor)>a{background:var(--wps-mobile-menu-active-bg)!important;color:var(--wps-mobile-menu-active-color)!important;-webkit-text-fill-color:currentColor!important;box-shadow:var(--wps-mobile-active-shadow,none)!important}
 .wpst-nav-mobile-hamburger .wpst-nav-subtoggle{width:42px;height:42px;margin-right:8px;border-radius:13px;color:var(--wps-mobile-menu-chevron)!important;background:rgba(255,255,255,.045)}.wpst-nav-mobile-hamburger .wpst-navigation .is-sub-open>.sub-menu{max-height:1000px;padding:6px 0 6px 14px!important;border-left:1px solid rgba(255,255,255,.12)!important}.wpst-nav-mobile-hamburger .wpst-navigation .sub-menu a{min-height:48px;color:var(--wps-mobile-menu-text)!important;border-radius:12px}
}

/* Premium drawer components. Scoped to the mobile Navigation owner only. */
@media(max-width:1024px){
 .wpst-nav-mobile-hamburger .wpst-navigation{--wps-mobile-nav-surface:rgba(255,255,255,.025);--wps-mobile-nav-border:rgba(255,255,255,.065);--wps-mobile-nav-muted:#9da8c5;--wps-mobile-nav-search-bg:rgba(255,255,255,.035);--wps-mobile-nav-icon-box:46px}
 .wpst-nav-drawer-right .wpst-nav-mobile-panel{border-radius:28px 0 0 28px}.wpst-nav-drawer-left .wpst-nav-mobile-panel{border-radius:0 28px 28px 0}
 .wpst-nav-mobile-hamburger .wpst-nav-mobile-panel{padding:max(22px,env(safe-area-inset-top)) 22px max(18px,env(safe-area-inset-bottom))!important;-webkit-overflow-scrolling:touch}
 .wpst-nav-mobile-hamburger .wpst-nav-mobile-head{min-height:58px;padding:0!important;border:0}.wpst-nav-mobile-brand .custom-logo{max-height:54px}.wpst-nav-site-title{font-size:24px!important;font-weight:700!important}
 .wps-mobile-drawer__search{position:relative;display:flex;align-items:center;flex:0 0 52px;height:52px;margin-top:22px}.wps-mobile-drawer__search>span{position:absolute;z-index:1;left:17px;top:50%;width:17px;height:17px;border:2px solid rgba(210,220,250,.68);border-radius:50%;transform:translateY(-50%);pointer-events:none}.wps-mobile-drawer__search>span::after{content:"";position:absolute;width:7px;height:2px;right:-5px;bottom:-2px;background:currentColor;transform:rotate(45deg);border-radius:2px}
 .wps-mobile-drawer__search-input{box-sizing:border-box;width:100%;height:52px;padding:0 16px 0 48px;border:1px solid rgba(255,255,255,.10);border-radius:16px;outline:0;background:var(--wps-mobile-nav-search-bg);color:#f4f7ff;font:inherit;font-size:16px;-webkit-appearance:none}.wps-mobile-drawer__search-input::placeholder{color:rgba(220,228,250,.55)}.wps-mobile-drawer__search-input:focus{border-color:rgba(90,130,255,.65);box-shadow:0 0 0 3px rgba(60,90,255,.12)}
 .wpst-nav-mobile-hamburger .wpst-nav-menu-host{padding:24px 0 0!important}.wpst-nav-mobile-hamburger .wpst-navigation-menu{gap:9px!important}
 .wpst-nav-desktop-host .wpst-menu-item-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-right:7px;vertical-align:middle}.wpst-nav-desktop-host .wpst-menu-item-icon--internal svg{display:block;width:17px;height:17px}.wpst-nav-desktop-host .wpst-menu-item-icon--custom img{display:block;width:17px;height:17px;max-width:17px;max-height:17px;object-fit:contain;background:transparent}
 .wpst-nav-mobile-hamburger .wpst-navigation-menu li>a.wps-mobile-drawer__item{position:relative;display:flex!important;align-items:center;min-height:66px!important;padding:9px 48px 9px 10px!important;border:1px solid var(--wps-mobile-nav-border)!important;border-radius:17px!important;background:var(--wps-mobile-nav-surface)!important;color:#f4f6ff!important;font-size:16px;font-weight:600;line-height:1.3;transition:background .18s ease,transform .18s ease}
 .wpst-nav-mobile-hamburger .wpst-navigation-menu li>a.wps-mobile-drawer__item:hover,.wpst-nav-mobile-hamburger .wpst-navigation-menu li>a.wps-mobile-drawer__item:focus-visible{background:rgba(255,255,255,.055)!important;transform:translateX(2px)!important}
 .wps-mobile-drawer__icon{display:flex!important;flex:0 0 var(--wps-mobile-nav-icon-box);width:var(--wps-mobile-nav-icon-box);height:var(--wps-mobile-nav-icon-box);align-items:center;justify-content:center;margin-right:15px;border-radius:13px;background:rgba(90,110,200,.10);color:#aebafa}.wps-mobile-drawer__icon>.wpst-menu-item-icon{display:grid;width:auto;height:auto;margin:0;background:transparent;border-radius:0;padding:0;color:inherit}.wps-mobile-drawer__icon .wpst-menu-item-icon--internal svg{width:22px;height:22px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;fill:none}.wps-mobile-drawer__icon .wpst-menu-item-icon--custom,.wps-mobile-drawer__icon .wpst-menu-item-icon--custom img{display:block;width:22px;height:22px;max-width:22px;max-height:22px;padding:0;background:transparent;object-fit:contain}
 .wpst-nav-mobile-hamburger .wpst-navigation-menu li:not(.menu-item-has-children):not(.page_item_has_children)>a.wps-mobile-drawer__item::after{content:"";position:absolute;right:20px;top:50%;width:8px;height:8px;border-top:2px solid var(--wps-mobile-nav-muted);border-right:2px solid var(--wps-mobile-nav-muted);transform:translateY(-50%) rotate(45deg)}
 .wpst-nav-mobile-hamburger .wpst-nav-subtoggle{position:absolute;right:7px;top:12px;z-index:2;color:var(--wps-mobile-nav-muted)!important}.wpst-nav-mobile-hamburger .wpst-navigation-menu li{position:relative}
 .wpst-nav-mobile-hamburger .wpst-navigation-menu li:is(.current-menu-item,.current_page_item,.current-menu-ancestor,.current-menu-parent,.current_page_ancestor)>a.wps-mobile-drawer__item{background:var(--wps-mobile-menu-active-bg)!important;border-color:var(--wps-mobile-active-border,var(--wps-mobile-nav-border))!important;color:var(--wps-mobile-menu-active-color)!important;box-shadow:var(--wps-mobile-active-shadow,none)!important}.wpst-navigation-menu li:is(.current-menu-item,.current_page_item,.current-menu-ancestor,.current-menu-parent)>.wps-mobile-drawer__item .wps-mobile-drawer__icon{background:rgba(255,255,255,.12);color:#fff}
 .wpst-nav-mobile-hamburger .wpst-navigation .sub-menu{padding-left:20px!important}.wpst-nav-mobile-hamburger .wpst-navigation .sub-menu li>a.wps-mobile-drawer__item{min-height:52px!important;font-size:14px;background:rgba(255,255,255,.018)!important}.wpst-navigation-menu li[hidden]{display:none!important}
 .wpst-nav-mobile-hamburger .wpst-nav-mobile-footer{margin-top:22px;padding:0!important;border:0}.wps-mobile-drawer .wpst-nav-mobile-cta{display:flex;align-items:center;min-height:84px;padding:14px 15px;border:1px solid rgba(91,105,255,.40);border-radius:18px;background:linear-gradient(120deg,rgba(30,90,220,.13),rgba(120,30,200,.12));color:#fff!important;text-decoration:none}.wps-mobile-drawer__cta-icon{flex:0 0 48px;width:48px;height:48px;margin-right:13px;border-radius:14px;background:linear-gradient(135deg,#238cff,#8e20e4)}.wps-mobile-drawer__cta-copy{display:flex;min-width:0;flex:1;flex-direction:column}.wps-mobile-drawer__cta-copy strong{color:#fff!important;font-size:16px;font-weight:700;line-height:1.25}.wps-mobile-drawer__cta-copy small{margin-top:4px;color:rgba(235,240,255,.72)!important;font-size:13px;line-height:1.4}.wps-mobile-drawer .wpst-nav-mobile-cta>i{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#5146ff,#991ddd);color:#fff!important;font-style:normal}
 .wps-mobile-drawer__socials{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:18px}.wps-mobile-drawer__socials a{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(255,255,255,.04);color:#eef2ff!important;text-decoration:none;transition:background .18s ease,border-color .18s ease,transform .18s ease}.wps-mobile-drawer__socials a:hover,.wps-mobile-drawer__socials a:focus-visible{background:rgba(255,255,255,.085);border-color:rgba(115,125,255,.36);transform:translateY(-1px)}.wps-mobile-drawer__socials svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.wps-mobile-drawer__socials .is-facebook svg{fill:currentColor;stroke:none}
}
@media(max-width:360px){.wpst-nav-mobile-hamburger .wpst-nav-mobile-panel{padding-left:16px!important;padding-right:16px!important}.wpst-nav-mobile-hamburger .wpst-navigation-menu li>a.wps-mobile-drawer__item{min-height:62px!important}.wps-mobile-drawer__icon{--wps-mobile-nav-icon-box:42px;margin-right:11px}}

/* Drawer-only footer visibility; drawer children never enter desktop flow. */
.wps-mobile-drawer__socials{display:none}
@media(max-width:767px){
 .wpst-nav-mobile-hamburger .wpst-nav-mobile-footer{display:block!important}
 .wpst-nav-mobile-hamburger .wps-mobile-drawer__socials{display:flex}
}
@media(min-width:768px) and (max-width:1024px){
 .wpst-nav-breakpoint-1024.wpst-nav-mobile-hamburger .wpst-nav-mobile-footer{display:block!important}
 .wpst-nav-breakpoint-1024.wpst-nav-mobile-hamburger .wps-mobile-drawer__socials{display:flex}
}

/* Elementor-controlled mobile drawer tokens and editor-safe icon bounds. */
@media(max-width:1024px){
 .wpst-nav-mobile-hamburger .wps-mobile-drawer{--wps-mobile-menu-hover-text:#fff;--wps-mobile-menu-submenu-text:rgba(238,242,255,.82);--wps-mobile-icon-size:20px;--wps-mobile-icon-color:#a9b9ee;--wps-mobile-icon-bg:rgba(91,110,200,.10);--wps-mobile-icon-active-color:#fff;--wps-mobile-icon-active-bg:rgba(255,255,255,.14);--wps-mobile-icon-radius:13px;--wps-mobile-cta-title:#fff;--wps-mobile-cta-subtitle:rgba(235,240,255,.72);--wps-mobile-social-color:#eef2ff;--wps-mobile-social-hover-color:#fff;--wps-mobile-social-bg:rgba(255,255,255,.04);--wps-mobile-social-size:44px}
 .wps-mobile-drawer .wpst-nav-mobile-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.wps-mobile-drawer .wps-mobile-drawer__branding{display:flex!important;align-items:center;flex:1 1 auto;min-width:0}.wps-mobile-drawer .wpst-nav-drawer-logo{display:flex;align-items:center;max-width:100%}.wps-mobile-drawer .wpst-nav-mobile-brand img{display:block!important;width:auto;height:auto!important;max-width:var(--wps-mobile-logo-width,150px);max-height:var(--wps-mobile-logo-height,54px);object-fit:contain;opacity:1!important;visibility:visible!important}
 .wpst-nav-mobile-hamburger .wps-mobile-drawer .wpst-navigation-menu li>a.wps-mobile-drawer__item{color:var(--wps-mobile-menu-text,#eef2ff)!important}
 .wpst-nav-mobile-hamburger .wps-mobile-drawer .wpst-navigation-menu li>a.wps-mobile-drawer__item:hover,.wpst-nav-mobile-hamburger .wps-mobile-drawer .wpst-navigation-menu li>a.wps-mobile-drawer__item:focus-visible{color:var(--wps-mobile-menu-hover-text,#fff)!important}
 .wpst-nav-mobile-hamburger .wps-mobile-drawer .wpst-navigation-menu .sub-menu li>a.wps-mobile-drawer__item{color:var(--wps-mobile-menu-submenu-text,rgba(238,242,255,.82))!important}
 .wps-mobile-drawer .wps-mobile-drawer__icon{box-sizing:border-box!important;display:flex!important;flex:0 0 var(--wps-mobile-nav-icon-box,44px)!important;width:var(--wps-mobile-nav-icon-box,44px)!important;height:var(--wps-mobile-nav-icon-box,44px)!important;max-width:var(--wps-mobile-nav-icon-box,44px)!important;max-height:var(--wps-mobile-nav-icon-box,44px)!important;border-radius:var(--wps-mobile-icon-radius);background:var(--wps-mobile-icon-bg);color:var(--wps-mobile-icon-color)}
 .wps-mobile-drawer .wps-mobile-drawer__icon svg,.wps-mobile-drawer .wps-mobile-drawer__icon i,.elementor-editor-active .wps-mobile-drawer .wps-mobile-drawer__icon svg{display:block!important;width:var(--wps-mobile-icon-size)!important;height:var(--wps-mobile-icon-size)!important;max-width:var(--wps-mobile-icon-size)!important;max-height:var(--wps-mobile-icon-size)!important;font-size:var(--wps-mobile-icon-size)!important}
 .wps-mobile-drawer .wpst-menu-item-icon--custom,.wps-mobile-drawer .wpst-menu-item-icon--custom img,.wps-mobile-drawer .wpst-menu-item-icon--custom svg{box-sizing:border-box!important;display:block!important;width:var(--wps-mobile-icon-size,20px)!important;height:var(--wps-mobile-icon-size,20px)!important;max-width:var(--wps-mobile-icon-size,20px)!important;max-height:var(--wps-mobile-icon-size,20px)!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;object-fit:contain}
 .wps-mobile-drawer .wpst-navigation-menu li:is(.current-menu-item,.current_page_item,.current-menu-ancestor,.current-menu-parent)>.wps-mobile-drawer__item .wps-mobile-drawer__icon{background:var(--wps-mobile-icon-active-bg);color:var(--wps-mobile-icon-active-color)}
 .wps-mobile-drawer .wpst-navigation-menu li:is(.current-menu-item,.current_page_item,.current-menu-ancestor,.current-menu-parent,.current_page_ancestor)>a.wps-mobile-drawer__item{background:var(--wps-mobile-menu-active-bg,linear-gradient(100deg,#168cff 0%,#4d45ff 48%,#961adb 100%))!important;color:var(--wps-mobile-menu-active-color,#fff)!important}
 .wps-mobile-drawer .wpst-nav-mobile-cta{background:var(--wpst-nav-mobile-cta-bg,linear-gradient(120deg,rgba(30,90,220,.13),rgba(120,30,200,.12)))!important;color:var(--wpst-nav-mobile-cta-color,#fff)!important}
 .wps-mobile-drawer .wps-mobile-drawer__cta-icon{display:grid;place-items:center;background:var(--wps-mobile-cta-icon-bg,linear-gradient(135deg,#238cff,#8e20e4));color:var(--wps-mobile-cta-icon-color,#fff)}.wps-mobile-drawer .wps-mobile-drawer__cta-icon svg,.wps-mobile-drawer .wps-mobile-drawer__cta-icon i{width:22px!important;height:22px!important;max-width:22px!important;max-height:22px!important}
 .wps-mobile-drawer .wps-mobile-drawer__cta-copy strong{color:var(--wps-mobile-cta-title)!important}.wps-mobile-drawer .wps-mobile-drawer__cta-copy small{color:var(--wps-mobile-cta-subtitle)!important}
 .wps-mobile-drawer .wps-mobile-drawer__socials{gap:var(--wps-mobile-social-gap,10px)}.wps-mobile-drawer .wps-mobile-drawer__socials a{width:var(--wps-mobile-social-size);height:var(--wps-mobile-social-size);border-color:var(--wps-mobile-social-border,rgba(255,255,255,.08));border-radius:var(--wps-mobile-social-radius,13px);background:var(--wps-mobile-social-bg);color:var(--wps-mobile-social-color)!important}.wps-mobile-drawer .wps-mobile-drawer__socials a:hover{background:var(--wps-mobile-social-hover-bg,rgba(255,255,255,.085));color:var(--wps-mobile-social-hover-color)!important}.wps-mobile-drawer .wps-mobile-drawer__socials svg{display:block!important;width:var(--wps-mobile-social-icon-size,20px)!important;height:var(--wps-mobile-social-icon-size,20px)!important;max-width:var(--wps-mobile-social-icon-size,20px)!important;max-height:var(--wps-mobile-social-icon-size,20px)!important}
}
@media(max-width:1024px){.wpst-nav-mobile-hamburger .wpst-nav-desktop-host{display:none}.wpst-nav-mobile-hamburger .wps-mobile-drawer{display:flex}.wps-mobile-drawer .wpst-nav-mobile-cta{position:relative;z-index:2;pointer-events:auto}.wps-mobile-drawer .wpst-nav-mobile-cta>*{pointer-events:none}}
@media(min-width:768px) and (max-width:1024px){.wpst-nav-breakpoint-767.wpst-nav-mobile-hamburger .wpst-nav-desktop-host{display:block!important}.wpst-nav-breakpoint-767.wpst-nav-mobile-hamburger .wps-mobile-drawer{display:none!important;visibility:hidden!important;pointer-events:none!important}}

/* Mobile preset tokens live on the real drawer root in editor and frontend. */
.wps-mobile-drawer.wpst-mobile-design--global{--wps-mobile-menu-bg:linear-gradient(160deg,#071426,#0b1930 52%,#081221);--wps-mobile-nav-surface:rgba(255,255,255,.025);--wps-mobile-nav-border:rgba(255,255,255,.065);--wps-mobile-menu-text:#f4f6ff;--wps-mobile-nav-muted:#9da8c5;--wps-mobile-menu-active-bg:linear-gradient(100deg,#168cff,#494dff 48%,#9b18de);--wps-mobile-menu-active-color:#fff;--wps-mobile-icon-bg:rgba(90,110,200,.10);--wps-mobile-icon-color:#aebafa;--wps-mobile-menu-close-bg:rgba(255,255,255,.06);--wps-mobile-menu-close-color:#fff;--wpst-nav-overlay-bg:rgba(15,23,42,.46);--wpst-nav-mobile-cta-bg:linear-gradient(120deg,rgba(30,90,220,.20),rgba(120,30,200,.18));--wps-mobile-social-bg:rgba(255,255,255,.04);--wps-mobile-social-border:rgba(255,255,255,.08);--wps-mobile-panel-padding:22px;--wps-mobile-menu-radius:17px;--wps-mobile-menu-item-height:66px;--wps-mobile-menu-gap:7px;--wps-mobile-nav-icon-box:46px;--wps-mobile-icon-radius:13px;--wps-mobile-text-size:16px;--wps-mobile-text-weight:600;--wps-mobile-cta-radius:18px;--wps-mobile-cta-height:84px;--wps-mobile-logo-align:flex-start;--wps-mobile-panel-width:410px}
.wps-mobile-drawer.wpst-mobile-preset--minimal-light{--wps-mobile-menu-bg:#fff;--wps-mobile-nav-surface:#fafafa;--wps-mobile-nav-border:#edf0f4;--wps-mobile-menu-text:#172033;--wps-mobile-nav-muted:#667085;--wps-mobile-menu-active-bg:#f2f6ff;--wps-mobile-menu-active-color:#174ea6;--wps-mobile-icon-bg:#f6f7f9;--wps-mobile-icon-color:#667085;--wps-mobile-menu-close-bg:#f5f6f8;--wps-mobile-menu-close-color:#172033;--wpst-nav-overlay-bg:rgba(15,23,42,.30);--wpst-nav-mobile-cta-bg:#172033;--wps-mobile-social-bg:#f7f8fa;--wps-mobile-social-border:#e7e9ed;--wps-mobile-panel-padding:20px;--wps-mobile-menu-radius:9px;--wps-mobile-menu-item-height:56px;--wps-mobile-menu-gap:3px;--wps-mobile-nav-icon-box:34px;--wps-mobile-icon-radius:8px;--wps-mobile-cta-radius:10px;--wps-mobile-cta-height:64px;--wps-mobile-panel-width:390px}
.wps-mobile-drawer.wpst-mobile-preset--luxury{--wps-mobile-menu-bg:#16130f;--wps-mobile-nav-surface:transparent;--wps-mobile-nav-border:rgba(205,180,125,.22);--wps-mobile-menu-text:#f4eee2;--wps-mobile-nav-muted:#c9b27d;--wps-mobile-menu-active-bg:rgba(185,148,73,.11);--wps-mobile-menu-active-color:#f7e7bd;--wps-mobile-icon-bg:transparent;--wps-mobile-icon-color:#c9b27d;--wps-mobile-menu-close-bg:transparent;--wps-mobile-menu-close-color:#d9c28f;--wpst-nav-overlay-bg:rgba(15,12,8,.58);--wpst-nav-mobile-cta-bg:linear-gradient(135deg,#b49150,#745826);--wps-mobile-social-bg:transparent;--wps-mobile-social-border:rgba(205,180,125,.28);--wps-mobile-panel-padding:30px;--wps-mobile-menu-radius:0;--wps-mobile-menu-item-height:72px;--wps-mobile-menu-gap:8px;--wps-mobile-nav-icon-box:30px;--wps-mobile-icon-radius:0;--wps-mobile-text-size:19px;--wps-mobile-text-weight:500;--wps-mobile-cta-radius:2px;--wps-mobile-cta-height:78px;--wps-mobile-panel-width:440px}
.wps-mobile-drawer.wpst-mobile-preset--creative-gradient{--wps-mobile-menu-bg:linear-gradient(155deg,#101125,#17133b 55%,#25123c);--wps-mobile-nav-surface:rgba(255,255,255,.045);--wps-mobile-nav-border:rgba(190,180,255,.13);--wps-mobile-menu-text:#f4f6ff;--wps-mobile-nav-muted:#bec5ff;--wps-mobile-menu-active-bg:linear-gradient(105deg,#1679ff,#7c3aed 55%,#db2777);--wps-mobile-menu-active-color:#fff;--wps-mobile-icon-bg:linear-gradient(135deg,rgba(44,178,255,.25),rgba(210,70,255,.22));--wps-mobile-icon-color:#d2d5ff;--wps-mobile-menu-close-bg:rgba(255,255,255,.07);--wps-mobile-menu-close-color:#fff;--wpst-nav-overlay-bg:rgba(12,8,32,.55);--wpst-nav-mobile-cta-bg:linear-gradient(120deg,#087cf0,#8b35d9 58%,#d72d82);--wps-mobile-social-bg:rgba(130,100,255,.11);--wps-mobile-social-border:rgba(180,155,255,.25);--wps-mobile-panel-width:410px}
.wps-mobile-drawer.wpst-mobile-preset--e-commerce{--wps-mobile-menu-bg:#fff;--wps-mobile-nav-surface:#fafbfc;--wps-mobile-nav-border:#e8ebef;--wps-mobile-menu-text:#182230;--wps-mobile-nav-muted:#52606f;--wps-mobile-menu-active-bg:#eaf2ff;--wps-mobile-menu-active-color:#1558b0;--wps-mobile-icon-bg:#eef4ff;--wps-mobile-icon-color:#3971b8;--wps-mobile-menu-close-bg:#f3f5f7;--wps-mobile-menu-close-color:#182230;--wpst-nav-overlay-bg:rgba(24,34,48,.32);--wpst-nav-mobile-cta-bg:#f05a28;--wps-mobile-social-bg:#f5f7fa;--wps-mobile-social-border:#e1e5ea;--wps-mobile-panel-padding:17px;--wps-mobile-menu-radius:10px;--wps-mobile-menu-item-height:52px;--wps-mobile-menu-gap:4px;--wps-mobile-nav-icon-box:36px;--wps-mobile-icon-radius:8px;--wps-mobile-text-size:15px;--wps-mobile-cta-radius:10px;--wps-mobile-cta-height:62px;--wps-mobile-panel-width:400px}
.wps-mobile-drawer.wpst-mobile-preset--hotel-tourism{--wps-mobile-menu-bg:#f7f4ec;--wps-mobile-nav-surface:rgba(255,255,255,.55);--wps-mobile-nav-border:#ddd5c5;--wps-mobile-menu-text:#23352f;--wps-mobile-nav-muted:#60776e;--wps-mobile-menu-active-bg:#dfeae4;--wps-mobile-menu-active-color:#163f32;--wps-mobile-icon-bg:#e8efe8;--wps-mobile-icon-color:#45675c;--wps-mobile-menu-close-bg:#ece7dc;--wps-mobile-menu-close-color:#23352f;--wpst-nav-overlay-bg:rgba(35,53,47,.35);--wpst-nav-mobile-cta-bg:#9b5d32;--wps-mobile-social-bg:#fff;--wps-mobile-social-border:#d9d1c2;--wps-mobile-panel-padding:25px;--wps-mobile-menu-radius:12px;--wps-mobile-menu-item-height:64px;--wps-mobile-menu-gap:8px;--wps-mobile-cta-radius:9px;--wps-mobile-cta-height:78px;--wps-mobile-logo-align:center;--wps-mobile-panel-width:430px}
.wps-mobile-drawer.wpst-mobile-preset--professional-dark{--wps-mobile-menu-bg:#111318;--wps-mobile-nav-surface:#171a20;--wps-mobile-nav-border:#2a2e36;--wps-mobile-menu-text:#ecf0f6;--wps-mobile-nav-muted:#9aa6b5;--wps-mobile-menu-active-bg:#202a38;--wps-mobile-menu-active-color:#ddecff;--wps-mobile-icon-bg:#202631;--wps-mobile-icon-color:#a9bbd2;--wps-mobile-menu-close-bg:#1c2027;--wps-mobile-menu-close-color:#fff;--wpst-nav-overlay-bg:rgba(5,7,10,.62);--wpst-nav-mobile-cta-bg:#2774c8;--wps-mobile-social-bg:#191d24;--wps-mobile-social-border:#303640;--wps-mobile-panel-padding:22px;--wps-mobile-menu-radius:11px;--wps-mobile-menu-item-height:58px;--wps-mobile-nav-icon-box:40px;--wps-mobile-icon-radius:9px;--wps-mobile-cta-radius:10px;--wps-mobile-cta-height:68px;--wps-mobile-panel-width:410px}
.wps-mobile-drawer.wpst-mobile-preset--classic-clean{--wps-mobile-menu-bg:#fbfbfa;--wps-mobile-nav-surface:#fff;--wps-mobile-nav-border:#e6e5e2;--wps-mobile-menu-text:#292b2f;--wps-mobile-nav-muted:#70747a;--wps-mobile-menu-active-bg:#eceff2;--wps-mobile-menu-active-color:#20252b;--wps-mobile-icon-bg:#f1f0ed;--wps-mobile-icon-color:#656a70;--wps-mobile-menu-close-bg:#efeeeb;--wps-mobile-menu-close-color:#292b2f;--wpst-nav-overlay-bg:rgba(41,43,47,.30);--wpst-nav-mobile-cta-bg:#30363d;--wps-mobile-social-bg:#f3f2ef;--wps-mobile-social-border:#dfddd8;--wps-mobile-panel-padding:21px;--wps-mobile-menu-radius:7px;--wps-mobile-menu-item-height:58px;--wps-mobile-menu-gap:5px;--wps-mobile-nav-icon-box:38px;--wps-mobile-icon-radius:7px;--wps-mobile-cta-radius:7px;--wps-mobile-cta-height:66px;--wps-mobile-panel-width:395px}
.wps-mobile-drawer.wpst-mobile-design--global{--wps-mobile-active-shadow:none}.wps-mobile-drawer.wpst-mobile-preset--creative-gradient{--wps-mobile-active-shadow:0 7px 18px rgba(92,55,210,.14)}
.wps-mobile-drawer.wpst-mobile-design--global{width:min(92vw,var(--wps-mobile-panel-width))!important;max-width:var(--wps-mobile-panel-width)!important;padding:max(var(--wps-mobile-panel-padding),env(safe-area-inset-top)) var(--wps-mobile-panel-padding) max(var(--wps-mobile-panel-padding),env(safe-area-inset-bottom))!important;background:var(--wps-mobile-menu-bg)!important;color:var(--wps-mobile-menu-text)!important}
.wps-mobile-drawer.wpst-mobile-design--global .wps-mobile-drawer__branding{justify-content:var(--wps-mobile-logo-align)}.wps-mobile-drawer.wpst-mobile-design--global .wpst-nav-close{background:var(--wps-mobile-menu-close-bg)!important;color:var(--wps-mobile-menu-close-color)!important;border-color:var(--wps-mobile-nav-border)!important}.wps-mobile-drawer.wpst-mobile-design--global .wpst-navigation-menu{gap:var(--wps-mobile-menu-gap)!important}
.wps-mobile-drawer.wpst-mobile-design--global .wpst-navigation-menu li>a.wps-mobile-drawer__item{min-height:var(--wps-mobile-menu-item-height)!important;border-color:var(--wps-mobile-nav-border)!important;border-radius:var(--wps-mobile-menu-radius)!important;background:var(--wps-mobile-nav-surface)!important;color:var(--wps-mobile-menu-text)!important;font-size:var(--wps-mobile-text-size)!important;font-weight:var(--wps-mobile-text-weight)!important}.wps-mobile-drawer.wpst-mobile-design--global .wps-mobile-drawer__icon{background:var(--wps-mobile-icon-bg)!important;color:var(--wps-mobile-icon-color)!important}.wps-mobile-drawer.wpst-mobile-design--global .wpst-nav-subtoggle,.wps-mobile-drawer.wpst-mobile-design--global .sub-menu li>a.wps-mobile-drawer__item{color:var(--wps-mobile-nav-muted)!important}
.wps-mobile-drawer.wpst-mobile-design--global .wpst-navigation-menu li:is(.current-menu-item,.current_page_item,.current-menu-ancestor,.current-menu-parent,.current_page_ancestor)>a.wps-mobile-drawer__item{background:var(--wps-mobile-menu-active-bg)!important;color:var(--wps-mobile-menu-active-color)!important;box-shadow:var(--wps-mobile-active-shadow,none)!important}.wps-mobile-drawer.wpst-mobile-design--global .wpst-nav-mobile-cta{min-height:var(--wps-mobile-cta-height)!important;border-radius:var(--wps-mobile-cta-radius)!important;background:var(--wpst-nav-mobile-cta-bg)!important}.wps-mobile-drawer.wpst-mobile-design--global .wps-mobile-drawer__socials a{border-color:var(--wps-mobile-social-border)!important;background:var(--wps-mobile-social-bg)!important;color:var(--wps-mobile-menu-text)!important}
@media(prefers-reduced-motion:reduce){.wps-mobile-drawer.wpst-mobile-design--global,.wps-mobile-drawer.wpst-mobile-design--global *{transition-duration:.01ms!important;animation-duration:.01ms!important}}
@media(min-width:1025px){.wpst-nav-mobile-panel{display:none!important;visibility:hidden!important;pointer-events:none!important}.wpst-nav-desktop-host{display:block}}

/* Modern drawer: isolated from desktop navigation and the legacy builder drawer. */
.wps-mobile-drawer.wpst-drawer-modern.wpst-mobile-preset--corporate-modern {
 --wps-mobile-menu-bg:#fff;--wps-mobile-nav-surface:transparent;--wps-mobile-nav-border:transparent;
 --wps-mobile-menu-text:#172033;--wps-mobile-nav-muted:#64748b;--wps-mobile-menu-hover-text:#1d4ed8;
 --wps-mobile-menu-submenu-text:#475569;--wps-mobile-menu-active-bg:#eff6ff;--wps-mobile-menu-active-color:#2563eb;
 --wps-mobile-icon-bg:#f1f5f9;--wps-mobile-icon-color:#64748b;--wps-mobile-icon-active-color:#2563eb;--wps-mobile-icon-active-bg:#dbeafe;
 --wps-mobile-menu-close-bg:#f1f5f9;--wps-mobile-menu-close-color:#334155;--wps-mobile-nav-search-bg:#f1f5f9;
 --wpst-nav-mobile-cta-bg:#2563eb;--wps-mobile-social-bg:#f8fafc;--wps-mobile-social-border:#e2e8f0;
 --wps-mobile-social-color:#475569;--wps-mobile-social-hover-color:#2563eb;--wps-mobile-social-hover-bg:#eff6ff;
 --wps-mobile-panel-padding:20px;--wps-mobile-menu-radius:14px;--wps-mobile-menu-item-height:52px;
 --wps-mobile-menu-gap:6px;--wps-mobile-nav-icon-box:36px;--wps-mobile-icon-radius:10px;
 --wps-mobile-cta-radius:15px;--wps-mobile-cta-height:56px;--wps-mobile-panel-width:390px;
}
@media(max-width:1024px){
 .wpst-nav-mobile-hamburger .wpst-navigation>.wpst-drawer-modern {
  box-sizing:border-box;width:min(var(--wpst-nav-mobile-width,88vw),96vw)!important;
  max-width:var(--wps-mobile-menu-max-width,var(--wps-mobile-panel-width,390px))!important;
  height:100vh!important;max-height:100vh!important;height:100dvh!important;max-height:100dvh!important;
  overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;
  box-shadow:12px 0 48px rgba(15,23,42,.16);border:0;opacity:0;visibility:hidden;pointer-events:none;
  transition:transform .32s cubic-bezier(.22,.8,.2,1),opacity .32s ease,visibility .32s!important;
 }
 .wpst-drawer-modern::-webkit-scrollbar{display:none}
 .wpst-nav-drawer-left .wpst-navigation>.wpst-drawer-modern{left:0;right:auto;transform:translateX(-100%);border-radius:0 var(--wpst-drawer-radius,24px) var(--wpst-drawer-radius,24px) 0}
 .wpst-nav-drawer-right .wpst-navigation>.wpst-drawer-modern{right:0;left:auto;transform:translateX(100%);border-radius:var(--wpst-drawer-radius,24px) 0 0 var(--wpst-drawer-radius,24px)}
 .wpst-nav-mobile-hamburger .wpst-navigation.is-open>.wpst-drawer-modern{transform:translateX(0)!important;opacity:1;visibility:visible;pointer-events:auto}
 .wpst-nav-mobile-hamburger .wpst-navigation>.wpst-nav-overlay{background:var(--wpst-nav-overlay-bg,rgba(15,23,42,.55));backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:opacity .32s ease,visibility .32s}
 .wpst-nav-mobile-hamburger .wpst-navigation.is-open>.wpst-nav-overlay{opacity:var(--wpst-overlay-opacity,1)}
 .wpst-drawer-modern>*{flex-shrink:0;min-width:0}
 .wps-mobile-drawer.wpst-drawer-modern .wps-mobile-drawer__branding{flex-direction:column;align-items:flex-start;gap:6px}
 .wpst-drawer-modern .wpst-mobile-drawer__subtitle{font-size:12px;color:var(--wps-mobile-nav-muted);line-height:1.5}
 .wps-mobile-drawer.wpst-drawer-modern .wpst-nav-close{flex:0 0 44px;width:44px;height:44px;border-radius:50%;margin-left:0}
 .wpst-drawer-modern .wpst-mobile-drawer__search{margin:22px 0 8px;height:52px}
 .wpst-drawer-modern .wpst-mobile-drawer__search>span{color:var(--wps-mobile-nav-muted);border-color:currentColor}
 .wpst-drawer-modern .wps-mobile-drawer__search-input{padding-right:48px;background:var(--wps-mobile-nav-search-bg,var(--wps-mobile-nav-surface));color:var(--wps-mobile-menu-text);border:1px solid var(--wps-mobile-social-border,#e2e8f0)}
 .wpst-drawer-modern .wps-mobile-drawer__search-input::placeholder{color:var(--wps-mobile-nav-muted)}
 .wpst-drawer-modern .wpst-mobile-drawer__search button{position:absolute;right:4px;top:4px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:12px;background:transparent;color:var(--wps-mobile-menu-active-color);cursor:pointer}
 .wpst-drawer-modern .wpst-nav-menu-host{padding:12px 0!important;flex:1 0 auto}
 .wpst-drawer-modern .wpst-navigation-menu li{min-width:0}
 .wpst-drawer-modern .wpst-navigation-menu li>a{overflow-wrap:anywhere;white-space:normal!important;text-decoration:none!important}
 .wps-mobile-drawer.wpst-drawer-modern .wpst-navigation-menu li>a.wps-mobile-drawer__item{min-height:var(--wps-mobile-menu-item-height,52px)!important;border-radius:var(--wpst-widget-item-radius,var(--wps-mobile-menu-radius,14px))!important}
 .wps-mobile-drawer.wpst-drawer-modern .wpst-navigation-menu{gap:var(--wpst-widget-item-gap,var(--wps-mobile-menu-gap,6px))!important}
 .wps-mobile-drawer.wpst-drawer-modern .wpst-navigation-menu li>a:hover{background:var(--wpst-nav-mobile-hover,#f1f5f9)!important}
 .wpst-nav-mobile-hamburger .wpst-drawer-modern .wpst-mobile-drawer__submenu{display:none!important;max-height:none!important;padding:0 0 0 var(--wpst-submenu-indent,10px)!important;margin:6px 0 6px 8px!important;width:calc(100% - 8px)!important;border-left:1px solid var(--wps-mobile-social-border,#e2e8f0)!important}
 .wpst-nav-mobile-hamburger .wpst-drawer-modern .is-sub-open>.wpst-mobile-drawer__submenu{display:block!important}
 .wps-mobile-drawer.wpst-drawer-modern .wpst-navigation-menu li:is(.current-menu-item,.current_page_item,.current-menu-ancestor,.current-menu-parent,.current_page_ancestor)>a .wps-mobile-drawer__icon{color:var(--wps-mobile-icon-active-color,var(--wps-mobile-menu-active-color))!important;background:var(--wps-mobile-icon-active-bg,var(--wps-mobile-menu-active-bg))!important}
 .wpst-drawer-modern .wpst-nav-subtoggle{min-width:44px;min-height:44px}
 .wps-mobile-drawer.wpst-drawer-modern .wpst-nav-mobile-footer{margin-top:20px}
 .wps-mobile-drawer.wpst-drawer-modern .wpst-nav-mobile-cta{min-height:var(--wps-mobile-cta-height,56px)!important;padding:10px 14px;background:var(--wpst-local-button-bg,var(--wpst-nav-mobile-cta-bg))!important;border-radius:var(--wpst-local-button-radius,var(--wps-mobile-cta-radius,15px))!important}
 .wpst-drawer-modern .wps-mobile-drawer__cta-icon{width:32px;height:32px;flex-basis:32px;background:transparent}
 .wpst-drawer-modern .wpst-nav-mobile-cta>i{background:transparent!important}
 .wpst-drawer-modern .wpst-mobile-drawer__secondary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;margin-top:10px;padding:10px 16px;border:1px solid #2563eb;border-radius:15px;color:#2563eb;background:transparent;text-decoration:none;font-weight:600;overflow-wrap:anywhere}
 .wpst-drawer-modern .wpst-mobile-drawer__footer{margin-top:24px;padding-top:20px;border-top:1px solid var(--wps-mobile-social-border,#e2e8f0);font-size:14px;line-height:1.6;color:var(--wps-mobile-menu-text);overflow-wrap:anywhere}
 .wpst-drawer-modern .wpst-mobile-drawer__footer p{margin:4px 0 10px;color:var(--wps-mobile-nav-muted)}
 .wpst-drawer-modern .wpst-mobile-drawer__footer a{display:flex;align-items:center;min-height:44px;color:inherit;text-decoration:none}
 .wpst-drawer-modern .wpst-mobile-drawer__footer-logo{display:block;margin-top:20px}
 .wpst-drawer-modern .wpst-mobile-drawer__footer-logo img{max-width:150px;max-height:54px;object-fit:contain}
 .wpst-drawer-modern :is(a,button,input):focus-visible{outline:3px solid #60a5fa!important;outline-offset:2px}
}
@media(prefers-reduced-motion:reduce){.wpst-navigation>.wpst-drawer-modern,.wpst-drawer-modern *,.wpst-navigation>.wpst-nav-overlay{transition-duration:.01ms!important;animation-duration:.01ms!important}}
@media(max-width:1024px){
 .wps-mobile-drawer.wpst-drawer-modern .wpst-nav-close svg{width:22px;height:22px;fill:none;stroke:currentColor}
 .wpst-nav-mobile-hamburger .wpst-navigation>.wpst-drawer-modern{background:var(--wpst-local-surface,var(--wps-mobile-menu-bg))!important;color:var(--wpst-local-text,var(--wps-mobile-menu-text))!important}
 .wps-mobile-drawer.wpst-drawer-modern .wpst-navigation-menu li:not(.current-menu-item):not(.current_page_item):not(.current-menu-ancestor):not(.current-menu-parent):not(.current_page_ancestor)>a.wps-mobile-drawer__item{color:var(--wpst-local-text,var(--wps-mobile-menu-text))!important}
}
@media(max-width:1024px){
 .wps-mobile-drawer.wpst-drawer-modern .wps-mobile-drawer__icon{width:var(--wpst-widget-icon-box,var(--wps-mobile-nav-icon-box));height:var(--wpst-widget-icon-box,var(--wps-mobile-nav-icon-box));flex-basis:var(--wpst-widget-icon-box,var(--wps-mobile-nav-icon-box))}
}
@media(prefers-reduced-motion:reduce){
 .wpst-nav-mobile-hamburger .wpst-navigation>.wpst-drawer-modern,
 .wpst-nav-mobile-hamburger .wpst-navigation>.wpst-nav-overlay{transition-duration:.01ms!important}
}

/* Native top layer: viewport geometry without changing wpadminbar or the header. */
.wpst-navigation > dialog.wpst-nav-viewport-layer {
 position:fixed;inset:0;margin:0;padding:0;border:0;border-radius:0;
 width:100vw;max-width:none;height:100vh;height:100dvh;max-height:none;
 overflow:hidden;background:transparent;box-shadow:none;color:inherit;
 transform:none;filter:none;perspective:none;contain:none;outline:0;
}
.wpst-navigation > dialog.wpst-nav-viewport-layer:not([open]){display:none}
.wpst-nav-viewport-layer::backdrop{background:transparent}
.wpst-nav-viewport-layer > .wpst-nav-mobile-panel{top:0;bottom:0}
.wpst-nav-viewport-layer .wpst-nav-mobile-head{position:relative;overflow:visible}


/* ==========================================================
   v3.3.14 · Hero Slider 2.0 · Navigation visibility & dot alignment
   ========================================================== */
.wpst-ew-hero-slider{
  --wpst-hero-content-left:70px;
  --wpst-hero-content-right:70px;
  --wpst-hero-content-offset-x:0px;
  --wpst-hero-content-offset-y:0px;
  --wpst-hero-dots-offset-x:0px;
}
.wpst-ew-hero-slider :is(.wpst-ew-slider-prev,.wpst-ew-slider-next){
  overflow:visible!important;
}
.wpst-ew-hero-slider :is(.wpst-ew-slider-prev,.wpst-ew-slider-next)>svg{
  display:block!important;
  width:20px!important;
  height:20px!important;
  max-width:none!important;
  max-height:none!important;
  overflow:visible!important;
  flex:0 0 20px!important;
}
.wpst-ew-hero-slider :is(.wpst-ew-slider-prev,.wpst-ew-slider-next)>svg *{
  vector-effect:non-scaling-stroke;
}
.wpst-hero-dots-align-content .wpst-ew-slider-dots{
  left:calc(var(--wpst-hero-content-left,70px) + var(--wpst-hero-content-offset-x,0px) + var(--wpst-hero-dots-offset-x,0px))!important;
  right:auto!important;
  transform:none!important;
}
.wpst-hero-dots-align-left .wpst-ew-slider-dots{
  left:calc(18px + var(--wpst-hero-dots-offset-x,0px))!important;
  right:auto!important;
  transform:none!important;
}
.wpst-hero-dots-align-center .wpst-ew-slider-dots{
  left:calc(50% + var(--wpst-hero-dots-offset-x,0px))!important;
  right:auto!important;
  transform:translateX(-50%)!important;
}
.wpst-hero-dots-align-right .wpst-ew-slider-dots{
  left:auto!important;
  right:calc(18px - var(--wpst-hero-dots-offset-x,0px))!important;
  transform:none!important;
}
.wpst-hero-dots-align-custom .wpst-ew-slider-dots{
  left:var(--wpst-hero-dots-offset-x,0px)!important;
  right:auto!important;
  transform:none!important;
}
.wpst-ew-slider-dots button{
  width:var(--wpst-hero-dot-size,8px)!important;
  height:var(--wpst-hero-dot-size,8px)!important;
  min-width:var(--wpst-hero-dot-size,8px)!important;
  min-height:var(--wpst-hero-dot-size,8px)!important;
}
.wpst-ew-slider-dots button.is-active{
  width:var(--wpst-hero-dot-active-width,28px)!important;
  min-width:var(--wpst-hero-dot-active-width,28px)!important;
}
@media(max-width:767px){
  .wpst-hero-dots-align-content .wpst-ew-slider-dots{
    left:calc(var(--wpst-hero-content-left,18px) + var(--wpst-hero-content-offset-x,0px) + var(--wpst-hero-dots-offset-x,0px))!important;
  }
}

/* v3.3.16 · Testimonials 2.0 local button contract
   The shared local button controls intentionally exclude generic carousel
   chrome. Testimonials explicitly opts its own prev/next controls in, so
   button text/background/hover values are reflected in editor + frontend. */
.elementor-widget-wpsoft-testimonial-slider .wpst-ew-testimonial-controls button{
  color:var(--wpst-local-button-color,var(--wpst-control-color,var(--testimonial-text,#0f172a)))!important;
  background:var(--wpst-local-button-bg,var(--wpst-control-bg,rgba(15,23,42,.08)))!important;
  border-color:var(--wpst-local-button-bg,var(--wpst-control-border,rgba(148,163,184,.28)))!important;
}
.elementor-widget-wpsoft-testimonial-slider .wpst-ew-testimonial-controls button :is(svg,path){
  color:inherit!important;
}
.elementor-widget-wpsoft-testimonial-slider .wpst-ew-testimonial-controls button:is(:hover,:focus-visible){
  color:var(--wpst-local-button-hover-color,var(--wpst-local-button-color,var(--wpst-control-color,var(--testimonial-text,#0f172a))))!important;
  background:var(--wpst-local-button-hover-bg,var(--wpst-local-button-bg,var(--wpst-control-bg,rgba(15,23,42,.12))))!important;
}



/* ==========================================================
   v3.3.19 · Hero Slider 2.0 · Button row layout
   Primary and secondary CTA buttons share one responsive action row.
   ========================================================== */
.wpst-ew-hero-slider .wpst-hero-actions{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:var(--wpst-hero-content-align,start);
  flex-wrap:wrap;
  gap:14px;
  margin-top:26px;
}
.wpst-ew-hero-slider .wpst-hero-actions>a{
  flex:0 0 auto;
  width:auto;
  margin-top:0!important;
  margin-left:0;
  margin-right:0;
  margin-bottom:0;
}
.wpst-hero-content-align-center .wpst-ew-hero-slider .wpst-hero-actions{
  justify-content:center!important;
}
.wpst-hero-content-align-end .wpst-ew-hero-slider .wpst-hero-actions{
  justify-content:flex-end!important;
}
.wpst-hero-content-align-start .wpst-ew-hero-slider .wpst-hero-actions{
  justify-content:flex-start!important;
}
@media(max-width:767px){
  .wpst-ew-hero-slider .wpst-hero-actions{
    width:100%;
    row-gap:10px;
  }
}


/* ==========================================================
   v3.3.20 · Hero Slider 2.0 · Modern pagination
   ========================================================== */
.elementor-widget-wpsoft-hero-slider.wpst-hero-dots-style-modern .wpst-ew-slider-dots,
.wpst-hero-dots-style-modern .wpst-ew-slider-dots{
  box-sizing:border-box!important;
  display:inline-flex!important;
  width:max-content!important;
  min-width:0!important;
  max-width:calc(100% - 36px)!important;
  align-items:center!important;
  justify-content:center!important;
  padding:var(--wpst-hero-dots-padding,5px 8px)!important;
  border:1px solid var(--wpst-hero-dots-border,rgba(255,255,255,.14))!important;
  border-radius:var(--wpst-hero-dots-radius,999px)!important;
  background:var(--wpst-hero-dots-bg,rgba(7,15,31,.48))!important;
  box-shadow:0 12px 30px rgba(2,6,23,.22),inset 0 1px 0 rgba(255,255,255,.06)!important;
  -webkit-backdrop-filter:blur(var(--wpst-hero-dots-blur,16px)) saturate(135%)!important;
  backdrop-filter:blur(var(--wpst-hero-dots-blur,16px)) saturate(135%)!important;
  isolation:isolate;
}
.elementor-widget-wpsoft-hero-slider.wpst-hero-dots-style-modern .wpst-ew-slider-dots button,
.wpst-hero-dots-style-modern .wpst-ew-slider-dots button{
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  width:calc(var(--wpst-hero-dot-size,8px) + 14px)!important;
  min-width:calc(var(--wpst-hero-dot-size,8px) + 14px)!important;
  height:24px!important;
  min-height:24px!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  color:transparent!important;
  opacity:1!important;
  transform:none!important;
  box-shadow:none!important;
  overflow:visible!important;
  cursor:pointer;
  transition:width .25s cubic-bezier(.2,.8,.2,1),transform .2s ease!important;
}
.elementor-widget-wpsoft-hero-slider.wpst-hero-dots-style-modern .wpst-ew-slider-dots button::after,
.wpst-hero-dots-style-modern .wpst-ew-slider-dots button::after{
  content:""!important;
  display:block!important;
  width:var(--wpst-hero-dot-size,8px)!important;
  height:var(--wpst-hero-dot-size,8px)!important;
  margin:0!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:999px!important;
  background:var(--wpst-slider-dot,rgba(255,255,255,.36))!important;
  opacity:.7!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12)!important;
  transform:scale(1)!important;
  transition:width .25s cubic-bezier(.2,.8,.2,1),background-color .2s ease,opacity .2s ease,transform .2s ease,box-shadow .2s ease!important;
}
.elementor-widget-wpsoft-hero-slider.wpst-hero-dots-style-modern .wpst-ew-slider-dots button:hover::after,
.wpst-hero-dots-style-modern .wpst-ew-slider-dots button:hover::after{
  background:var(--wpst-slider-dot-hover,rgba(255,255,255,.78))!important;
  opacity:1!important;
  transform:scale(1.08)!important;
}
.elementor-widget-wpsoft-hero-slider.wpst-hero-dots-style-modern .wpst-ew-slider-dots button.is-active,
.wpst-hero-dots-style-modern .wpst-ew-slider-dots button.is-active{
  width:calc(var(--wpst-hero-dot-active-width,28px) + 12px)!important;
  min-width:calc(var(--wpst-hero-dot-active-width,28px) + 12px)!important;
  background:transparent!important;
}
.elementor-widget-wpsoft-hero-slider.wpst-hero-dots-style-modern .wpst-ew-slider-dots button.is-active::after,
.wpst-hero-dots-style-modern .wpst-ew-slider-dots button.is-active::after{
  width:var(--wpst-hero-dot-active-width,28px)!important;
  height:var(--wpst-hero-dot-size,8px)!important;
  background:var(--wpst-slider-dot-active,#fff)!important;
  opacity:1!important;
  box-shadow:0 0 0 3px rgba(255,255,255,.08),0 4px 12px rgba(2,6,23,.18)!important;
  transform:none!important;
}
.elementor-widget-wpsoft-hero-slider.wpst-hero-dots-style-modern .wpst-ew-slider-dots button:focus-visible,
.wpst-hero-dots-style-modern .wpst-ew-slider-dots button:focus-visible{
  outline:2px solid rgba(255,255,255,.86)!important;
  outline-offset:1px!important;
}
.elementor-widget-wpsoft-hero-slider.wpst-hero-dots-style-classic .wpst-ew-slider-dots,
.wpst-hero-dots-style-classic .wpst-ew-slider-dots{
  width:max-content!important;
  min-width:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
.elementor-widget-wpsoft-hero-slider.wpst-hero-dots-style-classic .wpst-ew-slider-dots button,
.wpst-hero-dots-style-classic .wpst-ew-slider-dots button{
  border:0!important;
  box-shadow:none!important;
}
@media(max-width:767px){
  .elementor-widget-wpsoft-hero-slider.wpst-hero-dots-style-modern .wpst-ew-slider-dots,
  .wpst-hero-dots-style-modern .wpst-ew-slider-dots{
    max-width:calc(100% - 24px)!important;
    padding:var(--wpst-hero-dots-padding,5px 8px)!important;
  }
}

/* v3.3.20 · Hero dot spacing/vertical position variables keep controls template-safe. */
.elementor-widget-wpsoft-hero-slider .wpst-ew-slider-dots{
  bottom:var(--wpst-hero-dots-bottom,18px)!important;
  gap:var(--wpst-hero-dots-gap,2px)!important;
}


/* ==========================================================
   v3.3.21 · Testimonials 2.0 · Single navigation arrow
   The shared signature layer draws a CSS chevron with ::before, while
   Testimonials already renders the canonical WPSoft SVG. Suppress only
   the duplicate pseudo-chevron for this widget and keep the SVG icon.
   ========================================================== */
.elementor-widget-wpsoft-testimonial-slider .wpst-ew-testimonial-controls > button::before{
  content:none!important;
  display:none!important;
}
.elementor-widget-wpsoft-testimonial-slider .wpst-ew-testimonial-controls > button > svg{
  display:block!important;
  flex:0 0 auto;
}


/* ==========================================================
   v3.3.26 · Footer Links 2.0 · Horizontal baseline alignment
   Horizontal items now share one vertical axis and identical link boxes.
   Responsive nav classes are emitted by the widget render method, avoiding
   dependence on Elementor inline-style detection.
   ========================================================== */
.wpst-ew-footer-links.wpst-footer-links-layout-desktop-flex ul{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  align-content:center!important;
}
.wpst-ew-footer-links.wpst-footer-links-layout-desktop-flex li{
  display:flex;
  align-items:center!important;
  align-self:center!important;
  margin-top:0!important;
  margin-bottom:0!important;
}
.wpst-ew-footer-links.wpst-footer-links-layout-desktop-flex li>a{
  display:inline-flex!important;
  align-items:center!important;
  align-self:center!important;
  width:auto!important;
  margin-top:0!important;
  margin-bottom:0!important;
  line-height:1.25;
}
.wpst-ew-footer-links.wpst-footer-links-layout-desktop-flex li>a>span{
  flex:0 0 auto;
  line-height:inherit;
}

@media(max-width:1024px){
  .wpst-ew-footer-links.wpst-footer-links-layout-tablet-flex ul{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    align-content:center!important;
  }
  .wpst-ew-footer-links.wpst-footer-links-layout-tablet-flex li{
    display:flex;
    align-items:center!important;
    align-self:center!important;
    margin-top:0!important;
    margin-bottom:0!important;
  }
  .wpst-ew-footer-links.wpst-footer-links-layout-tablet-flex li>a{
    display:inline-flex!important;
    align-items:center!important;
    align-self:center!important;
    width:auto!important;
    margin-top:0!important;
    margin-bottom:0!important;
    line-height:1.25;
  }
  .wpst-ew-footer-links.wpst-footer-links-layout-tablet-flex li>a>span{
    flex:0 0 auto;
    line-height:inherit;
  }
}

@media(max-width:767px){
  .wpst-ew-footer-links.wpst-footer-links-layout-mobile-flex ul{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    align-content:center!important;
  }
  .wpst-ew-footer-links.wpst-footer-links-layout-mobile-flex li{
    display:flex;
    align-items:center!important;
    align-self:center!important;
    margin-top:0!important;
    margin-bottom:0!important;
  }
  .wpst-ew-footer-links.wpst-footer-links-layout-mobile-flex li>a{
    display:inline-flex!important;
    align-items:center!important;
    align-self:center!important;
    width:auto!important;
    margin-top:0!important;
    margin-bottom:0!important;
    line-height:1.25;
  }
  .wpst-ew-footer-links.wpst-footer-links-layout-mobile-flex li>a>span{
    flex:0 0 auto;
    line-height:inherit;
  }
}


/* ==========================================================
   v3.3.33 · Advanced Button 3.0 custom color authority
   Custom / Existing Settings must never inherit a blue border when a
   local background color is selected. Explicit local border controls
   remain the final authority.
   ========================================================== */
.elementor-widget-wpsoft-advanced-button.wpst-button-type-custom > .elementor-widget-container .wpst-adv-button{
  --ab-bg:var(--wpst-local-button-bg,var(--wpst-button-bg,#2563eb));
  --ab-border:var(--wpst-local-button-border,var(--wpst-local-button-bg,var(--wpst-button-bg,#2563eb)))!important;
  border-color:var(--wpst-local-button-border,var(--wpst-local-button-bg,var(--wpst-button-bg,#2563eb)))!important;
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-custom > .elementor-widget-container .wpst-adv-button:is(:hover,:focus-visible){
  --ab-hover-border:var(--wpst-local-button-hover-border,var(--wpst-local-button-hover-bg,var(--wpst-local-button-bg,var(--wpst-button-hover-bg,#1d4ed8))))!important;
  border-color:var(--wpst-local-button-hover-border,var(--wpst-local-button-hover-bg,var(--wpst-local-button-bg,var(--wpst-button-hover-bg,#1d4ed8))))!important;
}
.elementor-widget-wpsoft-advanced-button.wpst-button-type-custom > .elementor-widget-container .wpst-adv-button:focus-visible{
  outline-color:color-mix(in srgb,var(--wpst-local-button-hover-bg,var(--wpst-local-button-bg,var(--wpst-button-hover-bg,#1d4ed8))) 35%,transparent)!important;
}
/* Structure variants that intentionally have no visible border keep it that way
   unless a local Border Rengi was explicitly selected. */
.elementor-widget-wpsoft-advanced-button.wpst-button-type-custom:is(.wpst-button-style-soft,.wpst-button-style-ghost,.wpst-button-style-gradient) > .elementor-widget-container .wpst-adv-button{
  border-color:var(--wpst-local-button-border,transparent)!important;
}


/* ==========================================================
   v3.3.34 · Advanced Button 3.0 · Elementor row alignment
   When multiple Advanced Button widgets sit in the same Elementor row,
   their widget containers use a stable flex box instead of inline/baseline
   positioning. This prevents one button from appearing higher/lower while
   editing, while preserving responsive left/center/right alignment.
   ========================================================== */
.elementor-widget-wpsoft-advanced-button > .elementor-widget-container{
  display:flex!important;
  align-items:center!important;
  width:100%;
  height:100%;
  min-height:inherit;
  line-height:normal;
}
.elementor-widget-wpsoft-advanced-button > .elementor-widget-container > .wpst-adv-button{
  flex:0 0 auto;
  margin-top:0!important;
  margin-bottom:0!important;
  vertical-align:middle;
}
/* Elementor editor hover/selection must not move one CTA out of line.
   Frontend hover motion remains unchanged. */
.elementor-editor-active .elementor-widget-wpsoft-advanced-button .wpst-adv-button.effect-lift:hover,
.elementor-editor-preview .elementor-widget-wpsoft-advanced-button .wpst-adv-button.effect-lift:hover{
  transform:none!important;
}


/* ==========================================================
   v3.3.35 · Advanced Button 3.0 · duplicate / inline flow fix
   Elementor can keep each duplicated widget at 100% width even when the
   parent is a horizontal/wrapping container. That makes the new copy wrap
   below instead of sitting directly beside the original. Keep the widget
   itself content-sized unless Tam Genişlik is explicitly enabled.
   ========================================================== */
.elementor-widget-wpsoft-advanced-button:not(.wpst-button-full-yes){
  --width:auto!important;
  --flex-grow:0!important;
  width:auto!important;
  max-width:100%!important;
  flex:0 0 auto!important;
  display:inline-flex;
}
.elementor-widget-wpsoft-advanced-button:not(.wpst-button-full-yes) > .elementor-widget-container{
  width:auto!important;
  max-width:100%;
  height:auto!important;
  flex:0 0 auto;
}
.elementor-widget-wpsoft-advanced-button.wpst-button-full-yes{
  --width:100%!important;
  width:100%!important;
  max-width:100%!important;
  flex:1 1 100%!important;
}
.elementor-widget-wpsoft-advanced-button.wpst-button-full-yes > .elementor-widget-container{
  width:100%!important;
}
/* Editor-specific default width variables can be injected inline; keep the
   same content-sized behavior while dragging/duplicating in Elementor. */
.elementor-editor-active .elementor-widget-wpsoft-advanced-button:not(.wpst-button-full-yes),
.elementor-editor-preview .elementor-widget-wpsoft-advanced-button:not(.wpst-button-full-yes){
  --container-widget-width:auto!important;
  --container-widget-flex-grow:0!important;
}

/* ==========================================================
   v3.3.43 · Footer Links 2.0 · Content-width hover/click area
   ========================================================== */
.elementor-widget-wpsoft-footer-links .wpst-ew-footer-links li{
  min-width:0;
}
.elementor-widget-wpsoft-footer-links .wpst-ew-footer-links a{
  display:inline-flex!important;
  width:fit-content!important;
  max-width:100%;
  align-self:flex-start;
}
.elementor-widget-wpsoft-footer-links .wpst-ew-footer-links a>span{
  flex:0 1 auto;
  min-width:0;
}
/* Keep content-width behavior on phones too; the older mobile safeguard
   made every link 100% wide and caused full-row hover backgrounds. */
@media(max-width:767px){
  .elementor-widget-wpsoft-footer-links .wpst-ew-footer-links a{
    width:fit-content!important;
    max-width:100%;
  }
}

/* ==========================================================
   v3.3.55 · Hero Slider 2.0 · Height/background fill fix
   Height control grows the slider wrapper. Keep the active slide
   absolutely pinned to that wrapper so its background image/overlay
   always cover the full selected height instead of exposing the
   slider fallback background below the image.
   ========================================================== */
.elementor-widget-wpsoft-hero-slider .wpst-ew-hero-slider > .wpst-ew-slider-track,
.elementor-widget-wpsoft-hero-slider .wpst-ew-hero-slider > .wpst-ew-slider-track > .wpst-ew-hero-slide,
.elementor-widget-wpsoft-hero-slider .wpst-ew-hero-slider > .wpst-ew-slider-track > .wpst-ew-hero-slide.is-active{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
}
.elementor-widget-wpsoft-hero-slider .wpst-ew-hero-slider > .wpst-ew-slider-track > .wpst-ew-hero-slide{
  background-size:cover!important;
  background-position:var(--wpst-hero-bg-x,50%) var(--wpst-hero-bg-y,50%)!important;
}


/* ==========================================================
   v3.3.57 · Desktop dropdown hover continuity (final)
   Keep a real pointer/focus state while the cursor crosses the visual gap.
   ========================================================== */
@media (min-width:768px){
  /* Previous rules could combine top offset + margin-top and create a gap
     larger than the hover bridge. Keep only one visual offset. */
  .elementor-widget-wpsoft-navigation .wpst-navigation .sub-menu{
    margin-top:0!important;
  }
  .elementor-widget-wpsoft-navigation .wpst-navigation-menu>li>.sub-menu{
    top:calc(100% + 6px)!important;
  }

  /* A deliberately oversized invisible bridge makes diagonal mouse travel safe. */
  .elementor-widget-wpsoft-navigation .wpst-navigation-menu .sub-menu::before{
    content:"";
    position:absolute;
    left:-10px;
    right:-10px;
    top:-20px;
    height:20px;
    background:transparent;
    pointer-events:auto;
  }
  .elementor-widget-wpsoft-navigation .wpst-navigation-menu .sub-menu .sub-menu::before{
    left:-18px;
    right:auto;
    top:-8px;
    bottom:-8px;
    width:18px;
    height:auto;
  }

  /* JS keeps this class briefly during the physical gap between trigger/panel. */
  .wpst-navigation li.is-wpst-dropdown-open>.sub-menu,
  .wpst-navigation li.is-wpst-dropdown-open>.children{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0) scale(1)!important;
  }
}

/* ==========================================================
   v3.3.78 · Card Carousel 2.0 modern card + per-card action
   ========================================================== */
.wpst-ew-card-carousel-track>article.wpst-card-carousel-card{
  --wpst-card-carousel-bg:#fff;
  --wpst-card-carousel-border:#e5e7eb;
  --wpst-card-carousel-action:var(--wpst-primary,#2563eb);
  display:flex;
  flex-direction:column;
  height:auto;
  border-color:var(--wpst-card-carousel-border);
  background:var(--wpst-card-carousel-bg);
  box-shadow:0 8px 28px rgba(15,23,42,.055);
}
.wpst-card-carousel-card .wpst-ew-card-media{
  margin:10px 10px 0;
  border-radius:calc(var(--wpst-radius-lg,18px) - 4px);
  background:linear-gradient(135deg,#f1f5f9,#e2e8f0);
}
.wpst-card-carousel-media-link{
  display:block;
  width:100%;
  height:100%;
  color:inherit;
  text-decoration:none!important;
}
.wpst-card-carousel-media-link>span{
  display:grid;
  width:100%;
  height:100%;
  place-items:center;
}
.wpst-card-carousel-card .wpst-ew-card-copy{
  display:flex;
  flex:1;
  flex-direction:column;
  min-width:0;
  padding:20px;
}
.wpst-card-carousel-card .wpst-ew-card-copy h3{
  margin:0 0 8px;
  font-size:clamp(17px,1.4vw,21px);
  line-height:1.2;
  letter-spacing:-.025em;
}
.wpst-card-carousel-title-link{
  color:inherit!important;
  text-decoration:none!important;
  transition:color .2s ease;
}
.wpst-card-carousel-title-link:hover{color:var(--wpst-card-carousel-action)!important}
.wpst-card-carousel-card .wpst-ew-card-copy p{
  margin:0;
  color:var(--wpst-muted,#64748b);
  font-size:14px;
  line-height:1.65;
}
.wpst-card-carousel-action{
  --wpst-card-carousel-action:var(--wpst-primary,#2563eb);
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  align-self:stretch;
  margin-top:auto;
  padding-top:18px;
  color:var(--wpst-card-carousel-action)!important;
  font-size:12px;
  line-height:1;
  font-weight:850;
  text-decoration:none!important;
  transition:color .2s ease,transform .2s ease,background-color .2s ease,border-color .2s ease;
}
.wpst-card-carousel-action svg{width:15px;height:15px;flex:0 0 auto;transition:transform .2s ease}
.wpst-card-carousel-action:hover svg{transform:translate(2px,-2px)}
.wpst-card-carousel-action-soft .wpst-card-carousel-action{
  margin-top:18px;
  padding:11px 13px;
  border-radius:10px;
  background:color-mix(in srgb,var(--wpst-card-carousel-action) 9%,transparent);
}
.wpst-card-carousel-action-pill .wpst-card-carousel-action{
  align-self:flex-start;
  margin-top:18px;
  padding:11px 15px;
  border:1px solid color-mix(in srgb,var(--wpst-card-carousel-action) 28%,transparent);
  border-radius:999px;
}
.wpst-card-carousel-action-pill .wpst-card-carousel-action span{white-space:nowrap}
.wpst-card-carousel-style-elevated .wpst-card-carousel-card:hover{
  border-color:color-mix(in srgb,var(--wpst-card-carousel-action) 24%,var(--wpst-card-carousel-border));
  transform:translateY(-5px);
  box-shadow:0 20px 44px rgba(15,23,42,.11);
}
.wpst-card-carousel-style-soft .wpst-card-carousel-card{
  --wpst-card-carousel-bg:#f8fafc;
  border-color:transparent;
  box-shadow:none;
}
.wpst-card-carousel-style-editorial .wpst-card-carousel-card{
  box-shadow:none;
}
.wpst-card-carousel-style-dark .wpst-card-carousel-card{
  --wpst-card-carousel-bg:#0f172a;
  --wpst-card-carousel-border:#243047;
}
.wpst-card-carousel-style-dark .wpst-card-carousel-title-link{color:#fff!important}
.wpst-card-carousel-style-dark .wpst-card-carousel-action-soft .wpst-card-carousel-action,
.wpst-card-carousel-style-dark.wpst-card-carousel-action-soft .wpst-card-carousel-action{
  background:rgba(255,255,255,.07);
}
@media(max-width:767px){
  .wpst-card-carousel-card .wpst-ew-card-media{margin:8px 8px 0}
  .wpst-card-carousel-card .wpst-ew-card-copy{padding:16px}
  .wpst-card-carousel-action{padding-top:15px}
}

/* ==========================================================
   v3.3.82 · Card Carousel 2.0 · Showcase Modern
   ========================================================== */
.wpst-card-carousel-icon{
  background:var(--wpst-card-icon-bg,#eff6ff);
  color:var(--wpst-card-icon-color,var(--wpst-primary,#2563eb));
}
.wpst-card-carousel-icon svg{width:24px;height:24px}

.wpst-card-carousel-style-showcase .wpst-ew-card-carousel{
  --wpst-card-carousel-radius:22px;
}
.wpst-card-carousel-style-showcase .wpst-ew-card-carousel-track{
  align-items:stretch;
}
.wpst-card-carousel-style-showcase .wpst-ew-card-carousel-track>article.wpst-card-carousel-card{
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--wpst-card-carousel-border,#e5e7eb) 88%,#cbd5e1 12%);
  border-radius:var(--wpst-card-carousel-radius,22px);
  background:var(--wpst-card-carousel-bg,#fff);
  box-shadow:0 14px 38px rgba(15,23,42,.075);
  transform:translateZ(0);
  transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s ease,border-color .28s ease;
}
.wpst-card-carousel-style-showcase .wpst-card-carousel-card .wpst-ew-card-media{
  height:240px;
  margin:0;
  border-radius:0;
  background:#eef4f8;
}
.wpst-card-carousel-style-showcase .wpst-card-carousel-card .wpst-ew-card-media img{
  transform:scale(1.001);
}
.wpst-card-carousel-style-showcase .wpst-card-carousel-card:hover .wpst-ew-card-media img{
  transform:scale(1.045);
}
.wpst-card-carousel-style-showcase .wpst-card-carousel-card .wpst-ew-card-copy{
  position:relative;
  padding:28px 22px 22px;
  background:var(--wpst-card-carousel-bg,#fff);
}
.wpst-card-carousel-style-showcase .wpst-card-carousel-icon{
  position:relative;
  z-index:2;
  width:54px;
  height:54px;
  margin:-54px 0 14px;
  border:4px solid var(--wpst-card-carousel-bg,#fff);
  border-radius:16px;
  background:var(--wpst-card-icon-bg,#eaf8f3);
  color:var(--wpst-card-icon-color,var(--wpst-primary,#2563eb));
  box-shadow:0 9px 24px rgba(15,23,42,.10);
}
.wpst-card-carousel-style-showcase .wpst-card-carousel-card .wpst-ew-card-copy h3{
  margin:0 0 10px;
  color:var(--wpst-heading,#0f172a);
  font-size:clamp(18px,1.45vw,23px);
  line-height:1.14;
  letter-spacing:-.035em;
}
.wpst-card-carousel-style-showcase .wpst-card-carousel-card .wpst-ew-card-copy p{
  margin:0;
  color:var(--wpst-muted,#64748b);
  font-size:14px;
  line-height:1.58;
}
.wpst-card-carousel-style-showcase .wpst-card-carousel-action{
  width:auto;
  align-self:flex-start;
  justify-content:flex-start;
  gap:11px;
  margin-top:auto;
  padding:19px 0 0;
  border:0;
  background:transparent;
  color:var(--wpst-card-carousel-action,var(--wpst-primary,#2563eb))!important;
  font-size:13px;
  font-weight:850;
}
.wpst-card-carousel-style-showcase .wpst-card-carousel-action svg{
  transition:transform .22s ease;
}
.wpst-card-carousel-style-showcase .wpst-card-carousel-action:hover svg{
  transform:translateX(4px);
}
.wpst-card-carousel-style-showcase .wpst-card-carousel-card:hover{
  transform:translateY(-6px);
  border-color:color-mix(in srgb,var(--wpst-card-carousel-action,var(--wpst-primary,#2563eb)) 26%,var(--wpst-card-carousel-border,#e5e7eb));
  box-shadow:0 22px 50px rgba(15,23,42,.12);
}

/* Side arrows like the reference layout. */
.wpst-card-carousel-nav-sides .wpst-ew-card-carousel{
  position:relative;
}
.wpst-card-carousel-nav-sides .wpst-ew-card-nav{
  position:absolute!important;
  z-index:18;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  pointer-events:none;
}
.wpst-card-carousel-nav-sides .wpst-ew-card-nav button{
  position:absolute!important;
  top:var(--wpst-card-nav-y,45%)!important;
  bottom:auto!important;
  width:52px;
  height:52px;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(148,163,184,.22)!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#1d6fa8!important;
  box-shadow:0 12px 30px rgba(15,23,42,.12)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  transform:translateY(-50%)!important;
  pointer-events:auto;
  overflow:hidden!important;
  font-size:0!important;
}
.wpst-card-carousel-nav-sides .wpst-ew-card-nav button::before,
.wpst-card-carousel-nav-sides .wpst-ew-card-nav button::after{
  content:none!important;
  display:none!important;
}
.wpst-card-carousel-nav-sides .wpst-ew-card-nav button>svg{
  display:block!important;
  width:20px!important;
  height:20px!important;
  margin:0!important;
  flex:0 0 auto!important;
  pointer-events:none;
}
.wpst-card-carousel-nav-sides .wpst-ew-card-nav .wpst-ew-card-prev{
  left:calc(var(--wpst-card-nav-offset,12px) * -1)!important;
  right:auto!important;
}
.wpst-card-carousel-nav-sides .wpst-ew-card-nav .wpst-ew-card-next{
  left:auto!important;
  right:calc(var(--wpst-card-nav-offset,12px) * -1)!important;
}
.wpst-card-carousel-nav-sides .wpst-ew-card-nav button:hover{
  border-color:color-mix(in srgb,var(--wpst-primary,#2563eb) 32%,#e2e8f0)!important;
  background:#fff!important;
  color:var(--wpst-primary,#2563eb)!important;
  transform:translateY(-50%) scale(1.05)!important;
}
.wpst-card-carousel-nav-sides .wpst-ew-card-nav button:disabled{
  opacity:.28;
  transform:translateY(-50%)!important;
}
.wpst-card-carousel-nav-bottom .wpst-ew-card-nav{
  position:relative!important;
  left:auto!important;
  bottom:auto!important;
  display:flex!important;
  justify-content:flex-end;
  gap:7px;
  margin-top:14px;
}
.wpst-card-carousel-nav-bottom .wpst-ew-card-nav button{
  position:static!important;
}

/* Modern dots / pill indicator. */
.wpst-carousel-dots{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:18px;
  margin-top:20px;
}
.wpst-carousel-dot{
  width:11px;
  height:8px;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:#d7e0e8!important;
  box-shadow:none!important;
  cursor:pointer;
  transition:width .25s ease,background-color .25s ease,transform .25s ease;
}
.wpst-carousel-dot:hover{transform:scale(1.08)}
.wpst-carousel-dot.is-active{
  width:44px;
  background:var(--wpst-primary,#168df2)!important;
}
.wpst-card-carousel-style-showcase .wpst-carousel-progress{display:none}

@media(max-width:999px){
  .wpst-card-carousel-style-showcase .wpst-card-carousel-card .wpst-ew-card-media{height:220px}
}
@media(max-width:767px){
  .wpst-card-carousel-style-showcase .wpst-card-carousel-card .wpst-ew-card-media{height:210px}
  .wpst-card-carousel-style-showcase .wpst-card-carousel-card .wpst-ew-card-copy{padding:25px 17px 18px}
  .wpst-card-carousel-style-showcase .wpst-card-carousel-icon{margin-top:-48px;border-width:3px;border-radius:14px}
  .wpst-card-carousel-style-showcase .wpst-card-carousel-card .wpst-ew-card-copy h3{font-size:19px}
  .wpst-card-carousel-nav-sides .wpst-ew-card-nav button{
    width:44px;
    height:44px;
  }
  .wpst-carousel-dots{gap:7px;margin-top:15px}
  .wpst-carousel-dot{width:8px;height:7px}
  .wpst-carousel-dot.is-active{width:30px}
}

/* ==========================================================
   v3.3.85 · Card Carousel 2.0 · side-arrow gutter + centered CTA
   ========================================================== */
.wpst-card-carousel-nav-sides .wpst-ew-card-carousel{
  position:relative;
  overflow:visible;
  padding-inline:34px;
}
.wpst-card-carousel-nav-sides .wpst-ew-card-nav .wpst-ew-card-prev{
  left:10px!important;
}
.wpst-card-carousel-nav-sides .wpst-ew-card-nav .wpst-ew-card-next{
  right:10px!important;
}
.wpst-card-carousel-style-showcase .wpst-card-carousel-action{
  display:inline-flex!important;
  align-self:center!important;
  justify-content:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
  gap:8px!important;
}
.wpst-card-carousel-style-showcase .wpst-card-carousel-action span{
  display:inline-block;
}
@media(max-width:1024px){
  .wpst-card-carousel-nav-sides .wpst-ew-card-carousel{
    padding-inline:28px;
  }
  .wpst-card-carousel-nav-sides .wpst-ew-card-nav .wpst-ew-card-prev{
    left:8px!important;
  }
  .wpst-card-carousel-nav-sides .wpst-ew-card-nav .wpst-ew-card-next{
    right:8px!important;
  }
}
@media(max-width:767px){
  .wpst-card-carousel-nav-sides .wpst-ew-card-carousel{
    padding-inline:22px;
  }
  .wpst-card-carousel-nav-sides .wpst-ew-card-nav .wpst-ew-card-prev{
    left:4px!important;
  }
  .wpst-card-carousel-nav-sides .wpst-ew-card-nav .wpst-ew-card-next{
    right:4px!important;
  }
  .wpst-card-carousel-style-showcase .wpst-card-carousel-action{
    gap:7px!important;
  }
}


/* ==========================================================
   v3.3.86 · Card Carousel 2.0 · outside arrows + action controls
   ========================================================== */
.wpst-card-carousel-nav-sides .wpst-ew-card-carousel{
  overflow:visible;
  padding-inline:0!important;
}
.wpst-card-carousel-nav-sides .wpst-ew-card-nav{
  inset:0!important;
}
.wpst-card-carousel-nav-sides .wpst-ew-card-nav .wpst-ew-card-prev{
  left:calc((var(--wpst-card-nav-offset,12px) + 16px) * -1)!important;
}
.wpst-card-carousel-nav-sides .wpst-ew-card-nav .wpst-ew-card-next{
  right:calc((var(--wpst-card-nav-offset,12px) + 16px) * -1)!important;
}
.wpst-card-carousel-nav-sides .wpst-ew-card-nav button{
  z-index:22;
}
.wpst-card-carousel-style-showcase .wpst-card-carousel-action{
  gap:var(--wpst-card-carousel-action-gap,8px);
}
.wpst-card-carousel-style-showcase .wpst-card-carousel-action svg,
.wpst-card-carousel-style-showcase .wpst-card-carousel-action i{
  margin:0!important;
}
.wpst-card-carousel-action-align-left .wpst-card-carousel-action{
  align-self:flex-start!important;
  justify-content:flex-start!important;
  margin-left:0!important;
  margin-right:auto!important;
  text-align:left!important;
}
.wpst-card-carousel-action-align-center .wpst-card-carousel-action{
  align-self:center!important;
  justify-content:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}
.wpst-card-carousel-action-align-right .wpst-card-carousel-action{
  align-self:flex-end!important;
  justify-content:flex-end!important;
  margin-left:auto!important;
  margin-right:0!important;
  text-align:right!important;
}
@media(max-width:1024px){
  .wpst-card-carousel-nav-sides .wpst-ew-card-nav .wpst-ew-card-prev{
    left:calc((var(--wpst-card-nav-offset,10px) + 12px) * -1)!important;
  }
  .wpst-card-carousel-nav-sides .wpst-ew-card-nav .wpst-ew-card-next{
    right:calc((var(--wpst-card-nav-offset,10px) + 12px) * -1)!important;
  }
}
@media(max-width:767px){
  .wpst-card-carousel-nav-sides .wpst-ew-card-nav .wpst-ew-card-prev{
    left:calc((var(--wpst-card-nav-offset,8px) + 8px) * -1)!important;
  }
  .wpst-card-carousel-nav-sides .wpst-ew-card-nav .wpst-ew-card-next{
    right:calc((var(--wpst-card-nav-offset,8px) + 8px) * -1)!important;
  }
}


/* ==========================================================
   v3.3.87 · Card Carousel 2.0 · definitive action + arrow layout
   ========================================================== */
/* Reserve a real gutter for side arrows. The cards begin after the gutter,
   so arrow buttons never overlap the first/last card. */
.wpst-card-carousel-nav-sides .wpst-ew-card-carousel{
  position:relative;
  overflow:visible!important;
  box-sizing:border-box;
  padding-left:calc(var(--wpst-card-nav-size,48px) + var(--wpst-card-nav-offset,6px) + var(--wpst-card-nav-offset,6px))!important;
  padding-right:calc(var(--wpst-card-nav-size,48px) + var(--wpst-card-nav-offset,6px) + var(--wpst-card-nav-offset,6px))!important;
}
.wpst-card-carousel-nav-sides .wpst-ew-card-nav{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  pointer-events:none!important;
}
.wpst-card-carousel-nav-sides .wpst-ew-card-nav .wpst-ew-card-prev{
  left:var(--wpst-card-nav-offset,6px)!important;
  right:auto!important;
}
.wpst-card-carousel-nav-sides .wpst-ew-card-nav .wpst-ew-card-next{
  right:var(--wpst-card-nav-offset,6px)!important;
  left:auto!important;
}
.wpst-card-carousel-nav-sides .wpst-ew-card-nav button{
  width:var(--wpst-card-nav-size,48px)!important;
  height:var(--wpst-card-nav-size,48px)!important;
  pointer-events:auto!important;
}

/* Action is always content-sized; icon stays immediately beside the text. */
.wpst-ew-card-carousel .wpst-card-carousel-action{
  width:max-content!important;
  max-width:100%!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:6px;
}
.wpst-ew-card-carousel .wpst-card-carousel-action>span{
  flex:0 1 auto!important;
}
.wpst-ew-card-carousel .wpst-card-carousel-action>svg,
.wpst-ew-card-carousel .wpst-card-carousel-action>i{
  flex:0 0 auto!important;
  margin:0!important;
}
.wpst-ew-card-carousel .wpst-card-action-align-left{
  align-self:flex-start!important;
  margin-left:0!important;
  margin-right:auto!important;
  text-align:left!important;
}
.wpst-ew-card-carousel .wpst-card-action-align-center{
  align-self:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}
.wpst-ew-card-carousel .wpst-card-action-align-right{
  align-self:flex-end!important;
  margin-left:auto!important;
  margin-right:0!important;
  text-align:right!important;
}
@media(max-width:767px){
  .wpst-card-carousel-nav-sides .wpst-ew-card-carousel{
    padding-left:calc(var(--wpst-card-nav-size,44px) + var(--wpst-card-nav-offset,4px) + var(--wpst-card-nav-offset,4px))!important;
    padding-right:calc(var(--wpst-card-nav-size,44px) + var(--wpst-card-nav-offset,4px) + var(--wpst-card-nav-offset,4px))!important;
  }
}

/* ==========================================================
   v3.3.89 · Timeline Modern · reference horizontal journey
   ========================================================== */
.wpst-timeline-layout-reference .wpst-timeline-modern-shell{
  --wpst-timeline-accent:#168df2;
  --wpst-timeline-overlay:rgba(246,251,255,.78);
  position:relative;
  isolation:isolate;
  overflow:hidden;
  width:100%;
  border:1px solid rgba(148,163,184,.12);
  border-radius:18px;
  background-color:#f6fbff;
  background-position:center;
  background-size:cover;
  box-shadow:0 16px 46px rgba(15,23,42,.055);
}
.wpst-timeline-layout-reference .wpst-timeline-modern-shell::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(90deg,var(--wpst-timeline-overlay) 0%,color-mix(in srgb,var(--wpst-timeline-overlay) 86%,transparent) 58%,color-mix(in srgb,var(--wpst-timeline-overlay) 48%,transparent) 100%);
  pointer-events:none;
}
.wpst-timeline-layout-reference .wpst-timeline-modern-intro{
  position:relative;
  z-index:1;
  max-width:720px;
}
.wpst-timeline-layout-reference .wpst-timeline-modern-eyebrow{
  display:block;
  margin:0 0 7px;
  color:var(--wpst-timeline-accent);
  font-size:12px;
  line-height:1.2;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.wpst-timeline-layout-reference .wpst-timeline-modern-intro h2{
  margin:0;
  color:var(--wpst-heading,#0f172a);
  font-size:clamp(30px,3.4vw,48px);
  line-height:1.04;
  letter-spacing:-.04em;
}
.wpst-timeline-layout-reference .wpst-timeline-modern-intro p{
  max-width:650px;
  margin:10px 0 0;
  color:var(--wpst-text,#475569);
  font-size:15px;
  line-height:1.55;
}
.wpst-timeline-layout-reference .wpst-timeline-scroll{
  position:relative;
  margin-top:30px;
}
.wpst-timeline-layout-reference .wpst-ew-timeline-modern{
  --wpst-timeline-line:var(--wpst-timeline-accent);
  position:relative;
  display:grid;
  grid-template-columns:repeat(var(--wpst-timeline-items,5),minmax(0,1fr));
  gap:18px;
  width:100%;
  padding-top:16px;
}
.wpst-timeline-layout-reference .wpst-ew-timeline-modern::before{
  content:"";
  position:absolute;
  left:7px;
  right:7px;
  top:7px;
  bottom:auto;
  width:auto;
  height:2px;
  border-radius:999px;
  background:var(--wpst-timeline-line);
  opacity:.82;
}
.wpst-timeline-layout-reference .wpst-ew-timeline-modern article{
  position:relative;
  display:block;
  min-width:0;
  padding:18px 12px 0 0;
}
.wpst-timeline-layout-reference .wpst-ew-timeline-modern article>i{
  position:absolute;
  top:-15px;
  left:0;
  z-index:2;
  width:16px;
  height:16px;
  margin:0;
  border:3px solid #fff;
  border-radius:50%;
  background:var(--wpst-timeline-accent);
  box-shadow:0 0 0 1px color-mix(in srgb,var(--wpst-timeline-accent) 22%,transparent),0 4px 12px rgba(15,23,42,.08);
}
.wpst-timeline-layout-reference .wpst-ew-timeline-modern article>span{
  display:block;
  margin:0 0 4px;
  color:var(--wpst-timeline-accent);
  font-size:18px;
  line-height:1.15;
  font-weight:900;
  letter-spacing:-.025em;
}
.wpst-timeline-layout-reference .wpst-ew-timeline-modern article>div{
  min-height:0;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}
.wpst-timeline-layout-reference .wpst-ew-timeline-modern article h3{
  margin:0;
  color:var(--wpst-heading,#0f172a);
  font-size:16px;
  line-height:1.25;
  font-weight:850;
  letter-spacing:-.018em;
}
.wpst-timeline-layout-reference .wpst-ew-timeline-modern article p{
  margin:6px 0 0;
  color:var(--wpst-text,#64748b);
  font-size:13px;
  line-height:1.48;
}
.wpst-timeline-layout-reference .wpst-ew-timeline-modern article.is-highlight{
  padding-right:0;
}
.wpst-timeline-layout-reference .wpst-ew-timeline-modern article.is-highlight>div{
  margin-top:5px;
  padding:13px 14px 14px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:12px;
  background:rgba(255,255,255,.88);
  box-shadow:0 8px 24px rgba(15,23,42,.06);
  backdrop-filter:blur(8px);
}
.wpst-timeline-layout-reference.wpst-timeline-line-no .wpst-ew-timeline-modern::before,
.wpst-timeline-layout-reference.wpst-timeline-line-no .wpst-ew-timeline-modern article>i{
  display:none!important;
}
@media(max-width:1024px){
  .wpst-timeline-layout-reference .wpst-timeline-modern-intro{max-width:620px}
  .wpst-timeline-layout-reference .wpst-ew-timeline-modern{gap:14px}
  .wpst-timeline-layout-reference .wpst-ew-timeline-modern article>span{font-size:16px}
  .wpst-timeline-layout-reference .wpst-ew-timeline-modern article h3{font-size:15px}
  .wpst-timeline-layout-reference .wpst-ew-timeline-modern article p{font-size:12px}
}
@media(max-width:767px){
  .wpst-timeline-layout-reference .wpst-timeline-modern-shell{border-radius:15px}
  .wpst-timeline-layout-reference .wpst-timeline-modern-intro h2{font-size:30px}
  .wpst-timeline-layout-reference .wpst-timeline-modern-intro p{font-size:14px}
  .wpst-timeline-layout-reference .wpst-timeline-scroll{
    width:100%;
    overflow-x:auto;
    overflow-y:hidden;
    padding-bottom:10px;
    scrollbar-width:thin;
    -webkit-overflow-scrolling:touch;
  }
  .wpst-timeline-layout-reference .wpst-ew-timeline-modern{
    grid-template-columns:repeat(var(--wpst-timeline-items,5),minmax(210px,210px));
    width:max-content;
    min-width:100%;
    gap:14px;
  }
  .wpst-timeline-layout-reference .wpst-ew-timeline-modern article{padding-right:14px}
}


/* ==========================================================
   v3.3.90 · Timeline Modern · reference visual parity
   ========================================================== */
.wpst-timeline-layout-reference .wpst-timeline-modern-shell{
  --wpst-timeline-panel-bg:rgba(255,255,255,.78);
  min-height:0;
  border-color:rgba(148,163,184,.10);
  border-radius:12px;
  background-position:center right;
  box-shadow:0 8px 26px rgba(15,23,42,.035);
}
.wpst-timeline-layout-reference .wpst-timeline-modern-shell::before{
  background:linear-gradient(90deg,
    color-mix(in srgb,var(--wpst-timeline-overlay,rgba(246,251,255,.88)) 100%,#fff 0%) 0%,
    color-mix(in srgb,var(--wpst-timeline-overlay,rgba(246,251,255,.88)) 96%,transparent) 36%,
    color-mix(in srgb,var(--wpst-timeline-overlay,rgba(246,251,255,.88)) 70%,transparent) 62%,
    color-mix(in srgb,var(--wpst-timeline-overlay,rgba(246,251,255,.88)) 28%,transparent) 100%);
}
.wpst-timeline-layout-reference .wpst-timeline-modern-intro{
  max-width:520px;
}
.wpst-timeline-layout-reference .wpst-timeline-modern-eyebrow{
  margin-bottom:5px;
  font-size:11px;
  letter-spacing:.09em;
}
.wpst-timeline-layout-reference .wpst-timeline-modern-intro h2{
  font-size:clamp(25px,2.45vw,34px);
  line-height:1.08;
  letter-spacing:-.035em;
}
.wpst-timeline-layout-reference .wpst-timeline-modern-intro p{
  max-width:510px;
  margin-top:7px;
  font-size:13px;
  line-height:1.48;
}
.wpst-timeline-layout-reference .wpst-timeline-scroll{
  --wpst-timeline-panel-bg:rgba(255,255,255,.78);
  position:relative;
  margin-top:20px;
  padding:0 10px 10px;
  border-radius:10px;
  background:var(--wpst-timeline-panel-bg);
  box-shadow:0 6px 20px rgba(15,23,42,.025);
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}
.wpst-timeline-layout-reference .wpst-ew-timeline-modern{
  gap:0!important;
  padding-top:16px;
}
.wpst-timeline-layout-reference .wpst-ew-timeline-modern::before{
  left:0;
  right:0;
  top:7px;
  height:2px;
  opacity:.95;
}
.wpst-timeline-layout-reference .wpst-ew-timeline-modern article{
  padding:17px 16px 0 0;
}
.wpst-timeline-layout-reference .wpst-ew-timeline-modern article:last-child{
  padding-right:0;
}
.wpst-timeline-layout-reference .wpst-ew-timeline-modern article>i{
  top:-15px;
  width:15px;
  height:15px;
  border-width:2px;
  box-shadow:0 0 0 2px rgba(255,255,255,.9);
}
.wpst-timeline-layout-reference .wpst-ew-timeline-modern article>span{
  margin-bottom:3px;
  font-size:16px;
  line-height:1.1;
}
.wpst-timeline-layout-reference .wpst-ew-timeline-modern article>div,
.wpst-timeline-layout-reference .wpst-ew-timeline-modern article.is-highlight>div{
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.wpst-timeline-layout-reference .wpst-ew-timeline-modern article h3{
  font-size:13px;
  line-height:1.2;
  font-weight:850;
}
.wpst-timeline-layout-reference .wpst-ew-timeline-modern article p{
  max-width:175px;
  margin-top:5px;
  font-size:11px;
  line-height:1.42;
}
.wpst-timeline-layout-reference .wpst-ew-timeline-modern article.is-highlight{
  padding-right:0;
}
@media(max-width:1024px){
  .wpst-timeline-layout-reference .wpst-timeline-modern-intro{max-width:500px}
  .wpst-timeline-layout-reference .wpst-timeline-modern-intro h2{font-size:28px}
  .wpst-timeline-layout-reference .wpst-timeline-modern-intro p{font-size:12.5px}
  .wpst-timeline-layout-reference .wpst-ew-timeline-modern article>span{font-size:15px}
  .wpst-timeline-layout-reference .wpst-ew-timeline-modern article h3{font-size:12.5px}
  .wpst-timeline-layout-reference .wpst-ew-timeline-modern article p{font-size:10.5px}
}
@media(max-width:767px){
  .wpst-timeline-layout-reference .wpst-timeline-modern-shell{border-radius:12px}
  .wpst-timeline-layout-reference .wpst-timeline-modern-intro h2{font-size:27px}
  .wpst-timeline-layout-reference .wpst-timeline-modern-intro p{font-size:13px}
  .wpst-timeline-layout-reference .wpst-timeline-scroll{
    margin-top:18px;
    padding:0 9px 9px;
    border-radius:10px;
  }
  .wpst-timeline-layout-reference .wpst-ew-timeline-modern{
    grid-template-columns:repeat(var(--wpst-timeline-items,5),minmax(190px,190px));
    gap:0!important;
  }
  .wpst-timeline-layout-reference .wpst-ew-timeline-modern article{padding-right:18px}
  .wpst-timeline-layout-reference .wpst-ew-timeline-modern article p{max-width:165px;font-size:11px}
}

/* ==========================================================
   v3.3.91 · Card Carousel 2.0 · Reference Premium parity
   ========================================================== */
.wpst-card-carousel-shell{
  position:relative;
  width:100%;
}
.wpst-card-carousel-style-reference .wpst-card-carousel-shell{
  --wpst-card-section-bg:#f8fbff;
  overflow:hidden;
  padding:48px 36px 38px;
  border-radius:30px;
  background:
    radial-gradient(75% 75% at 94% 1%,rgba(219,235,255,.82) 0%,rgba(240,247,255,.48) 42%,transparent 72%),
    radial-gradient(66% 80% at 5% 100%,rgba(230,240,252,.78) 0%,transparent 72%),
    var(--wpst-card-section-bg);
  box-shadow:inset 0 0 0 1px rgba(148,163,184,.08);
}
.wpst-card-carousel-style-reference .wpst-card-carousel-shell::before,
.wpst-card-carousel-style-reference .wpst-card-carousel-shell::after{
  content:"";
  position:absolute;
  z-index:0;
  pointer-events:none;
  border-radius:48% 52% 58% 42%;
  background:rgba(255,255,255,.55);
  transform:rotate(-18deg);
}
.wpst-card-carousel-style-reference .wpst-card-carousel-shell::before{
  width:560px;
  height:220px;
  right:-100px;
  top:-118px;
}
.wpst-card-carousel-style-reference .wpst-card-carousel-shell::after{
  width:430px;
  height:170px;
  left:-170px;
  bottom:-98px;
  opacity:.55;
}
.wpst-card-carousel-style-reference .wpst-card-carousel-intro,
.wpst-card-carousel-style-reference .wpst-ew-card-carousel{
  position:relative;
  z-index:1;
}
.wpst-card-carousel-intro{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:32px;
  margin-bottom:28px;
}
.wpst-card-carousel-intro-copy{max-width:900px}
.wpst-card-carousel-eyebrow{
  display:flex;
  align-items:center;
  gap:18px;
  margin:0 0 12px;
  color:var(--wpst-primary,#2563eb);
  font-size:12px;
  line-height:1;
  font-weight:850;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.wpst-card-carousel-eyebrow::before{
  content:"";
  width:38px;
  height:3px;
  border-radius:999px;
  background:currentColor;
}
.wpst-card-carousel-heading{
  margin:0;
  max-width:850px;
  color:var(--wpst-heading,#0f172a);
  font-size:clamp(34px,4vw,58px);
  line-height:1.02;
  letter-spacing:-.045em;
}
.wpst-card-carousel-description{
  max-width:820px;
  margin-top:12px;
  color:var(--wpst-muted,#64748b);
  font-size:16px;
  line-height:1.55;
}
.wpst-card-carousel-style-reference .wpst-ew-card-carousel{
  overflow:hidden;
  padding:0!important;
}
.wpst-card-carousel-style-reference .wpst-ew-card-carousel-track{
  align-items:stretch;
}
.wpst-card-carousel-style-reference .wpst-ew-card-carousel-track>article.wpst-card-carousel-card{
  overflow:visible;
  border:1px solid #e4eaf2;
  border-radius:22px;
  background:#fff;
  box-shadow:0 10px 30px rgba(15,23,42,.045);
  transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;
}
.wpst-card-carousel-style-reference .wpst-card-carousel-card:hover{
  transform:translateY(-5px);
  border-color:color-mix(in srgb,var(--wpst-primary,#2563eb) 20%,#dbe3ee);
  box-shadow:0 18px 44px rgba(15,23,42,.085);
}
.wpst-card-carousel-style-reference .wpst-card-carousel-card .wpst-ew-card-media{
  height:250px;
  margin:14px 14px 0;
  overflow:hidden;
  border-radius:16px;
  background:#eef4fa;
}
.wpst-card-carousel-style-reference .wpst-card-carousel-card .wpst-ew-card-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1.001);
}
.wpst-card-carousel-style-reference .wpst-card-carousel-card:hover .wpst-ew-card-media img{
  transform:scale(1.035);
}
.wpst-card-carousel-style-reference .wpst-card-carousel-card .wpst-ew-card-copy{
  position:relative;
  min-height:255px;
  padding:34px 22px 20px;
  text-align:left;
}
.wpst-card-carousel-style-reference .wpst-card-carousel-icon{
  position:absolute;
  z-index:3;
  top:-31px;
  left:22px;
  width:58px;
  height:58px;
  margin:0;
  border:5px solid #fff;
  border-radius:999px;
  background:var(--wpst-card-icon-bg,#eef5ff);
  color:var(--wpst-card-icon-color,var(--wpst-primary,#2563eb));
  box-shadow:0 8px 22px rgba(15,23,42,.09);
}
.wpst-card-carousel-style-reference .wpst-card-carousel-card .wpst-ew-card-copy h3{
  margin:0 0 12px;
  color:#0b1739;
  font-size:22px;
  line-height:1.18;
  letter-spacing:-.035em;
}
.wpst-card-carousel-style-reference .wpst-card-carousel-card .wpst-ew-card-copy p{
  margin:0;
  color:#60708c;
  font-size:14px;
  line-height:1.55;
}
.wpst-card-carousel-style-reference .wpst-card-carousel-action{
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  margin-top:auto!important;
  padding-top:18px!important;
  color:var(--wpst-card-carousel-action,var(--wpst-primary,#2563eb))!important;
  font-size:13px!important;
  font-weight:850!important;
  line-height:1!important;
  gap:8px!important;
  text-decoration:none!important;
}
.wpst-card-carousel-style-reference .wpst-card-carousel-action>svg{
  width:34px!important;
  height:34px!important;
  padding:9px!important;
  border-radius:999px!important;
  background:#f2f6ff!important;
  transition:transform .2s ease,background-color .2s ease!important;
}
.wpst-card-carousel-style-reference .wpst-card-carousel-action:hover>svg{
  transform:translateX(2px)!important;
  background:#e8f0ff!important;
}
.wpst-card-carousel-content-align-left .wpst-card-carousel-card .wpst-ew-card-copy{text-align:left}
.wpst-card-carousel-content-align-center .wpst-card-carousel-card .wpst-ew-card-copy{text-align:center}
.wpst-card-carousel-content-align-right .wpst-card-carousel-card .wpst-ew-card-copy{text-align:right}
.wpst-card-carousel-content-align-left .wpst-card-carousel-icon{left:22px;right:auto}
.wpst-card-carousel-content-align-center .wpst-card-carousel-icon{left:50%;right:auto;transform:translateX(-50%)}
.wpst-card-carousel-content-align-right .wpst-card-carousel-icon{left:auto;right:22px}

/* Reference navigation: upper-right, one outlined + one filled button. */
.wpst-card-carousel-nav-topright .wpst-card-carousel-shell{position:relative}
.wpst-card-carousel-nav-topright .wpst-ew-card-nav{
  position:absolute!important;
  z-index:12;
  top:-92px!important;
  right:0!important;
  left:auto!important;
  bottom:auto!important;
  display:flex!important;
  align-items:center;
  gap:12px;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  pointer-events:auto!important;
}
.wpst-card-carousel-nav-topright .has-intro .wpst-ew-card-nav{
  top:-128px!important;
}
.wpst-card-carousel-nav-topright .wpst-ew-card-nav button{
  position:static!important;
  display:grid!important;
  place-items:center!important;
  width:52px!important;
  height:52px!important;
  margin:0!important;
  padding:0!important;
  border-radius:999px!important;
  box-shadow:0 10px 24px rgba(37,99,235,.10)!important;
  transform:none!important;
}
.wpst-card-carousel-nav-topright .wpst-ew-card-prev{
  border:1px solid #dbe6f5!important;
  background:#fff!important;
  color:var(--wpst-primary,#2563eb)!important;
}
.wpst-card-carousel-nav-topright .wpst-ew-card-next{
  border:1px solid var(--wpst-primary,#2563eb)!important;
  background:var(--wpst-primary,#2563eb)!important;
  color:#fff!important;
}
.wpst-card-carousel-nav-topright .wpst-ew-card-nav button:disabled{opacity:.35}
.wpst-card-carousel-nav-topright .wpst-ew-card-nav button:hover{transform:translateY(-2px)!important}
.wpst-card-carousel-nav-topright .wpst-ew-card-nav button svg{width:20px!important;height:20px!important}

.wpst-card-carousel-style-reference .wpst-carousel-dots{
  margin-top:30px;
  gap:11px;
}
.wpst-card-carousel-style-reference .wpst-carousel-dot{
  width:10px;
  height:10px;
  background:#d7e1ee!important;
}
.wpst-card-carousel-style-reference .wpst-carousel-dot.is-active{
  width:46px;
  background:var(--wpst-primary,#2563eb)!important;
}
.wpst-card-carousel-style-reference .wpst-carousel-progress{display:none!important}
.wpst-card-carousel-action-reference .wpst-card-carousel-action{
  color:var(--wpst-card-carousel-action,var(--wpst-primary,#2563eb))!important;
}
.wpst-card-carousel-action-reference .wpst-card-carousel-action>svg{
  width:34px!important;
  height:34px!important;
  padding:9px!important;
  border-radius:999px!important;
  background:#f2f6ff!important;
}

@media(max-width:1024px){
  .wpst-card-carousel-style-reference .wpst-card-carousel-shell{padding:36px 24px 30px;border-radius:24px}
  .wpst-card-carousel-heading{font-size:clamp(32px,5vw,46px)}
  .wpst-card-carousel-description{font-size:15px}
  .wpst-card-carousel-style-reference .wpst-card-carousel-card .wpst-ew-card-media{height:225px}
  .wpst-card-carousel-nav-topright .has-intro .wpst-ew-card-nav{top:-112px!important}
}
@media(max-width:767px){
  .wpst-card-carousel-style-reference .wpst-card-carousel-shell{padding:28px 16px 24px;border-radius:20px}
  .wpst-card-carousel-intro{margin-bottom:22px;padding-right:0}
  .wpst-card-carousel-eyebrow{gap:10px;font-size:10px}.wpst-card-carousel-eyebrow::before{width:26px;height:2px}
  .wpst-card-carousel-heading{font-size:32px;line-height:1.05}
  .wpst-card-carousel-description{font-size:14px;line-height:1.5}
  .wpst-card-carousel-style-reference .wpst-card-carousel-card .wpst-ew-card-media{height:210px;margin:10px 10px 0}
  .wpst-card-carousel-style-reference .wpst-card-carousel-card .wpst-ew-card-copy{min-height:225px;padding:32px 17px 17px}
  .wpst-card-carousel-style-reference .wpst-card-carousel-icon{left:17px;width:52px;height:52px;top:-27px;border-width:4px}
  .wpst-card-carousel-style-reference .wpst-card-carousel-card .wpst-ew-card-copy h3{font-size:20px}
  .wpst-card-carousel-nav-topright .wpst-ew-card-nav{position:relative!important;top:auto!important;right:auto!important;justify-content:flex-end;margin:0 0 16px!important}
  .wpst-card-carousel-nav-topright .wpst-ew-card-nav button{width:44px!important;height:44px!important}
  .wpst-card-carousel-style-reference .wpst-carousel-dots{margin-top:22px}
}


/* v3.3.92 · Navigation dialog fallback for mobile WebViews */
.wpst-navigation > dialog.wpst-nav-viewport-layer.wpst-dialog-fallback[open]{
 display:block!important;
 position:fixed!important;
 inset:0!important;
 z-index:2147483000!important;
}


/* ==========================================================
   v3.3.93 · Card Carousel 2.0 · mobile header conflict isolation
   Keeps carousel layers inside their widget so sticky header / drawer
   cannot be covered by legacy arrow layers or horizontal overflow.
   ========================================================== */
.elementor-widget-wpsoft-card-carousel{
  position:relative;
  z-index:0;
  isolation:isolate;
}
.elementor-widget-wpsoft-card-carousel .wpst-card-carousel-shell{
  position:relative;
  z-index:0;
  isolation:isolate;
}
.elementor-widget-wpsoft-card-carousel .wpst-ew-card-carousel{
  position:relative;
  z-index:1;
}
.elementor-widget-wpsoft-card-carousel .wpst-ew-card-nav{
  z-index:3!important;
}
.elementor-widget-wpsoft-card-carousel .wpst-ew-card-nav button{
  z-index:1!important;
}

@media(max-width:1024px){
  /* Legacy outside-arrow rules must never expand the mobile viewport. */
  .elementor-widget-wpsoft-card-carousel{
    overflow:clip;
    overflow-clip-margin:12px;
  }
  .wpst-card-carousel-nav-sides .wpst-ew-card-carousel{
    overflow:hidden!important;
    box-sizing:border-box!important;
    padding-left:calc(var(--wpst-card-nav-size,44px) + (var(--wpst-card-nav-offset,5px) * 2))!important;
    padding-right:calc(var(--wpst-card-nav-size,44px) + (var(--wpst-card-nav-offset,5px) * 2))!important;
  }
  .wpst-card-carousel-nav-sides .wpst-ew-card-nav{
    inset:0!important;
    width:100%!important;
    height:100%!important;
    pointer-events:none!important;
  }
  .wpst-card-carousel-nav-sides .wpst-ew-card-nav .wpst-ew-card-prev{
    left:var(--wpst-card-nav-offset,5px)!important;
    right:auto!important;
  }
  .wpst-card-carousel-nav-sides .wpst-ew-card-nav .wpst-ew-card-next{
    right:var(--wpst-card-nav-offset,5px)!important;
    left:auto!important;
  }
  .wpst-card-carousel-nav-sides .wpst-ew-card-nav button{
    pointer-events:auto!important;
  }
  .wpst-card-carousel-style-reference .wpst-card-carousel-shell{
    overflow:hidden!important;
  }
  .wpst-card-carousel-nav-topright .wpst-ew-card-nav{
    z-index:3!important;
  }
}

@media(max-width:767px){
  .elementor-widget-wpsoft-card-carousel{
    max-width:100%;
  }
  .wpst-card-carousel-nav-sides .wpst-ew-card-carousel{
    padding-left:calc(var(--wpst-card-nav-size,42px) + (var(--wpst-card-nav-offset,4px) * 2))!important;
    padding-right:calc(var(--wpst-card-nav-size,42px) + (var(--wpst-card-nav-offset,4px) * 2))!important;
  }
  /* Top-right controls become normal-flow controls on phones; no negative overlap. */
  .wpst-card-carousel-nav-topright .wpst-ew-card-nav,
  .wpst-card-carousel-nav-topright .has-intro .wpst-ew-card-nav{
    position:relative!important;
    inset:auto!important;
    top:auto!important;
    right:auto!important;
    left:auto!important;
    bottom:auto!important;
    width:auto!important;
    height:auto!important;
    margin:0 0 14px!important;
    justify-content:flex-end!important;
    pointer-events:auto!important;
  }
}

/* v3.3.110 — Elementor mobile navigation: desktop Mega Menu icon styles
   must not shift or enlarge icons within the mobile drawer. */
@media (max-width:1024px) {
  .wpst-nav-mobile-hamburger .wps-mobile-drawer .wps-mobile-drawer__icon {
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex-shrink:0!important;
    padding:0!important;
    margin-left:0!important;
    box-sizing:border-box!important;
  }
  .wpst-nav-mobile-hamburger .wps-mobile-drawer .wps-mobile-drawer__icon > .wpst-menu-item-icon {
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 var(--wps-mobile-icon-size,20px)!important;
    width:var(--wps-mobile-icon-size,20px)!important;
    height:var(--wps-mobile-icon-size,20px)!important;
    min-width:0!important;
    min-height:0!important;
    max-width:var(--wps-mobile-icon-size,20px)!important;
    max-height:var(--wps-mobile-icon-size,20px)!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    transform:none!important;
    color:inherit!important;
  }
  .wpst-nav-mobile-hamburger .wps-mobile-drawer .wps-mobile-drawer__icon > .wpst-menu-item-icon > svg,
  .wpst-nav-mobile-hamburger .wps-mobile-drawer .wps-mobile-drawer__icon > .wpst-menu-item-icon > img {
    display:block!important;
    flex:0 0 auto!important;
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    max-height:100%!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
    object-fit:contain;
  }
}
