  .faceline-video-heading{
  --faceline-video-heading-fallback:#3d3b54;
  --faceline-video-pos-x:50%;
  --faceline-video-pos-y:50%;
  position:relative;
  display:block;
  width:100%;
  margin:0;
  color:var(--faceline-video-heading-fallback);
  line-height:1.08;
  overflow:visible;
}
.faceline-video-heading__stage{
  position:absolute;
  inset:0;
  z-index:2;
  width:100%;
  height:100%;
  pointer-events:none;
  overflow:visible;
}
.faceline-video-heading__canvas{
  position:absolute;
  inset:0;
  z-index:2;
  display:block;
  width:100%;
  height:100%;
  opacity:1;
  mix-blend-mode:normal !important;
  pointer-events:none;
}
.faceline-video-heading.has-video .faceline-video-heading__canvas{
  opacity:0;
}
.faceline-video-heading.has-video.is-video-rendering .faceline-video-heading__canvas{
  opacity:1;
}
/*
 * Safari peab lähtevideo reaalselt renderdama, et canvas saaks selle kaadreid lugeda.
 * Video jääb elemendi sisse, kuid on praktiliselt nähtamatu ja canvas paikneb selle kohal.
 */
.faceline-video-heading__video{
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:cover !important;
  opacity:0.01 !important;
  visibility:visible !important;
  pointer-events:none !important;
  transform:translateZ(0);
  -webkit-transform:translateZ(0);
}
.faceline-video-heading__text{
  position:relative;
  z-index:3;
  display:block;
  width:100%;
  white-space:pre-wrap;
  color:var(--faceline-video-heading-fallback);
  -webkit-text-fill-color:var(--faceline-video-heading-fallback);
}
/*
 * Videoga pealkiri ei vilguta enne laadimist varuvärvi teksti.
 * Tekst jääb layout'i ja mõõtmiseks alles, kuid muutub nähtavaks alles
 * fallbackina reaalse video vea korral. Valmis olekus näitab sisu canvas.
 */
.faceline-video-heading.has-video .faceline-video-heading__text{
  opacity:0;
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
  text-shadow:none !important;
}
.faceline-video-heading.has-video.is-video-error .faceline-video-heading__text{
  opacity:1;
  color:var(--faceline-video-heading-fallback) !important;
  -webkit-text-fill-color:var(--faceline-video-heading-fallback) !important;
}
.faceline-video-heading__char{
  display:inline;
  position:relative;
}


@property --fl-lg-angle-1 {
  syntax: "<angle>";
  inherits: false;
  initial-value: -75deg;
}
@property --fl-lg-angle-2 {
  syntax: "<angle>";
  inherits: false;
  initial-value: -45deg;
}

.faceline-liquid-button-align{display:flex;width:100%}
.faceline-liquid-button-wrap{
  --fl-lg-hover-time:400ms;
  --fl-lg-hover-ease:cubic-bezier(.25,1,.5,1);
  --fl-lg-radius:999vw;
  --fl-lg-border-width:clamp(1px,.0625em,4px);
  --fl-lg-blur:4px;
  --fl-lg-text:rgba(50,50,50,1);
  --fl-lg-glass-light:rgba(255,255,255,.2);
  --fl-lg-outline-dark:rgba(0,0,0,.5);
  --fl-lg-outline-light:rgba(255,255,255,.5);
  position:relative;z-index:2;display:inline-block;width:max-content;max-width:100%;
  border-radius:var(--fl-lg-radius);background:transparent;pointer-events:none;
  transition:all var(--fl-lg-hover-time) var(--fl-lg-hover-ease);
}
.faceline-liquid-button-shadow{
  --fl-lg-shadow-cutoff:2em;position:absolute;width:calc(100% + var(--fl-lg-shadow-cutoff));height:calc(100% + var(--fl-lg-shadow-cutoff));
  top:calc(0% - var(--fl-lg-shadow-cutoff) / 2);left:calc(0% - var(--fl-lg-shadow-cutoff) / 2);
  filter:blur(clamp(2px,.125em,12px));-webkit-filter:blur(clamp(2px,.125em,12px));overflow:visible;pointer-events:none;
  transition:filter var(--fl-lg-hover-time) var(--fl-lg-hover-ease);
}
.faceline-liquid-button-shadow::after{
  content:"";position:absolute;z-index:0;inset:0;border-radius:var(--fl-lg-radius);background:linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,.1));
  width:calc(100% - var(--fl-lg-shadow-cutoff) - .25em);height:calc(100% - var(--fl-lg-shadow-cutoff) - .25em);
  top:calc(var(--fl-lg-shadow-cutoff) - .5em);left:calc(var(--fl-lg-shadow-cutoff) - .875em);padding:.125em;box-sizing:border-box;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;
  mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;
  transition:all var(--fl-lg-hover-time) var(--fl-lg-hover-ease);overflow:visible;opacity:1;
}
.faceline-liquid-button{
  --fl-lg-angle-1:-75deg;--fl-lg-angle-2:-45deg;all:unset;box-sizing:border-box;cursor:pointer;position:relative;
  -webkit-tap-highlight-color:rgba(0,0,0,0);pointer-events:auto;z-index:3;display:block;width:max-content;max-width:100%;
  color:var(--fl-lg-text);text-decoration:none;
  background:linear-gradient(-75deg,rgba(255,255,255,.05),var(--fl-lg-glass-light),rgba(255,255,255,.05));
  border-radius:var(--fl-lg-radius);
  box-shadow:inset 0 .125em .125em rgba(0,0,0,.05),inset 0 -.125em .125em rgba(255,255,255,.5),0 .25em .125em -.125em rgba(0,0,0,.2),0 0 .1em .25em inset rgba(255,255,255,.2),0 0 0 0 rgba(255,255,255,1);
  backdrop-filter:blur(var(--fl-lg-blur));-webkit-backdrop-filter:blur(var(--fl-lg-blur));
  transition:all var(--fl-lg-hover-time) var(--fl-lg-hover-ease);
}
.faceline-liquid-button:hover{
  transform:scale(.975);backdrop-filter:blur(.01em);-webkit-backdrop-filter:blur(.01em);
  box-shadow:inset 0 .125em .125em rgba(0,0,0,.05),inset 0 -.125em .125em rgba(255,255,255,.5),0 .15em .05em -.1em rgba(0,0,0,.25),0 0 .05em .1em inset rgba(255,255,255,.5),0 0 0 0 rgba(255,255,255,1);
}
.faceline-liquid-button__content{
  position:relative;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;min-height:inherit;
  user-select:none;-webkit-user-select:none;color:inherit;padding-inline:1.5em;padding-block:.875em;border-radius:inherit;
  transition:all var(--fl-lg-hover-time) var(--fl-lg-hover-ease);
}
.faceline-liquid-button__label{
  position:relative;z-index:4;display:block;color:var(--fl-lg-text);letter-spacing:-.05em;font-weight:500;
  text-shadow:0 .25em .05em rgba(0,0,0,.1);transition:all var(--fl-lg-hover-time) var(--fl-lg-hover-ease);
}
.faceline-liquid-icon{position:relative;z-index:4;display:inline-flex;align-items:center;justify-content:center;line-height:1;color:currentColor;transition:all var(--fl-lg-hover-time) var(--fl-lg-hover-ease)}
.faceline-liquid-icon svg{display:block;fill:currentColor}
.faceline-liquid-button:hover .faceline-liquid-button__label{text-shadow:.025em .025em .025em rgba(0,0,0,.12)}
.faceline-liquid-button__content::after{
  content:"";display:block;position:absolute;z-index:3;width:calc(100% - var(--fl-lg-border-width));height:calc(100% - var(--fl-lg-border-width));
  top:calc(var(--fl-lg-border-width) / 2);left:calc(var(--fl-lg-border-width) / 2);box-sizing:border-box;border-radius:var(--fl-lg-radius);overflow:clip;
  background:linear-gradient(var(--fl-lg-angle-2),rgba(255,255,255,0) 0%,rgba(255,255,255,.5) 40% 50%,rgba(255,255,255,0) 55%);
  mix-blend-mode:screen;pointer-events:none;background-size:200% 200%;background-position:0% 50%;background-repeat:no-repeat;
  transition:background-position calc(var(--fl-lg-hover-time) * 1.25) var(--fl-lg-hover-ease),--fl-lg-angle-2 calc(var(--fl-lg-hover-time) * 1.25) var(--fl-lg-hover-ease);
}
.faceline-liquid-button:hover .faceline-liquid-button__content::after{background-position:25% 50%}
.faceline-liquid-button:active .faceline-liquid-button__content::after{background-position:50% 15%;--fl-lg-angle-2:-15deg}
.faceline-liquid-button::after{
  content:"";position:absolute;z-index:1;inset:0;border-radius:var(--fl-lg-radius);width:calc(100% + var(--fl-lg-border-width));height:calc(100% + var(--fl-lg-border-width));
  top:calc(0% - var(--fl-lg-border-width) / 2);left:calc(0% - var(--fl-lg-border-width) / 2);padding:var(--fl-lg-border-width);box-sizing:border-box;
  background:conic-gradient(from var(--fl-lg-angle-1) at 50% 50%,var(--fl-lg-outline-dark),rgba(0,0,0,0) 5% 40%,var(--fl-lg-outline-dark) 50%,rgba(0,0,0,0) 60% 95%,var(--fl-lg-outline-dark)),linear-gradient(180deg,var(--fl-lg-outline-light),var(--fl-lg-outline-light));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;
  transition:all var(--fl-lg-hover-time) var(--fl-lg-hover-ease),--fl-lg-angle-1 500ms ease;
  box-shadow:inset 0 0 0 calc(var(--fl-lg-border-width) / 2) var(--fl-lg-outline-light);
}
.faceline-liquid-button:hover::after{--fl-lg-angle-1:-125deg}
.faceline-liquid-button:active::after{--fl-lg-angle-1:-75deg}
.faceline-liquid-button-wrap:has(.faceline-liquid-button:hover) .faceline-liquid-button-shadow{filter:blur(clamp(2px,.0625em,6px));-webkit-filter:blur(clamp(2px,.0625em,6px))}
.faceline-liquid-button-wrap:has(.faceline-liquid-button:hover) .faceline-liquid-button-shadow::after{top:calc(var(--fl-lg-shadow-cutoff) - .875em);opacity:1}
.faceline-liquid-button-wrap:has(.faceline-liquid-button:active){transform:rotate3d(1,0,0,25deg)}
.faceline-liquid-button-wrap:has(.faceline-liquid-button:active) .faceline-liquid-button{
  box-shadow:inset 0 .125em .125em rgba(0,0,0,.05),inset 0 -.125em .125em rgba(255,255,255,.5),0 .125em .125em -.125em rgba(0,0,0,.2),0 0 .1em .25em inset rgba(255,255,255,.2),0 .225em .05em 0 rgba(0,0,0,.05),0 .25em 0 0 rgba(255,255,255,.75),inset 0 .25em .05em 0 rgba(0,0,0,.15)
}
.faceline-liquid-button-wrap:has(.faceline-liquid-button:active) .faceline-liquid-button-shadow{filter:blur(clamp(2px,.125em,12px));-webkit-filter:blur(clamp(2px,.125em,12px))}
.faceline-liquid-button-wrap:has(.faceline-liquid-button:active) .faceline-liquid-button-shadow::after{top:calc(var(--fl-lg-shadow-cutoff) - .5em);opacity:.75}
.faceline-liquid-button-wrap:has(.faceline-liquid-button:active) .faceline-liquid-button__label{text-shadow:.025em .25em .05em rgba(0,0,0,.12)}
.faceline-liquid-button:focus-visible{outline:2px solid currentColor;outline-offset:4px}
@media (hover:none) and (pointer:coarse){
  .faceline-liquid-button__content::after,.faceline-liquid-button:active .faceline-liquid-button__content::after{--fl-lg-angle-2:-45deg}
  .faceline-liquid-button::after,.faceline-liquid-button:hover::after,.faceline-liquid-button:active::after{--fl-lg-angle-1:-75deg}
  .faceline-liquid-button:hover{transform:none}.faceline-liquid-button-wrap:has(.faceline-liquid-button:active){transform:none}
}

/* Faceline Sweep pealkiri */
.faceline-gradient-heading,
.faceline-sweep-heading{
  margin:0;
  padding:0;
}
.faceline-sweep-heading__stack{
  position:relative;
  display:inline-grid;
  max-width:100%;
  vertical-align:top;
}
.faceline-sweep-heading__base,
.faceline-sweep-heading__overlay{
  grid-area:1 / 1;
  min-width:0;
  white-space:normal;
  overflow-wrap:break-word;
}
.faceline-sweep-heading__base{
  position:relative;
  z-index:1;
  color:var(--fl-sweep-base,#605649);
  -webkit-text-fill-color:var(--fl-sweep-base,#605649);
}
.faceline-sweep-heading__overlay{
  position:relative;
  z-index:2;
  pointer-events:none;
  color:transparent;
  -webkit-text-fill-color:transparent;
}
.faceline-sweep-heading__overlay-inner{
  color:transparent;
  -webkit-text-fill-color:transparent;
  -webkit-background-clip:text;
  background-clip:text;
  background-image:linear-gradient(
    var(--fl-sweep-gradient-angle,90deg),
    transparent 0%,
    transparent var(--fl-sweep-outer-start,46.333%),
    var(--fl-sweep-light) var(--fl-sweep-inner-start,49.25%),
    var(--fl-sweep-light) var(--fl-sweep-inner-end,50.75%),
    transparent var(--fl-sweep-outer-end,53.667%),
    transparent 100%
  );
  background-repeat:no-repeat;
  background-size:300% 300%;
  background-position:100% 50%;
  animation-name:var(--fl-sweep-animation);
  animation-duration:var(--fl-sweep-total,4.5s);
  animation-timing-function:linear;
  animation-iteration-count:infinite;
  will-change:background-position;
}
/* Whole text: one sweep travels through the complete multiline text block. */
.faceline-sweep-heading--whole .faceline-sweep-heading__overlay-inner{
  display:block;
}
/* Lines: box-decoration-break clones the beam background for each rendered line fragment. */
.faceline-sweep-heading--lines .faceline-sweep-heading__overlay-inner{
  display:inline;
  -webkit-box-decoration-break:clone;
  box-decoration-break:clone;
}
@media (prefers-reduced-motion:reduce){
  .faceline-sweep-heading__overlay-inner{animation:none!important;background-position:-120% 50%!important}
}


/* Faceline Hõljuv pilt */
.elementor-widget-faceline-floating-image,
.elementor-widget-faceline-floating-image > .elementor-widget-container{
  overflow:visible!important;
}

/*
 * Widgeti enda Elementor wrapper võib absolute/fixed elemendi puhul jääda 0-kõrguseks.
 * See on tahtlik: nähtav pilt positsioneeritakse oma kihis ega sõltu wrapperi mõõtmetest.
 */
.faceline-floating-image{
  --fl-fi-offset-x:0px;
  --fl-fi-offset-y:0px;
  --fl-fi-base-x:0%;
  --fl-fi-base-y:0%;
  display:block!important;
  visibility:visible!important;
  opacity:1;
  width:max-content;
  max-width:none;
  line-height:0;
  transform:
    translate(var(--fl-fi-base-x),var(--fl-fi-base-y))
    translate(var(--fl-fi-offset-x),var(--fl-fi-offset-y));
  transform-origin:center center;
  pointer-events:auto;
  overflow:visible;
}
.faceline-floating-image__motion{
  --fl-fi-duration:6s;
  --fl-fi-distance:18px;
  --fl-fi-rotation:4deg;
  --fl-fi-scale:1.04;
  display:block!important;
  visibility:visible!important;
  width:max-content;
  max-width:none;
  line-height:0;
  transform-origin:center center;
  animation-duration:var(--fl-fi-duration);
  animation-iteration-count:infinite;
  animation-fill-mode:both;
  animation-timing-function:ease-in-out;
  will-change:transform;
}
.faceline-floating-image__link{
  display:block;
  width:max-content;
  line-height:0;
}
.faceline-floating-image__img{
  display:block!important;
  visibility:visible!important;
  opacity:1;
  width:300px;
  max-width:none!important;
  height:auto!important;
  border:0;
  object-fit:contain;
}

/* Desktop positsioneerimine. 50% + translate(-50%) arvestab elemendi enda tegeliku mõõdu maha. */
.faceline-floating-image.fl-fi-desktop-h-left{left:0;right:auto;--fl-fi-base-x:0%}
.faceline-floating-image.fl-fi-desktop-h-center{left:50%;right:auto;--fl-fi-base-x:-50%}
.faceline-floating-image.fl-fi-desktop-h-right{left:auto;right:0;--fl-fi-base-x:0%}
.faceline-floating-image.fl-fi-desktop-v-top{top:0;bottom:auto;--fl-fi-base-y:0%}
.faceline-floating-image.fl-fi-desktop-v-center{top:50%;bottom:auto;--fl-fi-base-y:-50%}
.faceline-floating-image.fl-fi-desktop-v-bottom{top:auto;bottom:0;--fl-fi-base-y:0%}

/* Static/normal jääb dokumendivoogu ega kasuta top/left ankruid. */
.faceline-floating-image[style*="position:relative"]{
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  --fl-fi-base-x:0%!important;
  --fl-fi-base-y:0%!important;
}

@keyframes fl-fi-float{
  0%,100%{transform:translate3d(0,calc(var(--fl-fi-distance) * -.35),0)}
  50%{transform:translate3d(0,var(--fl-fi-distance),0)}
}
@keyframes fl-fi-float-x{
  0%,100%{transform:translate3d(calc(var(--fl-fi-distance) * -.5),0,0)}
  50%{transform:translate3d(var(--fl-fi-distance),0,0)}
}
@keyframes fl-fi-sway{
  0%,100%{transform:rotate(calc(var(--fl-fi-rotation) * -1))}
  50%{transform:rotate(var(--fl-fi-rotation))}
}
@keyframes fl-fi-pulse{
  0%,100%{transform:scale(1)}
  50%{transform:scale(var(--fl-fi-scale))}
}
@keyframes fl-fi-rotate{
  from{transform:rotate(0deg)}
  to{transform:rotate(360deg)}
}
@keyframes fl-fi-drift{
  0%,100%{transform:translate3d(calc(var(--fl-fi-distance) * -.5),calc(var(--fl-fi-distance) * .35),0) rotate(calc(var(--fl-fi-rotation) * -.5))}
  50%{transform:translate3d(var(--fl-fi-distance),calc(var(--fl-fi-distance) * -.65),0) rotate(var(--fl-fi-rotation))}
}
@keyframes fl-fi-breathe{
  0%,100%{transform:translate3d(0,calc(var(--fl-fi-distance) * .15),0) scale(1)}
  50%{transform:translate3d(0,calc(var(--fl-fi-distance) * -.35),0) scale(var(--fl-fi-scale))}
}
.faceline-floating-image--anim-none .faceline-floating-image__motion{animation:none}
.faceline-floating-image--anim-float .faceline-floating-image__motion{animation-name:fl-fi-float}
.faceline-floating-image--anim-float-x .faceline-floating-image__motion{animation-name:fl-fi-float-x}
.faceline-floating-image--anim-sway .faceline-floating-image__motion{animation-name:fl-fi-sway}
.faceline-floating-image--anim-pulse .faceline-floating-image__motion{animation-name:fl-fi-pulse}
.faceline-floating-image--anim-rotate .faceline-floating-image__motion{animation-name:fl-fi-rotate;animation-timing-function:linear}
.faceline-floating-image--anim-drift .faceline-floating-image__motion{animation-name:fl-fi-drift}
.faceline-floating-image--anim-breathe .faceline-floating-image__motion{animation-name:fl-fi-breathe}

@media (max-width:1024px){
  .faceline-floating-image.fl-fi-tablet-h-left{left:0;right:auto;--fl-fi-base-x:0%}
  .faceline-floating-image.fl-fi-tablet-h-center{left:50%;right:auto;--fl-fi-base-x:-50%}
  .faceline-floating-image.fl-fi-tablet-h-right{left:auto;right:0;--fl-fi-base-x:0%}
  .faceline-floating-image.fl-fi-tablet-v-top{top:0;bottom:auto;--fl-fi-base-y:0%}
  .faceline-floating-image.fl-fi-tablet-v-center{top:50%;bottom:auto;--fl-fi-base-y:-50%}
  .faceline-floating-image.fl-fi-tablet-v-bottom{top:auto;bottom:0;--fl-fi-base-y:0%}
}
@media (max-width:767px){
  .faceline-floating-image.fl-fi-mobile-h-left{left:0;right:auto;--fl-fi-base-x:0%}
  .faceline-floating-image.fl-fi-mobile-h-center{left:50%;right:auto;--fl-fi-base-x:-50%}
  .faceline-floating-image.fl-fi-mobile-h-right{left:auto;right:0;--fl-fi-base-x:0%}
  .faceline-floating-image.fl-fi-mobile-v-top{top:0;bottom:auto;--fl-fi-base-y:0%}
  .faceline-floating-image.fl-fi-mobile-v-center{top:50%;bottom:auto;--fl-fi-base-y:-50%}
  .faceline-floating-image.fl-fi-mobile-v-bottom{top:auto;bottom:0;--fl-fi-base-y:0%}
}
@media (prefers-reduced-motion:reduce){
  .faceline-floating-image__motion{animation:none!important;transform:none!important}
}


/* Liquid Glass: ära kuva mobiili long-press callout'i ega luba teksti valida. */
.faceline-liquid-button,
.faceline-liquid-button * {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  user-select: none;
}

/* Sweep SVG */
.faceline-sweep-svg-align{display:flex;width:100%}
.faceline-sweep-svg{
  --fl-svg-base:#8a8a8a;--fl-svg-light:#fff;--fl-svg-angle:90deg;
  --fl-svg-outer-start:43%;--fl-svg-inner-start:49%;--fl-svg-inner-end:51%;--fl-svg-outer-end:57%;
  --fl-svg-opacity:1;--fl-svg-duration:3.5s;--fl-svg-from:100% 50%;--fl-svg-to:0% 50%;
  position:relative;display:block;width:100%;aspect-ratio:1/1;overflow:visible;isolation:isolate
}
.faceline-sweep-svg__base,.faceline-sweep-svg__light{
  position:absolute;inset:0;display:block;
  -webkit-mask-image:var(--fl-svg-url);mask-image:var(--fl-svg-url);
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
  -webkit-mask-position:center;mask-position:center;
  -webkit-mask-size:contain;mask-size:contain
}
.faceline-sweep-svg__base{background:var(--fl-svg-base)}
.faceline-sweep-svg__light{
  opacity:var(--fl-svg-opacity);
  background-image:linear-gradient(var(--fl-svg-angle),transparent 0%,transparent var(--fl-svg-outer-start),var(--fl-svg-light) var(--fl-svg-inner-start),var(--fl-svg-light) var(--fl-svg-inner-end),transparent var(--fl-svg-outer-end),transparent 100%);
  background-repeat:no-repeat;background-size:300% 300%;background-position:var(--fl-svg-from);
  animation:faceline-sweep-svg-move var(--fl-svg-duration) linear infinite;will-change:background-position
}
@keyframes faceline-sweep-svg-move{from{background-position:var(--fl-svg-from)}to{background-position:var(--fl-svg-to)}}
@media (prefers-reduced-motion:reduce){.faceline-sweep-svg__light{animation:none;background-position:50% 50%}}

/* =========================================================
   Sweep SVG
   ========================================================= */
.faceline-sweep-svg-align{
  display:flex;
  width:100%;
}

.faceline-sweep-svg{
  --fl-svg-light:#fff;
  --fl-svg-angle:90deg;
  --fl-svg-outer-start:43%;
  --fl-svg-inner-start:49%;
  --fl-svg-inner-end:51%;
  --fl-svg-outer-end:57%;
  --fl-svg-opacity:1;
  --fl-svg-duration:3.5s;
  --fl-svg-from:100% 50%;
  --fl-svg-to:0% 50%;
  display:inline-block;
  width:100%;
  max-width:100%;
  line-height:0;
}

.faceline-sweep-svg__stage{
  position:relative;
  display:block;
  width:100%;
  line-height:0;
}

.faceline-sweep-svg__image{
  position:relative;
  z-index:1;
  display:block;
  width:100%;
  height:auto !important;
  max-width:none;
  object-fit:contain;
}

.faceline-sweep-svg__light{
  position:absolute;
  z-index:2;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  pointer-events:none;
  opacity:var(--fl-svg-opacity);

  -webkit-mask-image:var(--fl-svg-url);
  mask-image:var(--fl-svg-url);
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-position:0 0;
  mask-position:0 0;
  -webkit-mask-size:100% 100%;
  mask-size:100% 100%;

  background-image:linear-gradient(
    var(--fl-svg-angle),
    transparent 0%,
    transparent var(--fl-svg-outer-start),
    rgba(255,255,255,.30) var(--fl-svg-inner-start),
    var(--fl-svg-light) 50%,
    rgba(255,255,255,.30) var(--fl-svg-inner-end),
    transparent var(--fl-svg-outer-end),
    transparent 100%
  );
  background-repeat:no-repeat;
  background-size:300% 300%;
  background-position:var(--fl-svg-from);
  animation:faceline-sweep-svg-move var(--fl-svg-duration) linear infinite;
  will-change:background-position;
}

@keyframes faceline-sweep-svg-move{
  0%{background-position:var(--fl-svg-from)}
  70%{background-position:var(--fl-svg-to)}
  100%{background-position:var(--fl-svg-to)}
}

@media (prefers-reduced-motion:reduce){
  .faceline-sweep-svg__light{
    animation:none;
    background-position:50% 50%;
  }
}


/* Sweep heading: base layer must remain directly colorable by Elementor. */
.faceline-sweep-heading__base,
.faceline-sweep-heading__base-inner,
.faceline-sweep-heading__base .faceline-sweep-heading__char{
  -webkit-background-clip:border-box;
  background-clip:border-box;
}


/* =========================================================
   Hõljuv pilt v3.1.5
   Elementori widget-wrapper ise on positsioneeritav kast.
   Seetõttu editoris ei jää pildist eraldi nähtamatut placeholder-kasti.
   ========================================================= */
.elementor-widget-faceline-floating-image{
  --fl-fi-offset-x:0px;
  --fl-fi-offset-y:0px;
  --fl-fi-base-x:0%;
  --fl-fi-base-y:0%;
  overflow:visible!important;
  width:max-content;
  max-width:none;
  transform:
    translate(var(--fl-fi-base-x), var(--fl-fi-base-y))
    translate(var(--fl-fi-offset-x), var(--fl-fi-offset-y));
}

.elementor-widget-faceline-floating-image > .elementor-widget-container{
  overflow:visible!important;
  width:max-content;
  max-width:none;
  min-height:0!important;
}

.elementor-widget-faceline-floating-image .faceline-floating-image{
  display:contents!important;
}

/* Position type is carried by the rendered child, but applied to the real Elementor wrapper. */
.elementor-widget-faceline-floating-image:has(.fl-fi-position-fixed){
  position:fixed!important;
}
.elementor-widget-faceline-floating-image:has(.fl-fi-position-absolute){
  position:absolute!important;
}
.elementor-widget-faceline-floating-image:has(.fl-fi-position-static){
  position:relative!important;
}

/* Desktop positioning */
.elementor-widget-faceline-floating-image:has(.fl-fi-desktop-h-left){
  left:0;right:auto;--fl-fi-base-x:0%;
}
.elementor-widget-faceline-floating-image:has(.fl-fi-desktop-h-center){
  left:50%;right:auto;--fl-fi-base-x:-50%;
}
.elementor-widget-faceline-floating-image:has(.fl-fi-desktop-h-right){
  left:auto;right:0;--fl-fi-base-x:0%;
}
.elementor-widget-faceline-floating-image:has(.fl-fi-desktop-v-top){
  top:0;bottom:auto;--fl-fi-base-y:0%;
}
.elementor-widget-faceline-floating-image:has(.fl-fi-desktop-v-center){
  top:50%;bottom:auto;--fl-fi-base-y:-50%;
}
.elementor-widget-faceline-floating-image:has(.fl-fi-desktop-v-bottom){
  top:auto;bottom:0;--fl-fi-base-y:0%;
}

/* Tavalise positsiooni korral ei sunnita left/top väärtusi. */
.elementor-widget-faceline-floating-image:has(.fl-fi-position-static){
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  --fl-fi-base-x:0%!important;
  --fl-fi-base-y:0%!important;
}

/* Motion-wrapper on täpselt pildi mõõdus, mitte eraldi layout-placeholder. */
.elementor-widget-faceline-floating-image .faceline-floating-image__motion,
.elementor-widget-faceline-floating-image .faceline-floating-image__link{
  display:block;
  width:max-content;
  max-width:none;
  line-height:0;
}

.elementor-widget-faceline-floating-image .faceline-floating-image__img{
  display:block!important;
  width:300px;
  max-width:none;
  height:auto!important;
}

/* Editoris peab valitav widget-kast kattuma nähtava pildiga. */
.elementor-editor-active .elementor-widget-faceline-floating-image,
.elementor-editor-active .elementor-widget-faceline-floating-image > .elementor-widget-container{
  min-height:0!important;
}

@media (max-width:1024px){
  .elementor-widget-faceline-floating-image:has(.fl-fi-tablet-h-left){
    left:0;right:auto;--fl-fi-base-x:0%;
  }
  .elementor-widget-faceline-floating-image:has(.fl-fi-tablet-h-center){
    left:50%;right:auto;--fl-fi-base-x:-50%;
  }
  .elementor-widget-faceline-floating-image:has(.fl-fi-tablet-h-right){
    left:auto;right:0;--fl-fi-base-x:0%;
  }
  .elementor-widget-faceline-floating-image:has(.fl-fi-tablet-v-top){
    top:0;bottom:auto;--fl-fi-base-y:0%;
  }
  .elementor-widget-faceline-floating-image:has(.fl-fi-tablet-v-center){
    top:50%;bottom:auto;--fl-fi-base-y:-50%;
  }
  .elementor-widget-faceline-floating-image:has(.fl-fi-tablet-v-bottom){
    top:auto;bottom:0;--fl-fi-base-y:0%;
  }
}

@media (max-width:767px){
  .elementor-widget-faceline-floating-image:has(.fl-fi-mobile-h-left){
    left:0;right:auto;--fl-fi-base-x:0%;
  }
  .elementor-widget-faceline-floating-image:has(.fl-fi-mobile-h-center){
    left:50%;right:auto;--fl-fi-base-x:-50%;
  }
  .elementor-widget-faceline-floating-image:has(.fl-fi-mobile-h-right){
    left:auto;right:0;--fl-fi-base-x:0%;
  }
  .elementor-widget-faceline-floating-image:has(.fl-fi-mobile-v-top){
    top:0;bottom:auto;--fl-fi-base-y:0%;
  }
  .elementor-widget-faceline-floating-image:has(.fl-fi-mobile-v-center){
    top:50%;bottom:auto;--fl-fi-base-y:-50%;
  }
  .elementor-widget-faceline-floating-image:has(.fl-fi-mobile-v-bottom){
    top:auto;bottom:0;--fl-fi-base-y:0%;
  }
}

/* =========================================================
   Mobiili menüüriba
   ========================================================= */
.faceline-mobile-menu-bar{box-sizing:border-box;width:auto;max-width:100%;-webkit-tap-highlight-color:transparent}
.faceline-mobile-menu-bar--fixed{position:fixed;left:0;right:0;bottom:0}
.faceline-mobile-menu-bar--sticky{position:sticky;bottom:0}
.faceline-mobile-menu-bar--normal{position:relative}
.faceline-mobile-menu-bar__inner{display:flex;align-items:stretch;justify-content:space-between;width:100%;min-width:0}
.faceline-mobile-menu-bar__item{flex:1 1 0;min-width:0;min-height:44px;display:flex;align-items:center;justify-content:center;color:inherit;text-decoration:none!important;text-align:center;line-height:1.1;transition:background-color .2s ease,color .2s ease,transform .2s ease;-webkit-tap-highlight-color:transparent}
.faceline-mobile-menu-bar--icon-top .faceline-mobile-menu-bar__item{flex-direction:column}
.faceline-mobile-menu-bar--icon-left .faceline-mobile-menu-bar__item{flex-direction:row}
.faceline-mobile-menu-bar__icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;line-height:1}
.faceline-mobile-menu-bar__icon i,.faceline-mobile-menu-bar__icon svg{display:block}
.faceline-mobile-menu-bar__icon svg{fill:currentColor}
.faceline-mobile-menu-bar__label{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.faceline-mobile-menu-bar__item:active{transform:scale(.97)}
.elementor-editor-active .faceline-mobile-menu-bar[data-mobile-only="1"]{display:block!important}
@media(prefers-reduced-motion:reduce){.faceline-mobile-menu-bar__item{transition:none}}


/* =========================================================
   Mobiili menüüriba v3.2.3
   Vaikimisi riba on ainult menüüpunktide + vahede laiune.
   ========================================================= */
.faceline-mobile-menu-bar{
  transition:opacity .28s ease, transform .28s ease, visibility .28s ease;
}

.faceline-mobile-menu-bar--width-auto{
  width:max-content !important;
  max-width:100%;
}

.faceline-mobile-menu-bar--width-auto .faceline-mobile-menu-bar__inner{
  width:max-content;
  max-width:100%;
}

.faceline-mobile-menu-bar--width-auto .faceline-mobile-menu-bar__item{
  flex:0 0 auto;
}

.faceline-mobile-menu-bar--width-percent{
  max-width:100%;
}

.faceline-mobile-menu-bar--width-percent .faceline-mobile-menu-bar__inner{
  width:100%;
}

.faceline-mobile-menu-bar--width-percent .faceline-mobile-menu-bar__item{
  flex:1 1 0;
}

/* Fixed riba keskendatakse ka siis, kui selle laius on sisulaius. */
.faceline-mobile-menu-bar--fixed.faceline-mobile-menu-bar--width-auto{
  left:50% !important;
  right:auto !important;
  transform:translateX(-50%);
}

/* Kui protsentuaalne laius on kasutusel, jääb riba samuti keskele. */
.faceline-mobile-menu-bar--fixed.faceline-mobile-menu-bar--width-percent{
  left:50% !important;
  right:auto !important;
  transform:translateX(-50%);
}

/* Scroll hide/show */
.faceline-mobile-menu-bar.is-scroll-hidden{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}

.faceline-mobile-menu-bar--fixed.is-scroll-hidden{
  transform:translate(-50%, 18px);
}

.faceline-mobile-menu-bar--sticky.is-scroll-hidden,
.faceline-mobile-menu-bar--normal.is-scroll-hidden{
  transform:translateY(18px);
}

@media (prefers-reduced-motion:reduce){
  .faceline-mobile-menu-bar{
    transition:none;
  }
}

/* SVG ikoonnupp */
.faceline-svg-icon-button-align{display:flex;width:100%}
.faceline-svg-icon-button{--fl-sib-bg:#e8e8e8;--fl-sib-bg-hover:#dadada;--fl-sib-icon:#222;--fl-sib-icon-hover:#000;--fl-sib-text:#222;--fl-sib-text-hover:#000;position:relative;display:inline-flex;align-items:center;justify-content:center;isolation:isolate;text-decoration:none!important;line-height:1;transform-origin:center;transition:transform var(--fl-sib-transition,.3s) ease}
.faceline-svg-icon-button__bg-mask,.faceline-svg-icon-button__bg-image,.faceline-svg-icon-button__shadow{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none}
.faceline-svg-icon-button__bg-mask,.faceline-svg-icon-button__shadow{-webkit-mask:var(--fl-sib-url) center/contain no-repeat;mask:var(--fl-sib-url) center/contain no-repeat}
.faceline-svg-icon-button__bg-mask{z-index:0;background:var(--fl-sib-bg);transition:background var(--fl-sib-transition,.3s) ease}
.faceline-svg-icon-button:hover .faceline-svg-icon-button__bg-mask{background:var(--fl-sib-bg-hover)}
.faceline-svg-icon-button__bg-image{z-index:0;object-fit:contain}
.faceline-svg-icon-button__shadow{z-index:-1;background:var(--fl-sib-shadow-color);transform:translate(var(--fl-sib-shadow-x),var(--fl-sib-shadow-y));filter:blur(var(--fl-sib-shadow-blur))}
.faceline-svg-icon-button__content{position:relative;z-index:2;display:flex;align-items:center;justify-content:center}
.faceline-svg-icon-button--text-bottom .faceline-svg-icon-button__content{flex-direction:column}
.faceline-svg-icon-button--text-right .faceline-svg-icon-button__content{flex-direction:row}
.faceline-svg-icon-button__icon{display:inline-flex;align-items:center;justify-content:center;color:var(--fl-sib-icon);transition:color var(--fl-sib-transition,.3s) ease}
.faceline-svg-icon-button__icon svg{display:block;fill:currentColor}
.faceline-svg-icon-button__text{color:var(--fl-sib-text);transition:color var(--fl-sib-transition,.3s) ease}
.faceline-svg-icon-button:hover .faceline-svg-icon-button__icon{color:var(--fl-sib-icon-hover)}
.faceline-svg-icon-button:hover .faceline-svg-icon-button__text{color:var(--fl-sib-text-hover)}
.faceline-svg-icon-button--hover-lift:hover{transform:translateY(-5px)}
.faceline-svg-icon-button--hover-scale:hover{transform:scale(1.06)}
.faceline-svg-icon-button--hover-tilt:hover{transform:rotate(-4deg) scale(1.03)}
.faceline-svg-icon-button--hover-pulse:hover{animation:fl-sib-pulse .7s ease-in-out infinite alternate}
.faceline-svg-icon-button--loop-float{animation:fl-sib-float var(--fl-sib-duration,4s) ease-in-out infinite}
.faceline-svg-icon-button--loop-breathe{animation:fl-sib-breathe var(--fl-sib-duration,4s) ease-in-out infinite}
.faceline-svg-icon-button--loop-sway{animation:fl-sib-sway var(--fl-sib-duration,4s) ease-in-out infinite}
@keyframes fl-sib-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes fl-sib-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.045)}}
@keyframes fl-sib-sway{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}
@keyframes fl-sib-pulse{from{transform:scale(1)}to{transform:scale(1.07)}}
@media(prefers-reduced-motion:reduce){.faceline-svg-icon-button{animation:none!important;transition:none!important}}

/* SVG ikoonnupp v3.3.1 — üks suuruse parameeter */
.faceline-svg-icon-button{
  aspect-ratio:1 / 1;
  height:auto;
}
.faceline-svg-icon-button__bg-mask,
.faceline-svg-icon-button__bg-image,
.faceline-svg-icon-button__shadow{
  transform-origin:center center;
}
.faceline-svg-icon-button__shadow{
  transform:translate(var(--fl-sib-shadow-x),var(--fl-sib-shadow-y)) rotate(var(--fl-sib-bg-rotation,0deg));
}
.faceline-svg-icon-button__icon,
.faceline-svg-icon-button__text{
  transform-origin:center center;
}

/* SVG ikoonnupp v3.3.2 — mitme värvi gradient */
.faceline-svg-icon-button--gradient .faceline-svg-icon-button__bg-mask{background:var(--fl-sib-bg-gradient)}
.faceline-svg-icon-button--gradient:hover .faceline-svg-icon-button__bg-mask{background:var(--fl-sib-bg-gradient-hover,var(--fl-sib-bg-gradient))}

/* SVG ikoonnupp v3.3.3 */
.faceline-svg-icon-button__shadow{
  opacity:var(--fl-sib-shadow-opacity,.22);
  filter:blur(var(--fl-sib-shadow-blur));
  will-change:transform,filter,opacity;
}
.faceline-svg-icon-button--gradient .faceline-svg-icon-button__bg-mask{
  background-color:transparent!important;
  background-image:var(--fl-sib-bg-gradient)!important;
}
.faceline-svg-icon-button--gradient:hover .faceline-svg-icon-button__bg-mask{
  background-color:transparent!important;
  background-image:var(--fl-sib-bg-gradient-hover,var(--fl-sib-bg-gradient))!important;
}

/* SVG ikoonnupp v3.3.4 — intrinsic SVG ratio + corrected gradient/shadow */
.faceline-svg-icon-button{
  aspect-ratio:auto!important;
  height:auto!important;
}
.faceline-svg-icon-button__sizer{
  position:relative;
  z-index:-2;
  display:block;
  width:100%;
  height:auto;
  opacity:0;
  pointer-events:none;
}
.faceline-svg-icon-button__bg-mask,
.faceline-svg-icon-button__bg-image,
.faceline-svg-icon-button__shadow{
  inset:0;
  width:100%;
  height:100%;
}
.faceline-svg-icon-button__shadow{
  background:var(--fl-sib-shadow-color)!important;
  opacity:var(--fl-sib-shadow-opacity,.22);
  transform:translate(var(--fl-sib-shadow-x),var(--fl-sib-shadow-y)) rotate(var(--fl-sib-bg-rotation,0deg));
  filter:none!important;
}
.faceline-svg-icon-button__shadow::after{
  content:"";
  position:absolute;
  inset:0;
  background:inherit;
  -webkit-mask:inherit;
  mask:inherit;
  filter:blur(var(--fl-sib-shadow-blur));
}
.faceline-svg-icon-button--gradient .faceline-svg-icon-button__bg-mask{
  background:var(--fl-sib-bg-gradient)!important;
}
.faceline-svg-icon-button--gradient:hover .faceline-svg-icon-button__bg-mask{
  background:var(--fl-sib-bg-gradient-hover,var(--fl-sib-bg-gradient))!important;
}

/* SVG ikoonnupp v3.3.5 — ikooni ja teksti paigutus tausta suhtes */
.faceline-svg-icon-button__content{
  position:absolute!important;
  inset:0;
  z-index:2;
  display:block!important;
  padding:0!important;
  pointer-events:none;
}
.faceline-svg-icon-button__icon,
.faceline-svg-icon-button__text{
  position:absolute;
  margin:0!important;
  transform:translate(-50%,-50%);
  transform-origin:center center;
  white-space:nowrap;
}
.faceline-svg-icon-button__icon{
  left:50%;
  top:50%;
}
.faceline-svg-icon-button__text{
  left:50%;
  top:65%;
}

/* SVG ikoonnupp v3.3.6 — korrektne SVG maski vari
   Blur peab rakenduma varju kujule ENNE nihutamist. */
.faceline-svg-icon-button__shadow{
  background:transparent!important;
  opacity:1!important;
  filter:none!important;
  transform:none!important;
  -webkit-mask:none!important;
  mask:none!important;
  overflow:visible;
}
.faceline-svg-icon-button__shadow::after{
  content:"";
  position:absolute;
  inset:0;
  display:block;
  background:var(--fl-sib-shadow-color);
  opacity:var(--fl-sib-shadow-opacity,.22);
  -webkit-mask-image:var(--fl-sib-url);
  mask-image:var(--fl-sib-url);
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-position:center;
  mask-position:center;
  -webkit-mask-size:contain;
  mask-size:contain;
  transform:
    translate(var(--fl-sib-shadow-x),var(--fl-sib-shadow-y))
    rotate(var(--fl-sib-bg-rotation,0deg));
  transform-origin:center center;
  filter:blur(var(--fl-sib-shadow-blur,16px))!important;
  will-change:filter,transform;
}

/* SVG ikoonnupp v3.3.7 — ikooni stroke */
.faceline-svg-icon-button__icon svg,
.faceline-svg-icon-button__icon svg *{
  stroke:var(--fl-sib-icon-stroke, currentColor);
  stroke-width:var(--fl-sib-icon-stroke-width, 1px);
}
.faceline-svg-icon-button:hover .faceline-svg-icon-button__icon svg,
.faceline-svg-icon-button:hover .faceline-svg-icon-button__icon svg *{
  stroke:var(--fl-sib-icon-stroke-hover, var(--fl-sib-icon-stroke, currentColor));
}

/* Faceline WP menüü v3.4.0 */
.faceline-wp-menu{--fl-menu-speed:350ms;position:relative;max-width:100%;overflow:visible}
.faceline-wp-menu ul{list-style:none!important;margin:0!important;padding-top:0;padding-right:0;padding-bottom:0}
.faceline-wp-menu__root{display:flex;flex-direction:column}
.faceline-wp-menu__item{margin:0!important;padding:0!important}
.faceline-wp-menu__row{display:flex;align-items:center;width:100%;border:0 solid transparent}
.faceline-wp-menu__link{display:block;flex:1;min-width:0;text-decoration:none!important;transition:color .2s ease}
.faceline-wp-menu__toggle,.faceline-wp-menu__back{appearance:none;border:0;background:none;padding:0;display:flex;align-items:center;justify-content:center;cursor:pointer;color:inherit}
.faceline-wp-menu__toggle{flex:0 0 auto;margin-left:12px}
.faceline-wp-menu__toggle svg,.faceline-wp-menu__back svg{display:block;width:18px;height:18px}
.faceline-wp-menu__toggle svg{transition:transform var(--fl-menu-speed) cubic-bezier(.2,.8,.2,1)}
.faceline-wp-menu__item.is-open>.faceline-wp-menu__row .faceline-wp-menu__toggle svg{transform:rotate(90deg)}
.faceline-wp-menu__sub{display:flex;flex-direction:column;gap:var(--fl-sub-gap,0px)}

/* Accordion: submenu participates in normal vertical flow */
.faceline-wp-menu--accordion .faceline-wp-menu__sub{
  display:grid;
  grid-template-rows:0fr;
  opacity:0;
  overflow:hidden;
  transition:grid-template-rows var(--fl-menu-speed) cubic-bezier(.2,.8,.2,1),opacity var(--fl-menu-speed) ease;
}
.faceline-wp-menu--accordion .faceline-wp-menu__sub>*{min-height:0}
.faceline-wp-menu--accordion .faceline-wp-menu__item.is-open>.faceline-wp-menu__sub{grid-template-rows:1fr;opacity:1}

/* Drilldown */
.faceline-wp-menu--drilldown{overflow:hidden}
.faceline-wp-menu__back{gap:8px;margin:0 0 14px 0;opacity:0;visibility:hidden;transform:translateX(-8px);transition:opacity var(--fl-menu-speed),transform var(--fl-menu-speed),visibility var(--fl-menu-speed)}
.faceline-wp-menu--drilldown.has-depth .faceline-wp-menu__back{opacity:1;visibility:visible;transform:none}
.faceline-wp-menu__viewport{width:100%;overflow:hidden}
.faceline-wp-menu__track{position:relative;width:100%;transition:transform var(--fl-menu-speed) cubic-bezier(.2,.8,.2,1)}
.faceline-wp-menu--drilldown .faceline-wp-menu__root,
.faceline-wp-menu--drilldown .faceline-wp-menu__sub{display:flex;flex-direction:column;width:100%}
.faceline-wp-menu--drilldown .faceline-wp-menu__sub{
  position:absolute;
  left:100%;
  top:0;
  visibility:hidden;
}
.faceline-wp-menu--drilldown .faceline-wp-menu__sub.is-panel-active{visibility:visible}
.faceline-wp-menu--drilldown .faceline-wp-menu__toggle svg{transform:none!important}

/* Faceline WP menüü v3.4.1 — visibility, natural height, accordion collapse */
.faceline-wp-menu{
  display:block!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
}
.faceline-wp-menu__root{
  height:auto!important;
  min-height:0!important;
  overflow:visible;
}
.faceline-wp-menu__toggle svg,
.faceline-wp-menu__toggle i,
.faceline-wp-menu__back svg,
.faceline-wp-menu__back i{
  display:block;
  width:1em;
  height:1em;
  line-height:1;
}
.faceline-wp-menu__back{
  width:auto;
  transition:color .2s ease,background-color .2s ease,opacity var(--fl-menu-speed),transform var(--fl-menu-speed),visibility var(--fl-menu-speed);
}

/* Closed accordion must occupy exactly zero height. */
.faceline-wp-menu--accordion .faceline-wp-menu__sub{
  display:block!important;
  box-sizing:border-box;
  height:0;
  max-height:0;
  min-height:0!important;
  padding-top:0!important;
  padding-bottom:0!important;
  margin-top:0!important;
  margin-bottom:0!important;
  opacity:0;
  visibility:hidden;
  overflow:hidden!important;
  transition:max-height var(--fl-menu-speed) cubic-bezier(.2,.8,.2,1),opacity calc(var(--fl-menu-speed) * .65) ease,visibility var(--fl-menu-speed);
}
.faceline-wp-menu--accordion .faceline-wp-menu__item.is-open > .faceline-wp-menu__sub{
  height:auto;
  max-height:2000px;
  opacity:1;
  visibility:visible;
  overflow:visible!important;
}
.faceline-wp-menu--accordion .faceline-wp-menu__sub > .faceline-wp-menu__item{
  display:block;
}
.faceline-wp-menu--accordion .faceline-wp-menu__sub{
  padding-left:var(--fl-sub-indent,0);
}

/* Faceline WP menüü v3.4.2 */
.faceline-wp-menu--accordion .faceline-wp-menu__toggle{
  transform:rotate(90deg);
}
.faceline-wp-menu--accordion .faceline-wp-menu__item.is-open > .faceline-wp-menu__row .faceline-wp-menu__toggle{
  transform:rotate(90deg);
}
.faceline-wp-menu--accordion .faceline-wp-menu__toggle svg,
.faceline-wp-menu--accordion .faceline-wp-menu__toggle i{
  transform:none!important;
}

/* Drilldown: only active level is visible; container always follows active panel height. */
.faceline-wp-menu--drilldown{
  display:block!important;
  overflow:hidden!important;
  height:auto!important;
}
.faceline-wp-menu--drilldown .faceline-wp-menu__viewport{
  position:relative;
  display:block!important;
  width:100%;
  height:auto;
  overflow:hidden!important;
  transition:height var(--fl-menu-speed) cubic-bezier(.2,.8,.2,1);
}
.faceline-wp-menu--drilldown .faceline-wp-menu__track{
  position:relative;
  display:block!important;
  width:100%;
  transform:none!important;
  transition:none!important;
}
.faceline-wp-menu--drilldown .faceline-wp-menu__root,
.faceline-wp-menu--drilldown .faceline-wp-menu__sub{
  position:relative;
  left:auto;
  top:auto;
  width:100%;
  display:none!important;
  visibility:visible!important;
  opacity:1;
  transform:none;
}
.faceline-wp-menu--drilldown .faceline-wp-menu__root.is-panel-active,
.faceline-wp-menu--drilldown .faceline-wp-menu__sub.is-panel-active{
  display:flex!important;
  flex-direction:column;
}
.faceline-wp-menu--drilldown .faceline-wp-menu__sub{
  padding-left:0!important;
}
.faceline-wp-menu--drilldown .faceline-wp-menu__panel-enter-next{
  animation:flMenuInNext var(--fl-menu-speed) cubic-bezier(.2,.8,.2,1) both;
}
.faceline-wp-menu--drilldown .faceline-wp-menu__panel-enter-prev{
  animation:flMenuInPrev var(--fl-menu-speed) cubic-bezier(.2,.8,.2,1) both;
}
@keyframes flMenuInNext{
  from{opacity:0;transform:translateX(28px)}
  to{opacity:1;transform:translateX(0)}
}
@keyframes flMenuInPrev{
  from{opacity:0;transform:translateX(-28px)}
  to{opacity:1;transform:translateX(0)}
}

/* Faceline frontend assets: 3.4.4 */

/* v3.4.5: accordion is CSS-native and does not depend on frontend JavaScript */
.faceline-wp-menu__check{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
}
.faceline-wp-menu--accordion .faceline-wp-menu__item > .faceline-wp-menu__sub{
  display:grid!important;
  grid-template-rows:0fr!important;
  height:auto!important;
  max-height:none!important;
  min-height:0!important;
  opacity:0!important;
  visibility:hidden!important;
  overflow:hidden!important;
  transition:grid-template-rows var(--fl-menu-speed) cubic-bezier(.2,.8,.2,1),opacity var(--fl-menu-speed) ease,visibility var(--fl-menu-speed);
}
.faceline-wp-menu--accordion .faceline-wp-menu__item > .faceline-wp-menu__sub > *{
  min-height:0!important;
}
.faceline-wp-menu--accordion .faceline-wp-menu__row:has(.faceline-wp-menu__check:checked) + .faceline-wp-menu__sub{
  grid-template-rows:1fr!important;
  opacity:1!important;
  visibility:visible!important;
  overflow:visible!important;
}
.faceline-wp-menu--accordion .faceline-wp-menu__toggle-label{
  cursor:pointer;
  user-select:none;
}
.faceline-wp-menu--accordion .faceline-wp-menu__toggle-label svg,
.faceline-wp-menu--accordion .faceline-wp-menu__toggle-label i{
  transform:none!important;
  transition:transform var(--fl-menu-speed) cubic-bezier(.2,.8,.2,1)!important;
}
.faceline-wp-menu--accordion .faceline-wp-menu__check:checked + .faceline-wp-menu__toggle-label svg,
.faceline-wp-menu--accordion .faceline-wp-menu__check:checked + .faceline-wp-menu__toggle-label i{
  transform:rotate(180deg)!important;
}

/* v3.4.6 — closed submenu must reserve absolutely no vertical space */
.faceline-wp-menu--accordion .faceline-wp-menu__item > .faceline-wp-menu__sub{
  display:none!important;
  position:static!important;
  width:100%!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding-top:0!important;
  padding-bottom:0!important;
  opacity:0!important;
  visibility:hidden!important;
  overflow:hidden!important;
}
.faceline-wp-menu--accordion .faceline-wp-menu__row:has(.faceline-wp-menu__check:checked) + .faceline-wp-menu__sub{
  display:block!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  opacity:1!important;
  visibility:visible!important;
  overflow:visible!important;
}
/* Nested closed submenus must also remain zero-height. */
.faceline-wp-menu--accordion .faceline-wp-menu__sub .faceline-wp-menu__item > .faceline-wp-menu__sub{
  display:none!important;
}
.faceline-wp-menu--accordion .faceline-wp-menu__sub .faceline-wp-menu__row:has(.faceline-wp-menu__check:checked) + .faceline-wp-menu__sub{
  display:block!important;
}

/* v3.4.7 — smooth accordion */
.faceline-wp-menu--accordion .faceline-wp-menu__item > .faceline-wp-menu__sub{
  display:grid!important;
  grid-template-rows:0fr!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding-top:0!important;
  padding-bottom:0!important;
  opacity:0!important;
  visibility:hidden!important;
  overflow:hidden!important;
  transition:
    grid-template-rows var(--fl-menu-speed) cubic-bezier(.22,.61,.36,1),
    opacity calc(var(--fl-menu-speed) * .7) ease,
    visibility 0s linear var(--fl-menu-speed)!important;
}
.faceline-wp-menu--accordion .faceline-wp-menu__item > .faceline-wp-menu__sub > .faceline-wp-menu__item{
  min-height:0!important;
  overflow:hidden;
}
.faceline-wp-menu--accordion .faceline-wp-menu__row:has(.faceline-wp-menu__check:checked) + .faceline-wp-menu__sub{
  grid-template-rows:1fr!important;
  opacity:1!important;
  visibility:visible!important;
  overflow:hidden!important;
  transition:
    grid-template-rows var(--fl-menu-speed) cubic-bezier(.22,.61,.36,1),
    opacity calc(var(--fl-menu-speed) * .7) ease,
    visibility 0s!important;
}

/* v3.4.8 — definitive accordion layout */
.faceline-wp-menu--accordion .faceline-wp-menu__item > .faceline-wp-menu__sub{
  display:block!important;
  grid-template-rows:none!important;
  box-sizing:border-box!important;
  height:0!important;
  min-height:0!important;
  max-height:none!important;
  margin-top:0!important;
  margin-bottom:0!important;
  padding-top:0!important;
  padding-bottom:0!important;
  opacity:0!important;
  visibility:hidden!important;
  overflow:hidden!important;
  transition:
    height var(--fl-menu-speed) cubic-bezier(.22,.61,.36,1),
    opacity calc(var(--fl-menu-speed) * .65) ease,
    visibility 0s linear var(--fl-menu-speed)!important;
}
.faceline-wp-menu--accordion .faceline-wp-menu__item > .faceline-wp-menu__sub.fl-sub-open{
  opacity:1!important;
  visibility:visible!important;
  transition:
    height var(--fl-menu-speed) cubic-bezier(.22,.61,.36,1),
    opacity calc(var(--fl-menu-speed) * .65) ease,
    visibility 0s!important;
}
.faceline-wp-menu--accordion .faceline-wp-menu__sub > .faceline-wp-menu__item{
  min-height:0!important;
  overflow:visible!important;
}
.faceline-wp-menu--accordion .faceline-wp-menu__check:checked + .faceline-wp-menu__toggle-label svg,
.faceline-wp-menu--accordion .faceline-wp-menu__check:checked + .faceline-wp-menu__toggle-label i{
  transform:rotate(180deg)!important;
}

/* v3.4.9 — smooth height animation + guaranteed zero closed gap */
.faceline-wp-menu--accordion .faceline-wp-menu__item > .faceline-wp-menu__sub{
  display:block!important;
  box-sizing:border-box!important;
  height:0!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding-top:0!important;
  padding-bottom:0!important;
  opacity:0!important;
  visibility:hidden!important;
  overflow:hidden!important;
  will-change:height,opacity;
  transition:
    height var(--fl-menu-speed) cubic-bezier(.4,0,.2,1),
    opacity calc(var(--fl-menu-speed) * .72) ease!important;
}
.faceline-wp-menu--accordion .faceline-wp-menu__item > .faceline-wp-menu__sub.fl-sub-open{
  opacity:1!important;
  visibility:visible!important;
}
.faceline-wp-menu--accordion .faceline-wp-menu__item > .faceline-wp-menu__sub > .faceline-wp-menu__item{
  margin-top:0!important;
  margin-bottom:0!important;
}
