/*!
 * Themeasy — Divider (SVG Separator)
 *
 * Decorative separator with three skins: a classic rule (solid/dashed/dotted/
 * double or gradient fill, with optional fade-out ends), a dot rule with
 * configurable dot size and gap, and an SVG motif that either spans the width
 * as a single silhouette or repeats as a seamless pattern (curve, wave,
 * zigzag, triangle, mountains, tilt, arrow, clouds), with flip H/V modifiers
 * — painted filled as a CSS mask, or as a line by an inline <svg> stroke that
 * can draw itself on scroll. Line and dots share one structure — horizontal or
 * vertical, a single continuous rule or two segments flanking a center element
 * (icon, text, badge). Everything is fully visible with no JS (the draw-on is
 * the one motion that needs GSAP, and it degrades to the drawn line);
 * consumes public --tms-* tokens with literal fallbacks so dark mode
 * keeps working.
 *
 * @author Themeasy
 * @link https://themeasy.co
 * @since 1.0.0
 */
.e-con>.elementor-widget-themeasy-divider,.e-con-inner>.elementor-widget-themeasy-divider{width:var(--container-widget-width,100%);--flex-grow:var(--container-widget-flex-grow)}.tms-divider{--tms-divider-line-color:var(--tms-accent-color,var(--tms-primary-color,currentColor));--tms-divider-line-weight:2px;--tms-divider-line-style:solid;--tms-divider-fade-length:20%;--tms-divider-dot-color:var(--tms-accent-color,var(--tms-primary-color,currentColor));--tms-divider-dot-size:4px;--tms-divider-dot-gap:12px;--tms-divider-shape-color:var(--tms-accent-color,var(--tms-primary-color,currentColor));--tms-divider-shape-height:80px;--tms-divider-shape-weight:6px;--tms-divider-shape-linecap:butt;box-sizing:border-box;justify-content:center;width:100%;display:flex}.tms-divider__inner{align-items:center;gap:16px;width:100%;max-width:100%;display:flex}.tms-divider--skin-line .tms-divider__line,.tms-divider--skin-dots .tms-divider__line{flex:1 1 0;align-self:center;min-width:0;display:block}.tms-divider--line-solid .tms-divider__line{border-top-width:var(--tms-divider-line-weight);border-top-style:var(--tms-divider-line-style);border-top-color:var(--tms-divider-line-color);height:0}.tms-divider--line-gradient .tms-divider__line{height:var(--tms-divider-line-weight);border-radius:calc(var(--tms-divider-line-weight) / 2);background-color:var(--tms-divider-line-color)}.tms-divider--fade-edges .tms-divider__line{-webkit-mask-image:linear-gradient(90deg, transparent, #000 var(--tms-divider-fade-length), #000 calc(100% - var(--tms-divider-fade-length)), transparent);-webkit-mask-image:linear-gradient(90deg, transparent, #000 var(--tms-divider-fade-length), #000 calc(100% - var(--tms-divider-fade-length)), transparent);mask-image:linear-gradient(90deg, transparent, #000 var(--tms-divider-fade-length), #000 calc(100% - var(--tms-divider-fade-length)), transparent)}.tms-divider--fade-edges .tms-divider__line--start{-webkit-mask-image:linear-gradient(90deg, transparent, #000 var(--tms-divider-fade-length));-webkit-mask-image:linear-gradient(90deg, transparent, #000 var(--tms-divider-fade-length));mask-image:linear-gradient(90deg, transparent, #000 var(--tms-divider-fade-length))}.tms-divider--fade-edges .tms-divider__line--end{-webkit-mask-image:linear-gradient(90deg, #000 calc(100% - var(--tms-divider-fade-length)), transparent);-webkit-mask-image:linear-gradient(90deg, #000 calc(100% - var(--tms-divider-fade-length)), transparent);mask-image:linear-gradient(90deg, #000 calc(100% - var(--tms-divider-fade-length)), transparent)}.tms-divider--vertical .tms-divider__inner{flex-direction:column;width:auto}.tms-divider--vertical .tms-divider__line{min-height:0}.tms-divider--vertical.tms-divider--line-solid .tms-divider__line{border-top:0;border-left-width:var(--tms-divider-line-weight);border-left-style:var(--tms-divider-line-style);border-left-color:var(--tms-divider-line-color);width:0;height:auto}.tms-divider--vertical.tms-divider--line-gradient .tms-divider__line{width:var(--tms-divider-line-weight);height:auto}.tms-divider--vertical.tms-divider--fade-edges .tms-divider__line{-webkit-mask-image:linear-gradient(180deg, transparent, #000 var(--tms-divider-fade-length), #000 calc(100% - var(--tms-divider-fade-length)), transparent);-webkit-mask-image:linear-gradient(180deg, transparent, #000 var(--tms-divider-fade-length), #000 calc(100% - var(--tms-divider-fade-length)), transparent);mask-image:linear-gradient(180deg, transparent, #000 var(--tms-divider-fade-length), #000 calc(100% - var(--tms-divider-fade-length)), transparent)}.tms-divider--vertical.tms-divider--fade-edges .tms-divider__line--start{-webkit-mask-image:linear-gradient(180deg, transparent, #000 var(--tms-divider-fade-length));-webkit-mask-image:linear-gradient(180deg, transparent, #000 var(--tms-divider-fade-length));mask-image:linear-gradient(180deg, transparent, #000 var(--tms-divider-fade-length))}.tms-divider--vertical.tms-divider--fade-edges .tms-divider__line--end{-webkit-mask-image:linear-gradient(180deg, #000 calc(100% - var(--tms-divider-fade-length)), transparent);-webkit-mask-image:linear-gradient(180deg, #000 calc(100% - var(--tms-divider-fade-length)), transparent);mask-image:linear-gradient(180deg, #000 calc(100% - var(--tms-divider-fade-length)), transparent)}.tms-divider--skin-dots .tms-divider__line{height:var(--tms-divider-dot-size);background-image:radial-gradient(circle closest-side, var(--tms-divider-dot-color) 100%, transparent 100%);background-position:50%;background-repeat:repeat-x;background-size:calc(var(--tms-divider-dot-size) + var(--tms-divider-dot-gap)) 100%}.tms-divider--vertical.tms-divider--skin-dots .tms-divider__line{width:var(--tms-divider-dot-size);background-repeat:repeat-y;background-size:100% calc(var(--tms-divider-dot-size) + var(--tms-divider-dot-gap));height:auto}.tms-divider__element{text-align:center;color:var(--tms-divider-line-color);flex:none;justify-content:center;align-items:center;line-height:1;display:inline-flex}.tms-divider__element--text{letter-spacing:.05em}.tms-divider__element--icon{font-size:1.25em;line-height:1}.tms-divider__element--icon svg{fill:currentColor;width:1em;height:1em}.tms-divider__element--icon svg[fill=none]{fill:none;stroke:currentColor}.tms-divider__element--icon img{width:1em;height:1em}.tms-divider--skin-shape .tms-divider__inner{gap:0;display:block}.tms-divider__shape{width:100%;height:var(--tms-divider-shape-height);color:var(--tms-divider-shape-color);line-height:0;display:block;position:relative}.tms-divider__shape-motif{width:100%;height:100%;-webkit-mask-image:var(--tms-divider-shape-mask);-webkit-mask-image:var(--tms-divider-shape-mask);mask-image:var(--tms-divider-shape-mask);background-color:currentColor;display:block;-webkit-mask-position:0;mask-position:0;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.tms-divider--shape-tiled .tms-divider__shape-motif{-webkit-mask-repeat:repeat-x;mask-repeat:repeat-x;-webkit-mask-size:var(--tms-divider-shape-tile,1200px) 100%;-webkit-mask-size:var(--tms-divider-shape-tile,1200px) 100%;mask-size:var(--tms-divider-shape-tile,1200px) 100%}.tms-divider--shape-line .tms-divider__shape{box-sizing:border-box;padding-block:calc(var(--tms-divider-shape-weight) / 2);overflow:hidden}.tms-divider__shape-svg{width:100%;height:100%;display:block;overflow:visible}.tms-divider__shape-path{fill:none;stroke:currentColor;stroke-width:var(--tms-divider-shape-weight);stroke-linecap:var(--tms-divider-shape-linecap);stroke-linejoin:round;vector-effect:non-scaling-stroke}.tms-divider--shape-tiled .tms-divider__shape-svg{width:calc(var(--tms-divider-shape-repeats,1) * var(--tms-divider-shape-tile,1200px));min-width:100%}@media screen and (scripting:enabled){.tms-divider--draw-pending .tms-divider__shape-path{stroke-dasharray:1000;stroke-dashoffset:1000px;animation:1ms linear 3s forwards tms-divider-draw-failsafe}}@keyframes tms-divider-draw-failsafe{to{stroke-dashoffset:0}}.tms-divider--flip-h .tms-divider__shape-motif,.tms-divider--flip-h .tms-divider__shape-svg{transform:scaleX(-1)}.tms-divider--flip-v .tms-divider__shape-motif,.tms-divider--flip-v .tms-divider__shape-svg{transform:scaleY(-1)}.tms-divider--flip-h.tms-divider--flip-v .tms-divider__shape-motif,.tms-divider--flip-h.tms-divider--flip-v .tms-divider__shape-svg{transform:scale(-1)}@media (prefers-reduced-motion:reduce){.tms-divider,.tms-divider__line,.tms-divider__element,.tms-divider__shape,.tms-divider__shape-motif,.tms-divider__shape-svg,.tms-divider__shape-path{transition:none!important;animation:none!important}.tms-divider--draw-pending .tms-divider__shape-path{stroke-dashoffset:0}}