/* GoSorted.se — JS-independent entrance reveals + cleanup.
   Loaded last so content is always visible even if the interaction
   runtime is slow/blocked; gives a gentle fade-up where Webflow IX2
   would otherwise reveal elements. */
.gs-in { opacity: 1 !important; animation: gsIn .8s cubic-bezier(.16, 1, .3, 1) both; }
@keyframes gsIn {
  from { transform: translateY(16px); }
  to   { transform: none; }
}
/* Webflow IX2 scroll-reveals set opacity:0 at runtime and only animate to 1
   on scroll-trigger. Guarantee everything is visible regardless of IX2, and
   neutralise the reveal offset on content blocks (nav dropdown/toggle keep
   their transforms — they are not in this list). */
[style*="opacity: 0;"], [style*="opacity:0;"] {
  opacity: 1 !important;
  transform: none !important;
}
/* never ship the builder badge */
.w-webflow-badge { display: none !important; }

/* ───────── Huvudfunktioner — highlighted feature grid (homepage) ───────── */
.gs-highlights { background: #f3f2ed; padding: 60px 0 28px; }
.gs-hl-wrap { width: 100%; max-width: 1180px; margin: 0 auto; padding: 0 24px;
  font-family: "IBM Plex Sans", system-ui, -apple-system, sans-serif; }
.gs-hl-head { text-align: center; max-width: 40ch; margin: 0 auto 40px; }
.gs-hl-eyebrow { font-size: 13px; font-weight: 700; letter-spacing: .12em;
  text-transform: uppercase; color: #6f7c68; }
.gs-hl-title { font-size: clamp(26px, 3.2vw, 40px); line-height: 1.12;
  letter-spacing: -.02em; font-weight: 700; color: #383739; margin: 12px 0 0; }
.gs-hl-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.gs-hl-card { background: #fff; border: 1px solid rgba(56,55,57,.09);
  border-radius: 20px; padding: 24px 22px; display: flex; flex-direction: column;
  box-shadow: 0 22px 48px -34px rgba(56,55,57,.32);
  transition: transform .18s cubic-bezier(.16,1,.3,1), box-shadow .25s; }
.gs-hl-card:hover { transform: translateY(-3px);
  box-shadow: 0 30px 56px -34px rgba(56,55,57,.4); }
.gs-hl-ic { width: 46px; height: 46px; border-radius: 13px; flex: 0 0 auto;
  display: flex; align-items: center; justify-content: center; margin-bottom: 16px;
  background: rgba(111,124,104,.14); color: #5e6b58; }
.gs-hl-ic svg { width: 24px; height: 24px; }
.gs-hl-card:nth-child(4n+2) .gs-hl-ic { background: rgba(207,195,171,.34); color: #8a7a55; }
.gs-hl-card:nth-child(4n+3) .gs-hl-ic { background: rgba(126,145,163,.22); color: #5d7387; }
.gs-hl-card h3 { font-size: 17px; font-weight: 600; letter-spacing: -.01em;
  color: #383739; margin: 0 0 7px; line-height: 1.25; }
.gs-hl-card p { font-size: 14px; line-height: 1.5; color: #6b6a6d; margin: 0; }
@media (max-width: 980px) { .gs-hl-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .gs-hl-grid { grid-template-columns: 1fr; }
  .gs-highlights { padding: 40px 0 12px; } }
