.elementor-kit-7{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;background-color:#FFFBF1;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */:root{
  --tilt: 1.2deg;   /* baslutning i vila */
  --chaos: 1.0;     /* global intensitetsskala, kan höjas sidor-specifikt */
}

.zigzag { white-space: pre-wrap; }

/* grundstil */
.zigzag .char{
  display:inline-block;
  transform-origin: bottom center;
  font: inherit; color: inherit; line-height: inherit; letter-spacing: inherit; text-transform: inherit;
  /* lugnare återgång när man lämnar hover */
  transition: transform var(--out-dur, 380ms) cubic-bezier(.2,.7,.2,1),
              letter-spacing var(--out-dur, 380ms) cubic-bezier(.2,.7,.2,1);
  will-change: transform;
}

/* gradient-stöd (om original hade bg/gradient) */
.zigzag[data-has-bg="true"] .char{
  background: var(--zigzag-bg);
  -webkit-background-clip:text; background-clip:text;
  color: transparent; -webkit-text-fill-color: transparent;
}

/* Bas: varannan lutning */
.zigzag .char:nth-child(odd)  { transform: rotate(calc(-1 * var(--tilt))); }
.zigzag .char:nth-child(even) { transform: rotate(var(--tilt)); }

/* Hover: öka spacing lätt och kör "pop-burst" till kaospunkten */
.zigzag:hover{ letter-spacing: 0.08em; }

.zigzag:hover .char{
  /* animation med individuell delay/varaktighet per bokstav */
  animation: pop-burst var(--in-dur, 520ms) var(--easing, cubic-bezier(.16,1,.3,1)) var(--delay,0ms) both;
}

/* håll zigzag-känsla (udda/even) i slutrotationen */
.zigzag:hover .char:nth-child(even){
  --final-rot: calc(var(--self-rot, 0deg) + var(--tilt));
}
.zigzag:hover .char:nth-child(odd){
  --final-rot: calc(var(--self-rot, 0deg) - var(--tilt));
}

/* Keyframes: liten overshoot -> landa i kaospunkt */
@keyframes pop-burst{
  0%{
    transform: rotate(var(--start-rot, 0deg)) translate(0,0) scale(1);
  }
  55%{
    /* overshoot (lite större än slutläget) */
    transform:
      translate(calc(var(--dx,0px) * var(--chaos) * 1.15),
                calc(var(--dy,0px) * var(--chaos) * 1.15))
      rotate(calc(var(--final-rot, 0deg) + var(--burst-rot, 0deg) * .35))
      scale(var(--burst-scale, 1.06));
  }
  100%{
    /* slutpunkt (kaospunkten) */
    transform:
      translate(calc(var(--dx,0px) * var(--chaos)),
                calc(var(--dy,0px) * var(--chaos)))
      rotate(var(--final-rot, 0deg))
      scale(1.0);
  }
}

/* Respekt för användare som minskar rörelse */
@media (prefers-reduced-motion: reduce){
  .zigzag, .zigzag .char{ transition:none; animation:none; }
}/* End custom CSS */