/* ==========================================================================
   STORSTRØM NAVIGATION · storstrom-nav.css · v1.1.15
   --------------------------------------------------------------------------
   Header med kontekstskifter (privat/erhverv), megamenu, søgning og
   mobilmenu – og footeren. Uafhængig af Elementor, tema og jQuery.

   · Alt er scopet under .ssn (header) og .ssf (footer). Filen sætter ingen
     globale regler – bortset fra .ssn-scroll-lock på <html>, mens
     mobilmenuen er åben (låst scroll, chatboblen lagt bag menuen).
   · Farver er tokens (--ss-*). Erhverv skifter header og footer til blå via
     .ssn/.ssf[data-ctx="erhverv"] – der er ingen farver i selve reglerne,
     bortset fra hvid. Kun headerens logo er altid Storstrøm-grønt
     (--ss-green), også på erhverv.
   · Skrift: "Silka" leveres allerede af temaet (insu) i præcis de samme
     woff2-filer som prototypen. Denne fil indlæser derfor ingen fonte.
   · Selektorerne har mindst to klasser (.ssn .ssn-x), så temaets globale
     link-regler (body a, a:visited, a:focus – understregning og fed
     skrift) ikke slår igennem.

   Breakpoints (skal matche DESKTOP_QUERY og FOOTER_QUERY i storstrom-nav.js)
     < 768px      footerens linkkolonner bliver harmonikaer
     < 1024px     mobil og tablet: burger + panel under headeren
     1024–1279px  kompakt desktop: mindre luft, "Mit Storstrøm" som ikon
     ≥ 1280px     fuld desktop – som den godkendte prototype
   ========================================================================== */

/* ---------- tokens (header og footer) ------------------------------------ */
.ssn.ssn,
.ssf.ssf {
  --ss-green: #003a14;          /* Storstrøm-grøn: headerens logo – den samme på privat og erhverv */

  /* kontekst: privat (standard) */
  --ss-brand: var(--ss-green);  /* mørk primær: knapper, tekst, ikoner, mørke flader */
  --ss-signal-dark: #009f67;         /* signalgrøn, mørk: grøn på lys bund – fokusringe */
  --ss-signal: #3ceb9b;            /* signalgrøn (lys): badges (mørk tekst), overskrift og ikon på mørk flade */
  --ss-tint-50: #eafdea;        /* lysest grøn: hover-flader */
  --ss-tint-100: #e0fee1;       /* lys grøn: åben menuknap, "se alle" */
  --ss-tint-200: #d5ffd6;       /* lysegrøn: ikoncirkler, footerens genvejsbånd */
  --ss-tint-300: #b5f7be;       /* lysegrøn, mørk */
  --ss-line: #dce3dd;           /* hårlinjer og kortkanter */
  --ss-on-brand: #eafdea;       /* lys tekst på mørk flade */
  --ss-on-brand-soft: #d6f0db;  /* dæmpet tekst på mørk flade */
  --ss-on-brand-muted: #b3c4b9; /* hjælpetekst på mørk flade – samme som 70 % hvid */
  --ss-text-muted: #5f7263;          /* korte beskrivelser */
  --ss-scrim: rgba(2, 28, 11, .18);

  /* layout */
  --ssn-gutter: 48px;           /* sidemargin – samme som sidernes indhold */
  --ssn-content: 1400px;        /* indholdsbredde i megamenu og søgepanel */
  --ssn-util-h: 46px;
  --ssn-bar-h: 120px;
  --ssn-ease: cubic-bezier(.2, .7, .2, 1);

  color: var(--ss-brand);
  font-family: "Silka", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  font-size: 16px;
  font-weight: 400;
  font-style: normal;
  line-height: 1.5;
  letter-spacing: normal;
  word-spacing: normal;
  text-align: left;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* kun headeren: megamenu og mobilpanel skal ligge over sidens indhold – også over Elementor-sektioner
   med egen z-index (typisk op til 100). Popups, cookiebanner og WordPress' admin-bar ligger højere. */
.ssn.ssn { position: relative; z-index: 1000; }

/* erhverv: header og footer bliver blå – kun headerens logo er altid grønt (--ss-green) */
.ssn.ssn[data-ctx="erhverv"],
.ssf.ssf[data-ctx="erhverv"] {
  --ss-brand: #152c73;
  --ss-signal-dark: #4086e2;
  --ss-signal: #92c5ff;
  --ss-tint-50: #f3f8ff;
  --ss-tint-100: #eaf3ff;
  --ss-tint-200: #dcebff;
  --ss-tint-300: #c1dbff;
  --ss-line: #dce1eb;
  --ss-on-brand: #f3f8ff;
  --ss-on-brand-soft: #dbe9fe;
  --ss-on-brand-muted: #b9c0d5;
  --ss-text-muted: #5d6c8d;
  --ss-scrim: rgba(6, 11, 40, .2);
}

/* ---------- nulstilling inden for komponenterne ------------------------- */
/* Alle regler starter med rodklassen to gange (.ssn.ssn / .ssf.ssf): én klasse mere end temaets og
   Elementors globale regler (fx .elementor-kit-5 a = 0,1,1 og a:hover = 0,2,1), så de ikke når ind i
   headeren og footeren. Rækkefølgen mellem pluginets egne regler er den samme som uden. */
:is(.ssn.ssn, .ssf.ssf) *,
:is(.ssn.ssn, .ssf.ssf) *::before,
:is(.ssn.ssn, .ssf.ssf) *::after { box-sizing: border-box; }

:is(.ssn.ssn, .ssf.ssf) :where(a, button, div, form, h2, img, input, label, li, nav, p, span, svg, ul, ol) {
  font-family: inherit;
  letter-spacing: inherit;
  word-spacing: inherit;
  line-height: inherit;
  text-transform: inherit;
  text-shadow: none;
  box-shadow: none;
  transition: none;
}
:is(.ssn.ssn, .ssf.ssf) :where(h2, p, label) { margin: 0; color: inherit; font-size: inherit; font-weight: inherit; }
:is(.ssn.ssn, .ssf.ssf) :where(img) { max-width: none; border-radius: 0; }
:is(.ssn.ssn, .ssf.ssf) :where(ul, ol) { margin: 0; padding: 0; list-style: none; }
:is(.ssn.ssn, .ssf.ssf) :where(li, p, form) { margin: 0; padding: 0; }
:is(.ssn.ssn, .ssf.ssf) :where(svg) { display: block; flex-shrink: 0; }
:is(.ssn.ssn, .ssf.ssf) :where(a) { color: inherit; font-weight: inherit; text-decoration: none; text-transform: none; }
/* temaets a:visited / a:focus / a:active har specificitet 0,1,1 – denne har 0,2,0 */
:is(.ssn.ssn, .ssf.ssf) :where(a):is(:visited, :hover, :focus, :active) { color: inherit; font-weight: inherit; text-decoration: none; }
:is(.ssn.ssn, .ssf.ssf) :where(button) {
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  color: inherit;
  font: inherit;
  letter-spacing: inherit;
  text-transform: none;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
}

:is(.ssn.ssn, .ssf.ssf) :focus-visible { outline: 3px solid var(--ss-signal-dark); outline-offset: 3px; }
.ssn.ssn .ssn-util :focus-visible,
.ssn.ssn .ssn-help :focus-visible { outline-color: #fff; }

:is(.ssn.ssn, .ssf.ssf) .ssn-sr {
  position: absolute !important;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

/* ---------- spring til indhold ------------------------------------------ */
.ssn.ssn .ssn-skip {
  position: absolute;
  top: 8px;
  left: 12px;
  z-index: 5;
  padding: 10px 18px;
  border-radius: 999px;
  background: #fff;
  color: var(--ss-brand);
  font-weight: 600;
  transform: translateY(-160%);
  transition: transform .15s ease;
}
.ssn.ssn .ssn-skip:focus { transform: none; }

/* ---------- kontekstbjælke (privat/erhverv + telefon) -------------------- */
.ssn.ssn .ssn-util {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  height: var(--ssn-util-h);
  padding: 0 var(--ssn-gutter);
  background: var(--ss-brand);
  color: #fff;
}
/* Privat/Erhverv er et segmenteret valg: en pille, hvor det valgte står lyst */
.ssn.ssn .ssn-ctx {
  display: flex;
  gap: 2px;
  padding: 3px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .1);
}
.ssn.ssn .ssn-ctx__link {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 30px;
  padding: 0 18px;
  border-radius: 999px;
  color: var(--ss-on-brand-soft);
  font-size: 13.5px;
  font-weight: 600;
  line-height: 1.2;
  transition: color .16s, background-color .16s;
}
.ssn.ssn .ssn-ctx__link::before { content: ""; position: absolute; inset: -8px -1px; }   /* klikfladen fylder bjælkens højde */
.ssn.ssn .ssn-ctx__link:hover { background: rgba(255, 255, 255, .1); color: #fff; }
.ssn.ssn .ssn-ctx__link[aria-current] { background: var(--ss-on-brand); color: var(--ss-brand); }
.ssn.ssn .ssn-ctx--panel { display: none; }   /* kopien i menupanelet – se mobil/tablet */
.ssn.ssn .ssn-util__phone {
  display: inline-flex;
  align-items: center;
  align-self: center;
  gap: 8px;
  color: #fff;
  font-size: 13.5px;
  font-weight: 600;
  white-space: nowrap;
  opacity: .92;
  transition: opacity .15s;
}
.ssn.ssn .ssn-util__phone:hover { opacity: 1; }
.ssn.ssn .ssn-util__phone svg { width: 15px; height: 15px; }

/* ---------- hovedbjælke --------------------------------------------------- */
.ssn.ssn .ssn-bar {
  position: relative;
  display: flex;
  align-items: center;
  gap: 18px;
  min-height: var(--ssn-bar-h);
  padding: 0 var(--ssn-gutter);
  background: #fff;
}
.ssn.ssn .ssn-logo { display: flex; align-items: center; flex-shrink: 0; color: var(--ss-green); }   /* altid grøn, også på erhverv */
.ssn.ssn .ssn-logo svg { width: auto; height: 28px; }

.ssn.ssn .ssn-actions { display: flex; align-items: center; gap: 9px; flex-shrink: 0; margin-left: auto; }

/* knapper i headeren */
.ssn.ssn .ssn-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 47px;
  padding: 0 22px;
  border: 1.5px solid var(--ss-brand);
  border-radius: 999px;
  font-size: 14.5px;
  font-weight: 600;
  line-height: 1.2;
  white-space: nowrap;
  transition: background-color .16s, color .16s, border-color .16s;
}
.ssn.ssn .ssn-btn svg { width: 20px; height: 20px; }
.ssn.ssn .ssn-btn--outline { background: #fff; color: var(--ss-brand); }
.ssn.ssn .ssn-btn--outline:hover { background: var(--ss-brand); color: #fff; }
.ssn.ssn .ssn-btn--primary { background: var(--ss-brand); color: #fff; }
.ssn.ssn .ssn-btn--primary:hover { background: #fff; color: var(--ss-brand); }

.ssn.ssn .ssn-iconbtn {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 47px;
  height: 47px;
  border: 1.5px solid var(--ss-brand);
  border-radius: 50%;
  background: #fff;
  color: var(--ss-brand);
  line-height: 0;
  transition: background-color .16s, color .16s;
}
.ssn.ssn .ssn-iconbtn:hover,
.ssn.ssn .ssn-iconbtn[aria-expanded="true"] { background: var(--ss-brand); color: #fff; }
.ssn.ssn .ssn-iconbtn svg { width: 20px; height: 20px; }

.ssn.ssn .ssn-actions__mit { padding: 0 18px; }

/* burger-ikon: tre streger, der bliver til et kryds */
.ssn.ssn .ssn-burger { display: none; }
.ssn.ssn .ssn-burger__box,
.ssn.ssn .ssn-burger__box::before,
.ssn.ssn .ssn-burger__box::after {
  display: block;
  width: 18px;
  height: 2px;
  border-radius: 2px;
  background-color: currentColor;
}
.ssn.ssn .ssn-burger__box { position: relative; transition: background-color 0s .12s; }
.ssn.ssn .ssn-burger__box::before,
.ssn.ssn .ssn-burger__box::after {
  content: "";
  position: absolute;
  left: 0;
  transition: top .12s ease .12s, transform .16s ease;
}
.ssn.ssn .ssn-burger__box::before { top: -6px; }
.ssn.ssn .ssn-burger__box::after { top: 6px; }
.ssn.ssn .ssn-burger[aria-expanded="true"] .ssn-burger__box { background-color: transparent; transition-delay: 0s; }
.ssn.ssn .ssn-burger[aria-expanded="true"] .ssn-burger__box::before { top: 0; transform: rotate(45deg); transition: top .12s ease, transform .16s ease .12s; }
.ssn.ssn .ssn-burger[aria-expanded="true"] .ssn-burger__box::after { top: 0; transform: rotate(-45deg); transition: top .12s ease, transform .16s ease .12s; }

/* ---------- menupunkter ---------------------------------------------------- */
.ssn.ssn .ssn-menu__link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 9px 14px;
  border-radius: 999px;
  color: var(--ss-brand);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  white-space: nowrap;
  transition: background-color .15s, color .15s;
}
.ssn.ssn .ssn-caret { width: 14px; height: 14px; transition: transform .22s var(--ssn-ease); }
.ssn.ssn .ssn-pill { display: none; }   /* kun på desktop, se nedenfor */
.ssn.ssn .ssn-menu__toggle[aria-expanded="true"] .ssn-caret { transform: rotate(180deg); }

/* ---------- produktkort (megamenu) ------------------------------------------ */
.ssn.ssn .ssn-cards > li { display: flex; }
.ssn.ssn .ssn-card {
  position: relative;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 18px 16px 20px;
  border: 1px solid var(--ss-line);
  border-radius: 14px;
  background: #fff;
  color: var(--ss-brand);
  transition: border-color .16s;
}
.ssn.ssn .ssn-card:hover { border-color: var(--ss-brand); }
.ssn.ssn .ssn-card[aria-current="page"] { border-color: var(--ss-brand); background: var(--ss-tint-50); }
.ssn.ssn .ssn-card__icon {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background: var(--ss-tint-200);
  transition: transform .18s ease;
}
.ssn.ssn .ssn-card:hover .ssn-card__icon { transform: scale(1.08); }
.ssn.ssn .ssn-card__icon svg { width: 38px; height: 38px; fill: var(--ss-brand); }
.ssn.ssn .ssn-card__text { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.ssn.ssn .ssn-card__title {
  font-size: 15px;
  font-weight: 600;
  line-height: 1.2;
  overflow-wrap: break-word;
  -webkit-hyphens: auto;
  hyphens: auto;
}
.ssn.ssn .ssn-card__desc { color: var(--ss-text-muted); font-size: 12.5px; font-weight: 500; line-height: 1.3; }
.ssn.ssn .ssn-card__badge {
  position: absolute;
  top: 10px;
  right: 10px;
  padding: 4px 10px;
  border-radius: 999px;
  background: var(--ss-signal);
  color: var(--ss-brand);
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
}

.ssn.ssn .ssn-mega__all {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 15px 24px;
  border-radius: 12px;
  background: var(--ss-tint-100);
  color: var(--ss-brand);
  font-size: 16px;
  font-weight: 600;
  text-align: center;
  transition: filter .16s;
}
.ssn.ssn .ssn-mega__all:hover { filter: brightness(.96); }
.ssn.ssn .ssn-mega__all svg { width: 18px; height: 18px; transition: transform .16s; }
.ssn.ssn .ssn-mega__all:hover svg { transform: translateX(4px); }

/* hjælpepanel ("Se hvad du kan spare") */
.ssn.ssn .ssn-help {
  display: flex;
  flex-direction: column;
  gap: 15px;
  padding: 22px;
  border-radius: 14px;
  background: var(--ss-brand);
  color: var(--ss-on-brand);
}
.ssn.ssn .ssn-help__icon { color: var(--ss-signal); }
.ssn.ssn .ssn-help__icon svg { width: 44px; height: 44px; fill: currentColor; }
.ssn.ssn .ssn-help__title { color: var(--ss-signal); font-size: 18px; font-weight: 700; line-height: 1.2; letter-spacing: -.01em; }
.ssn.ssn .ssn-help__text { color: var(--ss-on-brand-soft); font-size: 14px; font-weight: 500; line-height: 1.5; }
.ssn.ssn .ssn-help__cta {
  display: inline-flex;
  align-self: flex-start;
  align-items: center;
  gap: 8px;
  margin-top: auto;
  color: #fff;
  font-size: 14.5px;
  font-weight: 600;
  opacity: .9;
  transition: gap .15s, opacity .15s;
}
.ssn.ssn .ssn-help__cta:hover { gap: 12px; opacity: 1; }
.ssn.ssn .ssn-help__cta svg { width: 17px; height: 17px; }

/* ---------- søgefelt ------------------------------------------------------ */
.ssn.ssn .ssn-search__field {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 5px 5px 5px 20px;
  border: 1.5px solid var(--ss-brand);
  border-radius: 999px;
  background: #fff;
  transition: box-shadow .15s;
}
.ssn.ssn .ssn-search__field:focus-within { box-shadow: 0 0 0 4px var(--ss-tint-100); }
.ssn.ssn .ssn-search__field > svg { width: 20px; height: 20px; color: var(--ss-brand); }
/* 0,4,1: over Elementors felt-regel (.elementor-kit-N input:not([type=button]):not([type=submit]) = 0,3,1) */
.ssn.ssn .ssn-search input.ssn-search__input {
  flex: 1;
  min-width: 0;
  height: 44px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  outline: 0;
  background: transparent;
  box-shadow: none;
  color: var(--ss-brand);
  font: inherit;
  font-size: 17px;              /* ≥ 16px: iOS zoomer ellers ind ved fokus */
  font-weight: 500;
  line-height: normal;
  -webkit-appearance: none;
  appearance: none;
}
.ssn.ssn .ssn-search input.ssn-search__input::placeholder { color: var(--ss-text-muted); opacity: 1; }
.ssn.ssn .ssn-search input.ssn-search__input::-webkit-search-cancel-button { -webkit-appearance: none; }
.ssn.ssn .ssn-search__submit {
  flex-shrink: 0;
  height: 44px;
  padding: 0 24px;
  border-radius: 999px;
  background: var(--ss-brand);
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  transition: opacity .16s;
}
.ssn.ssn .ssn-search__submit:hover { opacity: .88; }

/* ---------- baggrund bag åbne paneler ------------------------------------ */
.ssn.ssn .ssn-scrim {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;               /* under headerens egne flader, over siden */
  background: var(--ss-scrim);
  -webkit-backdrop-filter: blur(3px);
  backdrop-filter: blur(3px);
  opacity: 0;
  visibility: hidden;
  transition: opacity .22s ease, visibility .22s ease;
}
.ssn.ssn.is-mega-open .ssn-scrim,
.ssn.ssn.is-search-open .ssn-scrim,
.ssn.ssn.is-drawer-open .ssn-scrim { opacity: 1; visibility: visible; }

@keyframes ssn-drop {
  from { opacity: 0; transform: translateY(-8px); }
  to { opacity: 1; transform: none; }
}

/* ==========================================================================
   DESKTOP ≥ 1024px
   ========================================================================== */
@media (min-width: 1024px) {
  .ssn.ssn .ssn-panel { flex: 1; display: flex; justify-content: center; min-width: 0; }
  .ssn.ssn .ssn-panel__ctas { display: none; }

  .ssn.ssn .ssn-menu { display: flex; align-items: center; gap: 3px; }
  /* uden JS: hvert punkt får sin egen baggrund (hover og aktiv side).
     Med JS klarer pillen begge dele, så der aldrig står to baggrunde. */
  .ssn.ssn:where(:not(.has-pill)) .ssn-menu__link:hover,
  .ssn.ssn:where(:not(.has-pill)) .ssn-menu__link[aria-current="page"],
  .ssn.ssn:where(:not(.has-pill)) .ssn-menu__toggle.is-current { background: var(--ss-tint-50); }
  .ssn.ssn .ssn-menu__toggle[aria-expanded="true"] { background: var(--ss-tint-100); }

  /* Glidende pille (sættes ind af JS): én baggrund for både hover og aktiv
     side. Den hviler på den aktive side, glider med til det punkt, musen
     peger på, og tilbage igen – uden aktiv side dukker den op dér, hvor musen
     kommer ind. Ligger bag teksten: .ssn-bar er isoleret, så z-index -1
     lander over bjælkens hvide flade. */
  .ssn.ssn .ssn-bar { isolation: isolate; }
  .ssn.ssn .ssn-pill {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 0;
    height: 0;
    border-radius: 999px;
    background: var(--ss-tint-50);
    opacity: 0;
    pointer-events: none;
    transition: transform .3s var(--ssn-ease), width .3s var(--ssn-ease), height .3s var(--ssn-ease), opacity .2s ease;
  }
  .ssn.ssn .ssn-pill.is-visible { opacity: 1; }

  /* megamenu: fylder hele bredden under hovedbjælken */
  .ssn.ssn .ssn-mega {
    display: none;
    position: absolute;
    top: calc(100% - 10px);
    right: 0;
    left: 0;
    background: #fff;
    border-bottom: 1px solid var(--ss-line);
  }
  .ssn.ssn .ssn-menu__toggle[aria-expanded="true"] + .ssn-mega { display: block; animation: ssn-drop .2s ease; }
  .ssn.ssn .ssn-mega__inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    align-items: stretch;
    gap: 26px;
    max-width: calc(var(--ssn-content) + 2 * var(--ssn-gutter));
    margin: 0 auto;
    padding: 36px var(--ssn-gutter) 34px;
  }
  .ssn.ssn .ssn-mega__main { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
  .ssn.ssn .ssn-cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }

  /* søgepanel: samme placering og bevægelse som megamenuen */
  .ssn.ssn .ssn-search {
    display: none;
    position: absolute;
    top: calc(100% - 10px);
    right: 0;
    left: 0;
    padding: 32px var(--ssn-gutter) 36px;
    background: #fff;
    border-bottom: 1px solid var(--ss-line);
  }
  .ssn.ssn.is-search-open .ssn-search { display: block; animation: ssn-drop .2s ease; }
  .ssn.ssn .ssn-search__field { max-width: 760px; margin: 0 auto; }
  .ssn.ssn .ssn-search input.ssn-search__input { height: 46px; font-size: 18px; }
  .ssn.ssn .ssn-search__submit { height: 46px; }

  /* uden JavaScript: megamenuen åbner, når knappen har fokus */
  html:not(.ssn-js) .ssn.ssn .ssn-menu__item--mega:focus-within > .ssn-mega { display: block; }
}

/* kompakt desktop: plads til hele menuen ned til 1024px */
@media (min-width: 1024px) and (max-width: 1279.98px) {
  .ssn.ssn { --ssn-gutter: 32px; }
  .ssn.ssn .ssn-bar { gap: 14px; }
  .ssn.ssn .ssn-logo svg { height: 26px; }
  .ssn.ssn .ssn-menu { gap: 1px; }
  .ssn.ssn .ssn-menu__link { padding: 9px 11px; font-size: 15.5px; }
  .ssn.ssn .ssn-actions { gap: 8px; }
  .ssn.ssn .ssn-actions__mit { width: 47px; padding: 0; }
  .ssn.ssn .ssn-actions__mit-label {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }
  .ssn.ssn .ssn-actions__tilbud { padding: 0 18px; }
  /* hjælpepanelet lægger sig som et bånd under kortene, så produktnavnene
     ikke skal orddeles i smalle kort */
  .ssn.ssn .ssn-mega__inner { grid-template-columns: minmax(0, 1fr); gap: 14px; padding-top: 32px; }
  .ssn.ssn .ssn-help {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    grid-template-areas: "icon title cta" "icon text cta";
    align-items: center;
    column-gap: 18px;
    row-gap: 4px;
    padding: 18px 24px;
  }
  .ssn.ssn .ssn-help__icon { grid-area: icon; }
  .ssn.ssn .ssn-help__icon svg { width: 40px; height: 40px; }
  .ssn.ssn .ssn-help__title { grid-area: title; align-self: end; }
  .ssn.ssn .ssn-help__text { grid-area: text; align-self: start; }
  .ssn.ssn .ssn-help__cta { grid-area: cta; align-self: center; margin: 0 0 0 12px; }
}

/* ==========================================================================
   MOBIL OG TABLET < 1024px
   Panelet (søg + menu + knapper) bliver til et panel under headeren.
   Samme HTML som på desktop – intet er dubleret.
   ========================================================================== */
@media (max-width: 1023.98px) {
  .ssn.ssn { --ssn-gutter: 32px; --ssn-util-h: 42px; --ssn-bar-h: 72px; }

  .ssn.ssn .ssn-bar { gap: 12px; }
  .ssn.ssn .ssn-logo svg { height: 26px; }
  .ssn.ssn .ssn-burger { display: grid; }
  .ssn.ssn .ssn-actions { gap: 8px; }
  /* Mit Storstrøm er vigtigere end søg: søgefeltet ligger øverst i menupanelet */
  .ssn.ssn .ssn-actions__search { display: none; }
  .ssn.ssn .ssn-actions__mit,
  .ssn.ssn .ssn-actions__tilbud { min-height: 44px; padding: 0 18px; font-size: 14px; }
  .ssn.ssn .ssn-actions__mit svg { width: 18px; height: 18px; }
  .ssn.ssn .ssn-iconbtn { width: 44px; height: 44px; }
  .ssn.ssn .ssn-actions > :not(.ssn-burger) { transition: opacity .16s, visibility .16s, background-color .16s, color .16s; }
  /* åben menu: Mit Storstrøm og "Få et tilbud" står i panelet – skjul dem i bjælken */
  .ssn.ssn.is-drawer-open .ssn-actions > :not(.ssn-burger) { opacity: 0; visibility: hidden; }

  /* burgeren er kun ikonet – ingen cirkel. Klikfladen er stadig 44px, og ikonet flugter med højre margen */
  .ssn.ssn .ssn-burger { margin-right: -11px; border-color: transparent; background: transparent; }
  .ssn.ssn .ssn-burger:hover,
  .ssn.ssn .ssn-burger[aria-expanded="true"] { background: transparent; color: var(--ss-brand); }
  .ssn.ssn .ssn-burger__box,
  .ssn.ssn .ssn-burger__box::before,
  .ssn.ssn .ssn-burger__box::after { width: 22px; }
  .ssn.ssn .ssn-burger__box::before { top: -7px; }
  .ssn.ssn .ssn-burger__box::after { top: 7px; }

  /* Privat/Erhverv øverst i menupanelet – kun når kontekstbjælken er scrollet væk (menuen åbnet fra
     den faste bar midt på siden). Ved toppen står valget allerede lige over. Lys flade: det valgte er fyldt */
  .ssn.ssn.is-ctx-in-panel .ssn-ctx--panel { display: grid; grid-template-columns: 1fr 1fr; background: var(--ss-surface); }
  .ssn.ssn .ssn-ctx--panel .ssn-ctx__link { justify-content: center; min-height: 40px; color: var(--ss-brand); font-size: 15px; }
  .ssn.ssn .ssn-ctx--panel .ssn-ctx__link::before { inset: -3px -1px; }
  .ssn.ssn .ssn-ctx--panel .ssn-ctx__link:hover { background: var(--ss-tint-100); color: var(--ss-brand); }
  .ssn.ssn .ssn-ctx--panel .ssn-ctx__link[aria-current] { background: var(--ss-brand); color: #fff; }

  /* Scroller man opad, glider baren ind øverst og bliver stående, til man scroller ned igen
     (storstrom-nav.js sætter .is-pinned/.is-shown). Ved toppen står den på sin plads. */
  .ssn.ssn.is-pinned { padding-bottom: var(--ssn-bar-h); }   /* holder barens plads, så siden ikke hopper */
  .ssn.ssn.is-pinned .ssn-bar {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 2;
    transform: translateY(-100%);
    transition: transform .25s var(--ssn-ease);
  }
  .ssn.ssn.is-pinned.is-shown .ssn-bar { box-shadow: 0 1px 0 var(--ss-line); transform: none; }   /* hårlinjen kun, når baren ses */
  /* logget ind i WordPress: den faste bar står under admin-baren (32px, 46px under 783px) */
  .admin-bar .ssn.ssn.is-pinned .ssn-bar { top: var(--wp-admin--admin-bar--height, 32px); }

  .ssn.ssn .ssn-panel {
    display: none;
    position: fixed;
    top: var(--ssn-panel-top, 0px);
    right: 0;
    left: 0;
    flex-direction: column;
    gap: 18px;
    max-height: calc(100vh - var(--ssn-panel-top, 0px));
    max-height: calc(100dvh - var(--ssn-panel-top, 0px));
    padding: 18px var(--ssn-gutter) 28px;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    background: #fff;
    border-top: 1px solid var(--ss-line);
    border-bottom: 1px solid var(--ss-line);
  }
  .ssn.ssn.is-drawer-open .ssn-panel { display: flex; animation: ssn-drop .22s ease; }

  .ssn.ssn .ssn-search__field { padding-left: 16px; }
  .ssn.ssn .ssn-search input.ssn-search__input { height: 42px; }
  .ssn.ssn .ssn-search__submit { height: 42px; padding: 0 18px; }

  .ssn.ssn .ssn-menu { display: flex; flex-direction: column; }
  .ssn.ssn .ssn-menu__item { border-bottom: 1px solid var(--ss-line); }
  .ssn.ssn .ssn-menu__link {
    display: flex;
    justify-content: space-between;
    width: 100%;
    padding: 15px 2px;
    border-radius: 0;
    font-size: 18px;
    text-align: left;
  }
  .ssn.ssn .ssn-menu__link[aria-current="page"],
  .ssn.ssn .ssn-menu__toggle.is-current { font-weight: 600; }
  .ssn.ssn .ssn-caret { width: 18px; height: 18px; }

  /* megamenuen bliver til en harmonika */
  .ssn.ssn .ssn-mega {
    display: grid;
    grid-template-rows: 0fr;
    visibility: hidden;
    transition: grid-template-rows .28s var(--ssn-ease), visibility 0s linear .28s;
  }
  .ssn.ssn .ssn-menu__toggle[aria-expanded="true"] + .ssn-mega {
    grid-template-rows: 1fr;
    visibility: visible;
    transition: grid-template-rows .28s var(--ssn-ease), visibility 0s;
  }
  .ssn.ssn .ssn-mega__inner { min-height: 0; overflow: hidden; }
  .ssn.ssn .ssn-mega__main { display: flex; flex-direction: column; gap: 10px; padding: 2px 0 12px; }
  .ssn.ssn .ssn-cards { display: grid; grid-template-columns: minmax(0, 1fr); gap: 8px; }
  .ssn.ssn .ssn-card { flex-direction: row; align-items: center; gap: 14px; padding: 11px 14px; }
  .ssn.ssn .ssn-card__icon { width: 46px; height: 46px; flex-shrink: 0; }
  .ssn.ssn .ssn-card__icon svg { width: 32px; height: 32px; }
  .ssn.ssn .ssn-card__text { gap: 2px; }
  .ssn.ssn .ssn-card__title { font-size: 15.5px; }
  .ssn.ssn .ssn-card__desc { font-size: 13px; }
  .ssn.ssn .ssn-card__badge { position: static; margin-left: auto; }
  .ssn.ssn .ssn-help { gap: 12px; margin-bottom: 20px; padding: 20px; }
  .ssn.ssn .ssn-help__icon svg { width: 38px; height: 38px; }

  .ssn.ssn .ssn-panel__ctas { display: flex; flex-wrap: wrap; gap: 10px; }
  .ssn.ssn .ssn-panel__ctas .ssn-btn { flex: 1 1 200px; min-height: 52px; font-size: 16px; }

  /* uden JavaScript: vis menuen åben under headeren */
  html:not(.ssn-js) .ssn.ssn .ssn-burger,
  html:not(.ssn-js) .ssn.ssn .ssn-actions__search { display: none; }
  html:not(.ssn-js) .ssn.ssn .ssn-bar { flex-wrap: wrap; }
  html:not(.ssn-js) .ssn.ssn .ssn-panel {
    display: flex;
    position: static;
    order: 3;
    flex: 1 1 100%;
    min-width: 0;
    max-height: none;
    padding: 12px 0 24px;
    overflow: visible;
    border-bottom: 0;
  }
  html:not(.ssn-js) .ssn.ssn .ssn-mega { grid-template-rows: 1fr; visibility: visible; }
}

/* tablet: produktkort i to kolonner */
@media (min-width: 640px) and (max-width: 1023.98px) {
  .ssn.ssn .ssn-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* mobil */
@media (max-width: 767.98px) {
  .ssn.ssn { --ssn-gutter: 20px; --ssn-util-h: 40px; --ssn-bar-h: 64px; }
  .ssn.ssn .ssn-logo svg { height: 24px; }
  .ssn.ssn .ssn-ctx__link { min-height: 28px; padding: 0 14px; font-size: 13px; }
  /* mobil: kun burgeren – Mit Storstrøm, "Få et tilbud" og søg står i menupanelet */
  .ssn.ssn .ssn-actions__mit,
  .ssn.ssn .ssn-actions__tilbud { display: none; }
  .ssn.ssn .ssn-iconbtn { width: 42px; height: 42px; }
  .ssn.ssn .ssn-burger { margin-right: -10px; }
  .ssn.ssn .ssn-panel__ctas .ssn-btn { flex-basis: 100%; }   /* menupanelet: under hinanden i fuld bredde */
}
@media (max-width: 600px) {
  .admin-bar .ssn.ssn.is-pinned .ssn-bar { top: 0; }   /* admin-baren scroller med siden her */
}
@media (max-width: 359.98px) {
  .ssn.ssn .ssn-ctx__link { padding: 0 12px; }
  .ssn.ssn .ssn-util__phone span {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }
}

/* ==========================================================================
   FOOTER · <footer class="ssf" data-ssf data-ctx="privat|erhverv">
   --------------------------------------------------------------------------
   Genveje på lys bund, derefter en mørk flade: logo og sociale medier,
   tre linkkolonner (menuen "Storstrøm-footer"), kontakt og en bundlinje
   med firmaoplysninger og mærker. Samme sidemargin som headeren. Footeren
   følger privat/erhverv (data-ctx) – grøn på privat, blå på erhverv.
   Under 768px bliver linkkolonnerne harmonikaer. Det sætter JS op
   (.is-accordion på roden + en knap i hver overskrift) – uden JS står
   alle links fremme.
   ========================================================================== */
@media (max-width: 1279.98px) { .ssf.ssf { --ssn-gutter: 32px; } }
@media (max-width: 767.98px) { .ssf.ssf { --ssn-gutter: 20px; } }

.ssf.ssf .ssf-wrap {
  max-width: calc(var(--ssn-content) + 2 * var(--ssn-gutter));
  margin: 0 auto;
  padding: 0 var(--ssn-gutter);
}

/* ---------- genveje -------------------------------------------------------- */
.ssf.ssf .ssf-quick { background: var(--ss-tint-200); }
.ssf.ssf .ssf-quick :focus-visible { outline-color: var(--ss-brand); }
.ssf.ssf .ssf-quick__list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0 auto;
  list-style: none;
}
.ssf.ssf .ssf-quick__list > li { display: flex; min-width: 0; }
.ssf.ssf .ssf-quick__link {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  min-width: 0;
  min-height: 104px;
  padding: 20px 16px;
  color: var(--ss-brand);
  font-size: 16.5px;
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: -.01em;
}
.ssf.ssf .ssf-quick__icon {
  display: grid;
  place-items: center;
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #fff;
  color: var(--ss-brand);
  transition: background-color .18s, color .18s;
}
.ssf.ssf .ssf-quick__icon svg { width: 22px; height: 22px; }
/* understregningen vokser hurtigt frem fra venstre ved hover – som kolonnernes links */
.ssf.ssf .ssf-quick__label {
  min-width: 0;
  padding-bottom: 3px;
  background: linear-gradient(currentColor, currentColor) no-repeat 0 100% / 0 1.5px;
  transition: background-size .25s ease;
}
/* hover inverterer ikoncirklen – som knapperne */
.ssf.ssf .ssf-quick__link:hover .ssf-quick__icon { background: var(--ss-brand); color: #fff; }
.ssf.ssf .ssf-quick__link:hover .ssf-quick__label { background-size: 100% 1.5px; }

/* ---------- mørk flade ------------------------------------------------------ */
.ssf.ssf .ssf-main { background: var(--ss-brand); color: var(--ss-on-brand-soft); }   /* Storstrøm-grøn på privat, erhvervsblå på erhverv */
.ssf.ssf .ssf-main :focus-visible { outline-color: #fff; }

/* logo og sociale medier */
.ssf.ssf .ssf-top {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 20px 32px;
  padding: 64px 0 44px;
}
.ssf.ssf .ssf-logo { display: block; color: #fff; }
.ssf.ssf .ssf-logo svg { width: auto; height: 34px; }
.ssf.ssf .ssf-social { display: flex; gap: 10px; margin: 0; padding: 0; list-style: none; }
.ssf.ssf .ssf-social a {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(255, 255, 255, .3);
  border-radius: 50%;
  color: #fff;
  transition: background-color .18s, border-color .18s, color .18s;
}
.ssf.ssf .ssf-social a:hover { border-color: #fff; background: #fff; color: var(--ss-brand); }
.ssf.ssf .ssf-social svg { width: 20px; height: 20px; }

/* linkkolonner og kontakt */
.ssf.ssf .ssf-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 48px 40px;
  padding: 48px 0 64px;
  border-top: 1px solid rgba(255, 255, 255, .14);
}
.ssf.ssf .ssf-group,
.ssf.ssf .ssf-contact { min-width: 0; }
/* temaets og Elementors h2-regler (0,1,1) overstyres her (0,2,0) */
.ssf.ssf .ssf-title {
  margin: 0 0 20px;
  padding: 0;
  color: #fff;
  font-family: inherit;
  font-size: 17px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -.01em;
  text-transform: none;
}
.ssf.ssf .ssf-links { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
/* understregningen vokser hurtigt frem fra venstre ved hover. Den aktuelle side
   markeres ikke synligt i footeren – kun med aria-current til skærmlæsere */
.ssf.ssf .ssf-links a {
  padding-bottom: 3px;
  background: linear-gradient(currentColor, currentColor) no-repeat 0 100% / 0 1px;
  color: var(--ss-on-brand-soft);
  font-size: 15.5px;
  line-height: 1.4;
  overflow-wrap: break-word;
  transition: color .15s, background-size .25s ease;
}
.ssf.ssf .ssf-links a:is(:hover, :focus-visible) { background-size: 100% 1px; color: #fff; }

.ssf.ssf .ssf-hours { margin: 0 0 16px; font-size: 15.5px; line-height: 1.75; }
.ssf.ssf .ssf-more { display: inline-flex; align-items: center; gap: 8px; color: #fff; font-size: 15.5px; font-weight: 600; }
.ssf.ssf .ssf-more svg { width: 18px; height: 18px; transition: transform .16s; }
.ssf.ssf .ssf-more:hover svg { transform: translateX(4px); }

/* Trustpilot-lockup'et fra storstrom-trustpilot: hvidt navnetræk på den mørke
   bund. Bedømmelsesstjernerne og logoets stjerne er altid Trustpilots grønne. */
.ssf.ssf .ssf-tp {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  width: fit-content;
  margin-top: 36px;
  padding-top: 30px;
  border-top: 1px solid rgba(255, 255, 255, .14);
  color: #fff;
  transition: opacity .18s ease;
}
.ssf.ssf .ssf-tp:hover { opacity: .72; }
.ssf.ssf .ssf-tp__label { font-size: 15px; font-weight: 600; letter-spacing: -.01em; }
.ssf.ssf .ssf-tp__stars { display: flex; gap: 2px; }
.ssf.ssf .ssf-tp__stars svg { width: 22px; height: 22px; }
.ssf.ssf .ssf-tp__logo svg { width: auto; height: 21px; }

/* bundlinje: firmaoplysninger, cookieindstillinger og mærker */
.ssf.ssf .ssf-bottom {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 24px 48px;
  padding: 28px 0 40px;
  border-top: 1px solid rgba(255, 255, 255, .14);
}
.ssf.ssf .ssf-legal {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 24px;
  margin: 0;
  color: var(--ss-on-brand-muted);
  font-size: 13.5px;
  line-height: 1.5;
}
/* en knap, der ligner et link (den åbner Cookiebot – den navigerer ikke) */
.ssf.ssf .ssf-cookie,
.ssf.ssf .ssf-cookie:is(:hover, :focus, :active) {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  font-size: inherit;
  text-decoration-line: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
.ssf.ssf .ssf-cookie { color: inherit; transition: color .15s; }
.ssf.ssf .ssf-cookie:hover { color: #fff; }
.ssf.ssf .ssf-badges { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; margin: 0; padding: 0; list-style: none; }
.ssf.ssf .ssf-badges a { display: block; transition: transform .2s var(--ssn-ease); }
.ssf.ssf .ssf-badges a:hover { transform: translateY(-2px); }
.ssf.ssf .ssf-badges img { display: block; width: auto; max-width: none; height: 72px; }

/* harmonikaknappen findes kun under 768px (JS sætter den ind i overskriften) */
.ssf.ssf .ssf-toggle,
.ssf.ssf .ssf-toggle:is(:hover, :focus, :active) {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  width: 100%;
  min-height: 64px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  color: #fff;
  font-size: 17px;
  font-weight: 600;
  letter-spacing: -.01em;
  text-align: left;
}
.ssf.ssf .ssf-toggle svg { width: 20px; height: 20px; transition: transform .28s var(--ssn-ease); }
.ssf.ssf .ssf-toggle[aria-expanded="true"] svg { transform: rotate(180deg); }

/* ---------- footer: responsivt ---------------------------------------------- */
@media (min-width: 1024px) {
  .ssf.ssf .ssf-quick__list > li + li {
    border-left: 1px solid rgba(0, 0, 0, .08);
    border-left-color: color-mix(in srgb, var(--ss-brand) 14%, transparent);
  }
}
@media (max-width: 1279.98px) {
  .ssf.ssf .ssf-quick__link { gap: 12px; font-size: 15.5px; }
  .ssf.ssf .ssf-quick__icon { width: 44px; height: 44px; }
  .ssf.ssf .ssf-grid { column-gap: 32px; }
}
/* tablet: genvejene 2 × 2, kolonnerne 2 × 2 */
@media (max-width: 1023.98px) {
  .ssf.ssf .ssf-quick__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ssf.ssf .ssf-quick__list > li:nth-child(even) { border-left: 1px solid rgba(0, 0, 0, .08); }
  .ssf.ssf .ssf-quick__list > li:nth-child(n + 3) { border-top: 1px solid rgba(0, 0, 0, .08); }
  .ssf.ssf .ssf-quick__list > li:nth-child(even),
  .ssf.ssf .ssf-quick__list > li:nth-child(n + 3) { border-color: color-mix(in srgb, var(--ss-brand) 14%, transparent); }
  .ssf.ssf .ssf-quick__link { min-height: 88px; }
  .ssf.ssf .ssf-top { padding-top: 52px; }
  .ssf.ssf .ssf-logo svg { height: 29px; }
  .ssf.ssf .ssf-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 44px; }
  .ssf.ssf .ssf-badges img { height: 64px; }
}
/* mobil */
@media (max-width: 767.98px) {
  .ssf.ssf .ssf-quick__link { flex-direction: column; gap: 10px; min-height: 0; padding: 22px 6px 20px; font-size: 15px; text-align: center; }
  .ssf.ssf .ssf-top { padding: 40px 0 32px; }
  .ssf.ssf .ssf-logo svg { height: 24px; }
  .ssf.ssf .ssf-social { gap: 8px; }
  .ssf.ssf .ssf-social a { width: 40px; height: 40px; }
  .ssf.ssf .ssf-social svg { width: 18px; height: 18px; }
  .ssf.ssf .ssf-grid { grid-template-columns: minmax(0, 1fr); row-gap: 36px; padding: 36px 0 44px; }
  .ssf.ssf .ssf-bottom { flex-direction: column; align-items: flex-start; gap: 24px; padding: 28px 0 36px; }
  .ssf.ssf .ssf-legal { flex-direction: column; align-items: flex-start; gap: 4px; }
  .ssf.ssf .ssf-badges img { height: 56px; }

  /* harmonika */
  .ssf.ssf.is-accordion .ssf-grid { row-gap: 0; padding-top: 4px; }
  .ssf.ssf.is-accordion .ssf-group {
    display: grid;
    grid-template-rows: auto 0fr;
    border-bottom: 1px solid rgba(255, 255, 255, .14);
    transition: grid-template-rows .28s var(--ssn-ease);
  }
  .ssf.ssf.is-accordion .ssf-group.is-open { grid-template-rows: auto 1fr; }
  .ssf.ssf.is-accordion .ssf-group .ssf-title { margin: 0; }
  /* sammenfoldet: højde 0 og skjult for tab/skærmlæser; siden-margin giver fokusringen plads */
  .ssf.ssf.is-accordion .ssf-links {
    gap: 0;
    min-height: 0;
    margin: 0 -6px;
    padding: 0 6px;
    overflow: hidden;
    visibility: hidden;
    transition: visibility 0s linear .28s;
  }
  .ssf.ssf.is-accordion .ssf-group.is-open .ssf-links { visibility: visible; transition: visibility 0s; }
  .ssf.ssf.is-accordion .ssf-links > li { padding: 6px 0; }
  .ssf.ssf.is-accordion .ssf-links > li:last-child { padding-bottom: 24px; }
  .ssf.ssf.is-accordion .ssf-contact { padding-top: 40px; }
}

/* ---------- låst sidescroll, mens mobilmenuen er åben ---------------------- */
html.ssn-scroll-lock,
html.ssn-scroll-lock body { overflow: hidden; }

/* Chatboblen (Karla, indlæses via GTM) ligger bag menuen og kan ikke klikkes, mens den er åben.
   Karla sætter z-index: 2147483646 inline uden !important – derfor vinder !important her. */
html.ssn-scroll-lock iframe[title="Open AI-powered chatbot"] { z-index: 1 !important; pointer-events: none !important; }

/* ---------- reduceret bevægelse ------------------------------------------------ */
@media (prefers-reduced-motion: reduce) {
  :is(.ssn.ssn, .ssf.ssf) *,
  :is(.ssn.ssn, .ssf.ssf) *::before,
  :is(.ssn.ssn, .ssf.ssf) *::after {
    animation-duration: .001ms !important;
    transition-duration: .001ms !important;
    transition-delay: 0s !important;
  }
  .ssn.ssn .ssn-card:hover .ssn-card__icon,
  .ssn.ssn .ssn-mega__all:hover svg,
  .ssf.ssf .ssf-more:hover svg,
  .ssf.ssf .ssf-badges a:hover { transform: none; }
}

/* ---------- print ------------------------------------------------------------- */
@media print {
  .ssn.ssn .ssn-util,
  .ssn.ssn .ssn-panel,
  .ssn.ssn .ssn-actions,
  .ssn.ssn .ssn-scrim { display: none !important; }
  .ssn.ssn .ssn-bar { min-height: 0; padding: 12px 0; }
  .ssf.ssf .ssf-quick,
  .ssf.ssf .ssf-top,
  .ssf.ssf .ssf-grid,
  .ssf.ssf .ssf-cookie,
  .ssf.ssf .ssf-badges { display: none !important; }
  .ssf.ssf .ssf-main { background: none; }
  .ssf.ssf .ssf-bottom { padding: 12px 0; border: 0; }
  .ssf.ssf .ssf-legal { color: #000; }
}
