/* Tillägg för det som Elementors runtime annars gör: animationer, accordion, mobilmeny. */
.elementor-invisible{visibility:hidden}
.sajnat-form-status{margin-top:12px}
.sajnat-video{position:relative;cursor:pointer;aspect-ratio:16/9;width:100%}
.sajnat-video img,.sajnat-video iframe{width:100%;height:100%;object-fit:cover;display:block;border:0}
.sajnat-video__play{position:absolute;inset:0;margin:auto;width:72px;height:72px;border-radius:50%;border:0;background:rgb(98,218,150) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 5v14l11-7z'/%3E%3C/svg%3E") center/32px no-repeat;cursor:pointer}
.sajnat-steps{display:flex;gap:12px;width:100%;margin:12px 0}
.elementor-nav-menu--dropdown[aria-hidden=true]{pointer-events:none}

/* Mobilmeny i helskärm (surfplatta och mobil) */
@media (max-width: 1024px) {
  .elementor-location-header .elementor-widget-theme-site-logo,
  .elementor-location-header .elementor-widget-button,
  .elementor-location-header .elementor-menu-toggle { position: relative; z-index: 10001; }
  .elementor-location-header .elementor-nav-menu--dropdown {
    position: fixed !important; inset: 0 !important; width: 100vw !important; height: 100dvh !important; max-height: none !important;
    left: 0 !important; margin: 0 !important; padding: 110px 24px 40px; background: #fff; z-index: 10000;
    display: flex; flex-direction: column; justify-content: center; overflow-y: auto;
    opacity: 0; visibility: hidden; transform: none !important; transition: opacity .25s ease, visibility .25s;
  }
  .elementor-location-header .elementor-menu-toggle.elementor-active + .elementor-nav-menu--dropdown,
  .elementor-location-header .elementor-menu-toggle.elementor-active ~ .elementor-nav-menu--dropdown { opacity: 1; visibility: visible; }
  .elementor-location-header .elementor-nav-menu--dropdown .elementor-nav-menu { text-align: center; }
  .elementor-location-header .elementor-nav-menu--dropdown a { font-size: 28px; padding: 16px 0; justify-content: center; }
  html.sajnat-menu-open, html.sajnat-menu-open body { overflow: hidden; }
}
@media (max-width: 1024px) {
  .elementor-location-header .elementor-nav-menu--dropdown { top: 0 !important; bottom: auto !important; transform: none !important; }
  .elementor-location-header .elementor-nav-menu--dropdown .elementor-nav-menu { width: 100%; margin: 0 !important; }
}

/* Mobilmeny – finish: stora länkar, avdelare, grön markering, stegvis inglidning */
@media (max-width: 1024px) {
  .elementor-location-header .elementor-nav-menu--dropdown {
    justify-content: flex-start; padding: 120px 28px 48px;
    background: linear-gradient(180deg, #fff 0%, #fff 70%, rgba(98,218,150,.18) 100%);
  }
  .elementor-location-header .elementor-nav-menu--dropdown .elementor-nav-menu { text-align: left; }
  .elementor-location-header .elementor-nav-menu--dropdown li { border-bottom: 1px solid rgba(0,0,0,.1); }
  .elementor-location-header .elementor-nav-menu--dropdown li:first-child { border-top: 1px solid rgba(0,0,0,.1); }
  .elementor-location-header .elementor-nav-menu--dropdown a {
    display: flex; justify-content: space-between; align-items: center; background: none !important;
    font-family: Inter, sans-serif; font-weight: 700; font-size: clamp(32px, 9vw, 48px); line-height: 1.1; letter-spacing: -.02em;
    padding: 22px 0; color: #000 !important; text-decoration: none;
  }
  .elementor-location-header .elementor-nav-menu--dropdown a::after {
    content: ""; width: 28px; height: 28px; flex: none; margin-left: 16px; transition: transform .2s ease;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2362DA96' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat;
  }
  .elementor-location-header .elementor-nav-menu--dropdown a:hover::after,
  .elementor-location-header .elementor-nav-menu--dropdown a:focus-visible::after { transform: translateX(6px); }
  .elementor-location-header .elementor-nav-menu--dropdown a.elementor-item-active { color: rgb(98,218,150) !important; }
  .elementor-location-header .elementor-nav-menu--dropdown li { opacity: 0; transform: translateY(16px); }
  .elementor-location-header .elementor-menu-toggle.elementor-active + .elementor-nav-menu--dropdown li {
    opacity: 1; transform: none; transition: opacity .4s ease, transform .4s ease;
  }
  .elementor-location-header .elementor-menu-toggle.elementor-active + .elementor-nav-menu--dropdown li:nth-child(1) { transition-delay: .08s; }
  .elementor-location-header .elementor-menu-toggle.elementor-active + .elementor-nav-menu--dropdown li:nth-child(2) { transition-delay: .16s; }
  .elementor-location-header .elementor-menu-toggle.elementor-active + .elementor-nav-menu--dropdown li:nth-child(3) { transition-delay: .24s; }
}
@media (max-width: 1024px) and (prefers-reduced-motion: reduce) {
  .elementor-location-header .elementor-nav-menu--dropdown li { transition: none !important; opacity: 1; transform: none; }
}
@media (max-width: 1024px) {
  .elementor-location-header .elementor-nav-menu--dropdown { background: linear-gradient(180deg, #fff 0%, #fff 65%, #e8f9f0 100%) !important; }
  .elementor-location-header .elementor-nav-menu--dropdown .elementor-nav-menu a.elementor-item {
    font-family: Inter, sans-serif !important; font-weight: 700 !important; font-size: clamp(32px, 9vw, 48px) !important; line-height: 1.1 !important;
    letter-spacing: -.02em; padding: 22px 0 !important; justify-content: space-between !important; text-align: left !important; color: #000 !important; background: none !important;
  }
  .elementor-location-header .elementor-nav-menu--dropdown .elementor-nav-menu a.elementor-item:hover { color: rgb(60,170,110) !important; }
}
@media (max-width: 1024px) {
  .elementor-location-header .elementor-nav-menu--dropdown .elementor-nav-menu a.elementor-item::after {
    content: "" !important; display: block !important; position: static !important; width: 28px !important; height: 28px !important; flex: none; opacity: 1 !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2362DA96' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat !important;
    transition: transform .2s ease;
  }
}
.sajnat-video--local{cursor:default;background:#000}
.sajnat-video--local video{width:100%;height:100%;display:block;object-fit:cover;background:#000}
/* Innerradien = ytterradie − ramtjocklek (10px − 5px), så hörnen inte läcker */
.elementor-widget-video .sajnat-video{border-radius:5px}
