/* Original design styles load first; these replace runtime-only widget states. */
[hidden] { display: none !important; }
html { scroll-behavior: smooth; }
.elementor-invisible { visibility: visible; }
.elementor-headline-dynamic-wrapper { display: inline-block !important; width: auto !important; }
.elementor-headline-dynamic-text.elementor-headline-text-active { position: relative !important; opacity: 1 !important; }
.menu-opened .ue_menu { visibility: visible !important; }
/* Keep the fullscreen menu above product images with their own sticky stacking layer. */
body.menu-opened .elementor-location-header { position: relative; z-index: 100000; }
.static-hotspot-active .e-hotspot__tooltip { opacity: 1 !important; visibility: visible !important; transform: translateY(0); }
.elementor-toggle .elementor-toggle-item:last-of-type { margin-bottom: 0 !important; }
.unfold_card:not(.static-unfolded) [id^="ue-text-unfolded"], .unfold_card:not(.static-unfolded) [id^="ue-icon-unfolded"], .static-unfolded [id^="ue-text-folded"], .static-unfolded [id^="ue-icon-folded"] { display: none !important; }
.static-unfolded .unfold_wrapper { max-height: none !important; height: auto !important; }
.static-unfolded .uf_overlay { display: none !important; }
.uc_marquee .static-marquee-track { display: flex; flex: 0 0 auto; width: max-content; }
.static-marquee-track > * { flex: 0 0 auto; }
.uc_marquee:hover .static-marquee-track { animation-play-state: paused; }
.static-dialog { padding: 32px; border: 0; border-radius: 3px; max-width: min(1100px, 94vw); width: 94vw; max-height: 90vh; overflow: auto; background: white; color: #151d4c; }
.static-dialog::backdrop { background: rgb(0 0 0 / 65%); }
.static-dialog-close { position: sticky; top: 0; float: right; z-index: 5; background: white; color: #151d4c; border: 0; font-size: 30px; width: 40px; height: 40px; padding: 0; cursor: pointer; }
.static-dialog > img { display: block; max-height: 75vh; width: auto; max-width: 100%; margin: auto; }
.static-modal-open { overflow: hidden; }
.static-video { width: 100%; aspect-ratio: 16 / 9; border: 0; display: block; }
.elementor-wrapper .static-video { height: 100%; position: absolute; inset: 0; }
.static-product-frame { width: 100%; height: 75vh; border: 0; }
.static-form-status { margin-top: 16px; font-size: 15px; width: 100%; }
.static-sticky { position: sticky !important; top: 0; z-index: 99; }
.elementor-gallery__container { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: var(--galleries-gap, 20px); }
.e-gallery-item { position: relative; display: block; }
.e-gallery-image { background-size: cover; background-position: center; padding-bottom: 75%; }
@media(max-width:767px) { .elementor-gallery__container { grid-template-columns: repeat(2,minmax(0,1fr)); } .static-dialog { padding: 14px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }

.static-dialog > .elementor-location-popup { display: block !important; }
.static-elementor-dialog .elementor-location-popup { display: block !important; }

.static-colour-dialog { width: 833px; max-width: calc(100vw - 40px); padding: 0; border-radius: 20px; background: #f0f0f0; }
.static-colour-dialog .static-dialog-close { position: absolute; top: 10px; left: 10px; width: 30px; height: 30px; border-radius: 50%; background: #323232; color: white; font-size: 20px; }
.static-colour-dialog .static-product-frame { height: 643px; display: block; }
@media (max-width: 1024px) { .static-colour-dialog { width: 693px; } }
@media (max-width: 767px) { .static-colour-dialog { width: 316px; } }

/* Match the original vertical logo-marquee layout. */
.uc_marquee.static-marquee-vertical .static-marquee-track{width:100%!important;flex-direction:column}
.static-marquee-vertical .uc_logo_marquee_holder{flex-shrink:0}
.before-after-widget{touch-action:pan-y}.before-after-widget .cocoen-drag:focus-visible{outline:3px solid #65c7bf;outline-offset:4px}
.static-parallax-layer{position:absolute;inset:0;pointer-events:none;z-index:0}.static-parallax-layer~.e-con-inner{position:relative;z-index:1}
.static-elementor-dialog{padding:0!important;width:max-content;max-width:100vw;max-height:100vh;border-radius:10px;background:transparent!important;overflow:visible}
.static-elementor-dialog .dialog-widget-content{position:relative;overflow:auto;max-height:100vh;background:white}
.static-elementor-dialog .dialog-message{max-width:100vw;max-height:100vh;overflow:auto}
.static-elementor-dialog .static-dialog-close{position:absolute;top:12px;right:12px;float:none;width:24px;height:24px;line-height:24px;font-size:24px;background:transparent;color:#333}
#elementor-popup-modal-3231::backdrop{background:rgba(0,0,0,.8)}
#elementor-popup-modal-3776{border-radius:0}#elementor-popup-modal-3776::backdrop{background:rgba(32,32,32,.53)}
#elementor-popup-modal-3776 iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
#elementor-popup-modal-3776 .elementor-widget-html,#elementor-popup-modal-3776 .elementor-widget-container{position:static}
#elementor-popup-modal-3776 .static-dialog-close{z-index:30;background:#fff;border-radius:50%;right:20px;top:20px}
.static-gallery-dialog{position:fixed;inset:0;width:100vw;max-width:100vw;height:100vh;max-height:100vh;margin:0;padding:0!important;border-radius:0;background:transparent;color:rgba(237,237,237,.9);overflow:hidden}
.static-gallery-dialog::backdrop{background:rgba(0,0,0,.8)}
.static-gallery-dialog button{border:0;background:none;color:inherit;padding:5px;cursor:pointer;line-height:1;box-shadow:none}
.static-gallery-dialog .static-dialog-close{position:absolute;right:15px;top:15px;float:none;width:30px;height:30px;font-size:20px;z-index:5}
.static-gallery-stage{position:absolute;inset:70px 60px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.static-gallery-stage img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;box-shadow:0 0 30px rgba(0,0,0,.2)}
.static-gallery-stage.is-zoomed{overflow:auto;display:block}.static-gallery-stage.is-zoomed img{max-width:none;max-height:none;width:150%;height:auto}
.static-gallery-caption{position:absolute;bottom:0;left:0;width:100%;padding:15px 20px;text-align:center;font-size:16px;font-weight:700;line-height:24px}
.static-gallery-count{position:absolute;top:15px;left:20px;font-size:16px;line-height:30px}
.static-gallery-toolbar{position:absolute;right:62px;top:15px;display:flex;gap:15px}.static-gallery-toolbar button{width:30px;height:30px;font-size:20px}
.static-gallery-dialog .static-gallery-prev,.static-gallery-dialog .static-gallery-next{position:absolute;top:50%;transform:translateY(-50%);font-size:25px;z-index:3}.static-gallery-prev{left:6.5%}.static-gallery-next{right:6.5%}
.static-gallery-share{position:absolute;right:0;top:40px;background:#fff;color:#222;padding:12px;white-space:nowrap;border-radius:3px}.static-gallery-share a{color:inherit;font-size:14px}
@media(max-width:767px){.static-gallery-stage{left:20px;right:20px}.static-gallery-prev{left:0}.static-gallery-next{right:0}.static-gallery-toolbar{gap:5px;right:50px}}
