/* Fixar efter Webflow→Astro-migreringen.
   Laddas efter abersten.webflow.css och ersätter beteenden som tidigare
   kom från Webflows interaktioner (IX2). */

/* --- Footern i botten även på korta sidor -------------------------------- */
.right-column {
  display: flex;
  flex-direction: column;
}
.right-column > .section.footer {
  margin-top: auto;
}

/* --- Header alltid vänsterjusterad (även på sidor utan breadcrumb) --------
   Webflows space-between tryckte loggan mot mitten när breadcrumb saknades. */
.navcontainer {
  justify-content: flex-start;
  column-gap: 1.5rem;
}
/* .w-clearfix skapar ::before/::after som i flex blir osynliga flex-items och
   (via column-gap) trycker in innehållet. Ta bort dem så att hamburger-
   knappen ligger i linje med sidinnehållet. */
.navcontainer::before,
.navcontainer::after {
  content: none;
}
/* Hamburgerknappen: kvadratisk yta med ikonen centrerad. Webflows padding +
   shrink-to-fit-bredd gav en 42×60-rektangel med ikonen tryckt mot vänster-
   kanten. Knappen hålls kvar på display:block (Webflow sätter det med högre
   specificitet) och ikonen centreras i stället med auto-marginal. */
.navcontainer .w-nav-button {
  box-sizing: border-box;
  width: 60px;
  height: 60px;
  padding: 18px 0;
}
.navcontainer .w-nav-button > [class*='w-icon-'] {
  width: 1em;
  margin: 0 auto;
  line-height: 1;
  text-align: center;
}

/* --- Modal: visa när öppnad (ersätter Webflow-interaktionen) -------------- */
.preview-modal.is-open {
  display: flex;
  opacity: 1;
}

/* --- Rätt huvudbild per kontor -------------------------------------------
   CSS:en hårdkodar Gävle-bilden; inline-style per sida vinner, men nolla
   bakgrunden här som skydd om inline saknas. */
.left-column.left-column-office {
  background-image: none;
}

/* --- Tunn chevron på verksamhetsområdes-accordion (kontorssidan) ---------- */
.expertiselist-trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1em;
}
.accordionicon {
  flex: none;
  width: 0.5em;
  height: 0.5em;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
  transition: transform 0.3s ease;
}
.accordion__item.active .accordionicon {
  transform: rotate(-135deg);
}

/* --- Kontaktikoner (Icomoon-glyfer) --------------------------------------
   Glyferna låg tidigare som tecken inuti .widgeticons (tappades vid port).
   e90f = e-post, e90e = telefon, e910 = telefax. */
.widgeticons.email::before { content: "\e90f"; }
.widgeticons.phone::before { content: "\e90e"; }
.widgeticons.fax::before { content: "\e910"; }

/* Ikoner på medarbetarkortens e-post/telefon-länkar (arkiv, kontor, m.fl.).
   OBS: modalen använder .widgeticons ovan – inte dessa – så inga dubbletter. */
.teamcard-linkemail::before,
.teamcard-linkphone::before {
  font-family: Icomoon, sans-serif;
  margin-right: 0.5em;
  font-size: 0.85em;
  text-decoration: none;
  display: inline-block;
}
.teamcard-linkemail::before { content: "\e90f"; }
.teamcard-linkphone::before { content: "\e90e"; }

/* --- Kartan följer beskrivningsrutans höjd -------------------------------
   Kartan positioneras absolut i sin grid-cell så att den inte tvingar fram
   egen höjd; radhöjden styrs av beskrivningsrutan (Area) och kartan fyller
   samma höjd. min-height ger en golvhöjd när kartan hamnar på egen rad
   (surfplatta/mobil). */
.office-introgrid .mapcontainer {
  position: relative;
  overflow: hidden;
  min-height: 300px;
}
/* Låt Webflows omslag försvinna ur layouten så att iframe:en positioneras
   direkt mot .mapcontainer (vars höjd styrs av beskrivningen/grid-stretch). */
.office-introgrid .embedmap,
.office-introgrid .googlemap {
  display: contents;
}
.office-introgrid .mapcontainer iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}
/* När kartan ligger på egen rad (surfplatta/mobil) finns ingen beskrivning att
   matcha — ge den då en definit höjd (min-height räcker inte för att lösa
   procent-höjdkedjan). Desktop styrs av grid-stretch mot beskrivningen. */
@media (max-width: 991px) {
  .office-introgrid .mapcontainer {
    height: 400px;
  }
}
