/* LCV independently authored behavior/layout layer. Elementor's declared controls supply site styling. */
[data-lcv-carousel] { position:relative; min-width:0; }
[data-lcv-carousel] button { cursor:pointer; }
[data-lcv-carousel] .elementor-swiper-button { border:0; background:transparent; color:inherit; padding:8px; z-index:5; }
[data-lcv-carousel] .swiper-pagination { z-index:5; }
[data-lcv-carousel] .swiper-pagination-bullet { border:0; padding:0; cursor:pointer; }
[data-lcv-carousel] [hidden], .lcv-gallery [hidden], [data-lcv-word][hidden] { display:none!important; }
[data-lcv-carousel] :focus-visible, .lcv-menu :focus-visible, .lcv-gallery :focus-visible, .lcv-lightbox :focus-visible, .lcv-flip-box :focus-visible { outline:3px solid currentColor; outline-offset:4px; }
.lcv-slides > .swiper-wrapper { display:block; transform:none!important; }
.lcv-slides .swiper-slide { width:100%; position:relative; overflow:hidden; min-height:200px; }
.lcv-slides .swiper-slide-bg { position:absolute; inset:0; background-position:center; background-repeat:no-repeat; }
.lcv-slides .elementor-background-overlay { position:absolute; inset:0; }
.lcv-slides .swiper-slide-inner { position:relative; display:flex; width:100%; height:100%; align-items:center; padding:50px; text-decoration:none; }
.lcv-slides .swiper-slide-contents { width:100%; position:relative; z-index:1; }
.lcv-slides .elementor-slide-button { display:inline-block; }
.lcv-slides.lcv-carousel-ready .swiper-slide-active { animation:lcv-slide-enter var(--lcv-transition-ms,500ms) ease both; }
.lcv-slides[data-lcv-transition=slide].lcv-carousel-ready .swiper-slide-active { animation-name:lcv-slide-move; }
@keyframes lcv-slide-move { from { opacity:.4; transform:translateX(4%); } to { opacity:1; transform:none; } }
@keyframes lcv-slide-enter { from { opacity:0; } to { opacity:1; } }
.lcv-loop.elementor-loop-container { display:block!important; }
.lcv-loop > .lcv-loop-items.elementor-grid { display:grid; grid-template-columns:repeat(var(--grid-columns,3),minmax(0,1fr)); column-gap:var(--grid-column-gap,30px); row-gap:var(--grid-row-gap,30px); }
.lcv-loop-item { min-width:0; }
.lcv-loop-item > .elementor { width:100%; }
.lcv-scroll-carousel > .swiper-wrapper { display:flex!important; gap:var(--lcv-carousel-gap,10px); overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; transform:none!important; align-items:stretch; }
.lcv-scroll-carousel > .swiper-wrapper::-webkit-scrollbar { display:none; }
.lcv-scroll-carousel > .swiper-wrapper > .swiper-slide { flex:0 0 calc((100% - (var(--lcv-slides-visible,1) - 1)*var(--lcv-carousel-gap,10px))/var(--lcv-slides-visible,1)); width:calc((100% - (var(--lcv-slides-visible,1) - 1)*var(--lcv-carousel-gap,10px))/var(--lcv-slides-visible,1))!important; min-width:0; scroll-snap-align:start; height:auto; }
.lcv-scroll-carousel .swiper-pagination { position:relative; margin-top:15px; bottom:auto; }
.lcv-loop .elementor-pagination { margin-top:24px; text-align:center; }
.lcv-loop [aria-disabled=true] { opacity:.6; }
.lcv-loop [data-lcv-loop-status]:empty { display:none; }
.lcv-menu .elementor-nav-menu { list-style:none; padding:0; margin:0; }
.lcv-menu .elementor-nav-menu--layout-horizontal > .elementor-nav-menu { display:flex; align-items:center; flex-wrap:wrap; }
.lcv-menu .elementor-nav-menu li { position:relative; }
.lcv-menu .elementor-nav-menu a { display:flex; align-items:center; }
.lcv-menu .elementor-nav-menu .sub-menu { display:none; position:absolute; top:100%; left:0; min-width:220px; list-style:none; margin:0; padding:0; z-index:30; }
.lcv-menu .elementor-nav-menu .sub-menu .sub-menu { left:100%; top:0; }
.lcv-menu li:hover > .sub-menu, .lcv-menu li:focus-within > .sub-menu, .lcv-menu li.lcv-submenu-open > .sub-menu { display:block; }
.lcv-menu .elementor-menu-toggle, .lcv-menu .lcv-mobile-nav { display:none; }
.lcv-menu-layout-dropdown .elementor-menu-toggle { display:flex; }
.lcv-menu-layout-dropdown .elementor-nav-menu--main { display:none; }
.lcv-menu-layout-dropdown.lcv-menu-open .lcv-mobile-nav { display:block; }
.lcv-submenu-toggle { background:transparent; color:inherit; border:0; padding:4px 8px; position:absolute; top:0; right:0; height:100%; max-height:45px; }
.lcv-menu .current-menu-item > a, .lcv-menu .current-menu-ancestor > a { font-weight:600; }
.lcv-gallery.e-gallery-container { display:block; height:auto!important; }
.lcv-gallery .lcv-gallery-items { display:grid; gap:var(--lcv-gallery-gap,10px); grid-template-columns:repeat(var(--lcv-gallery-columns,4),minmax(0,1fr)); }
.lcv-gallery .e-gallery-item { display:block; position:relative!important; inset:auto!important; width:auto!important; height:auto!important; overflow:hidden; transform:none!important; }
.lcv-gallery .e-gallery-image { position:relative; inset:auto; width:100%; height:100%; background:none; }
.lcv-gallery .e-gallery-image img { display:block; width:100%; height:100%; aspect-ratio:var(--lcv-gallery-ratio,3/2); object-fit:cover; transition:transform .3s; }
.lcv-gallery .elementor-gallery-item__overlay { position:absolute; inset:0; }
.lcv-gallery .elementor-gallery-item__content { position:absolute; inset:0; display:flex; flex-direction:column; justify-content:center; text-align:center; }
.lcv-gallery[data-lcv-layout=masonry] .lcv-gallery-items { display:block; column-count:var(--lcv-gallery-columns,4); column-gap:var(--lcv-gallery-gap,10px); }
.lcv-gallery[data-lcv-layout=masonry] .e-gallery-item { break-inside:avoid; margin-bottom:var(--lcv-gallery-gap,10px); }
.lcv-gallery[data-lcv-layout=masonry] img { height:auto; aspect-ratio:auto; }
.lcv-gallery[data-lcv-layout=justified] .lcv-gallery-items { display:flex; flex-wrap:wrap; }
.lcv-gallery[data-lcv-layout=justified] .e-gallery-item { flex:1 1 240px; }
.lcv-gallery .elementor-gallery__titles-container { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; margin-bottom:20px; }
.lcv-gallery .elementor-gallery-title { border:0; background:transparent; cursor:pointer; }
.elementor-headline-dynamic-wrapper { position:relative; display:inline-block; }
.lcv-headline-marker { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; }
.lcv-flip-box { position:relative; perspective:1000px; min-height:250px; }
.lcv-flip-box .elementor-flip-box__layer { position:absolute; inset:0; background-size:cover; background-position:center; backface-visibility:hidden; transition:transform .6s; }
.lcv-flip-box .elementor-flip-box__layer__overlay { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; padding:35px; }
.lcv-flip-box .elementor-flip-box__layer__inner { width:100%; }
.lcv-flip-box .elementor-flip-box__front { transform:var(--lcv-flip-zero,rotateY(0)); }
.lcv-flip-box .elementor-flip-box__back { transform:var(--lcv-flip-back,rotateY(180deg)); }
.lcv-flip-box:hover .elementor-flip-box__front, .lcv-flip-box:focus-within .elementor-flip-box__front, .lcv-flip-box.lcv-flipped .elementor-flip-box__front { transform:var(--lcv-flip-front,rotateY(-180deg)); }
.lcv-flip-box:hover .elementor-flip-box__back, .lcv-flip-box:focus-within .elementor-flip-box__back, .lcv-flip-box.lcv-flipped .elementor-flip-box__back { transform:var(--lcv-flip-zero,rotateY(0)); }
.lcv-flip-toggle:focus { position:absolute!important; clip:auto!important; clip-path:none!important; width:auto!important; height:auto!important; z-index:10; top:8px; left:8px; padding:8px; }
.elementor-testimonial__footer { display:flex; align-items:center; justify-content:center; gap:15px; }
.elementor-testimonial__image img { width:60px; height:60px; object-fit:cover; border-radius:50%; }
.elementor-testimonial__cite { display:flex; flex-direction:column; font-style:normal; }
.elementor-post-navigation { display:flex; justify-content:space-between; }
.elementor-post-navigation__link { width:50%; }
.elementor-post-navigation__link a { display:flex; align-items:center; gap:12px; }
.elementor-post-navigation__link__prev, .elementor-post-navigation__link__next { display:flex; flex-direction:column; }
.elementor-post-navigation__next a { justify-content:flex-end; text-align:right; }
.lcv-dialog-open { overflow:hidden; }
.lcv-lightbox { width:min(1100px,96vw); max-width:96vw; max-height:96vh; padding:35px; border:0; background:#111; color:#fff; }
.lcv-lightbox[open] { display:flex; align-items:center; gap:15px; }
.lcv-lightbox::backdrop, dialog[data-lcv-popup]::backdrop { background:rgba(0,0,0,.8); }
.lcv-lightbox figure { margin:0; flex:1; min-width:0; text-align:center; }
.lcv-lightbox figure img { max-width:100%; max-height:80vh; object-fit:contain; }
.lcv-lightbox button { flex-shrink:0; color:#fff; background:transparent; border:0; font-size:30px; padding:8px; }
.lcv-dialog-close { position:absolute; top:0; right:5px; }
[data-lcv-popup][hidden] { display:none!important; }
.lcv-unsupported { padding:16px; border:2px solid #b32d2e; background:#fff; color:#8a1818; }
@media(max-width:1024px) {
  .lcv-gallery .lcv-gallery-items { grid-template-columns:repeat(var(--lcv-gallery-tablet-columns,2),minmax(0,1fr)); }
  .lcv-gallery[data-lcv-layout=masonry] .lcv-gallery-items { column-count:var(--lcv-gallery-tablet-columns,2); }
  .elementor-nav-menu--dropdown-tablet .lcv-menu .elementor-menu-toggle { display:flex; }
  .elementor-nav-menu--dropdown-tablet .lcv-menu .elementor-nav-menu--main { display:none; }
  .elementor-nav-menu--dropdown-tablet .lcv-menu.lcv-menu-open .lcv-mobile-nav { display:block; }
  .elementor-nav-menu--dropdown-tablet .lcv-menu .elementor-nav-menu { display:block; }
  .elementor-nav-menu--dropdown-tablet .lcv-menu .sub-menu { position:static; }
}
@media(max-width:767px) {
  .elementor-nav-menu--dropdown-mobile .lcv-menu .elementor-menu-toggle { display:flex; }
  .elementor-nav-menu--dropdown-mobile .lcv-menu .elementor-nav-menu--main { display:none; }
  .elementor-nav-menu--dropdown-mobile .lcv-menu.lcv-menu-open .lcv-mobile-nav { display:block; }
  .elementor-nav-menu--dropdown-mobile .lcv-menu .elementor-nav-menu { display:block; }
  .elementor-nav-menu--dropdown-mobile .lcv-menu .sub-menu { position:static; }
  .lcv-gallery .lcv-gallery-items { grid-template-columns:repeat(var(--lcv-gallery-mobile-columns,2),minmax(0,1fr)); }
  .lcv-gallery[data-lcv-layout=masonry] .lcv-gallery-items { column-count:var(--lcv-gallery-mobile-columns,2); }
}
@media(prefers-reduced-motion:reduce) {
  .lcv-slides.lcv-carousel-ready .swiper-slide-active { animation:none; }
  .lcv-flip-box .elementor-flip-box__layer, .lcv-gallery .e-gallery-image img { transition:none; }
  .lcv-scroll-carousel > .swiper-wrapper { scroll-behavior:auto; }
}

.elementor-flip-box--direction-up .lcv-flip-box { --lcv-flip-zero:rotateX(0); --lcv-flip-front:rotateX(180deg); --lcv-flip-back:rotateX(-180deg); }
.elementor-flip-box--direction-down .lcv-flip-box { --lcv-flip-zero:rotateX(0); --lcv-flip-front:rotateX(-180deg); --lcv-flip-back:rotateX(180deg); }
.elementor-flip-box--direction-right .lcv-flip-box { --lcv-flip-front:rotateY(180deg); --lcv-flip-back:rotateY(-180deg); }
.elementor-flip-box--effect-fade .lcv-flip-box .elementor-flip-box__layer { transform:none; transition:opacity .5s; }
.elementor-flip-box--effect-fade .lcv-flip-box .elementor-flip-box__back { opacity:0; }
.elementor-flip-box--effect-fade .lcv-flip-box:hover .elementor-flip-box__back, .elementor-flip-box--effect-fade .lcv-flip-box:focus-within .elementor-flip-box__back, .elementor-flip-box--effect-fade .lcv-flip-box.lcv-flipped .elementor-flip-box__back { opacity:1; }

.lcv-menu { position:relative; }
.lcv-menu .lcv-mobile-nav { position:absolute; top:100%; width:100%; z-index:30; }
.lcv-sticky-spacer[hidden] { display:none!important; }
.lcv-sticky-spacer { display:block; width:100%; pointer-events:none; }

/* Highlight markers have a visible final state independently of Pro's animation initializer. */
.elementor-headline.lcv-headline-highlight .lcv-headline-marker path { opacity:1; stroke-dasharray:none; animation:none; transition:none; }

/* Native Woo forms remain intact inside the existing two-column styling interface. */
.lcv-woocommerce-shortcode { min-width:0; }
.lcv-woocommerce-shortcode .e-cart__column, .lcv-woocommerce-shortcode .e-checkout__column { min-width:0; }
.lcv-woocommerce-shortcode .e-cart__column-inner, .lcv-woocommerce-shortcode .e-checkout__column-inner { min-width:0; }
.lcv-woocommerce-shortcode form.woocommerce-cart-form { width:100%; }
.lcv-woocommerce-shortcode .e-coupon-box .coupon { float:none; width:100%; }

/* The configured kit breakpoint takes precedence over vendor CSS's historical 1024px default. */
.lcv-menu[data-lcv-menu-collapsed="true"] .elementor-menu-toggle { display:flex; }
.lcv-menu[data-lcv-menu-collapsed="true"] .elementor-nav-menu--main { display:none; }
.lcv-menu[data-lcv-menu-collapsed="true"].lcv-menu-open .lcv-mobile-nav { display:block; }
.lcv-menu[data-lcv-menu-collapsed="true"] .elementor-nav-menu { display:block; }
.lcv-menu[data-lcv-menu-collapsed="true"] .sub-menu { position:static; }
.lcv-menu[data-lcv-menu-collapsed="false"] .elementor-menu-toggle, .lcv-menu[data-lcv-menu-collapsed="false"] .lcv-mobile-nav { display:none; }
.lcv-menu[data-lcv-menu-collapsed="false"] .elementor-nav-menu--main { display:flex; }
.lcv-menu[data-lcv-menu-collapsed="false"] .elementor-nav-menu--main > .elementor-nav-menu { display:flex; }
