1<!DOCTYPE html><html lang="sv"><head><meta charSet="utf-8" data-next-head=""/><style data-next-head=""> 2 /* Minimal Critical CSS */ 3 * { margin: 0; padding: 0; box-sizing: border-box; } 4 img { max-width: 100%; height: auto; display: block; } 5 @font-face { 6 font-family: 'BagossStandard'; 7 font-display: swap; 8 src: url('/static/fonts/BagossStandard-Regular.woff2') format('woff2'); 9 } 10 11 /* Header Navigation Critical CSS */ 12 [data-critical="header"] { 13 position: relative; 14 z-index: 10; 15 width: 100%; 16 background: transparent; 17 } 18 19 /* Flex container for header items */ 20 [data-critical="header"] [data-critical-header="banner"] { 21 display: flex; 22 align-items: center; 23 justify-content: space-between; 24 min-height: 90px; 25 padding: 0 20px; 26 } 27 28 @media (min-width: 768px) { 29 [data-critical="header"] [data-critical-header="banner"] { 30 padding: 0 90px; 31 min-height: 90px; 32 } 33 } 34 35 /* Logo sizing */ 36 [data-critical="header"] [data-critical-header="logo"] { 37 flex-shrink: 0; 38 display: block; 39 } 40 41 /* Menu toggle button */ 42 [data-critical="header"] [data-critical-header="menu-toggle"] { 43 background: transparent; 44 border: none; 45 cursor: pointer; 46 padding: 8px; 47 display: flex; 48 align-items: center; 49 justify-content: center; 50 } 51 52 /* Navigation links */ 53 [data-critical="header"] nav a { 54 text-decoration: none; 55 color: inherit; 56 display: flex; 57 } 58 59 /* Hero Section Critical CSS */ 60 [data-critical="hero"] { 61 position: relative; 62 z-index: 4; 63 width: 100%; 64 margin-bottom: 24px; 65 } 66 67 @media (min-width: 768px) { 68 [data-critical="hero"] { 69 margin-bottom: 40px; 70 } 71 } 72 73 /* Hero image container */ 74 [data-critical="hero"] img { 75 width: 100%; 76 height: auto; 77 display: block; 78 border-radius: 0; 79 } 80 81 @media (min-width: 768px) { 82 [data-critical="hero"] img { 83 border-radius: 32px; 84 } 85 } 86 87 /* StartPage Critical CSS */ 88 [data-critical="startpage"] { 89 display: block; 90 width: 100%; 91 min-height: 100vh; 92 } 93 94 [data-critical="startpage"] > * { 95 width: 100%; 96 } 97 </style>
97<script id="CookieConsent" src="https://policy.app.cookieinformation.com/uc.js" data-culture="SV" type="text/javascript" data-gcm-version="2.0" defer="" rel="preconnect" data-next-head=""></script>
97<title data-next-head="">Digital partner för innovation & hållbar utveckling | Knowit</title><meta name="description" content="Knowit är ett it-konsultbolag med 3700 it-konsulter som levererar digitala lösningar & hjälper kunder med med deras digitala transformation. Kontakta oss!" data-next-head=""/><meta name="referrer" content="no-referrer" data-next-head=""/><link rel="canonical" href="https://www.knowit.se" data-next-head=""/><meta property="og:url" content="https://www.knowit.se" data-next-head=""/><meta property="og:site_name" content="Knowit" data-next-head=""/><meta property="og:title" content="Digital partner för innovation & hållbar utveckling | Knowit" data-next-head=""/><meta name="keywords" data-next-head=""/><meta name="google-site-verification" content="rqXPf5eLKH5SMPj3s85z8BRBzhDeLHGP-dOxbl-vQGk" data-next-head=""/><meta property="og:description" content="Knowit är ett it-konsultbolag med 3700 it-konsulter som levererar digitala lösningar & hjälper kunder med med deras digitala transformation. Kontakta oss!" data-next-head=""/><meta property="og:image" content="https://www.knowit.se/globalassets/image-bank/gradients/afterglow-1920x1080.jpg" data-next-head=""/><meta property="twitter:site" content="Knowit" data-next-head=""/><meta property="twitter:description" content="Knowit är ett it-konsultbolag med 3700 it-konsulter som levererar digitala lösningar & hjälper kunder med med deras digitala transformation. Kontakta oss!" data-next-head=""/><meta property="twitter:title" content="Digital partner för innovation & hållbar utveckling | Knowit" data-next-head=""/><meta name="viewport" content="width=device-width, height=device-height initial-scale=1" data-next-head=""/><link rel="icon" href="https://www.knowit.se/contentassets/048e04e9abca42e0bd83aacf7ed0b338/knowit_favicon.png" data-next-head=""/>
97<script id="schema-data" type="application/ld+json">{"@context":"https://schema.org","@type":"Organization","@id":"https://www.knowit.se/#organization","url":"https://www.knowit.se/","name":"Knowit","legalName":"Knowit AB","iso6523Code":["0007:5563910354"],"description":"Knowit är en nordisk konsultverksamhet som hjälper företag, myndigheter och organisationer att lyckas i den digitala transformationen. Med kompetens inom AI, teknik, strategi och design utvecklar vi lösningar som skapar kundvärde och stärker digital motstÃ¥ndskraft. Verksamheten är organiserad i fem affärsomrÃ¥den â Solutions, Experience, Connectivity, Insight och Products â som tillsammans erbjuder kompetens inom bland annat systemutveckling, datadrivna kundupplevelser, AI, molntjänster, cybersäkerhet, IP-baserade produktlösningar och managementkonsulting. Kompetenser frÃ¥n olika affärsomrÃ¥den kombineras ofta i kunduppdrag.\n\nKnowit grundades 1990 och har omkring 3 700 medarbetare, huvudsakligen i Norden, med verksamhet även i Polen, Tyskland och Serbien. Knowit AB (publ) är noterat pÃ¥ Nasdaq Stockholm Mid Cap.","address":{"@type":"PostalAddress","streetAddress":"Sveavägen 20","postalCode":"103 68","addressRegion":"Stockholm","addressCountry":"SWE"},"logo":"https://kest01mstrc9jb4prod.dxcloud.episerver.net/globalassets/image-bank/logotype/knowit-logoweb-black.svg","sameAs":["https://www.linkedin.com/company/knowit"],"slogan":"A sustainable and humane society. ","ethicsPolicy":"https://kest01mstrc9jb4prod.dxcloud.episerver.net/link/f2be9884bc4a4f81a25fe8ebe1dcc923.aspx"}</script>
97<link rel="preload" href="/static/fonts/BagossStandard-Regular.woff2" as="font" type="font/woff2" crossorigin="anonymous"/><noscript data-n-css=""></noscript>
97<script defer="" nomodule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script>
97<script src="/_next/static/chunks/webpack-f2dc78c31cb0f729.js" defer=""></script>
97<script src="/_next/static/chunks/framework-a6e0b7e30f98059a.js" defer=""></script>
97<script src="/_next/static/chunks/main-6621de45e7c4cd71.js" defer=""></script>
97<script src="/_next/static/chunks/pages/_app-3a67dc5e63da57c3.js" defer=""></script>
97<script src="/_next/static/chunks/131-9134ec237705931e.js" defer=""></script>
97<script src="/_next/static/chunks/330-de1341b78333b8e0.js" defer=""></script>
97<script src="/_next/static/chunks/893-9a69a2035851ec29.js" defer=""></script>
97<script src="/_next/static/chunks/42-ba5811b924968070.js" defer=""></script>
97<script src="/_next/static/chunks/pages/%5B%5B...slug%5D%5D-f044b0bfcb553f0b.js" defer=""></script>
97<script src="/_next/static/azM-6MnyJRFJ_7YqFlWAP/_buildManifest.js" defer=""></script>
97<script src="/_next/static/azM-6MnyJRFJ_7YqFlWAP/_ssgManifest.js" defer=""></script>
97</head><body>
vendor: 67 bytes, line 97
97<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
97GTM-K4HQP95
vendor: 82 bytes, line 97
97" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
97<div id="__next"><style data-emotion="css-global 19sltg0">:host,:root,[data-theme]{--chakra-ring-inset:var(--chakra-empty,/*!*/ /*!*/);--chakra-ring-offset-width:0px;--chakra-ring-offset-color:#fff;--chakra-ring-color:rgba(66, 153, 225, 0.6);--chakra-ring-offset-shadow:0 0 #0000;--chakra-ring-shadow:0 0 #0000;--chakra-space-x-reverse:0;--chakra-space-y-reverse:0;--chakra-colors-transparent:transparent;--chakra-colors-current:currentColor;--chakra-colors-black:#0B0B26;--chakra-colors-white:#FFFEF6;--chakra-colors-whiteAlpha-50:rgba(255, 255, 255, 0.04);--chakra-colors-whiteAlpha-100:rgba(255, 255, 255, 0.06);--chakra-colors-whiteAlpha-200:rgba(255, 255, 255, 0.08);--chakra-colors-whiteAlpha-300:rgba(255, 255, 255, 0.16);--chakra-colors-whiteAlpha-400:rgba(255, 255, 255, 0.24);--chakra-colors-whiteAlpha-500:rgba(255, 255, 255, 0.36);--chakra-colors-whiteAlpha-600:rgba(255, 255, 255, 0.48);--chakra-colors-whiteAlpha-700:rgba(255, 255, 255, 0.64);--chakra-colors-whiteAlpha-800:rgba(255, 255, 255, 0.80);--chakra-colors-whiteAlpha-900:rgba(255, 255, 255, 0.92);--chakra-colors-blackAlpha-50:rgba(0, 0, 0, 0.04);--chakra-colors-blackAlpha-100:rgba(0, 0, 0, 0.06);--chakra-colors-blackAlpha-200:rgba(0, 0, 0, 0.08);--chakra-colors-blackAlpha-300:rgba(0, 0, 0, 0.16);--chakra-colors-blackAlpha-400:rgba(0, 0, 0, 0.24);--chakra-colors-blackAlpha-500:rgba(0, 0, 0, 0.36);--chakra-colors-blackAlpha-600:rgba(0, 0, 0, 0.48);--chakra-colors-blackAlpha-700:rgba(0, 0, 0, 0.64);--chakra-colors-blackAlpha-800:rgba(0, 0, 0, 0.80);--chakra-colors-blackAlpha-900:rgba(0, 0, 0, 0.92);--chakra-colors-gray-50:#F7FAFC;--chakra-colors-gray-100:#EDF2F7;--chakra-colors-gray-200:#E2E8F0;--chakra-colors-gray-300:#CBD5E0;--chakra-colors-gray-400:#A0AEC0;--chakra-colors-gray-500:#718096;--chakra-colors-gray-600:#4A5568;--chakra-colors-gray-700:#2D3748;--chakra-colors-gray-800:#1A202C;--chakra-colors-gray-900:#171923;--chakra-colors-red-50:#FFF5F5;--chakra-colors-red-100:#FED7D7;--chakra-colors-red-200:#FEB2B2;--chakra-colors-red-300:#FC8181;--chakra-colors-red-400:#F56565;--chakra-colors-red-500:#E53E3E;--chakra-colors-red-600:#C53030;--chakra-colors-red-700:#9B2C2C;--chakra-colors-red-800:#822727;--chakra-colors-red-900:#63171B;--chakra-colors-orange-50:#FFFAF0;--chakra-colors-orange-100:#FEEBC8;--chakra-colors-orange-200:#FBD38D;--chakra-colors-orange-300:#F6AD55;--chakra-colors-orange-400:#ED8936;--chakra-colors-orange-500:#DD6B20;--chakra-colors-orange-600:#C05621;--chakra-colors-orange-700:#9C4221;--chakra-colors-orange-800:#7B341E;--chakra-colors-orange-900:#652B19;--chakra-colors-yellow-50:#FFFFF0;--chakra-colors-yellow-100:#FEFCBF;--chakra-colors-yellow-200:#FAF089;--chakra-colors-yellow-300:#F6E05E;--chakra-colors-yellow-400:#ECC94B;--chakra-colors-yellow-500:#D69E2E;--chakra-colors-yellow-600:#B7791F;--chakra-colors-yellow-700:#975A16;--chakra-colors-yellow-800:#744210;--chakra-colors-yellow-900:#5F370E;--chakra-colors-green:#55D440;--chakra-colors-teal-50:#E6FFFA;--chakra-colors-teal-100:#B2F5EA;--chakra-colors-teal-200:#81E6D9;--chakra-colors-teal-300:#4FD1C5;--chakra-colors-teal-400:#38B2AC;--chakra-colors-teal-500:#319795;--chakra-colors-teal-600:#2C7A7B;--chakra-colors-teal-700:#285E61;--chakra-colors-teal-800:#234E52;--chakra-colors-teal-900:#1D4044;--chakra-colors-blue-50:#ebf8ff;--chakra-colors-blue-100:#bee3f8;--chakra-colors-blue-200:#90cdf4;--chakra-colors-blue-300:#63b3ed;--chakra-colors-blue-400:#4299e1;--chakra-colors-blue-500:#3182ce;--chakra-colors-blue-600:#2b6cb0;--chakra-colors-blue-700:#2c5282;--chakra-colors-blue-800:#2a4365;--chakra-colors-blue-900:#1A365D;--chakra-colors-cyan-50:#EDFDFD;--chakra-colors-cyan-100:#C4F1F9;--chakra-colors-cyan-200:#9DECF9;--chakra-colors-cyan-300:#76E4F7;--chakra-colors-cyan-400:#0BC5EA;--chakra-colors-cyan-500:#00B5D8;--chakra-colors-cyan-600:#00A3C4;--chakra-colors-cyan-700:#0987A0;--chakra-colors-cyan-800:#086F83;--chakra-colors-cyan-900:#065666;--chakra-colors-purple-50:#FAF5FF;--chakra-colors-purple-100:#E9D8FD;--chakra-colors-purple-200:#D6BCFA;--chakra-colors-purple-300:#B794F4;--chakra-colors-purple-400:#9F7AEA;--chakra-colors-purple-500:#805AD5;--chakra-colors-purple-600:#6B46C1;--chakra-colors-purple-700:#553C9A;--chakra-colors-purple-800:#44337A;--chakra-colors-purple-900:#322659;--chakra-colors-pink-50:#FFF5F7;--chakra-colors-pink-100:#FED7E2;--chakra-colors-pink-200:#FBB6CE;--chakra-colors-pink-300:#F687B3;--chakra-colors-pink-400:#ED64A6;--chakra-colors-pink-500:#D53F8C;--chakra-colors-pink-600:#B83280;--chakra-colors-pink-700:#97266D;--chakra-colors-pink-800:#702459;--chakra-colors-pink-900:#521B41;--chakra-colors-linkedin-50:#E8F4F9;--chakra-colors-linkedin-100:#CFEDFB;--chakra-colors-linkedin-200:#9BDAF3;--chakra-colors-linkedin-300:#68C7EC;
97--chakra-colors-linkedin-400:#34B3E4;--chakra-colors-linkedin-500:#00A0DC;--chakra-colors-linkedin-600:#008CC9;--chakra-colors-linkedin-700:#0077B5;--chakra-colors-linkedin-800:#005E93;--chakra-colors-linkedin-900:#004471;--chakra-colors-facebook-50:#E8F4F9;--chakra-colors-facebook-100:#D9DEE9;--chakra-colors-facebook-200:#B7C2DA;--chakra-colors-facebook-300:#6482C0;--chakra-colors-facebook-400:#4267B2;--chakra-colors-facebook-500:#385898;--chakra-colors-facebook-600:#314E89;--chakra-colors-facebook-700:#29487D;--chakra-colors-facebook-800:#223B67;--chakra-colors-facebook-900:#1E355B;--chakra-colors-messenger-50:#D0E6FF;--chakra-colors-messenger-100:#B9DAFF;--chakra-colors-messenger-200:#A2CDFF;--chakra-colors-messenger-300:#7AB8FF;--chakra-colors-messenger-400:#2E90FF;--chakra-colors-messenger-500:#0078FF;--chakra-colors-messenger-600:#0063D1;--chakra-colors-messenger-700:#0052AC;--chakra-colors-messenger-800:#003C7E;--chakra-colors-messenger-900:#002C5C;--chakra-colors-whatsapp-50:#dffeec;--chakra-colors-whatsapp-100:#b9f5d0;--chakra-colors-whatsapp-200:#90edb3;--chakra-colors-whatsapp-300:#65e495;--chakra-colors-whatsapp-400:#3cdd78;--chakra-colors-whatsapp-500:#22c35e;--chakra-colors-whatsapp-600:#179848;--chakra-colors-whatsapp-700:#0c6c33;--chakra-colors-whatsapp-800:#01421c;--chakra-colors-whatsapp-900:#001803;--chakra-colors-twitter-50:#E5F4FD;--chakra-colors-twitter-100:#C8E9FB;--chakra-colors-twitter-200:#A8DCFA;--chakra-colors-twitter-300:#83CDF7;--chakra-colors-twitter-400:#57BBF5;--chakra-colors-twitter-500:#1DA1F2;--chakra-colors-twitter-600:#1A94DA;--chakra-colors-twitter-700:#1681BF;--chakra-colors-twitter-800:#136B9E;--chakra-colors-twitter-900:#0D4D71;--chakra-colors-telegram-50:#E3F2F9;--chakra-colors-telegram-100:#C5E4F3;--chakra-colors-telegram-200:#A2D4EC;--chakra-colors-telegram-300:#7AC1E4;--chakra-colors-telegram-400:#47A9DA;--chakra-colors-telegram-500:#0088CC;--chakra-colors-telegram-600:#007AB8;--chakra-colors-telegram-700:#006BA1;--chakra-colors-telegram-800:#005885;--chakra-colors-telegram-900:#003F5E;--chakra-colors-brand-primary:#FEFBE6;--chakra-colors-brand-accent:#372BC5;--chakra-colors-brand-secondary:#372BC5;--chakra-colors-brand-start:#FFD6B8;--chakra-colors-brand-puff:#FAF6DD;--chakra-colors-brand-news:#FFEBDD;--chakra-colors-brand-case:#E9E9FF;--chakra-colors-brand-bg1:#E3EAE4;--chakra-colors-brand-bg3:#7C3647;--chakra-colors-brand-bg4:#F1F0ED;--chakra-colors-brand-bg5:#F8F6F4;--chakra-colors-brand-error:#EC1010;--chakra-colors-brand-dim:#0a0938a8;--chakra-colors-brand-border:#0a093838;--chakra-colors-brand-black:#0B0B26;--chakra-colors-brand-white:#FFFEF6;--chakra-colors-brand-green:#55D440;--chakra-colors-brand-disabled:#C4C4C4;--chakra-colors-brand-hover-news:#FFEBDD;--chakra-colors-brand-hover-case:#CFCEFF;--chakra-colors-brand-text-primary:#0B0B26;--chakra-colors-brand-text-secondary:#FFD6B8;--chakra-colors-brand-text-case:#372BC5;--chakra-colors-brand-text-text2:#D9D9D9;--chakra-colors-brand-search-global:#FFFEF6;--chakra-colors-brand-search-primary:#0B0B26;--chakra-colors-primary:#FEFBE6;--chakra-colors-accent:#372BC5;--chakra-colors-secondary:#372BC5;--chakra-colors-start:#FFD6B8;--chakra-colors-puff:#FAF6DD;--chakra-colors-news:#FFEBDD;--chakra-colors-case:#E9E9FF;--chakra-colors-bg1:#E3EAE4;--chakra-colors-bg3:#7C3647;--chakra-colors-bg4:#F1F0ED;--chakra-colors-bg5:#F8F6F4;--chakra-colors-error:#EC1010;--chakra-colors-dim:#0a0938a8;--chakra-colors-border:#0a093838;--chakra-colors-disabled:#C4C4C4;--chakra-colors-hover-news:#FFEBDD;--chakra-colors-hover-case:#CFCEFF;--chakra-colors-text-primary:#0B0B26;--chakra-colors-text-secondary:#FFD6B8;--chakra-colors-text-case:#372BC5;--chakra-colors-text-text2:#D9D9D9;--chakra-colors-search-global:#FFFEF6;--chakra-colors-search-primary:#0B0B26;--chakra-colors-heroBg:transparent;--chakra-colors-pageBg:#FEFBE6;--chakra-colors-heroHeading:#0B0B26;--chakra-colors-heroText:#0B0B26;--chakra-borders-none:0;--chakra-borders-1px:1px solid;--chakra-borders-2px:2px solid;--chakra-borders-4px:4px solid;--chakra-borders-8px:8px solid;--chakra-fonts-heading:BagossStandard,Arial;--chakra-fonts-body:BagossStandard,Arial;--chakra-fonts-mono:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--chakra-fonts-title:"BagossStandard",Arial;--chakra-fontSizes-1:0.25rem;--chakra-fontSizes-2:0.5rem;--chakra-fontSizes-3:0.75rem;--chakra-fontSizes-4:1rem;--chakra-fontSizes-5:1.25rem;--chakra-fontSizes-6:1.5rem;--chakra-fontSizes-7:1.75rem;--chakra-fontSizes-8:2rem;--chakra-fontSizes-9:2.25rem;--chakra-fontSizes-10:2.5rem;--chakra-fontSizes-12:3rem;--chakra-fontSizes-13:3.25rem;--chakra-fontSizes-14:3.5rem;--chakra-fontSizes-15:3.75rem;--chakra-fontSizes-16:4rem;--chakra-fontSizes-17:4.5rem;--chakra-fontSizes-18:5rem;--chakra-fontSizes-20:5rem;--chakra-fontSizes-24:6rem;--chakra-fontSizes-25:6.25rem;--chakra-fontSizes-28:7rem;--chakra-fontSizes-32:8rem;--chakra-fontSizes-36:9rem;--chakra-fontSizes-40:10rem;--chakra-fontSizes-44:11rem;--chakra-fontSizes-48:12rem;--chakra-fontSizes-50:12.5rem;--chakra-fontSizes-52:13rem;--chakra-fontSizes-56:14rem;--chakra-fontSizes-60:15rem;--chakra-fontSizes-64:16rem;--chakra-fontSizes-72:18rem;--chakra-fontSizes-80:20rem;--chakra-fontSizes-96:24rem;--chakra-fontSizes-3xs:0.875rem;--chakra-fontSizes-2xs:0.875rem;--chakra-fontSizes-xs:1rem;--chakra-fontSizes-sm:1.125rem;--chakra-fontSizes-md:1.25rem;--chakra-fontSizes-lg:1.375rem;--chakra-fontSizes-xl:1.5rem;--chakra-fontSizes-2xl:1.625rem;--chakra-fontSizes-3xl:2.25rem;--chakra-fontSizes-4xl:2.375rem;--chakra-fontSizes-5xl:3.125rem;--chakra-fontSizes-6xl:3.25rem;--chakra-fontSizes-7xl:4.5rem;--chakra-fontSizes-8xl:7rem;--chakra-fontSizes-9xl:8rem;--chakra-fontSizes-2-5xl:1.75rem;--chakra-fontSizes-2-75xl:1.875rem;--chakra-fontSizes-0-5:0.125rem;--chakra-fontSizes-1-5:0.375rem;--chakra-fontSizes-2-5:0.625rem;--chakra-fontSizes-3-5:0.875rem;--chakra-fontSizes-4-5:1.125rem;--chakra-fontSizes-5-5:1.375rem;--chakra-fontSizes-6-5:1.625rem;--chakra-fontSizes-8-5:2.125rem;--chakra-fontSizes-12-5:3.125rem;--chakra-fontWeights-hairline:100;--chakra-fontWeights-thin:200;--chakra-fontWeights-light:300;--chakra-fontWeights-normal:400;--chakra-fontWeights-medium:500;--chakra-fontWeights-semibold:600;--chakra-fontWeights-bold:700;--chakra-fontWeights-extrabold:800;--chakra-fontWeights-black:900;--chakra-letterSpacings-tighter:-0.05em;
97--chakra-letterSpacings-tight:-0.025em;--chakra-letterSpacings-normal:0;--chakra-letterSpacings-wide:0.025em;--chakra-letterSpacings-wider:0.05em;--chakra-letterSpacings-widest:0.1em;--chakra-lineHeights-1:0.25rem;--chakra-lineHeights-2:0.5rem;--chakra-lineHeights-3:0.75rem;--chakra-lineHeights-4:1rem;--chakra-lineHeights-5:1.25rem;--chakra-lineHeights-6:1.5rem;--chakra-lineHeights-7:1.75rem;--chakra-lineHeights-8:2rem;--chakra-lineHeights-9:2.25rem;--chakra-lineHeights-10:2.5rem;--chakra-lineHeights-12:3rem;--chakra-lineHeights-13:3.25rem;--chakra-lineHeights-14:3.5rem;--chakra-lineHeights-15:3.75rem;--chakra-lineHeights-16:4rem;--chakra-lineHeights-17:4.5rem;--chakra-lineHeights-18:5rem;--chakra-lineHeights-20:5rem;--chakra-lineHeights-24:6rem;--chakra-lineHeights-25:6.25rem;--chakra-lineHeights-28:7rem;--chakra-lineHeights-32:8rem;--chakra-lineHeights-36:9rem;--chakra-lineHeights-40:10rem;--chakra-lineHeights-44:11rem;--chakra-lineHeights-48:12rem;--chakra-lineHeights-50:12.5rem;--chakra-lineHeights-52:13rem;--chakra-lineHeights-56:14rem;--chakra-lineHeights-60:15rem;--chakra-lineHeights-64:16rem;--chakra-lineHeights-72:18rem;--chakra-lineHeights-80:20rem;--chakra-lineHeights-96:24rem;--chakra-lineHeights-normal:normal;--chakra-lineHeights-none:1;--chakra-lineHeights-shorter:1.25;--chakra-lineHeights-short:1.375;--chakra-lineHeights-base:1.5;--chakra-lineHeights-tall:1.625;--chakra-lineHeights-taller:2;--chakra-lineHeights-3xs:1rem;--chakra-lineHeights-2xs:1.125rem;--chakra-lineHeights-xs:1.25rem;--chakra-lineHeights-sm:1.5rem;--chakra-lineHeights-md:1.625rem;--chakra-lineHeights-lg:1.75rem;--chakra-lineHeights-xl:2rem;--chakra-lineHeights-2xl:2.25rem;--chakra-lineHeights-3xl:2.5rem;--chakra-lineHeights-3-5xl:2.75rem;--chakra-lineHeights-4xl:3rem;--chakra-lineHeights-4-5xl:3.125rem;--chakra-lineHeights-5xl:4.5rem;--chakra-lineHeights-6xl:4rem;--chakra-lineHeights-7xl:7rem;--chakra-lineHeights-9xl:7rem;--chakra-lineHeights-0-5:0.125rem;--chakra-lineHeights-1-5:0.375rem;--chakra-lineHeights-2-5:0.625rem;--chakra-lineHeights-3-5:0.875rem;--chakra-lineHeights-4-5:1.125rem;--chakra-lineHeights-5-5:1.375rem;--chakra-lineHeights-6-5:1.625rem;--chakra-lineHeights-8-5:2.125rem;--chakra-lineHeights-12-5:3.125rem;--chakra-radii-none:0;--chakra-radii-sm:4px;--chakra-radii-base:6px;--chakra-radii-md:0.375rem;--chakra-radii-lg:0.5rem;--chakra-radii-xl:0.75rem;--chakra-radii-2xl:1rem;--chakra-radii-3xl:1.5rem;--chakra-radii-full:9999px;--chakra-space-1:0.25rem;--chakra-space-2:0.5rem;--chakra-space-3:0.75rem;--chakra-space-4:1rem;--chakra-space-5:1.25rem;--chakra-space-6:1.5rem;--chakra-space-7:1.75rem;--chakra-space-8:2rem;--chakra-space-9:2.25rem;--chakra-space-10:2.5rem;--chakra-space-12:3rem;--chakra-space-13:3.25rem;--chakra-space-14:3.5rem;--chakra-space-15:3.75rem;--chakra-space-16:4rem;--chakra-space-17:4.5rem;--chakra-space-18:5rem;--chakra-space-20:5rem;--chakra-space-24:6rem;--chakra-space-25:6.25rem;--chakra-space-28:7rem;--chakra-space-32:8rem;--chakra-space-36:9rem;--chakra-space-40:10rem;--chakra-space-44:11rem;--chakra-space-48:12rem;--chakra-space-50:12.5rem;--chakra-space-52:13rem;--chakra-space-56:14rem;--chakra-space-60:15rem;--chakra-space-64:16rem;--chakra-space-72:18rem;--chakra-space-80:20rem;--chakra-space-96:24rem;--chakra-space-px:1px;--chakra-space-0-5:0.125rem;--chakra-space-1-5:0.375rem;--chakra-space-2-5:0.625rem;--chakra-space-3-5:0.875rem;--chakra-space-4-5:1.125rem;--chakra-space-5-5:1.375rem;--chakra-space-6-5:1.625rem;--chakra-space-8-5:2.125rem;--chakra-space-12-5:3.125rem;--chakra-shadows-xs:0 0 0 1px rgba(0, 0, 0, 0.05);--chakra-shadows-sm:0 1px 2px 0 rgba(0, 0, 0, 0.05);--chakra-shadows-base:0 1px 3px 0 rgba(0, 0, 0, 0.1),0 1px 2px 0 rgba(0, 0, 0, 0.06);--chakra-shadows-md:0 4px 6px -1px rgba(0, 0, 0, 0.1),0 2px 4px -1px rgba(0, 0, 0, 0.06);--chakra-shadows-lg:0 10px 15px -3px rgba(0, 0, 0, 0.1),0 4px 6px -2px rgba(0, 0, 0, 0.05);--chakra-shadows-xl:0 20px 25px -5px rgba(0, 0, 0, 0.1),0 10px 10px -5px rgba(0, 0, 0, 0.04);--chakra-shadows-2xl:0 25px 50px -12px rgba(0, 0, 0, 0.25);--chakra-shadows-outline:0 0 0 3px rgba(66, 153, 225, 0.6);--chakra-shadows-inner:inset 0 2px 4px 0 rgba(0,0,0,0.06);--chakra-shadows-none:none;--chakra-shadows-dark-lg:rgba(0, 0, 0, 0.1) 0px 0px 0px 1px,rgba(0, 0, 0, 0.2) 0px 5px 10px,rgba(0, 0, 0, 0.4) 0px 15px 40px;--chakra-sizes-1:0.25rem;--chakra-sizes-2:0.5rem;--chakra-sizes-3:0.75rem;--chakra-sizes-4:1rem;--chakra-sizes-5:1.25rem;--chakra-sizes-6:1.5rem;--chakra-sizes-7:1.75rem;--chakra-sizes-8:2rem;--chakra-sizes-9:2.25rem;--chakra-sizes-10:2.5rem;--chakra-sizes-12:3rem;--chakra-sizes-14:3.5rem;--chakra-sizes-16:4rem;--chakra-sizes-20:5rem;--chakra-sizes-24:6rem;--chakra-sizes-28:7rem;--chakra-sizes-32:8rem;--chakra-sizes-36:9rem;--chakra-sizes-40:10rem;--chakra-sizes-44:11rem;--chakra-sizes-48:12rem;--chakra-sizes-52:13rem;--chakra-sizes-56:14rem;--chakra-sizes-60:15rem;--chakra-sizes-64:16rem;--chakra-sizes-72:18rem;--chakra-sizes-80:20rem;--chakra-sizes-96:24rem;--chakra-sizes-px:1px;--chakra-sizes-0-5:0.125rem;--chakra-sizes-1-5:0.375rem;--chakra-sizes-2-5:0.625rem;--chakra-sizes-3-5:0.875rem;--chakra-sizes-max:max-content;
97--chakra-sizes-min:min-content;--chakra-sizes-full:100%;--chakra-sizes-3xs:14rem;--chakra-sizes-2xs:16rem;--chakra-sizes-xs:20rem;--chakra-sizes-sm:24rem;--chakra-sizes-md:28rem;--chakra-sizes-lg:32rem;--chakra-sizes-xl:36rem;--chakra-sizes-2xl:42rem;--chakra-sizes-3xl:48rem;--chakra-sizes-4xl:56rem;--chakra-sizes-5xl:64rem;--chakra-sizes-6xl:72rem;--chakra-sizes-7xl:80rem;--chakra-sizes-8xl:90rem;--chakra-sizes-prose:60ch;--chakra-sizes-container-sm:640px;--chakra-sizes-container-md:768px;--chakra-sizes-container-lg:1024px;--chakra-sizes-container-xl:1280px;--chakra-zIndices-hide:-1;--chakra-zIndices-auto:auto;--chakra-zIndices-base:0;--chakra-zIndices-docked:10;--chakra-zIndices-dropdown:1000;--chakra-zIndices-sticky:1100;--chakra-zIndices-banner:1200;--chakra-zIndices-overlay:1300;--chakra-zIndices-modal:1400;--chakra-zIndices-popover:1500;--chakra-zIndices-skipLink:1600;--chakra-zIndices-toast:1700;--chakra-zIndices-tooltip:1800;--chakra-zIndices-loaderOverlay:1900;--chakra-zIndices-loader:2000;--chakra-transition-property-common:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform;--chakra-transition-property-colors:background-color,border-color,color,fill,stroke;--chakra-transition-property-dimensions:width,height;--chakra-transition-property-position:left,right,top,bottom;--chakra-transition-property-background:background-color,background-image,background-position;--chakra-transition-easing-ease-in:cubic-bezier(0.4, 0, 1, 1);--chakra-transition-easing-ease-out:cubic-bezier(0, 0, 0.2, 1);--chakra-transition-easing-ease-in-out:cubic-bezier(0.4, 0, 0.2, 1);--chakra-transition-duration-ultra-fast:50ms;--chakra-transition-duration-faster:100ms;--chakra-transition-duration-fast:150ms;--chakra-transition-duration-normal:200ms;--chakra-transition-duration-slow:300ms;--chakra-transition-duration-slower:400ms;--chakra-transition-duration-ultra-slow:500ms;--chakra-blur-none:0;--chakra-blur-sm:4px;--chakra-blur-base:8px;--chakra-blur-md:12px;--chakra-blur-lg:16px;--chakra-blur-xl:24px;--chakra-blur-2xl:40px;--chakra-blur-3xl:64px;--chakra-breakpoints-base:0em;--chakra-breakpoints-sm:30em;
97--chakra-breakpoints-md:48em;--chakra-breakpoints-lg:62em;--chakra-breakpoints-xl:80em;--chakra-breakpoints-2xl:96em;--chakra-breakpoints-xsm:24em;}.chakra-ui-light :host:not([data-theme]),.chakra-ui-light :root:not([data-theme]),.chakra-ui-light [data-theme]:not([data-theme]),[data-theme=light] :host:not([data-theme]),[data-theme=light] :root:not([data-theme]),[data-theme=light] [data-theme]:not([data-theme]),:host[data-theme=light],:root[data-theme=light],[data-theme][data-theme=light]{--chakra-colors-chakra-body-text:var(--chakra-colors-gray-800);--chakra-colors-chakra-body-bg:var(--chakra-colors-white);--chakra-colors-chakra-border-color:var(--chakra-colors-gray-200);--chakra-colors-chakra-inverse-text:var(--chakra-colors-white);--chakra-colors-chakra-subtle-bg:var(--chakra-colors-gray-100);--chakra-colors-chakra-subtle-text:var(--chakra-colors-gray-600);--chakra-colors-chakra-placeholder-color:var(--chakra-colors-gray-500);}.chakra-ui-dark :host:not([data-theme]),.chakra-ui-dark :root:not([data-theme]),.chakra-ui-dark [data-theme]:not([data-theme]),[data-theme=dark] :host:not([data-theme]),[data-theme=dark] :root:not([data-theme]),[data-theme=dark] [data-theme]:not([data-theme]),:host[data-theme=dark],:root[data-theme=dark],[data-theme][data-theme=dark]{--chakra-colors-chakra-body-text:var(--chakra-colors-whiteAlpha-900);--chakra-colors-chakra-body-bg:var(--chakra-colors-gray-800);--chakra-colors-chakra-border-color:var(--chakra-colors-whiteAlpha-300);--chakra-colors-chakra-inverse-text:var(--chakra-colors-gray-800);--chakra-colors-chakra-subtle-bg:var(--chakra-colors-gray-700);--chakra-colors-chakra-subtle-text:var(--chakra-colors-gray-400);--chakra-colors-chakra-placeholder-color:var(--chakra-colors-whiteAlpha-400);}</style><style data-emotion="css-global fubdgu">html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:system-ui,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;touch-action:manipulation;}body{position:relative;min-height:100%;margin:0;font-feature-settings:"kern";}:where(*, *::before, *::after){border-width:0;border-style:solid;box-sizing:border-box;word-wrap:break-word;}main{display:block;}hr{border-top-width:1px;box-sizing:content-box;height:0;overflow:visible;}:where(pre, code, kbd,samp){font-family:SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:1em;}a{background-color:transparent;color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit;}abbr[title]{border-bottom:none;-webkit-text-decoration:underline;text-decoration:underline;-webkit-text-decoration:underline dotted;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}:where(b, strong){font-weight:bold;}small{font-size:80%;}:where(sub,sup){font-size:75%;line-height:0;position:relative;vertical-align:baseline;}sub{bottom:-0.25em;}sup{top:-0.5em;}img{border-style:none;}:where(button, input, optgroup, select, textarea){font-family:inherit;font-size:100%;line-height:1.15;margin:0;}:where(button, input){overflow:visible;}:where(button, select){text-transform:none;}:where( 98 button::-moz-focus-inner, 99 [type="button"]::-moz-focus-inner, 100 [type="reset"]::-moz-focus-inner, 101 [type="submit"]::-moz-focus-inner 102 ){border-style:none;padding:0;}fieldset{padding:0.35em 0.75em 0.625em;}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline;}textarea{overflow:auto;}
102:where([type="checkbox"], [type="radio"]){box-sizing:border-box;padding:0;}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{-webkit-appearance:none!important;}input[type="number"]{-moz-appearance:textfield;}input[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}input[type="search"]::-webkit-search-decoration{-webkit-appearance:none!important;}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block;}summary{display:-webkit-box;display:-webkit-list-item;display:-ms-list-itembox;display:list-item;}template{display:none;}[hidden]{display:none!important;}:where( 103 blockquote, 104 dl, 105 dd, 106 h1, 107 h2, 108 h3, 109 h4, 110 h5, 111 h6, 112 hr, 113 figure, 114 p, 115 pre 116 ){margin:0;}button{background:transparent;padding:0;}fieldset{margin:0;padding:0;}:where(ol, ul){margin:0;padding:0;}textarea{resize:vertical;}:where(button, [role="button"]){cursor:pointer;}button::-moz-focus-inner{border:0!important;}table{border-collapse:collapse;}:where(h1, h2, h3, h4, h5, h6){font-size:inherit;font-weight:inherit;}:where(button, input, optgroup, select, textarea){padding:0;line-height:inherit;color:inherit;}:where(img, svg, video, canvas, audio, iframe, embed, object){display:block;}:where(img, video){max-width:100%;height:auto;}[data-js-focus-visible] :focus:not([data-focus-visible-added]):not( 117 [data-focus-visible-disabled] 118 ){outline:none;box-shadow:none;}select::-ms-expand{display:none;}:root,:host{--chakra-vh:100vh;}@supports (height: -webkit-fill-available){:root,:host{--chakra-vh:-webkit-fill-available;}}@supports (height: -moz-fill-available){:root,:host{--chakra-vh:-moz-fill-available;}}@supports (height: 100dvh){:root,:host{--chakra-vh:100dvh;}}</style><style data-emotion="css-global 14f95so">body{font-family:var(--chakra-fonts-body);color:var(--chakra-colors-black);background:var(--chakra-colors-chakra-body-bg);transition-property:background-color;transition-duration:var(--chakra-transition-duration-normal);line-height:var(--chakra-lineHeights-base);over-flow-x:hidden;font-size:var(--chakra-fontSizes-sm);}*::-webkit-input-placeholder{color:var(--chakra-colors-chakra-placeholder-color);}*::-moz-placeholder{color:var(--chakra-colors-chakra-placeholder-color);}*:-ms-input-placeholder{color:var(--chakra-colors-chakra-placeholder-color);}*::placeholder{color:var(--chakra-colors-chakra-placeholder-color);}*,*::before,::after{border-color:var(--chakra-colors-chakra-border-color);}#coitable{display:none;}li{list-style-type:none;}a{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;}</style><style data-emotion="css-global 19oyu6i">@font-face{font-family:'BagossStandard';font-display:swap;src:url('/static/fonts/BagossStandard-Regular.woff2') format('woff2');font-weight:300;font-style:normal;}@media (prefers-reduced-data: no-preference){link[rel="preload"][as="font"]{font-display:swap;}}</style><style data-emotion="css 1vf93pm">.css-1vf93pm{transition-property:var(--chakra-transition-property-common);transition-duration:var(--chakra-transition-duration-fast);transition-timing-function:var(--chakra-transition-easing-ease-out);cursor:pointer;-webkit-text-decoration:none;text-decoration:none;outline:2px solid transparent;outline-offset:2px;color:inherit;-webkit-transition:0.3s ease;transition:0.3s ease;display:block;position:absolute;opacity:0;z-index:-1;}.css-1vf93pm:hover,.css-1vf93pm[data-hover]{-webkit-text-decoration:none;text-decoration:none;}.css-1vf93pm:focus-visible,.css-1vf93pm[data-focus-visible]{box-shadow:var(--chakra-shadows-outline);}.css-1vf93pm:focus,.css-1vf93pm[data-focus]{opacity:1;outline:2px solid transparent;outline-offset:2px;height:auto;position:absolute;background:var(--chakra-colors-white);z-index:999;margin:auto;width:100%;text-align:center;-webkit-text-decoration:underline;text-decoration:underline;}</style><a class="chakra-link css-1vf93pm" href="#main-content">Hoppa till huvudinnehåll</a><div data-focus-guard="true" tabindex="-1" style="width:1px;height:0px;padding:0;overflow:hidden;position:fixed;top:1px;left:1px"></div><div data-focus-lock-disabled="disabled" data-focus-lock="mainmenu-open"><style data-emotion="css 190qa9l">.css-190qa9l{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:0px;background:var(--chakra-colors-heroBg);}</style><header class="chakra-stack css-190qa9l" data-critical="header"><style data-emotion="css 108dgvm">.css-108dgvm{z-index:10;position:absolute;width:100%;top:0px;left:0px;background:var(--chakra-colors-heroBg);}</style><div class="css-108dgvm"><style data-emotion="css 5ypf8f">.css-5ypf8f{padding-right:20px;padding-left:20px;margin:0 auto;-webkit-box-pack:justify;
118-webkit-justify-content:space-between;justify-content:space-between;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;height:5.625rem;color:var(--chakra-colors-brand-primary);width:100%;background:var(--chakra-colors-transparent);max-width:calc(1548px + 40px);}</style><div data-critical-header="banner" class="css-5ypf8f"><style data-emotion="css qjuys">.css-qjuys{transition-property:var(--chakra-transition-property-common);transition-duration:var(--chakra-transition-duration-fast);transition-timing-function:var(--chakra-transition-easing-ease-out);cursor:pointer;-webkit-text-decoration:none;text-decoration:none;outline:2px solid transparent;outline-offset:2px;-webkit-transition:0.3s ease;transition:0.3s ease;border-bottom:1px solid;border-color:var(--chakra-colors-transparent);color:var(--chakra-colors-white);}.css-qjuys:focus,.css-qjuys[data-focus]{outline:2px solid transparent;outline-offset:2px;}.css-qjuys:focus-visible,.css-qjuys[data-focus-visible]{outline-color:var(--chakra-colors-black);outline-offset:2px;outline:2px solid;box-shadow:var(--chakra-shadows-none);}.css-qjuys:hover,.css-qjuys[data-hover]{border-color:var(--chakra-colors-transparent);}</style><a class="chakra-link css-qjuys" data-critical-header="logo" href="/"><style data-emotion="css idkz9h">.css-idkz9h{border:0;clip:rect(0, 0, 0, 0);height:1px;width:1px;margin:-1px;padding:0px;overflow:hidden;white-space:nowrap;position:absolute;}</style><span class="css-idkz9h">Till startsidan på Knowit</span><style data-emotion="css 1x8gy3d">.css-1x8gy3d{width:67px;height:16px;display:inline-block;line-height:1em;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;color:var(--chakra-colors-white);vertical-align:middle;}@media screen and (min-width: 48em){.css-1x8gy3d{width:123px;height:28px;}}</style><svg viewBox="0 0 124 28" focusable="false" class="chakra-icon css-1x8gy3d" aria-hidden="true"><g clip-path="url(#clip0_11087_40938)"><path d="M103.159 4.52767C104.443 4.52767 105.42 3.54956 105.42 2.26579C105.42 0.982017 104.443 0.00390625 103.159 0.00390625C101.876 0.00390625 100.898 0.982017 100.898 2.26579C100.898 3.48842 101.937 4.52767 103.159 4.52767Z" fill="currentColor"></path><path d="M20.5402 7.09096H17.607C16.6904 7.09096 16.5682 7.21322 15.5293 8.25246L6.11866 17.7279V2.87286C6.17977 2.50606 5.87423 2.13927 5.50758 2.07814C5.44647 2.07814 5.38536 2.07814 5.32425 2.07814H0.802234C0.435584 2.01701 0.0689336 2.32267 0.00782527 2.68946C0.00782527 2.75059 0.00782527 2.81172 0.00782527 2.87286V4.89021C-0.0532831 5.257 0.252259 5.62379 0.618909 5.68492C0.680017 5.68492 0.741126 5.68492 0.802234 5.68492H2.45216V24.0245H0.802234C0.435584 23.9634 0.0689336 24.269 0.00782527 24.6358C0.00782527 24.697 0.00782527 24.7581 0.00782527 24.8192V26.8366C-0.0532831 27.2034 0.252259 27.5702 0.618909 27.6313C0.680017 27.6313 0.741126 27.6313 0.802234 27.6313H7.64637C8.01302 27.6924 8.37967 27.4479 8.44078 27.0811C8.44078 27.02 8.44078 26.9588 8.44078 26.8977V24.8192C8.50189 24.4524 8.19635 24.0856 7.8297 24.0245C7.76859 24.0245 7.70748 24.0245 7.64637 24.0245H6.05755V22.4962L9.60184 18.8894L15.8349 26.4698C16.6293 27.509 16.6293 27.509 17.8515 27.509H20.5402C20.9069 27.5702 21.2735 27.2645 21.2735 26.8977C21.2735 26.8366 21.2735 26.7754 21.2735 26.7143V24.8192C21.3346 24.4524 21.0291 24.0856 20.6624 24.0245C20.6013 24.0245 20.5402 24.0245 20.4791 24.0245H18.2792L12.1073 16.383L17.7292 10.6366H20.4791C20.8458 10.6977 21.1513 10.3921 21.2124 10.0253C21.2124 9.96416 21.2124 9.90303 21.2124 9.90303V7.82454C21.2735 7.45775 21.0291 7.09096 20.6013 7.02983C20.6625 7.09096 20.6013 7.09096 20.5402 7.09096Z" fill="currentColor"></path><path d="M44.7415 24.0265H43.0915V15.2847C43.0915 10.0884 39.7917 6.72619 34.7197 6.72619C32.5809 6.66505 30.5032 7.39864 28.9144 8.8658V7.88769C28.9755 7.5209 28.67 7.15411 28.3033 7.15411C28.2422 7.15411 28.1811 7.15411 28.12 7.15411H23.7202C23.3536 7.09298 22.9869 7.33751 22.9258 7.76543C22.9258 7.82656 22.9258 7.88769 22.9258 7.94882V9.96618C22.8647 10.333 23.1702 10.6998 23.5369 10.7609C23.598 10.7609 23.6591 10.7609 23.7202 10.7609H25.3701V24.0877H23.7202C23.3536 24.0265 22.9869 24.3322 22.9258 24.699C22.9258 24.7601 22.9258 24.8212 22.9258 24.8824V26.8997C22.9258 27.2665 23.1702 27.6333 23.598 27.6333C23.6591 27.6333 23.6591 27.6333 23.7202 27.6333H30.5643C30.931 27.6944 31.2976 27.3888 31.3587 27.022C31.3587 26.9608 31.3587 26.8997 31.3587 26.8997V24.8212C31.4199 24.4544 31.1143 24.0877 30.7477 24.0265C30.6866 24.0265 30.6254 24.0265 30.5643 24.0265H28.9755V15.896C28.9755 12.5337 31.2976 10.1496 34.5364 10.1496C37.7751 10.1496 39.5473 12.1669 39.5473 15.6514V24.0265H37.8973C37.5307 23.9654 37.164 24.271 37.164 24.699C37.164 24.7601 37.164 24.8212 37.164 24.8824V26.8997C37.1029 27.2665 37.4085 27.6333 37.7751 27.6944C37.8362 27.6944 37.8973 27.6944 37.9585 27.6944H44.8026C45.1692 27.7556 45.5359 27.4499 45.597 27.0831C45.597 27.022 45.597 26.9608 45.597 26.8997V24.8212C45.6581 24.4544 45.3526 24.0877 44.9859 24.0265C44.8637 24.0265 44.8026 24.0265 44.7415 24.0265Z" fill="currentColor"></path><path d="M55.9207 6.73047C50.1154 6.73047 45.4711 11.4376 45.4711 17.184C45.4711 17.2452 45.4711 17.3063 45.4711 17.4286C45.3489 23.175 49.9321 27.8821 55.6762 28.0044C55.7373 28.0044 55.7985 28.0044 55.8596 28.0044C61.6649 28.0044 66.3702 23.2972 66.3702 17.5508C66.3702 17.4897 66.3702 17.4286 66.3702 17.3674
118C66.4924 11.621 61.9093 6.91386 56.1651 6.7916C56.0429 6.73047 55.9818 6.73047 55.9207 6.73047ZM55.9207 24.5199C52.1319 24.5199 49.1987 21.341 49.1987 17.3063C49.1987 13.2716 52.0708 10.215 55.8596 10.215C59.6483 10.215 62.6426 13.3938 62.6426 17.4286C62.6426 21.4633 59.7094 24.5199 55.9207 24.5199Z" fill="currentColor"></path><path d="M96.7423 7.09523H89.7148C89.3482 7.0341 88.9815 7.27863 88.9204 7.70655C88.9204 7.76768 88.9204 7.82882 88.9204 7.88995V9.9073C88.8593 10.2741 89.1648 10.6409 89.5315 10.702C89.5926 10.702 89.6537 10.702 89.7148 10.702H91.3036L87.9427 21.5224L83.1762 7.70655C83.054 7.33976 82.6874 7.09523 82.3207 7.09523H80.9152C80.5486 7.09523 80.1819 7.33976 80.0597 7.70655L75.3544 21.5224L71.9934 10.6409H73.5822C73.9489 10.702 74.3155 10.3964 74.3766 10.0296C74.3766 9.96843 74.3766 9.9073 74.3766 9.84617V7.82882C74.4377 7.46203 74.1322 7.09523 73.7655 7.09523C73.7044 7.09523 73.6433 7.09523 73.5822 7.09523H66.4936C66.127 7.0341 65.7603 7.33976 65.6992 7.70655C65.6992 7.76768 65.6992 7.82882 65.6992 7.82882V9.84617C65.6381 10.213 65.9437 10.5798 66.3103 10.6409C66.3714 10.6409 66.4325 10.6409 66.4325 10.6409H68.0825L73.6433 27.0242C73.7655 27.391 74.1322 27.6356 74.4988 27.6356H76.0265C76.3932 27.6356 76.7598 27.391 76.8821 27.0242L81.5263 13.5752L86.1705 27.0242C86.2927 27.391 86.6594 27.6356 87.0261 27.6356H88.5538C88.9204 27.6356 89.2871 27.391 89.4093 27.0242L95.0312 10.6409H96.6812C97.0478 10.702 97.4145 10.3964 97.4756 10.0296C97.4756 9.96843 97.4756 9.9073 97.4756 9.9073V7.88995C97.5367 7.52316 97.2311 7.15637 96.8645 7.15637C96.8645 7.09523 96.8034 7.09523 96.7423 7.09523Z" fill="currentColor"></path><path d="M106.702 24.0287H105.052V7.88985C105.113 7.52306 104.807 7.15627 104.441 7.15627C104.38 7.15627 104.318 7.15627 104.318 7.15627H99.7964C99.4298 7.09513 99.0631 7.40079 99.0631 7.76758C99.0631 7.82872 99.0631 7.88985 99.0631 7.95098V9.96833C99.002 10.3351 99.3076 10.7019 99.6742 10.763C99.7353 10.763 99.7964 10.763 99.8576 10.763H101.507V24.0898H98.5132C98.1465 24.0287 97.7799 24.3343 97.7188 24.7011C97.7188 24.7623 97.7188 24.8234 97.7188 24.8845V26.9019C97.6577 27.2687 97.9632 27.6355 98.3298 27.6966C98.391 27.6966 98.4521 27.6966 98.5132 27.6966H106.702C107.068 27.7577 107.435 27.4521 107.496 27.0853C107.496 27.0241 107.496 26.963 107.496 26.9019V24.8234C107.557 24.4566 107.252 24.0898 106.885 24.0287C106.824 24.0287 106.763 24.0287 106.702 24.0287Z" fill="currentColor"></path><path d="M122.591 17.183H120.635C120.269 17.1219 119.902 17.4275 119.841 17.7943C119.841 17.8555 119.841 17.9166 119.841 17.9777V21.7679C119.902 23.1739 118.802 24.3966 117.396 24.4577C115.441 24.4577 114.585 23.663 114.585 21.7068V10.703H119.352C119.719 10.7641 120.085 10.4585 120.146 10.0917C120.146 10.0306 120.146 9.96943 120.146 9.9083V7.89095C120.207 7.52416 119.902 7.15736 119.535 7.15736C119.474 7.15736 119.413 7.15736 119.413 7.15736H114.647V2.93926C114.708 2.57247 114.463 2.20568 114.036 2.14455C113.974 2.14455 113.913 2.14455 113.852 2.14455H111.775C111.408 2.08342 111.041 2.38907 110.98 2.75587C110.98 2.817 110.98 2.87813 110.98 2.93926V7.2185H108.78C108.414 7.15737 108.047 7.46302 108.047 7.82982C108.047 7.89095 108.047 7.89095 108.047 7.95208V9.96943C107.986 10.3362 108.291 10.703 108.658 10.7641C108.719 10.7641 108.78 10.7641 108.841 10.7641H111.041V21.9513C111.041 25.6192 113.424 28.0033 117.152 28.0033C121.002 28.0033 123.446 25.6803 123.446 22.1347V18.0388C123.507 17.6721 123.202 17.3053 122.835 17.2441C122.774 17.183 122.713 17.183 122.591 17.183Z" fill="currentColor"></path></g><defs><clipPath id="clip0_11087_40938"><rect width="123.455" height="28" fill="currentColor"></rect></clipPath></defs></svg></a><style data-emotion="css i9yqnx">.css-i9yqnx{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;color:var(--chakra-colors-white);gap:var(--chakra-space-4);-webkit-box-pack:right;-ms-flex-pack:right;-webkit-justify-content:right;justify-content:right;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background:var(--chakra-colors-heroBg);width:100%;height:100%;}</style><div flex-wrap="wrap" class="css-i9yqnx"><style data-emotion="css 1cyhlyk">.css-1cyhlyk{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;appearance:none;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;
118-webkit-justify-content:center;justify-content:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;white-space:nowrap;vertical-align:middle;outline:2px solid transparent;outline-offset:2px;line-height:var(--chakra-lineHeights-lg);border-radius:0px;font-weight:var(--chakra-fontWeights-normal);transition-property:var(--chakra-transition-property-common);transition-duration:var(--chakra-transition-duration-normal);border:var(--chakra-borders-none);variant:primary;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;height:44px;min-width:var(--chakra-sizes-8);font-size:var(--chakra-fontSizes-xs);-webkit-padding-start:var(--chakra-space-1);padding-inline-start:var(--chakra-space-1);-webkit-padding-end:var(--chakra-space-1);padding-inline-end:var(--chakra-space-1);padding-top:var(--chakra-space-1);padding-bottom:var(--chakra-space-1);background:var(--chakra-colors-transparent);-webkit-transition:-webkit-transform 0.3s ease;transition:transform 0.3s ease;color:var(--chakra-colors-white);overflow:hidden;}@media screen and (min-width: 48em){.css-1cyhlyk{line-height:var(--chakra-lineHeights-xl);font-size:var(--chakra-fontSizes-sm);}}.css-1cyhlyk:disabled,.css-1cyhlyk[disabled],.css-1cyhlyk[aria-disabled=true],.css-1cyhlyk[data-disabled]{opacity:0.2;cursor:pointer;box-shadow:var(--chakra-shadows-none);background-color:var(--chakra-colors-brand-bg5);}.css-1cyhlyk:hover,.css-1cyhlyk[data-hover]{-webkit-text-decoration:underline;text-decoration:underline;text-underline-offset:13px;text-decoration-thickness:1px;}.css-1cyhlyk:hover:disabled,.css-1cyhlyk[data-hover]:disabled,.css-1cyhlyk:hover[disabled],.css-1cyhlyk[data-hover][disabled],.css-1cyhlyk:hover[aria-disabled=true],.css-1cyhlyk[data-hover][aria-disabled=true],.css-1cyhlyk:hover[data-disabled],.css-1cyhlyk[data-hover][data-disabled]{background:initial;background-color:var(--chakra-colors-brand-bg5);opacity:0.2;}.css-1cyhlyk:focus,.css-1cyhlyk[data-focus]{outline:2px solid transparent;outline-offset:2px;}.css-1cyhlyk:focus-visible,.css-1cyhlyk[data-focus-visible]{outline-color:var(--chakra-colors-black);outline-offset:2px;outline:2px solid;box-shadow:var(--chakra-shadows-none);}</style><button type="button" class="chakra-button css-1cyhlyk" role="group"><style data-emotion="css ide1f0">.css-ide1f0{line-height:var(--chakra-lineHeights-lg);font-size:var(--chakra-fontSizes-sm);}@media screen and (min-width: 48em){.css-ide1f0{line-height:var(--chakra-lineHeights-xl);font-size:var(--chakra-fontSizes-xl);}}</style><span class="chakra-text css-ide1f0">Sök</span><style data-emotion="css 1hzyiq5">.css-1hzyiq5{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;-webkit-margin-start:0.5rem;margin-inline-start:0.5rem;}</style><span class="chakra-button__icon css-1hzyiq5"><style data-emotion="css onkibi">.css-onkibi{width:1em;height:1em;display:inline-block;line-height:1em;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;color:currentColor;vertical-align:middle;}</style><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-onkibi" aria-hidden="true"><path fill="none" stroke="currentColor" stroke-width="1.425" d="M13.7618 13.7618C10.8615 16.662 6.15926 16.662 3.259 13.7618C0.358748 10.8615 0.358748 6.15926 3.259 3.259C6.15926 0.358748 10.8615 0.358748 13.7618 3.259C16.662 6.15926 16.662 10.8615 13.7618 13.7618Z"></path><line x1="13.7537" y1="13.4232" x2="18.4933" y2="18.1628" stroke="currentColor" stroke-width="1.425"></line></svg></span></button><style data-emotion="css qyag7q">.css-qyag7q{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;appearance:none;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;white-space:nowrap;vertical-align:middle;outline:2px solid transparent;outline-offset:2px;line-height:var(--chakra-lineHeights-lg);border-radius:0px;font-weight:var(--chakra-fontWeights-normal);transition-property:var(--chakra-transition-property-common);transition-duration:var(--chakra-transition-duration-normal);border:var(--chakra-borders-none);variant:primary;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;height:44px;min-width:var(--chakra-sizes-8);font-size:var(--chakra-fontSizes-xs);-webkit-padding-start:var(--chakra-space-1);padding-inline-start:var(--chakra-space-1);-webkit-padding-end:var(--chakra-space-1);padding-inline-end:var(--chakra-space-1);padding-top:var(--chakra-space-1);padding-bottom:var(--chakra-space-1);background:var(--chakra-colors-transparent);-webkit-transition:-webkit-transform 0.3s ease;transition:transform 0.3s ease;color:var(--chakra-colors-white);}@media screen and (min-width: 48em){.css-qyag7q{line-height:var(--chakra-lineHeights-xl);font-size:var(--chakra-fontSizes-sm);}}.css-qyag7q:disabled,.css-qyag7q[disabled],.css-qyag7q[aria-disabled=true],.css-qyag7q[data-disabled]{opacity:0.2;cursor:pointer;box-shadow:var(--chakra-shadows-none);background-color:var(--chakra-colors-brand-bg5);}.css-qyag7q:hover,.css-qyag7q[data-hover]{-webkit-text-decoration:underline;text-decoration:underline;text-underline-offset:13px;text-decoration-thickness:1px;}.css-qyag7q:hover:disabled,.css-qyag7q[data-hover]:disabled,.css-qyag7q:hover[disabled],.css-qyag7q[data-hover][disabled],.css-qyag7q:hover[aria-disabled=true],.css-qyag7q[data-hover][aria-disabled=true],.css-qyag7q:hover[data-disabled],.css-qyag7q[data-hover][data-disabled]{background:initial;background-color:var(--chakra-colors-brand-bg5);opacity:0.2;}.css-qyag7q:focus,.css-qyag7q[data-focus]{outline:2px solid transparent;outline-offset:2px;}.css-qyag7q:focus-visible,.css-qyag7q[data-focus-visible]{outline-color:var(--chakra-colors-black);outline-offset:2px;outline:2px solid;box-shadow:var(--chakra-shadows-none);}</style><button type="button" class="chakra-button css-qyag7q" role="group" data-critical-header="menu-toggle" id="mainmenu-openbtn" aria-expanded="false" aria-controls="disclosure-:R4pf6:"><span class="chakra-text css-ide1f0">Meny</span><span class="chakra-button__icon css-1hzyiq5"><svg viewBox="0 0 27 24" focusable="false" class="chakra-icon css-onkibi" aria-hidden="true"><rect x="0.800049" y="1.0293" width="25.6" height="3.2" fill="currentColor"></rect><rect x="0.800049" y="10.6294" width="25.6" height="3.2" fill="currentColor"></rect><rect x="0.800049" y="20.2295" width="25.6" height="3.2" fill="currentColor"></rect></svg></span></button></div></div></div></header></div><div data-focus-guard="true" tabindex="-1" style="width:1px;height:0px;padding:0;overflow:hidden;position:fixed;top:1px;left:1px"></div><style data-emotion="css t8p16t">.css-t8p16t{position:relative;z-index:4;}</style><div class="css-t8p16t"><style data-emotion="css 22294g">.css-22294g{overflow-x:hidden;width:100%;height:100%;z-index:4;background:var(--chakra-colors-pageBg);}</style><main id="main-content" tabindex="-1" class="css-22294g"><div class="StartPage css-0"><div data-critical="startpage" class="css-0"><style data-emotion="css 1k83qh1">.css-1k83qh1{position:relative;height:100%;min-width:100%;background-color:#0B0B26;color:var(--chakra-colors-brand-primary);padding-bottom:var(--chakra-space-6);}@media screen and (min-width: 48em){.css-1k83qh1{min-width:100vw;padding-bottom:var(--chakra-space-8);}}</style><div class="css-1k83qh1"><style data-emotion="css 1fsunuh">.css-1fsunuh{padding-top:var(--chakra-space-20);width:100%;}</style><div class="css-1fsunuh"><style data-emotion="css 2yirbu">.css-2yirbu{padding-right:20px;padding-left:20px;margin:0 auto;padding-bottom:0px;
118max-width:calc(1548px + 40px);padding-top:0px;}</style><div class="css-2yirbu"><style data-emotion="css 189o32x">.css-189o32x{font-family:var(--chakra-fonts-heading);font-weight:385;font-size:25px;line-height:32px;letter-spacing:0%;vertical-align:middle;text-align:start;width:100%;max-width:100%;padding-top:var(--chakra-space-2);padding-bottom:var(--chakra-space-4);text-wrap:balance;}@media screen and (min-width: 48em){.css-189o32x{font-size:40px;line-height:50px;padding-top:var(--chakra-space-7);}}@media screen and (min-width: 62em){.css-189o32x{max-width:80%;}}</style><h1 class="chakra-heading css-189o32x" data-epi-edit="heading">Building the future takes a whole set of digitalization skills. Welcome to our world.</h1><style data-emotion="css idkz9h">.css-idkz9h{border:0;clip:rect(0, 0, 0, 0);height:1px;width:1px;margin:-1px;padding:0px;overflow:hidden;white-space:nowrap;position:absolute;}</style><span class="css-idkz9h"><style data-emotion="css 1ro5nve">.css-1ro5nve{font-size:var(--chakra-fontSizes-2xl);line-height:var(--chakra-lineHeights-xl);width:80%;margin:0px;}@media screen and (min-width: 48em){.css-1ro5nve{font-size:2.5rem;line-height:var(--chakra-lineHeights-4-5xl);margin:0 auto;}}</style><p class="chakra-text css-1ro5nve" data-epi-edit="preamble">Shaping a new future for your business takes a whole set of digitalization skills. Weâve got these skills. And we combine them to also create a sustainable and humane society. Welcome to our world.</p></span><style data-emotion="css 1w1vbxm">.css-1w1vbxm{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;}</style><div class="css-1w1vbxm"><style data-emotion="css w70rt0">.css-w70rt0{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:0.5rem;position:relative;width:100%;max-width:80%;padding-top:0px;padding-bottom:var(--chakra-space-4);}@media screen and (min-width: 48em){.css-w70rt0{padding-top:var(--chakra-space-3);padding-bottom:var(--chakra-space-8);}}</style><div class="chakra-stack css-w70rt0"><style data-emotion="css wq8yt1">.css-wq8yt1{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:var(--chakra-space-2);}@media screen and (min-width: 48em){.css-wq8yt1{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;gap:var(--chakra-space-16);}}</style><ul class="css-wq8yt1"><li style="list-style-type:none"><style data-emotion="css od9ok6">.css-od9ok6{position:relative;-webkit-transition:-webkit-transform 0.3s ease;transition:transform 0.3s ease;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-weight:400;color:inherit;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;}.css-od9ok6 a[href]:not(.chakra-linkbox__overlay),.css-od9ok6 abbr[title]{position:relative;z-index:1;}</style><div role="group" class="chakra-linkbox css-od9ok6"><style data-emotion="css jwcswi">.css-jwcswi{position:static;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;border:var(--chakra-borders-none);border-bottom:1px solid transparent;border-color:var(--chakra-colors-transparent);-webkit-transition:inherit;transition:inherit;color:inherit;padding:0px;}.css-jwcswi::before{content:'';cursor:inherit;display:block;position:absolute;top:0px;left:0px;z-index:0;width:100%;height:100%;}[role=group]:hover .css-jwcswi,[role=group][data-hover] .css-jwcswi,[data-group]:hover .css-jwcswi,[data-group][data-hover] .css-jwcswi,.group:hover .css-jwcswi,.group[data-hover] .css-jwcswi{border-color:none;}.css-jwcswi:focus,.css-jwcswi[data-focus]{outline:2px solid transparent;outline-offset:2px;}.css-jwcswi:focus-visible,.css-jwcswi[data-focus-visible]{outline-color:var(--chakra-colors-black);outline-offset:2px;outline:2px solid;box-shadow:var(--chakra-shadows-none);}</style><a class="chakra-linkbox__overlay css-jwcswi" href="https://www.knowit.se/vart-erbjudande/">VÃ¥rt erbjudande</a><style data-emotion="css 5whgb6">.css-5whgb6{width:1em;height:1em;display:inline-block;line-height:1em;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;color:inherit;vertical-align:middle;opacity:1;margin-left:var(--chakra-space-3);-webkit-transition:inherit;transition:inherit;}[role=group]:hover .css-5whgb6,[role=group][data-hover] .css-5whgb6,[data-group]:hover .css-5whgb6,[data-group][data-hover] .css-5whgb6,.group:hover .css-5whgb6,.group[data-hover] .css-5whgb6{-webkit-transform:translateX(0.25rem);-moz-transform:translateX(0.25rem);-ms-transform:translateX(0.25rem);transform:translateX(0.25rem);}</style><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-5whgb6" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div></li><li style="list-style-type:none"><div role="group" class="chakra-linkbox css-od9ok6"><a class="chakra-linkbox__overlay css-jwcswi" href="https://www.knowit.se/kunder/">Kunder</a><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-5whgb6" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div></li><li style="list-style-type:none"><div role="group" class="chakra-linkbox css-od9ok6"><a class="chakra-linkbox__overlay css-jwcswi" href="https://www.knowit.se/karriar/">Karriär</a><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-5whgb6" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div></li></ul></div></div></div><div class="css-2yirbu"><style data-emotion="css msiela">.css-msiela{position:relative;overflow:hidden;border-radius:20px;padding:var(--chakra-space-5);height:50vh;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;
118-webkit-justify-content:center;justify-content:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-align:center;color:var(--chakra-colors-white);}</style><div class="css-msiela"><div><div id="animated-hero" style="position: absolute; inset: 0;"><canvas id="animated-hero__canvas" style="position: absolute; inset: 0; width: 100%; height: 100%;"></canvas> 119<div id="animated-hero__footer" class="auto-ink" style="text-align: start; position: absolute; bottom: 35px; left: 48px; max-width: 50%; color: #fff; z-index: 10; font-size: 20px; line-height: 28px; transition: color 0.25s linear;"><span id="animated-hero__status"> Design inspired by the Nordic sky above <span class="status-cluster" style="display: inline-flex; align-items: baseline; gap: 0.35em;"> Knowit, <span id="animated-hero__city">•</span> <button id="animated-hero__rnd" aria-label="Randomize" style="width: 20px; height: 20px; background: none; border: none; padding: 0; cursor: pointer; color: inherit; transition: color 0.25s linear;"> <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewbox="0 0 15 18" fill="none" style="color: inherit; transition: color 0.25s linear;"> <path d="M7.87226 2.60254L5.98456 7.7373L5.04608 7.39258L6.44257 3.59082C5.59154 3.71764 4.77195 4.01502 4.03534 4.46875L3.8371 4.5957C2.85307 5.25325 2.07198 6.171 1.58026 7.24414L1.48554 7.45996C1.00255 8.62603 0.877087 9.90957 1.12323 11.1475L1.17304 11.3789C1.44599 12.5272 2.03258 13.5792 2.86933 14.416L3.03925 14.5801C3.90403 15.3831 4.97646 15.9311 6.1369 16.1621L6.3703 16.2041C7.53554 16.3913 8.73218 16.2526 9.82538 15.7998L10.0412 15.7051C11.1144 15.2134 12.0321 14.4323 12.6896 13.4482L12.8166 13.25C13.4357 12.2449 13.7648 11.0859 13.7648 9.90234H14.7648C14.7648 11.2713 14.3842 12.6119 13.6682 13.7744L13.5207 14.0039C12.7602 15.142 11.6994 16.0455 10.4582 16.6143L10.2072 16.7236C8.94267 17.2473 7.55895 17.408 6.21112 17.1914L5.94257 17.1436C4.60016 16.8765 3.35996 16.2414 2.35956 15.3125L2.1623 15.123C1.19449 14.1552 0.516127 12.9385 0.200381 11.6104L0.141787 11.3428C-0.142932 9.91105 0.00319747 8.42681 0.561709 7.07812L0.671084 6.82715C1.23985 5.586 2.14331 4.52515 3.28144 3.76465L3.51093 3.61719C4.11638 3.24426 4.77047 2.9629 5.45136 2.77832L2.39276 1.6543 2.73749 0.714844 7.87226 2.60254Z" style="fill: currentColor; transition: fill 0.25s linear, stroke 0.25s linear;"></path> </svg> </button> </span> </span></div> 120<div id="animated-hero__met" class="auto-ink" style="position: absolute; bottom: 35px; right: 48px; display: flex; align-items: center; gap: 19px; color: #fff; z-index: 10; font-size: 20px; line-height: 28px; transition: color 0.25s linear;"> 121<div class="met-group" style="display: flex; align-items: center;"><svg xmlns="http://www.w3.org/2000/svg" width="23" height="16" viewbox="0 0 23 16" fill="none" style="color: inherit; transition: color 0.25s linear;"> <path d="M18.296 7.013C18.4372 5.61392 18.0324 4.21484 17.1609 3.09201C16.2894 1.96918 15.0157 1.20567 13.5919 0.951853C12.1675 0.697521 10.6975 0.972242 9.47212 1.72097C8.24675 2.4702 7.3558 3.63839 6.97569 4.99466C6.26273 4.89782 5.53663 4.9447 4.84309 5.13227C4.14955 5.31932 3.50275 5.64297 2.94361 6.08333C2.38448 6.5237 1.92455 7.07058 1.59222 7.69087C1.25988 8.31115 1.06251 8.99056 1.01263 9.6878C0.962758 10.385 1.06091 11.0849 1.30084 11.7439C1.54129 12.4029 1.91878 13.0063 2.40966 13.5181C2.90055 14.0293 3.49435 14.437 4.15482 14.7158C4.81476 14.9946 5.52719 15.1389 6.24698 15.1394H17.7972C18.8682 15.1399 19.8994 14.7433 20.679 14.0303C21.4592 13.3178 21.9291 12.3422 21.9926 11.3045C22.0561 10.2663 21.7091 9.24388 21.0219 8.44623C20.3346 7.64858 19.3597 7.13583 18.296 7.013Z" stroke="currentColor" stroke-width="1.26004" style="stroke: currentColor; transition: stroke 0.25s linear;"></path> </svg> 122<div id="animated-hero__weather" style="margin-left: 6px;"> 123<div id="animated-hero__weather-track" style="display: flex; align-items: center; gap: 19px;"><span id="animated-hero__temp">•</span> <span id="animated-hero__wind">•</span> <span id="animated-hero__time">•</span></div> 124</div> 125</div> 126</div>
127<script> 128 if (!window.__heroCanvasLoaded) { 129 window.__heroCanvasLoaded = true; 130 (function () { 131 window.addEventListener("load", () => { 132 const clamp = (x, a = 0, b = 1) => Math.max(a, Math.min(b, x)); 133 const lerp = (a, b, t) => a + (b - a) * t; 134 const sigmoid = (x) => 1 / (1 + Math.exp(-x)); 135 const tanh = Math.tanh; 136 const parseISO = (s) => new Date(s); 137 138 function hexToRgbNorm(hex) { 139 return { 140 r: parseInt(hex.slice(1, 3), 16) / 255, 141 g: parseInt(hex.slice(3, 5), 16) / 255, 142 b: parseInt(hex.slice(5, 7), 16) / 255, 143 }; 144 } 145 146 // Colour conversions 147 function hslToHex(h, s, l) { 148 h /= 360; 149 s /= 100; 150 l /= 100; 151 let r, g, b; 152 if (s === 0) { 153 r = g = b = l; 154 } else { 155 const hue2rgb = (p, q, t) => { 156 if (t < 0) t += 1; 157 if (t > 1) t -= 1; 158 if (t < 1 / 6) return p + (q - p) * 6 * t; 159 if (t < 1 / 2) return q; 160 if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6; 161 return p; 162 }; 163 const q = l < 0.5 ? l * (1 + s) : l + s - l * s; 164 const p = 2 * l - q; 165 r = hue2rgb(p, q, h + 1 / 3); 166 g = hue2rgb(p, q, h); 167 b = hue2rgb(p, q, h - 1 / 3); 168 } 169 const toHex = (x) => { 170 const hex = Math.round(x * 255).toString(16); 171 return hex.length === 1 ? "0" + hex : hex; 172 }; 173 return `#${toHex(r)}${toHex(g)}${toHex(b)}`; 174 } 175 176 function hexToHsl(hex) { 177 const r = parseInt(hex.slice(1, 3), 16) / 255; 178 const g = parseInt(hex.slice(3, 5), 16) / 255; 179 const b = parseInt(hex.slice(5, 7), 16) / 255; 180 const max = Math.max(r, g, b); 181 const min = Math.min(r, g, b); 182 let h, s; 183 const l = (max + min) / 2; 184 if (max === min) { 185 h = s = 0; 186 } else { 187 const d = max - min; 188 s = l > 0.5 ? d / (2 - max - min) : d / (max + min); 189 switch (max) { 190 case r: 191 h = (g - b) / d + (g < b ? 6 : 0); 192 break; 193 case g: 194 h = (b - r) / d + 2; 195 break; 196 default: 197 h = (r - g) / d + 4; 198 } 199 h /= 6; 200 } 201 return { h: h * 360, s: s * 100, l: l * 100 }; 202 } 203 204 const REFERENCE_PALETTES = { 205 CR: { 206 name: "CloudyRain", 207 bands: [ 208 { hue: [240, 255], sat: [50, 65], light: [85, 95] }, 209 { hue: [250, 265], sat: [45, 60], light: [70, 80] }, 210 { hue: [250, 270], sat: [50, 70], light: [55, 65] }, 211 { hue: [220, 240], sat: [65, 85], light: [45, 60] }, 212 { hue: [180, 195], sat: [45, 65], light: [50, 65] }, 213 { hue: [210, 230], sat: [70, 85], light: [35, 45] }, 214 ], 215 }, 216 HR: { 217 name: "HeavyRain", 218 bands: [ 219 { hue: [115, 125], sat: [80, 95], light: [45, 60] }, 220 { hue: [210, 230], sat: [50, 70], light: [55, 70] }, 221 { hue: [240, 255], sat: [45, 65], light: [50, 65] }, 222 { hue: [220, 235], sat: [55, 75], light: [45, 55] }, 223 { hue: [185, 200], sat: [50, 70], light: [40, 55] }, 224 { hue: [230, 250], sat: [80, 95], light: [25, 40] }, 225 ], 226 }, 227 EV: { 228 name: "Evening", 229 bands: [ 230 { hue: [200, 215], sat: [65, 80], light: [40, 55] }, 231 { hue: [175, 190], sat: [55, 75], light: [50, 65] }, 232 { hue: [215, 235], sat: [40, 60], light: [60, 75] }, 233 { hue: [240, 255], sat: [35, 55], light: [65, 75] }, 234 { hue: [200, 220], sat: [25, 40], light: [80, 90] }, 235 ], 236 }, 237 MD: { 238 name: "MiddayClear", 239 bands: [ 240 { hue: [235, 250], sat: [70, 85], light: [30, 45] }, 241 { hue: [265, 280], sat: [45, 65], light: [40, 55] }, 242 { hue: [290, 310], sat: [35, 55], light: [55, 70] }, 243 { hue: [15, 30], sat: [50, 70], light: [60, 75] }, 244 { hue: [270, 285], sat: [20, 35], light: [70, 85] }, 245 { hue: [210, 225], sat: [35, 55], light: [65, 80] }, 246 ], 247 }, 248 AG: { 249 name: "Afterglow", 250 bands: [ 251 { hue: [0, 15], sat: [10, 20], light: [85, 95] }, 252 { hue: [20, 35], sat: [45, 65], light: [55, 70] }, 253 { hue: [280, 300], sat: [40, 60], light: [50, 65] }, 254 { hue: [250, 265], sat: [75, 90], light: [35, 50] }, 255 { hue: [25, 40], sat: [35, 55], light: [65, 80] }, 256 ], 257 }, 258 SD: { 259 name: "SummerDusk", 260 bands: [ 261 { hue: [250, 265], sat: [65, 80], light: [40, 55] }, 262 { hue: [280, 295], sat: [45, 65], light: [50, 65] }, 263 { hue: [310, 330], sat: [40, 60], light: [60, 75] }, 264 { hue: [340, 355], sat: [35, 55], light: [65, 80] }, 265 { hue: [10, 25], sat: [30, 50], light: [70, 85] }, 266 { hue: [0, 15], sat: [15, 30], light: [80, 90] }, 267 ], 268 }, 269 CL: { 270 name: "Cloudy", 271 bands: [ 272 { hue: [250, 265], sat: [25, 40], light: [85, 95] },
273 { hue: [255, 270], sat: [35, 50], light: [65, 80] }, 274 { hue: [260, 275], sat: [40, 55], light: [55, 70] }, 275 { hue: [250, 265], sat: [25, 40], light: [85, 95] }, 276 ], 277 }, 278 AU: { 279 name: "Aurora", 280 bands: [ 281 { hue: [240, 260], sat: [70, 90], light: [10, 20] }, 282 { hue: [120, 140], sat: [60, 80], light: [35, 50] }, 283 { hue: [160, 180], sat: [50, 70], light: [40, 55] }, 284 { hue: [280, 300], sat: [60, 80], light: [35, 50] }, 285 { hue: [300, 320], sat: [65, 85], light: [30, 45] }, 286 ], 287 }, 288 }; 289 290 const defaultFeeling = { 291 warmth: 0, 292 warmth_change: 0, 293 humidity: 0, 294 gloom: 0, 295 brightness: 0, 296 rain_intensity: 0, 297 rain_amount: 0, 298 precip_form: "none", 299 windiness: 0, 300 pressure_trend: 0, 301 sun_elevation: 0, 302 golden: 0, 303 twilight: 0, 304 night: 0, 305 uv: 0, 306 }; 307 308 function generateHash(obj) { 309 let hash = 2166136261; 310 const str = JSON.stringify(obj, Object.keys(obj).sort()); 311 for (let i = 0; i < str.length; i++) { 312 hash ^= str.charCodeAt(i); 313 hash = Math.imul(hash, 16777619); 314 } 315 return Math.abs(hash); 316 } 317 318 function buildGradient(feel) { 319 const hash = generateHash(feel); 320 const hashBytes = Array.from( 321 { length: 32 }, 322 (_, i) => (hash * (i + 1) * 9999) & 0xff 323 ); 324 325 // Derived parameters 326 const storm = clamp(feel.rain_intensity * 0.7 + feel.gloom * 0.3); 327 const drama = 328 storm * 0.4 + 329 feel.windiness * 0.3 + 330 Math.abs(feel.pressure_trend) * 0.3; 331 const serenity = 332 (1 - drama) * (1 - feel.rain_intensity) * feel.brightness; 333 const melancholy = 334 feel.gloom * feel.humidity * (1 - feel.brightness); 335 const electric = 336 (feel.rain_intensity > 0.7 ? feel.rain_intensity : 0) + 337 feel.twilight * feel.golden; 338 const mystical = 339 feel.twilight * (1 - feel.rain_intensity) * feel.humidity; 340 const haziness = feel.humidity * feel.gloom * (1 - feel.windiness); 341 const pressureDir = Math.sign(feel.pressure_trend); 342 const tempDrift = (feel.warmth_change + 1) / 2; 343 const gold = Math.max(feel.golden, feel.twilight); 344 345 const derived = { 346 storm, 347 drama, 348 serenity, 349 melancholy, 350 electric, 351 mystical, 352 haziness, 353 pressureDir, 354 tempDrift, 355 gold, 356 }; 357 358 const palette = selectPalette(feel, derived, hashBytes[0]); 359 360 const stopData = generateStops(feel, derived, hashBytes); 361 const colors = generateColors( 362 feel, 363 derived, 364 palette, 365 stopData, 366 hashBytes 367 ); 368 369 return validateAndCorrect({ colors, stops: stopData.stops }, feel); 370 371 function selectPalette(feel, d) { 372 if (feel.night === 1 && d.storm < 0.4 && feel.twilight < 0.2) 373 return REFERENCE_PALETTES.AU; 374 if (d.storm >= 0.5) return REFERENCE_PALETTES.HR; 375 if (d.gold >= 0.5) 376 return feel.gloom < 0.4 377 ? REFERENCE_PALETTES.AG 378 : REFERENCE_PALETTES.SD; 379 if (feel.brightness >= 0.6 && feel.gloom <= 0.3) 380 return REFERENCE_PALETTES.MD; 381 if (feel.rain_intensity > 0) return REFERENCE_PALETTES.CR; 382 if (feel.gloom > 0.4) return REFERENCE_PALETTES.CL; 383 return feel.warmth < 0.4 384 ? REFERENCE_PALETTES.EV 385 : REFERENCE_PALETTES.SD; 386 } 387 388 function generateStops(feel, d, hb) { 389 // Determine stop count 390 let count = 391 6 + 392 (d.drama > 0.7) - 393 (d.haziness > 0.7) +
394 (feel.windiness > 0.8) + 395 (d.mystical > 0.6); 396 count = Math.max(4, Math.min(8, count)); 397 398 let pattern = "balanced"; 399 if (d.drama > 0.6) pattern = "dramatic"; 400 else if (d.serenity > 0.7) pattern = "flowing"; 401 else if (d.electric > 0.6) pattern = "horizon"; 402 else if (d.melancholy > 0.6) pattern = "weighted"; 403 404 // base stops generator map 405 const gens = { 406 dramatic: (c) => { 407 const s = [0]; 408 const z1 = 0.35 + (hb[5] / 255) * 0.1; 409 const z2 = 0.65 + (hb[6] / 255) * 0.1; 410 if (c <= 5) s.push(z1, z1 + 0.06, 1); 411 else if (c === 6) s.push(0.2, z1, z1 + 0.05, z2, 1); 412 else if (c === 7) 413 s.push(0.15, z1, z1 + 0.05, 0.5, z2, z2 + 0.05, 1); 414 else s.push(0.1, 0.25, z1, z1 + 0.05, 0.55, z2, z2 + 0.05, 1); 415 return s; 416 }, 417 flowing: (c) => 418 Array.from({ length: c }, (_, i) => i / (c - 1)), 419 horizon: (c) => { 420 const h = 0.4 + feel.sun_elevation * 0.2; 421 const s = [0, h - 0.05, h + 0.05, 1]; 422 if (c <= 4) return s; 423 const before = Math.floor((c - 3) / 2); 424 const after = c - 3 - before; 425 const add = []; 426 for (let i = 1; i <= before; i++) 427 add.push(h * (i / (before + 1))); 428 add.push(h - 0.04, h + 0.04); 429 for (let i = 1; i <= after; i++) 430 add.push(h + (1 - h) * (i / (after + 1))); 431 add.push(1); 432 return [0, ...add]; 433 }, 434 weighted: (c) => { 435 const w = 0.7; 436 const s = [0]; 437 for (let i = 1; i < c - 1; i++) { 438 const t = i / (c - 1); 439 const eased = t * t * (3 - 2 * t); 440 s.push(eased * w + t * (1 - w)); 441 } 442 s.push(1); 443 return s; 444 }, 445 balanced: (c) => { 446 const acc = 0.3 + (hb[7] / 255) * 0.4; 447 return Array.from({ length: c }, (_, i) => { 448 let p = i / (c - 1); 449 if (i > 0 && i < c - 1 && Math.abs(p - acc) < 0.15) 450 p = acc + (p - acc) * 0.5; 451 return p; 452 }); 453 }, 454 }; 455 456 let stops = gens[pattern](count); 457 458 // Jitter & skew 459 stops = stops.map((s, i) => 460 i === 0 || i === stops.length - 1 461 ? s 462 : clamp(s + (hb[i + 8] / 255 - 0.5) * 0.03 * feel.windiness) 463 ); 464 const skew = pressureDir * 0.05 + (tempDrift - 0.5) * 0.03; 465 stops = stops.map((s, i) => 466 i === 0 || i === stops.length - 1 467 ? s 468 : clamp(s + skew * (1 - Math.abs(2 * s - 1))) 469 ); 470 471 return { stops, pattern, count }; 472 } 473 474 function generateColors(feel, d, palette, stopData, hb) { 475 const assignments = assignBands(palette, stopData, d, hb); 476 return assignments.map((bandIdx, i) => 477 generateColorFromBand(palette.bands[bandIdx], i) 478 ); 479 480 function assignBands(palette, sd, d, hb) { 481 const bCount = palette.bands.length; 482 const a = []; 483 if (palette.name === "Aurora") { 484 a.push(0); 485 for (let i = 1; i < sd.count - 1; i++) { 486 const t = (i - 1) / (sd.count - 2); 487 a.push(1 + Math.floor(t * (bCount - 1))); 488 } 489 a.push(0); 490 return a; 491 } 492 for (let i = 0; i < sd.count; i++) { 493 if ( 494 sd.pattern === "dramatic" && 495 d.drama > 0.5 && 496 i > 0 && 497 sd.stops[i] - sd.stops[i - 1] < 0.08 498 ) { 499 a.push((a[i - 1] + Math.floor(bCount / 2)) % bCount); 500 } else { 501 const prog = sd.stops[i]; 502 const base = Math.floor(prog * (bCount - 1)); 503 const varOff = hb[i + 12] / 255 < 0.3 ? 1 : 0; 504 const band = clamp( 505 base + (hb[i + 13] % 2 ? varOff : -varOff), 506 0, 507 bCount - 1 508 ); 509 a.push(band); 510 } 511 } 512 return a; 513 } 514 515 function generateColorFromBand(band, i) { 516 let hue = lerp(band.hue[0], band.hue[1], hb[i + 16] / 255); 517 let sat = lerp(band.sat[0], band.sat[1], hb[i + 17] / 25
5175); 518 let light = lerp( 519 band.light[0], 520 band.light[1], 521 hb[i + 18] / 255 522 ); 523 524 // Weather tweaks 525 hue += (feel.warmth - 0.5) * 12; // warmth shift 526 if (feel.rain_intensity && hue >= 180 && hue <= 200) 527 sat += 528 feel.rain_intensity * 529 15 * 530 Math.pow(feel.rain_intensity, 0.3); 531 sat = Math.max(30, sat - d.haziness * 15); 532 light = Math.min(95, light + feel.brightness ** 2 * 15); 533 if (d.gold && hue >= 10 && hue <= 40) { 534 sat += d.gold * 20; 535 light += d.gold * 10; 536 } 537 if (feel.night && i !== 0 && i !== stopData.count - 1) 538 light = Math.max(35, light); 539 if ( 540 stopData.pattern === "dramatic" && 541 i && 542 stopData.stops[i] - stopData.stops[i - 1] < 0.08 543 ) 544 sat = Math.min(85, sat + 20); 545 if (feel.precip_form === "snow") { 546 if (hue >= 115 && hue <= 140) { 547 hue += 40; 548 sat *= 0.7; 549 } 550 sat = Math.min(70, sat); 551 light += 5; 552 } 553 if (feel.gloom > 0.5) 554 light = 50 + (light - 50) * (1 - feel.gloom * 0.4); 555 if (!feel.night && light < 35) light = 35; 556 if (sat < 40 && light < 65) light = 65; 557 558 return hslToHex( 559 ((hue % 360) + 360) % 360, 560 clamp(sat, 0, 100), 561 clamp(light, 0, 100) 562 ); 563 } 564 } 565 566 function validateAndCorrect(data, feel) { 567 let { colors, stops } = data; 568 const hsls = colors.map(hexToHsl); 569 const spans = { 570 hue: 571 Math.max(...hsls.map((c) => c.h)) - 572 Math.min(...hsls.map((c) => c.h)), 573 sat: 574 Math.max(...hsls.map((c) => c.s)) - 575 Math.min(...hsls.map((c) => c.s)), 576 light: 577 Math.max(...hsls.map((c) => c.l)) - 578 Math.min(...hsls.map((c) => c.l)), 579 }; 580 581 const interest = 582 spans.hue >= 30 || 583 spans.sat >= 40 || 584 spans.light >= 40 || 585 stops.some((s, i) => i && s - stops[i - 1] <= 0.08); 586 if (!interest) { 587 const maxSatIdx = hsls.reduce( 588 (m, c, i, arr) => (c.s > arr[m].s ? i : m), 589 0 590 ); 591 const minSatIdx = hsls.reduce( 592 (m, c, i, arr) => (c.s < arr[m].s ? i : m), 593 0 594 ); 595 hsls[maxSatIdx].s = Math.min(85, hsls[maxSatIdx].s + 25); 596 hsls[minSatIdx].s = Math.max(30, hsls[minSatIdx].s - 15); 597 colors[maxSatIdx] = hslToHex( 598 hsls[maxSatIdx].h, 599 hsls[maxSatIdx].s, 600 hsls[maxSatIdx].l 601 ); 602 colors[minSatIdx] = hslToHex( 603 hsls[minSatIdx].h, 604 hsls[minSatIdx].s, 605 hsls[minSatIdx].l 606 ); 607 } 608 609 // Forbidden color combinations 610 const forb = [ 611 [ 612 [115, 140], 613 [0, 40], 614 ], 615 [ 616 [115, 140], 617 [340, 360], 618 ], 619 [ 620 [60, 80], 621 [280, 300], 622 ], 623 ]; 624 for (let i = 1; i < colors.length; i++) { 625 const a = hsls[i - 1].h; 626 const b = hsls[i].h; 627 forb.forEach(([r1, r2]) => { 628 if ( 629 (a >= r1[0] && a <= r1[1] && b >= r2[0] && b <= r2[1]) || 630 (a >= r2[0] && a <= r2[1] && b >= r1[0] && b <= r1[1]) 631 ) { 632 const bridge = hslToHex(270, 30, 70); 633 colors.splice(i, 0, bridge); 634 stops.splice(i, 0, (stops[i - 1] + stops[i]) / 2); 635 hsls.splice(i, 0, hexToHsl(bridge)); 636 } 637 }); 638 } 639 640 // Green needs blue/purple 641 if ( 642 hsls.some((c) => c.h >= 115 && c.h <= 140) && 643 !hsls.some((c) => c.h >= 200 && c.h <= 280) 644 ) { 645 colors = colors.map((col) => { 646 const hsl = hexToHsl(col); 647 if (hsl.h >= 115 && hsl.h <= 140) { 648 hsl.h = 180 + (hsl.h - 115) * 0.8; 649 return hslToHex(hsl.h, hsl.s, hsl.l); 650 } 651 return col; 652 }); 653 } 654 655 // Dayâlight constraints 656 if (!feel.night) { 657 colors = colors.map((col) => { 658 const hsl = hexToHsl(col); 659 if (hsl.l < 35) hsl.l = 35; 660 if (hsl.s < 40 && hsl.l < 65) hsl.l = 65; 661 return hslToHex(hsl.h, hsl.s, hsl.l); 662 }); 663 } 664 665 // Ensure â¥5 % stop gap & bounds 666 for (let i = 1; i < stops.length; i++) { 667 if (stops[i] - stops[i - 1] < 0.05) { 668 const adj = (0.05 - (stops[i] - stops[i - 1])) / 2; 669 if (i - 2 >= 0 && stops[i - 1] - stops[i - 2] < 0.05 + adj) 670 stops[i] += adj * 2; 671 else { 672 stops[i - 1] -= adj; 673 stops[i] += adj; 674 } 675 } 676 } 677 stops = stops.map((s, idx) => clamp(s, 0, 1)); 678 stops[0] = 0; 679 stops[stops.length - 1] = 1; 680 681 return { colors, stops }; 682 } 683 } 684 685 // Weather "feel"
686 function calcFeel(agg, sun, nowT) { 687 const sunriseT = new Date(sun.properties.sunrise.time); 688 const sunsetT = new Date(sun.properties.sunset.time); 689 const elevFrac = solarElevationFrac(nowT, sunriseT, sunsetT); 690 const golden = clamp(1 - Math.abs(elevFrac - 0.08) / 0.08); 691 const twilight = clamp(1 - Math.abs(nowT - sunsetT) / 4.5e6); 692 const night = elevFrac <= 0 ? 1 : 0; 693 const AT = apparentTemp(agg.Tbar, agg.RHbar, agg.WSbar); 694 const warm = warmthScore(AT); 695 const warmChange = tanh(agg.deltaT / 4); 696 const humidityFeel = muggyIndex(agg.DPbar); 697 const windFeel = 698 sigmoid((agg.WSbar - 2) / 3) * (agg.Tbar < 10 ? 1.2 : 1); 699 const cloudFrac = agg.CCbar / 100; 700 const brightness = elevFrac * (1 - cloudFrac); 701 const gloom = clamp(1.2 * cloudFrac * (1 - elevFrac)); 702 const rainIntensity = agg.PR1 > 0 ? sigmoid(agg.PR1max / 3) : 0; 703 const rainAmount = tanh(agg.PR6sum / 24); 704 const precipForm = 705 agg.Tbar <= 0 706 ? "snow" 707 : agg.Tbar < 2 && agg.RHbar > 90 708 ? "sleet" 709 : "rain"; 710 const uvNorm = clamp(agg.UV / 11); 711 return { 712 warmth: warm, 713 warmth_change: warmChange, 714 humidity: humidityFeel, 715 gloom, 716 brightness, 717 rain_intensity: rainIntensity, 718 rain_amount: rainAmount, 719 precip_form: precipForm, 720 windiness: windFeel, 721 pressure_trend: tanh(agg.deltaP3h / 2), 722 sun_elevation: elevFrac, 723 golden, 724 twilight, 725 night, 726 uv: uvNorm, 727 }; 728 } 729 730 function apparentTemp(T, RH, WS) { 731 const e = (RH / 100) * 6.105 * Math.exp((17.27 * T) / (237.7 + T)); 732 return T + 0.33 * e - 0.7 * WS - 4.0; 733 } 734 function muggyIndex(dp) { 735 return clamp((dp - 10) / 14); 736 } 737 function warmthScore(AT) { 738 return clamp(sigmoid((AT - 15) / 10)); 739 } 740 function solarElevationFrac(now, sunrise, sunset) { 741 const len = sunset - sunrise || 1; 742 const f = clamp((now - sunrise) / len); 743 return Math.sin(Math.PI * f); 744 } 745 746 async function fetchForecast(lat, lon) { 747 const fcRes = await fetch( 748 `https://api.met.no/weatherapi/locationforecast/2.0/complete?lat=${lat}&lon=${lon}` 749 ); 750 if (!fcRes.ok) throw Error(`locationforecast ${fcRes.status}`); 751 const fc = await fcRes.json(); 752 const sunRes = await fetch( 753 `https://api.met.no/weatherapi/sunrise/3.0/sun?lat=${lat}&lon=${lon}&date=${new Date() 754 .toISOString() 755 .slice(0, 10)}` 756 ); 757 if (!sunRes.ok) throw Error(`sunrise ${sunRes.status}`); 758 const sun = await sunRes.json(); 759 const start = new Date(); 760 start.setUTCHours(0, 0, 0, 0); 761 const end = new Date(start); 762 end.setUTCDate(end.getUTCDate() + 1); 763 const pts = fc.properties.timeseries.filter((p) => { 764 const t = parseISO(p.time); 765 return t >
765= start && t < end; 766 }); 767 const pull = (f) => 768 pts.map((p) => p.data.instant.details[f] ?? null); 769 const mean = (a) => a.reduce((s, v) => s + v, 0) / a.length; 770 const agg = { 771 Tbar: mean(pull("air_temperature")), 772 DPbar: mean(pull("dew_point_temperature")), 773 RHbar: mean(pull("relative_humidity")), 774 Pbar: mean(pull("air_pressure_at_sea_level")), 775 CCbar: mean(pull("cloud_area_fraction")), 776 WSbar: mean(pull("wind_speed")), 777 UV: mean(pull("ultraviolet_index_clear_sky")), 778 PR1: pts[0].data.next_1_hours?.details?.precipitation_amount ?? 0, 779 PR1max: Math.max( 780 ...pts.map( 781 (p) => p.data.next_1_hours?.details?.precipitation_amount ?? 0 782 ) 783 ), 784 PR6sum: pts 785 .filter((_, i) => i % 6 === 0) 786 .reduce( 787 (s, p) => 788 s + 789 (p.data.next_6_hours?.details?.precipitation_amount ?? 0), 790 0 791 ), 792 deltaP3h: 793 pull("air_pressure_at_sea_level").slice(-1)[0] - 794 pull("air_pressure_at_sea_level").slice(-4)[0], 795 deltaT: 796 mean(pull("air_temperature").slice(pts.length / 2)) - 797 mean(pull("air_temperature").slice(0, pts.length / 2)), 798 }; 799 const nowT = parseISO(pts[0].time); 800 const feeling = calcFeel(agg, sun, nowT); 801 const first = pts[0].data.instant.details; 802 const p1h = pts[0].data.next_1_hours?.details ?? {}; 803 return { 804 temp: first.air_temperature, 805 wind: first.wind_speed, 806 clouds: first.cloud_area_fraction / 100, 807 humidity: first.relative_humidity / 100, 808 precipAmount: p1h.precipitation_amount ?? 0, 809 precipType: 810 feeling.precip_form === "snow" 811 ? "snow" 812 : (p1h.precipitation_amount ?? 0) > 0 813 ? "rain" 814 : "none", 815 uvIndex: first.ultraviolet_index_clear_sky, 816 timeISO: pts[0].time, 817 sunriseISO: sun.properties.sunrise.time, 818 sunsetISO: sun.properties.sunset.time, 819 feeling, 820 }; 821 } 822 823 const TIME_SCALE = 0.53, 824 WIND_SCALE = 3, 825 NOISE_FREQ = 0.45, 826 CLOUD_DETAIL = 0.65, 827 LERP = 0.05, 828 MAX_STOPS = 8, 829 MAX_GAPS = MAX_STOPS - 1; 830 831 const status = document.getElementById("animated-hero__status"); 832 const cityEl = document.getElementById("animated-hero__city"); 833 const tempEl = document.getElementById("animated-hero__temp"); 834 const windEl = document.getElementById("animated-hero__wind"); 835 const timeEl = document.getElementById("animated-hero__time"); 836 const footer = document.getElementById("animated-hero__footer"); 837 const rndBtn = document.getElementById("animated-hero__rnd"); 838 const rndSvg = rndBtn.querySelector("svg"); 839 const met = document.getElementById("animated-hero__met"); 840 const weather = document.getElementById("animated-hero__weather"); 841 const track = document.getElementById("animated-hero__weather-track"); 842 843 const canv = document.getElementById("animated-hero__canvas"); 844 const gl = canv.getContext("webgl"); 845 846 let tickId = null; 847 848 let lowerContrast = "#fff"; 849 let upperContrast = "#fff"; 850 851 const deskCSS = { 852 footer: footer.style.cssText, 853 rndBtn: rndBtn.style.cssText, 854 rndSvg: rndSvg.style.cssText, 855 met: met.style.cssText, 856 weather: weather.style.cssText, 857 track: track.style.cssText, 858 }; 859 860 function resize() { 861 canv.width = canv.clientWidth * devicePixelRatio; 862 canv.height = canv.clientHeight * devicePixelRatio; 863 gl.viewport(0, 0, canv.width, canv.height); 864 applyResponsive(); 865 } 866 addEventListener("resize", resize); 867 resize(); 868 869 const vs = `attribute vec2 p;varying vec2 vUv;void main(){vUv=(p+1.)*.5;gl_Position=vec4(p,0,1);} `; 870 const noise = `// Simplex 3D Noise 871 // by Ian McEwan, Stefan Gustavson (https://github.com/stegu/webgl-noise) 872 // 873 vec4 permute(vec4 x){return mod(((x*34.0)+1.0)*x, 289.0);} 874 vec4 taylorInvSqrt(vec4 r){return 1.79284291400159 - 0.85373472095314 * r;} 875 876 float snoise(vec3 v){ 877 const vec2 C = vec2(1.0/6.0, 1.0/3.0) ; 878 const vec4 D = vec4(0.0, 0.5, 1.0, 2.0); 879 880 // First corner
881 vec3 i = floor(v + dot(v, C.yyy) ); 882 vec3 x0 = v - i + dot(i, C.xxx) ; 883 884 // Other corners 885 vec3 g = step(x0.yzx, x0.xyz); 886 vec3 l = 1.0 - g; 887 vec3 i1 = min( g.xyz, l.zxy ); 888 vec3 i2 = max( g.xyz, l.zxy ); 889 890 // x0 = x0 - 0. + 0.0 * C 891 vec3 x1 = x0 - i1 + 1.0 * C.xxx; 892 vec3 x2 = x0 - i2 + 2.0 * C.xxx; 893 vec3 x3 = x0 - 1. + 3.0 * C.xxx; 894 895 // Permutations 896 i = mod(i, 289.0 ); 897 vec4 p = permute( permute( permute( 898 i.z + vec4(0.0, i1.z, i2.z, 1.0 )) 899 + i.y + vec4(0.0, i1.y, i2.y, 1.0 )) 900 + i.x + vec4(0.0, i1.x, i2.x, 1.0 )); 901 902 // Gradients 903 // ( N*N points uniformly over a square, mapped onto an octahedron.) 904 float n_ = 1.0/7.0; // N=7 905 vec3 ns = n_ * D.wyz - D.xzx; 906 907 vec4 j = p - 49.0 * floor(p * ns.z *ns.z); // mod(p,N*N) 908 909 vec4 x_ = floor(j * ns.z); 910 vec4 y_ = floor(j - 7.0 * x_ ); // mod(j,N) 911 912 vec4 x = x_ *ns.x + ns.yyyy; 913 vec4 y = y_ *ns.x + ns.yyyy; 914 vec4 h = 1.0 - abs(x) - abs(y); 915 916 vec4 b0 = vec4( x.xy, y.xy ); 917 vec4 b1 = vec4( x.zw, y.zw ); 918 919 vec4 s0 = floor(b0)*2.0 + 1.0; 920 vec4 s1 = floor(b1)*2.0 + 1.0; 921 vec4 sh = -step(h, vec4(0.0)); 922 923 vec4 a0 = b0.xzyw + s0.xzyw*sh.xxyy ; 924 vec4 a1 = b1.xzyw + s1.xzyw*sh.zzww ; 925 926 vec3 p0 = vec3(a0.xy,h.x); 927 vec3 p1 = vec3(a0.zw,h.y); 928 vec3 p2 = vec3(a1.xy,h.z); 929 vec3 p3 = vec3(a1.zw,h.w); 930 931 //Normalise gradients 932 vec4 norm = taylorInvSqrt(vec4(dot(p0,p0), dot(p1,p1), dot(p2, p2), dot(p3,p3))); 933 p0 *= norm.x; 934 p1 *= norm.y; 935 p2 *= norm.z; 936 p3 *= norm.w; 937 938 // Mix final noise value 939 vec4 m = max(0.6 - vec4(dot(x0,x0), dot(x1,x1), dot(x2,x2), dot(x3,x3)), 0.0); 940 m = m * m; 941 return 42.0 * dot( m*m, vec4( dot(p0,x0), dot(p1,x1), 942 dot(p2,x2), dot(p3,x3) ) ); 943 }\n`; 944 const fs = `precision mediump float;varying vec2 vUv;uniform vec2 iResolution;uniform float iTime,uTimeScale,uWindScale,uNoiseFreq,uCloudDetail;uniform float uCloudCover,uWindNorm,uWindOffset;uniform vec3 uColor[${MAX_STOPS}];uniform float uStops[${ 945 MAX_STOPS - 1 946 }];uniform float uStopCount;${noise} 947vec3 pal(float t){vec3 col=uColor[0];float prev=0.;int cnt=int(uStopCount+0.5);for(int i=1;i<${MAX_STOPS};i++){if(i>=cnt)break;float edge=smoothstep(prev,uStops[i-1],t);col=mix(col,uColor[i],edge);prev=uStops[i-1];}return col;} 948vec3 toSRGB(vec3 v){return pow(v,vec3(1./2.2));} 949void main(){vec2 uv=vUv;float t=iTime*uTimeScale;float base=snoise(vec3(uv*0.8*uNoiseFreq,t*0.1));vec2 wuv=uv;wuv.x-=uWindOffset;vec2 wind=vec2(snoise(vec3(wuv*2.*uNoiseFreq+t*0.2,t*0.5)),snoise(vec3(wuv*2.*uNoiseFreq-t*0.05,t*0.2)));uv+=wind*(pow(uWindNorm,0.7)*0.15+0.02)*uWindScale;uv.x+=base*0.05*uNoiseFreq;float cloudEff=max(uCloudCover,uWindNorm*0.5);float g=uv.y+snoise(vec3(uv*uCloudDetail*mix(1.,3.,cloudEff),t*0.1))*0.2*cloudEff;g=clamp(g,0.,1.);g+=sin(uv.y*10.*uNoiseFreq+t*0.2+base*2.*uNoiseFreq)*0.02;g=clamp(g,0.,1.);gl_FragColor=vec4(toSRGB(pal(g)),1.);} `; 950 951 function sh(type, src) { 952 const s = gl.createShader(type); 953 gl.shaderSource(s, src); 954 gl.compileShader(s); 955 if (!gl.getShaderParameter(s, gl.COMPILE_STATUS)) 956 throw gl.getShaderInfoLog(s); 957 return s; 958 } 959 const prog = gl.createProgram(); 960 gl.attachShader(prog, sh(gl.VERTEX_SHADER, vs)); 961 gl.attachShader(prog, sh(gl.FRAGMENT_SHADER, fs)); 962 gl.linkProgram(prog); 963 if (!gl.getProgramParameter(prog, gl.LINK_STATUS)) 964 throw gl.getProgramInfoLog(prog); 965 gl.useProgram(prog); 966 967 const buf = gl.createBuffer(); 968 gl.bindBuffer(gl.ARRAY_BUFFER, buf); 969 gl.bufferData( 970 gl.ARRAY_BUFFER, 971 new Float32Array([-1, -1, 1, -1, -1, 1, 1, 1]), 972 gl.STATIC_DRAW 973 ); 974 const loc = gl.getAttribLocation(prog, "p"); 975 gl.enableVertexAttribArray(loc); 976 gl.vertexAttribPointer(loc, 2, gl.FLOAT, false, 0, 0); 977 978 const uni = { 979 res: gl.getUniformLocation(prog, "iResolution"), 980 time: gl.getUniformLocation(prog, "iTime"), 981 cloud: gl.getUniformLocation(prog, "uCloudCover"), 982 windNorm: gl.getUniformLocation(prog, "uWindNorm"), 983 windOff: gl.getUniformLocation(prog, "uWindOffset"), 984 stopCount: gl.getUniformLocation(prog, "uStopCount"), 985 stops: gl.getUniformLocation(prog, "uStops"), 986 colors: gl.getUniformLocation(prog, "uColor[0]"), 987 timeScale: gl.getUniformLocation(prog, "uTimeScale"), 988 windScale: gl.getUniformLocation(prog, "uWindScale"), 989 noiseFreq: gl.getUniformLocation(prog, "uNoiseFreq"), 990 cloudDet: gl.getUniformLocation(prog, "uCloudDetail"), 991 }; 992 gl.uniform1f(uni.timeScale, TIME_SCALE); 993 gl.uniform1f(uni.windScale, WIND_SCALE); 994 gl.uniform1f(uni.noiseFreq, NOISE_FREQ); 995 gl.uniform1f(uni.cloudDet, CLOUD_DETAIL); 996 997 let anim = { 998 colors: Array.from({ length: MAX_STOPS }, () => ({ 999 r: 1, 1000 g: 1, 1001 b: 1, 1002 })), 1003 stops: new Float32Array(MAX_GAPS).fill(1), 1004 stopCount: 4, 1005 cloud: 0, 1006 wind: 0.2, 1007 }; 1008 let target = { ...anim }; 1009 let windOffset = 0; 1010 1011 function uploadColors() { 1012 const flat = []; 1013 for (const c of anim.colors) { 1014 flat.push(c.r, c.g, c.b); 1015 } 1016 gl.uniform3fv(uni.colors, new Float32Array(flat)); 1017 } 1018 function uploadStops() { 1019 gl.uniform1fv(uni.stops, anim.stops); 1020 } 1021 function uploadStatics() { 1022 gl.uniform1f(uni.stopCount, anim.stopCount); 1023 gl.uniform1f(uni.cloud, anim.cloud); 1024 gl.uniform1f(uni.windNorm, anim.wind); 1025 } 1026 1027 function applyResponsive() { 1028 const MOBILE_MAX = 600; 1029 1030 function desktop() { 1031 footer.style.cssText = deskCSS.footer; 1032 rndBtn.style.cssText = deskCSS.rndBtn; 1033 rndSvg.style.cssText = deskCSS.rndSvg; 1034 met.style.cssText = deskCSS.met; 1035 weather.style.cssText = deskCSS.weather; 1036 track.style.cssText = deskCSS.track; 1037 stopTicker(); 1038 applyInk(); 1039 } 1040 1041 function mobile() { 1042 footer.style.cssText = `
1043 ${deskCSS.footer} 1044 top:30px; bottom:auto; left:20px; 1045 font-size:16px; line-height:25px; max-width:60vw;`; 1046 1047 rndBtn.style.cssText = `${deskCSS.rndBtn} width:16px; height:16px;`; 1048 rndSvg.style.cssText = `${deskCSS.rndSvg} width:16px; height:16px;`; 1049 1050 met.style.cssText = ` 1051 ${deskCSS.met} 1052 left:20px; right:auto; bottom:30px; 1053 font-size:16px; line-height:25px;`; 1054 1055 weather.style.cssText = ` 1056 ${deskCSS.weather} 1057 overflow:hidden; 1058 height:${track.firstElementChild.offsetHeight}px;`; 1059 1060 track.style.cssText = ` 1061 display:flex; 1062 flex-direction:column; 1063 gap:6px; 1064 will-change:transform; 1065 transform:translateY(0);`; 1066 startTicker(); 1067 applyInk(true); 1068 } 1069 1070 (window.innerWidth <= MOBILE_MAX ? mobile : desktop)(); 1071 } 1072 1073 function startTicker() { 1074 if (tickId) return; 1075 1076 tickId = setInterval(() => { 1077 track.style.transition = "transform .35s ease-out"; 1078 track.style.transform = `translateY(-${track.firstElementChild.offsetHeight + 6}px)`; 1079 1080 track.addEventListener( 1081 "transitionend", 1082 function f() { 1083 track.removeEventListener("transitionend", f); 1084 1085 track.appendChild(track.firstElementChild); 1086 1087 track.style.transition = "none"; 1088 track.style.transform = "translateY(0)"; 1089 void track.offsetHeight; 1090 }, 1091 { once: true } 1092 ); 1093 }, 5000); 1094 } 1095 1096 function stopTicker() { 1097 clearInterval(tickId); 1098 tickId = null; 1099 track.style.transition = "none"; 1100 track.style.transform = "translateY(0)"; 1101 } 1102 1103 const offices = [ 1104 { 1105 city: "Stockholm", 1106 lat: 59.3293, 1107 lon: 18.0686, 1108 tz: "Europe/Stockholm", 1109 }, 1110 { 1111 city: "Göteborg", 1112 lat: 57.7075, 1113 lon: 11.9675, 1114 tz: "Europe/Stockholm", 1115 }, 1116 { 1117 city: "Malmö", 1118 lat: 55.6058, 1119 lon: 13.0358, 1120 tz: "Europe/Stockholm", 1121 }, 1122 { 1123 city: "Jönköping", 1124 lat: 57.7828, 1125 lon: 14.1606, 1126 tz: "Europe/Stockholm", 1127 }, 1128 { 1129 city: "Karlstad", 1130 lat: 59.3783, 1131 lon: 13.5042, 1132 tz: "Europe/Stockholm", 1133 }, 1134 { 1135 city: "Karlskrona", 1136 lat: 56.1612, 1137 lon: 15.5869, 1138 tz: "Europe/Stockholm", 1139 }, 1140 { 1141 city: "Linköping", 1142 lat: 58.4109, 1143 lon: 15.6216, 1144 tz: "Europe/Stockholm", 1145 }, 1146 { 1147 city: "LuleÃ¥", 1148 lat: 65.5848, 1149 lon: 22.1547, 1150 tz: "Europe/Stockholm", 1151 }, 1152 { city: "Lund", lat: 55.7047, lon: 13.191, tz: "Europe/Stockholm" }, 1153 { 1154 city: "Borlänge", 1155 lat: 60.4847, 1156 lon: 15.426, 1157 tz: "Europe/Stockholm", 1158 }, 1159 { 1160 city: "Gävle", 1161 lat: 60.6749, 1162 lon: 17.1413, 1163 tz: "Europe/Stockholm", 1164 }, 1165 { 1166 city: "Helsingborg", 1167 lat: 56.0465, 1168 lon: 12.6945, 1169 tz: "Europe/Stockholm", 1170 }, 1171 { 1172 city: "Sundsvall", 1173 lat: 62.3908, 1174 lon: 17.3069, 1175 tz: "Europe/Stockholm", 1176 }, 1177 { 1178 city: "Uppsala", 1179 lat: 59.8586, 1180 lon: 17.6389, 1181 tz: "Europe/Stockholm", 1182 }, 1183 { 1184 city: "Ãrebro", 1185 lat: 59.2741, 1186 lon: 15.2066, 1187 tz: "Europe/Stockholm", 1188 }, 1189 { 1190 city: "Trollhättan", 1191 lat: 58.2837, 1192 lon: 12.2886, 1193 tz: "Europe/Stockholm", 1194 },
1195 { city: "Oslo", lat: 59.9139, lon: 10.7522, tz: "Europe/Oslo" }, 1196 { city: "Bergen", lat: 60.3928, lon: 5.3239, tz: "Europe/Oslo" }, 1197 { city: "Stavanger", lat: 58.969, lon: 5.7331, tz: "Europe/Oslo" }, 1198 { 1199 city: "Kristiansand", 1200 lat: 58.1467, 1201 lon: 7.9956, 1202 tz: "Europe/Oslo", 1203 }, 1204 { city: "Arendal", lat: 58.4614, lon: 8.772, tz: "Europe/Oslo" }, 1205 { city: "Hamar", lat: 60.7945, lon: 11.067, tz: "Europe/Oslo" }, 1206 { 1207 city: "København", 1208 lat: 55.6761, 1209 lon: 12.5683, 1210 tz: "Europe/Copenhagen", 1211 }, 1212 { 1213 city: "Aarhus", 1214 lat: 56.1629, 1215 lon: 10.2039, 1216 tz: "Europe/Copenhagen", 1217 }, 1218 { 1219 city: "Helsinki", 1220 lat: 60.1699, 1221 lon: 24.9384, 1222 tz: "Europe/Helsinki", 1223 }, 1224 { 1225 city: "Tampere", 1226 lat: 61.4978, 1227 lon: 23.761, 1228 tz: "Europe/Helsinki", 1229 }, 1230 { 1231 city: "Turku", 1232 lat: 60.4518, 1233 lon: 22.2673, 1234 tz: "Europe/Helsinki", 1235 }, 1236 { city: "Oulu", lat: 65.0121, lon: 25.4651, tz: "Europe/Helsinki" }, 1237 { 1238 city: "Warszawa", 1239 lat: 52.2297, 1240 lon: 21.0122, 1241 tz: "Europe/Warsaw", 1242 }, 1243 { 1244 city: "Bydgoszcz", 1245 lat: 53.1235, 1246 lon: 18.0084, 1247 tz: "Europe/Warsaw", 1248 }, 1249 { city: "Åódź", lat: 51.7592, lon: 19.455, tz: "Europe/Warsaw" }, 1250 { city: "Bremen", lat: 53.0793, lon: 8.8017, tz: "Europe/Berlin" }, 1251 { 1252 city: "UmeÃ¥", 1253 lat: 63.8274, 1254 lon: 20.2699, 1255 tz: "Europe/Stockholm", 1256 }, 1257 { 1258 city: "Ãstersund", 1259 lat: 63.1743, 1260 lon: 14.6411, 1261 tz: "Europe/Stockholm", 1262 }, 1263 { 1264 city: "Viby", 1265 lat: 56.1188, 1266 lon: 10.1399, 1267 tz: "Europe/Copenhagen", 1268 }, 1269 { 1270 city: "Aalborg", 1271 lat: 57.0465, 1272 lon: 9.9225, 1273 tz: "Europe/Copenhagen", 1274 }, 1275 { 1276 city: "Trondheim", 1277 lat: 63.4302, 1278 lon: 10.3829, 1279 tz: "Europe/Oslo", 1280 }, 1281 { city: "à lesund", lat: 62.4712, lon: 6.158, tz: "Europe/Oslo" }, 1282 ]; 1283 let lastIdx = -1; 1284 function pickOffice() { 1285 let i; 1286 do i = Math.floor(Math.random() * offices.length); 1287 while (i === lastIdx); 1288 lastIdx = i; 1289 return offices[i]; 1290 } 1291 async function load() { 1292 const office = pickOffice(); 1293 try { 1294 const wx = await fetchForecast(office.lat, office.lon); 1295 cityEl.textContent = office.city; 1296 1297 const timeStr = new Date().toLocaleTimeString("sv-SE", { 1298 hour: "2-digit", 1299 minute: "2-digit", 1300 hour12: false, 1301 timeZone: office.tz, 1302 }); 1303 1304 // Update individual elements using textContent 1305 tempEl.textContent = wx.temp + "ºC"; 1306 windEl.textContent = wx.wind + " m/s"; 1307 timeEl.textContent = timeStr; 1308 1309 const pal = buildGradient(wx.feeling); 1310 // pad/trim 1311 while (pal.colors.length < MAX_STOPS) 1312 pal.colors.push(pal.colors[pal.colors.length - 1]); 1313 const cArr = pal.colors.slice(0, MAX_STOPS).map(hexToRgbNorm); 1314 target.colors = cArr; 1315 const st = pal.stops.slice(1); 1316 while (st.length < MAX_GAPS) st.push(1); 1317 target.stops = Float32Array.from(st); 1318 target.stopCount = pal.colors.length; 1319 target.cloud = wx.clouds; 1320 target.wind = clamp(wx.wind / 16, 0.02, 1); 1321 1322 sampleInk(pal); 1323 } catch (e) { 1324 status.textContent = "Error: " + e.message; 1325 } 1326 } 1327 (function initPlaceholder() { 1328 const pal = buildGradient(defaultFeeling); 1329 1330 // pad/trim to MAX_STOPS 1331 while (pal.colors.length < MAX_STOPS) 1332 pal.colors.push(pal.colors[pal.colors.length - 1]); 1333 1334 target.colors = pal.colors.slice(0, MAX_STOPS).map(hexToRgb
1334Norm); 1335 const st = pal.stops.slice(1); 1336 while (st.length < MAX_GAPS) st.push(1); 1337 target.stops = Float32Array.from(st); 1338 target.stopCount = pal.colors.length; 1339 target.cloud = 0; 1340 target.wind = 0.2; 1341 1342 sampleInk(pal); 1343 })(); 1344 document.getElementById("animated-hero__rnd").onclick = load; 1345 load(); 1346 1347 let prev = performance.now(); 1348 function step(ts) { 1349 const dt = (ts - prev) / 1000; 1350 prev = ts; 1351 // interpolate colours 1352 for (let i = 0; i < MAX_STOPS; i++) { 1353 anim.colors[i].r = lerp( 1354 anim.colors[i].r, 1355 target.colors[i].r, 1356 LERP 1357 ); 1358 anim.colors[i].g = lerp( 1359 anim.colors[i].g, 1360 target.colors[i].g, 1361 LERP 1362 ); 1363 anim.colors[i].b = lerp( 1364 anim.colors[i].b, 1365 target.colors[i].b, 1366 LERP 1367 ); 1368 } 1369 // interpolate stops 1370 for (let i = 0; i < MAX_GAPS; i++) { 1371 anim.stops[i] = lerp(anim.stops[i], target.stops[i], LERP); 1372 } 1373 anim.stopCount = lerp(anim.stopCount, target.stopCount, LERP); 1374 anim.cloud = lerp(anim.cloud, target.cloud, LERP); 1375 anim.wind = lerp(anim.wind, target.wind, LERP); 1376 windOffset += (0.1 + 0.75 * anim.wind) * TIME_SCALE * dt; 1377 1378 uploadColors(); 1379 uploadStops(); 1380 uploadStatics(); 1381 gl.uniform2f(uni.res, canv.width, canv.height); 1382 gl.uniform1f(uni.time, ts / 1000); 1383 gl.uniform1f(uni.windOff, windOffset); 1384 1385 gl.drawArrays(gl.TRIANGLE_STRIP, 0, 4); 1386 requestAnimationFrame(step); 1387 } 1388 uploadColors(); 1389 uploadStops(); 1390 uploadStatics(); 1391 1392 function luminance(r, g, b) { 1393 // WCAG relative luminance 1394 return (0.2126 * r + 0.7152 * g + 0.0722 * b) / 255; 1395 } 1396 function bestInk(r, g, b) { 1397 return luminance(r, g, b) > 0.53 ? "#000" : "#fff"; 1398 } 1399 1400 function contrastFor(hex1, hex2) { 1401 const avg = [hex1, hex2] 1402 .map(hexToRgbNorm) 1403 .reduce( 1404 (a, c) => ({ r: a.r + c.r, g: a.g + c.g, b: a.b + c.b }), 1405 { 1406 r: 0, 1407 g: 0, 1408 b: 0, 1409 } 1410 ); 1411 1412 return bestInk(avg.r * 127.5, avg.g * 127.5, avg.b * 127.5); 1413 } 1414 1415 function sampleInk(pal) { 1416 lowerContrast = contrastFor(pal.colors[0], pal.colors[1]); 1417 upperContrast = contrastFor( 1418 pal.colors[pal.colors.length - 2], 1419 pal.colors[pal.colors.length - 1] 1420 ); 1421 applyInk(); 1422 } 1423 1424 function applyInk(mobile = false) { 1425 if (mobile) { 1426 footer.style.color = upperContrast; 1427 met.style.color = lowerContrast; 1428 } else { 1429 footer.style.color = lowerContrast; 1430 met.style.color = lowerContrast; 1431 } 1432 } 1433 1434 requestAnimationFrame(step); 1435 }); 1436 window.addEventListener("pagehide", () => { 1437 window.__heroCanvasLoaded = false; 1438 }); 1439 })(); 1440 } 1441 </script>
1441 1442</div></div></div></div></div></div><style data-emotion="css j74872">.css-j74872{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:var(--chakra-space-12);}</style><div class="chakra-stack css-j74872"><section class="FocusBlock css-0"><style data-emotion="css whh5e5">.css-whh5e5{opacity:1;}</style><div class="css-whh5e5"><style data-emotion="css 1bbe9dr">.css-1bbe9dr{padding-top:0px;height:100%;}</style><div class="css-1bbe9dr"><style data-emotion="css 1gekn55">.css-1gekn55{padding-right:20px;padding-left:20px;margin:0 auto;height:100%;z-index:3;position:unset;max-width:calc(1150px + 40px);padding-bottom:0px;padding-top:var(--chakra-space-12);}@media screen and (min-width: 48em){.css-1gekn55{padding-top:var(--chakra-space-20);}}</style><div class="css-1gekn55"><style data-emotion="css 1ubhc2b">.css-1ubhc2b{max-width:100%;width:100%;position:relative;}.css-1ubhc2b .slider-frame{overflow:visible!important;}.css-1ubhc2b .slider-control-bottomcenter ul{top:4rem!important;}.css-1ubhc2b .slider-control-bottomcenter .paging-item{padding:0 6px;}.css-1ubhc2b .slider-control-bottomcenter .paging-item svg{width:100%;height:100%;fill:#C4C4C4;}.css-1ubhc2b .slider-control-bottomcenter .paging-item.active svg{fill:#372BC5;}.css-1ubhc2b .slider-control-bottomcenter .paging-item button{width:0.8rem;height:0.8rem;}@media screen and (min-width: 62em){.css-1ubhc2b{width:calc(100% + 20px);}}@media screen and (max-width: 62em){.css-1ubhc2b{margin-bottom:4rem;}}.css-1ubhc2b .slider-container{width:100%;}.css-1ubhc2b.carousel-controls-after{position:relative;}.css-1ubhc2b.carousel-controls-after .slide>div>div>div>div{margin-bottom:80px;}.css-1ubhc2b.carousel-controls-after .slider-container+div{position:absolute;top:680px;}@media (width <= 768px){.css-1ubhc2b.carousel-controls-after .slider-container+div{top:385px;}}</style><div overflow="visible" class="css-1ubhc2b"><div class="slider-container" style="position:relative"><div aria-live="polite" aria-atomic="true" style="position:absolute;width:1px;height:1px;overflow:hidden;padding:0;margin:-1px;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" tabindex="-1">
1442Slide 1 of 3</div><div style="align-items:center;justify-content:flex-start;position:absolute;display:flex;z-index:1;top:0;left:0;bottom:0;right:0;pointer-events:none"><div class="slider-control-centerleft" style="pointer-events:auto"></div></div><div style="align-items:center;justify-content:flex-end;position:absolute;display:flex;z-index:1;top:0;left:0;bottom:0;right:0;pointer-events:none"><div class="slider-control-centerright" style="pointer-events:auto"></div></div><div style="align-items:flex-end;justify-content:center;position:absolute;display:flex;z-index:1;top:0;left:0;bottom:0;right:0;pointer-events:none"><div class="slider-control-bottomcenter" style="pointer-events:auto"></div></div><div class="slider-frame" style="overflow:hidden;width:100%;position:relative;outline:none;touch-action:pan-y;height:auto;transition:height 300ms ease-in-out;will-change:height;user-select:none" aria-label="carousel-slider" role="region" tabindex="-1"><div class="slider-list" style="width:300%;text-align:left;user-select:auto;display:flex"><div class="slide slide-current slide-visible" style="width:33.333333333333336%;height:auto;padding:0 0px;transition:500ms ease 0s;transform:scale(1);opacity:1"><style data-emotion="css 1herucy">.css-1herucy{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;transition-delay:0s;-webkit-transition:opacity 0.2s ease;transition:opacity 0.2s ease;opacity:1;}</style><div class="css-1herucy"><style data-emotion="css 1l6sxpd">.css-1l6sxpd{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-right:0px;width:100%;max-width:100%;}</style><div class="css-1l6sxpd"><style data-emotion="css 1ugq6eo">.css-1ugq6eo{position:relative;width:100%;overflow-y:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}.css-1ugq6eo a[href]:not(.chakra-linkbox__overlay),.css-1ugq6eo abbr[title]{position:relative;z-index:1;}@media screen and (min-width: 62em){.css-1ugq6eo{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;}}.css-1ugq6eo:focus,.css-1ugq6eo[data-focus]{outline:2px solid transparent;outline-offset:2px;}.css-1ugq6eo:focus-visible,.css-1ugq6eo[data-focus-visible]{outline-color:var(--chakra-colors-black);outline-offset:4px;outline:2px solid;box-shadow:var(--chakra-shadows-none);}</style><article role="group" class="chakra-linkbox css-1ugq6eo"><style data-emotion="css dwxywt">.css-dwxywt{position:relative;background-color:var(--chakra-colors-transparent);border-radius:2rem;max-height:625px;width:100%;}.css-dwxywt>*:not(style){overflow:hidden;position:absolute;top:0px;right:0px;bottom:0px;left:0px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;height:100%;}.css-dwxywt>img,.css-dwxywt>video{object-fit:cover;}.css-dwxywt::before{height:0px;content:"";display:block;padding-bottom:100%;}@media screen and (min-width: 62em){.css-dwxywt{width:80%;}}[role=group]:hover .css-dwxywt,[role=group][data-hover] .css-dwxywt,[data-group]:hover .css-dwxywt,[data-group][data-hover] .css-dwxywt,.group:hover .css-dwxywt,.group[data-hover] .css-dwxywt{--chakra-scale-x:1.1;--chakra-scale-y:1.1;}</style><div class="chakra-aspect-ratio css-dwxywt"><img alt="" loading="lazy" decoding="async" data-nimg="fill" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;object-fit:cover;color:transparent;border-radius:0.75rem;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' %3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'
1442/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='xMidYMid slice' style='filter: url(%23b);' href='https://www.knowit.se/globalassets/for-local-sites/sweden/test-blocks/test-images/trendrapport-knowit-high-1080x1080.webp?width=10'/%3E%3C/svg%3E")" sizes=" 1443 (max-width: 48em) 100vw, 1444 (max-width: 62em) 100vw, 1445 680px 1446 " srcSet="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Ftrendrapport-knowit-high-1080x1080.webp&w=640&q=75 640w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Ftrendrapport-knowit-high-1080x1080.webp&w=750&q=75 750w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Ftrendrapport-knowit-high-1080x1080.webp&w=828&q=75 828w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Ftrendrapport-knowit-high-1080x1080.webp&w=1080&q=75 1080w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Ftrendrapport-knowit-high-1080x1080.webp&w=1200&q=75 1200w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Ftrendrapport-knowit-high-1080x1080.webp&w=1920&q=75 1920w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Ftrendrapport-knowit-high-1080x1080.webp&w=2048&q=75 2048w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Ftrendrapport-knowit-high-1080x1080.webp&w=3840&q=75 3840w" src="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Ftrendrapport-knowit-high-1080x1080.webp&w=3840&q=75"/></div><style data-emotion="css wbp8lz">.css-wbp8lz{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:0.5rem;max-width:494px;padding:48px 16px 48px 0px;}@media screen and (min-width: 48em){.css-wbp8lz{padding:48px 16px 48px 56px;}}</style><div class="chakra-stack css-wbp8lz"><style data-emotion="css 1w70z8g">.css-1w70z8g{font-family:var(--chakra-fonts-heading);line-height:2rem;font-weight:var(--chakra-fontWeights-normal);font-size:var(--chakra-fontSizes-6-5);}@media screen and (min-width: 48em){.css-1w70z8g{line-height:var(--chakra-lineHeights-4-5xl);font-size:var(--chakra-fontSizes-3xl);}}</style><h2 class="chakra-heading css-1w70z8g"><style data-emotion="css 1h5w00s">.css-1h5w00s{position:static;z-index:10;}.css-1h5w00s::before{content:'';cursor:inherit;display:block;position:absolute;top:0px;left:0px;z-index:0;width:100%;height:100%;}.css-1h5w00s:focus,.css-1h5w00s[data-focus]{outline:2px solid transparent;outline-offset:2px;}.css-1h5w00s:focus-visible,.css-1h5w00s[data-focus-visible]{outline-color:var(--chakra-colors-black);outline-offset:2px;outline:2px solid;box-shadow:var(--chakra-shadows-none);display:inline-block;}.css-1h5w00s:hover,.css-1h5w00s[data-hover]{-webkit-text-decoration:underline;text-decoration:underline;}</style><a class="chakra-linkbox__overlay css-1h5w00s" href="/kampanjer/redo-for-det-ovantade/">Redo för det oväntade?</a></h2><style data-emotion="css f061fw">.css-f061fw{font-size:var(--chakra-fontSizes-sm);line-height:var(--chakra-lineHeights-lg);}@media screen and (min-width: 48em){.css-f061fw{font-size:var(--chakra-fontSizes-lg);line-height:var(--chakra-lineHeights-2xl);}}</style><p class="chakra-text css-f061fw">Strategierna finns. Planerna är skrivna. ÃndÃ¥ tvivlar nästan hälften av svenska företag pÃ¥ sin förmÃ¥ga att hantera en digital kris. Vi har undersökt hur det ser ut.</p><style data-emotion="css 18bct4s">.css-18bct4s{width:1em;height:1em;display:inline-block;line-height:1em;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;color:currentColor;vertical-align:middle;margin-top:0px;-webkit-transition:0.3s ease;transition:0.3s ease;font-size:var(--chakra-fontSizes-xs);}@media screen and (min-width: 48em){.css-18bct4s{margin-top:var(--chakra-space-2);font-size:var(--chakra-fontSizes-md);}}[role=group]:hover .css-18bct4s,[role=group][data-hover] .css-18bct4s,[data-group]:hover .css-18bct4s,[data-group][data-hover] .css-18bct4s,.group:hover .css-18bct4s,.group[data-hover] .css-18bct4s{-webkit-transform:translateX(0.25rem);-moz-transform:translateX(0.25rem);-ms-transform:translateX(0.25rem);transform:translateX(0.25rem);}</style><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-18bct4s" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div></article></div></div></div><div class="slide slide-visible" style="width:33.333333333333336%;height:auto;padding:0 0px;transition:500ms ease 0s;transform:scale(0.85);opacity:1"><div class="css-1herucy"><div class="css-1l6sxpd"><article role="group" class="chakra-linkbox css-1ugq6eo"><div class="chakra-aspect-ratio css-dwxywt"><img alt="" loading="lazy" decoding="async" data-nimg="fill" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;object-fit:cover;color:transparent;border-radius:0.75rem;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' %3E%3Cfilter id='b' color-interpolation-filters='
1446sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='xMidYMid slice' style='filter: url(%23b);' href='https://www.knowit.se/globalassets/for-local-sites/sweden/test-blocks/test-images/eye-high-1080x1080.webp?width=10'/%3E%3C/svg%3E")" sizes=" 1447 (max-width: 48em) 100vw, 1448 (max-width: 62em) 100vw, 1449 680px 1450 " srcSet="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Feye-high-1080x1080.webp&w=640&q=75 640w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Feye-high-1080x1080.webp&w=750&q=75 750w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Feye-high-1080x1080.webp&w=828&q=75 828w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Feye-high-1080x1080.webp&w=1080&q=75 1080w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Feye-high-1080x1080.webp&w=1200&q=75 1200w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Feye-high-1080x1080.webp&w=1920&q=75 1920w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Feye-high-1080x1080.webp&w=2048&q=75 2048w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Feye-high-1080x1080.webp&w=3840&q=75 3840w" src="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Feye-high-1080x1080.webp&w=3840&q=75"/></div><div class="chakra-stack css-wbp8lz"><h2 class="chakra-heading css-1w70z8g"><a class="chakra-linkbox__overlay css-1h5w00s" href="https://www.knowit.eu/kamp/asweknowit/">Changing the world as we know it</a></h2><p class="chakra-text css-f061fw">At Knowit, we donât do things halfway. We develop high-quality solutions â ready for the unexpected. Letâs talk about how we can grow your business. </p><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-18bct4s" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div></article></div></div></div><div class="slide slide-visible" style="width:33.333333333333336%;height:auto;padding:0 0px;transition:500ms ease 0s;transform:scale(0.85);opacity:1"><div class="css-1herucy"><div class="css-1l6sxpd"><article role="group" class="chakra-linkbox css-1ugq6eo"><div class="chakra-aspect-ratio css-dwxywt"><img alt="" loading="lazy" decoding="async" data-nimg="fill" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;object-fit:cover;color:transparent;border-radius:0.75rem;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' %3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'
1450/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='xMidYMid slice' style='filter: url(%23b);' href='https://www.knowit.se/globalassets/for-local-sites/sweden/test-blocks/test-images/mockup-scorecardtest-800x800.webp?width=10'/%3E%3C/svg%3E")" sizes=" 1451 (max-width: 48em) 100vw, 1452 (max-width: 62em) 100vw, 1453 680px 1454 " srcSet="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Fmockup-scorecardtest-800x800.webp&w=640&q=75 640w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Fmockup-scorecardtest-800x800.webp&w=750&q=75 750w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Fmockup-scorecardtest-800x800.webp&w=828&q=75 828w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Fmockup-scorecardtest-800x800.webp&w=1080&q=75 1080w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Fmockup-scorecardtest-800x800.webp&w=1200&q=75 1200w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Fmockup-scorecardtest-800x800.webp&w=1920&q=75 1920w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Fmockup-scorecardtest-800x800.webp&w=2048&q=75 2048w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Fmockup-scorecardtest-800x800.webp&w=3840&q=75 3840w" src="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Fmockup-scorecardtest-800x800.webp&w=3840&q=75"/></div><div class="chakra-stack css-wbp8lz"><h2 class="chakra-heading css-1w70z8g"><a class="chakra-linkbox__overlay css-1h5w00s" href="https://knowit-ai-scorecard-se.netlify.app/">Hur mogen är er AI-satsning?</a></h2><p class="chakra-text css-f061fw">Steget frÃ¥n PowerPoint till produktion är längre än det ser ut. Det krävs ett tydligt arbetssätt, en genomtänkt strategi och rätt prioriteringar. Med vÃ¥rt AI-maturity test fÃ¥r ni en konkret bild av var ni stÃ¥r, var möjligheterna finns och vad som krävs för att ta nästa steg. Testet tar nÃ¥gra minuter â gör det idag och fÃ¥ insikter ni kan agera pÃ¥ direkt.</p><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-18bct4s" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div></article></div></div></div></div></div></div><style data-emotion="css 1ebv2j2">.css-1ebv2j2{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;gap:0.5rem;z-index:4;position:relative;float:right;font-size:var(--chakra-fontSizes-md);}</style><div class="chakra-stack css-1ebv2j2"><style data-emotion="css 1e77ydo">.css-1e77ydo{line-height:var(--chakra-lineHeights-lg);font-size:var(--chakra-fontSizes-xl);margin-right:var(--chakra-space-2);}@media screen and (min-width: 48em){.css-1e77ydo{line-height:var(--chakra-lineHeights-xl);}}</style><p class="chakra-text css-1e77ydo">01 <style data-emotion="css 1245qys">.css-1245qys{line-height:var(--chakra-lineHeights-lg);color:var(--chakra-colors-brand-disabled);font-size:var(--chakra-fontSizes-xl);}@media screen and (min-width: 48em){.css-1245qys{line-height:var(--chakra-lineHeights-xl);}}</style><span class="chakra-text css-1245qys">/ <!-- -->03</span></p><style data-emotion="css g39x4q">.css-g39x4q{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;appearance:none;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;
1454-webkit-justify-content:center;justify-content:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;white-space:nowrap;vertical-align:middle;outline:2px solid transparent;outline-offset:2px;line-height:var(--chakra-lineHeights-lg);border-radius:8px;font-weight:var(--chakra-fontWeights-normal);transition-property:var(--chakra-transition-property-common);transition-duration:var(--chakra-transition-duration-normal);border:var(--chakra-borders-none);variant:primary;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;-webkit-transition:0.3s ease;transition:0.3s ease;height:auto;min-width:var(--chakra-sizes-8);font-size:var(--chakra-fontSizes-xs);-webkit-padding-start:0px;padding-inline-start:0px;-webkit-padding-end:0px;padding-inline-end:0px;padding-top:var(--chakra-space-2);padding-bottom:var(--chakra-space-1);background:var(--chakra-colors-transparent);color:inherit;border-bottom:1px solid transparent;}@media screen and (min-width: 48em){.css-g39x4q{line-height:var(--chakra-lineHeights-xl);font-size:var(--chakra-fontSizes-sm);}}.css-g39x4q:disabled,.css-g39x4q[disabled],.css-g39x4q[aria-disabled=true],.css-g39x4q[data-disabled]{opacity:0.2;cursor:pointer;box-shadow:var(--chakra-shadows-none);background-color:var(--chakra-colors-brand-bg5);}.css-g39x4q:hover,.css-g39x4q[data-hover]{-webkit-text-decoration:none;text-decoration:none;}.css-g39x4q:hover:disabled,.css-g39x4q[data-hover]:disabled,.css-g39x4q:hover[disabled],.css-g39x4q[data-hover][disabled],.css-g39x4q:hover[aria-disabled=true],.css-g39x4q[data-hover][aria-disabled=true],.css-g39x4q:hover[data-disabled],.css-g39x4q[data-hover][data-disabled]{background:initial;background-color:var(--chakra-colors-brand-bg5);opacity:0.2;}.css-g39x4q:focus,.css-g39x4q[data-focus]{outline:2px solid transparent;outline-offset:2px;}.css-g39x4q:focus-visible,.css-g39x4q[data-focus-visible]{outline-color:var(--chakra-colors-black);outline-offset:2px;outline:2px solid;box-shadow:var(--chakra-shadows-none);}</style><button type="button" class="chakra-button css-g39x4q" disabled=""><span class="css-idkz9h">Back</span><style data-emotion="css 1mq7r8k">.css-1mq7r8k{width:1em;height:1em;display:inline-block;line-height:1em;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;color:var(--chakra-colors-black);vertical-align:middle;font-size:1.4em;-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg);}</style><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-1mq7r8k" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></button><style data-emotion="css ns1nfx">.css-ns1nfx{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;appearance:none;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;white-space:nowrap;vertical-align:middle;outline:2px solid transparent;outline-offset:2px;line-height:var(--chakra-lineHeights-lg);border-radius:8px;font-weight:var(--chakra-fontWeights-normal);transition-property:var(--chakra-transition-property-common);transition-duration:var(--chakra-transition-duration-normal);border:var(--chakra-borders-none);variant:primary;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;-webkit-transition:0.3s ease;transition:0.3s ease;height:auto;min-width:var(--chakra-sizes-8);font-size:var(--chakra-fontSizes-xs);-webkit-padding-start:0px;padding-inline-start:0px;-webkit-padding-end:0px;padding-inline-end:0px;padding-top:var(--chakra-space-1);padding-bottom:var(--chakra-space-1);background:var(--chakra-colors-transparent);color:inherit;border-bottom:1px solid transparent;padding:0px;}@media screen and (min-width: 48em){.css-ns1nfx{line-height:var(--chakra-lineHeights-xl);font-size:var(--chakra-fontSizes-sm);}}.css-ns1nfx:disabled,.css-ns1nfx[disabled],.css-ns1nfx[aria-disabled=true],.css-ns1nfx[data-disabled]{opacity:0.2;cursor:pointer;box-shadow:var(--chakra-shadows-none);background-color:var(--chakra-colors-brand-bg5);}.css-ns1nfx:hover,.css-ns1nfx[data-hover]{-webkit-text-decoration:none;text-decoration:none;}.css-ns1nfx:hover:disabled,.css-ns1nfx[data-hover]:disabled,.css-ns1nfx:hover[disabled],.css-ns1nfx[data-hover][disabled],.css-ns1nfx:hover[aria-disabled=true],.css-ns1nfx[data-hover][aria-disabled=true],.css-ns1nfx:hover[data-disabled],.css-ns1nfx[data-hover][data-disabled]{background:initial;background-color:var(--chakra-colors-brand-bg5);opacity:0.2;}.css-ns1nfx:focus,.css-ns1nfx[data-focus]{outline:2px solid transparent;outline-offset:2px;}.css-ns1nfx:focus-visible,.css-ns1nfx[data-focus-visible]{outline-color:var(--chakra-colors-black);outline-offset:2px;outline:2px solid;box-shadow:var(--chakra-shadows-none);}</style><button type="button" class="chakra-button css-ns1nfx"><span class="css-idkz9h">Next</span><style data-emotion="css 1b80q4u">.css-1b80q4u{width:1em;height:1em;display:inline-block;line-height:1em;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;color:var(--chakra-colors-black);vertical-align:middle;font-size:1.4em;}</style><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-1b80q4u" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></button></div></div></div></div></div></section><section class="CaseListingBlock css-0"><style data-emotion="css 7iaepa">.css-7iaepa{opacity:1;background:var(--chakra-colors-brand-case);border-radius:0px;}</style><div class="css-7iaepa"><div class="css-1bbe9dr"><style data-emotion="css w0s7sf">.css-w0s7sf{padding-right:20px;padding-left:20px;margin:0 auto;height:100%;z-index:3;position:unset;max-width:calc(1150px + 40px);padding-bottom:var(--chakra-space-12);padding-top:var(--chakra-space-12);}@media screen and (min-width: 48em){.css-w0s7sf{padding-bottom:var(--chakra-space-20);padding-top:var(--chakra-space-20);}}</style><div class="css-w0s7sf"><style data-emotion="css uqh2vk">
1454.css-uqh2vk{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:var(--chakra-space-10);width:100%;}</style><div class="chakra-stack css-uqh2vk"><style data-emotion="css 8atqhb">.css-8atqhb{width:100%;}</style><div class="css-8atqhb"><style data-emotion="css 2jgdd6">.css-2jgdd6{position:relative;border-radius:32px;width:100%;}.css-2jgdd6 a[href]:not(.chakra-linkbox__overlay),.css-2jgdd6 abbr[title]{position:relative;z-index:1;}</style><article role="group" class="chakra-linkbox css-2jgdd6"><style data-emotion="css 189zp68">.css-189zp68{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:var(--chakra-space-2);width:100%;margin-bottom:var(--chakra-space-4);}</style><div class="chakra-stack css-189zp68"><style data-emotion="css qd8ok0">.css-qd8ok0{position:relative;background-color:var(--chakra-colors-transparent);border-radius:2rem;max-height:720px;}.css-qd8ok0>*:not(style){overflow:hidden;position:absolute;top:0px;right:0px;bottom:0px;left:0px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;height:100%;}.css-qd8ok0>img,.css-qd8ok0>video{object-fit:cover;}.css-qd8ok0::before{height:0px;content:"";display:block;padding-bottom:56.25%;}</style><div class="chakra-aspect-ratio css-qd8ok0"><img alt="" loading="lazy" decoding="async" data-nimg="fill" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;object-fit:cover;color:transparent;border-radius:0.75rem;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' %3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='xMidYMid slice' style='filter: url(%23b);' href='https://www.knowit.se/globalassets/for-local-sites/sweden/test-blocks/test-images/kappahl-start-1725x969.webp?width=10'/%3E%3C/svg%3E")" sizes=" 1455 (max-width: 48em) 100vw, 1456 (max-width: 62em) 100vw, 1457 1150px 1458 " srcSet="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Fkappahl-start-1725x969.webp&w=640&q=75 640w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Fkappahl-start-1725x969.webp&w=750&q=75 750w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Fkappahl-start-1725x969.webp&w=828&q=75 828w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Fkappahl-start-1725x969.webp&w=1080&q=75 1080w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Fkappahl-start-1725x969.webp&w=1200&q=75 1200w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Fkappahl-start-1725x969.webp&w=1920&q=75 1920w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Fkappahl-start-1725x969.webp&w=2048&q=75 2048w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Fkappahl-start-1725x969.webp&w=3840&q=75 3840w" src="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Ffor-local-sites%2Fsweden%2Ftest-blocks%2Ftest-images%2Fkappahl-start-1725x969.webp&w=3840&q=75"/></div><style data-emotion="css 1bx6qgl">.css-1bx6qgl{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-top:var(--chakra-space-2);-webkit-box-pack:justify;
1458-webkit-justify-content:space-between;justify-content:space-between;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}</style><div class="css-1bx6qgl"><style data-emotion="css k008qs">.css-k008qs{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}</style><div class="css-k008qs"><style data-emotion="css n0kerw">.css-n0kerw{font-size:var(--chakra-fontSizes-3xs);line-height:var(--chakra-lineHeights-3xs);letter-spacing:1.68px;text-transform:uppercase;}@media screen and (min-width: 48em){.css-n0kerw{font-size:var(--chakra-fontSizes-2xs);line-height:var(--chakra-lineHeights-xs);}}</style><p class="chakra-text css-n0kerw">Kappahl Group</p></div><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-18bct4s" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div><style data-emotion="css uabxse">.css-uabxse{font-family:var(--chakra-fonts-heading);line-height:var(--chakra-lineHeights-xl);font-weight:var(--chakra-fontWeights-normal);font-size:var(--chakra-fontSizes-2xl);-webkit-transition:0.3s ease;transition:0.3s ease;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;}@media screen and (min-width: 48em){.css-uabxse{line-height:var(--chakra-lineHeights-5xl);font-size:var(--chakra-fontSizes-6xl);}}[role=group]:hover .css-uabxse,[role=group][data-hover] .css-uabxse,[data-group]:hover .css-uabxse,[data-group][data-hover] .css-uabxse,.group:hover .css-uabxse,.group[data-hover] .css-uabxse{border-color:inherit;}</style><h2 class="chakra-heading css-uabxse"><a class="chakra-linkbox__overlay css-1h5w00s" href="/kunder/ai-agenten-som-ger-kappahl-group-ett-forsprang-i-flodet/">AI-agenten som ger Kappahl Group ett försprång i flödet</a></h2></div></article></div><style data-emotion="css v2ebsb">.css-v2ebsb{max-width:100%;width:100%;position:relative;}.css-v2ebsb .slider-frame{overflow:hidden!important;}.css-v2ebsb .slider-control-bottomcenter ul{top:4rem!important;}.css-v2ebsb .slider-control-bottomcenter .paging-item{padding:0 6px;}.css-v2ebsb .slider-control-bottomcenter .paging-item svg{width:100%;height:100%;fill:#C4C4C4;}.css-v2ebsb .slider-control-bottomcenter .paging-item.active svg{fill:#372BC5;}.css-v2ebsb .slider-control-bottomcenter .paging-item button{width:0.8rem;height:0.8rem;}@media screen and (min-width: 62em){.css-v2ebsb{width:calc(100% + 20px);}}@media screen and (max-width: 62em){.css-v2ebsb{margin-bottom:4rem;}}.css-v2ebsb .slider-container{width:100%;}.css-v2ebsb.carousel-controls-after{position:relative;}.css-v2ebsb.carousel-controls-after .slide>div>div>div>div{margin-bottom:80px;}.css-v2ebsb.carousel-controls-after .slider-container+div{position:absolute;top:680px;}@media (width <= 768px){.css-v2ebsb.carousel-controls-after .slider-container+div{top:385px;}}</style><div overflow="hidden" class="css-v2ebsb"><div class="slider-container" style="position:relative"><div aria-live="polite" aria-atomic="true" style="position:absolute;width:1px;height:1px;overflow:hidden;padding:0;margin:-1px;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" tabindex="-1">Slide 1 of 16</div><div class="slider-frame" style="overflow:hidden;width:100%;position:relative;outline:none;touch-action:pan-y;height:auto;transition:height 300ms ease-in-out;will-change:height;user-select:none" aria-label="carousel-slider" role="region" tabindex="-1"><div class="slider-list" style="width:1333.3333333333335%;text-align:left;user-select:auto;display:flex"><div class="slide slide-current slide-visible" style="width:6.25%;height:auto;padding:0 0px;opacity:1"><style data-emotion="css gds9a0">.css-gds9a0{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;transition-delay:0s;opacity:1;}</style><div class="css-gds9a0"><style data-emotion="css 11uxmi8">.css-11uxmi8{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-right:20px;width:100%;max-width:100%;}</style><div class="css-11uxmi8"><style data-emotion="css 1isv5wi">.css-1isv5wi{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex:1 1 calc(50% - 20px);-ms-flex:1 1 calc(50% - 20px);flex:1 1 calc(50% - 20px);}</style><div class="css-1isv5wi"><article role="group" class="chakra-linkbox css-2jgdd6"><style data-emotion="css 1nqar3d">.css-1nqar3d{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:var(--chakra-space-2);width:100%;margin-bottom:0px;}</style><div class="chakra-stack css-1nqar3d"><div class="chakra-aspect-ratio css-qd8ok0"><img alt="" loading="lazy" decoding="async" data-nimg="fill" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;object-fit:cover;color:transparent;border-radius:0.75rem;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' %3E%3Cfilter id='b' color-interpolation-filters='
1458sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='xMidYMid slice' style='filter: url(%23b);' href='https://www.knowit.se/globalassets/case/insight/anonymous-clients/powerplant-1920x1080.jpg?width=10'/%3E%3C/svg%3E")" sizes=" 1459 (max-width: 48em) 100vw, 1460 (max-width: 62em) 100vw, 1461 580px 1462 " srcSet="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fanonymous-clients%2Fpowerplant-1920x1080.jpg&w=640&q=75 640w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fanonymous-clients%2Fpowerplant-1920x1080.jpg&w=750&q=75 750w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fanonymous-clients%2Fpowerplant-1920x1080.jpg&w=828&q=75 828w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fanonymous-clients%2Fpowerplant-1920x1080.jpg&w=1080&q=75 1080w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fanonymous-clients%2Fpowerplant-1920x1080.jpg&w=1200&q=75 1200w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fanonymous-clients%2Fpowerplant-1920x1080.jpg&w=1920&q=75 1920w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fanonymous-clients%2Fpowerplant-1920x1080.jpg&w=2048&q=75 2048w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fanonymous-clients%2Fpowerplant-1920x1080.jpg&w=3840&q=75 3840w" src="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fanonymous-clients%2Fpowerplant-1920x1080.jpg&w=3840&q=75"/></div><div class="css-1bx6qgl"><div class="css-k008qs"><p class="chakra-text css-n0kerw">Anonym kund</p></div><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-18bct4s" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div><style data-emotion="css eim6vu">.css-eim6vu{font-family:var(--chakra-fonts-heading);font-size:var(--chakra-fontSizes-5);line-height:var(--chakra-lineHeights-xl);font-weight:400;-webkit-transition:0.3s ease;transition:0.3s ease;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;}@media screen and (min-width: 48em){.css-eim6vu{font-size:var(--chakra-fontSizes-2-5xl);line-height:var(--chakra-lineHeights-3xl);}}[role=group]:hover .css-eim6vu,[role=group][data-hover] .css-eim6vu,[data-group]:hover .css-eim6vu,[data-group][data-hover] .css-eim6vu,.group:hover .css-eim6vu,.group[data-hover] .css-eim6vu{border-color:inherit;}</style><h2 class="chakra-heading css-eim6vu"><a class="chakra-linkbox__overlay css-1h5w00s" href="/kunder/ai-driven-bevakning-av-kritisk-infrastruktur/">AI-driven bevakning av kritisk infrastruktur</a></h2></div></article></div></div></div></div><div class="slide slide-visible" style="width:6.25%;height:auto;padding:0 0px;opacity:1"><div class="css-gds9a0"><div class="css-11uxmi8"><div class="css-1isv5wi"><article role="group" class="chakra-linkbox css-2jgdd6"><div class="chakra-stack css-1nqar3d"><div class="chakra-aspect-ratio css-qd8ok0"><img alt="" loading="lazy" decoding="async" data-nimg="fill" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;object-fit:cover;color:transparent;border-radius:0.75rem;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' %3E%3Cfilter id='b' color-interpolation-filters='
1462sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='xMidYMid slice' style='filter: url(%23b);' href='https://www.knowit.se/globalassets/case/insight/delaval/cows-800x450.jpg?width=10'/%3E%3C/svg%3E")" sizes=" 1463 (max-width: 48em) 100vw, 1464 (max-width: 62em) 100vw, 1465 580px 1466 " srcSet="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fdelaval%2Fcows-800x450.jpg&w=640&q=75 640w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fdelaval%2Fcows-800x450.jpg&w=750&q=75 750w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fdelaval%2Fcows-800x450.jpg&w=828&q=75 828w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fdelaval%2Fcows-800x450.jpg&w=1080&q=75 1080w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fdelaval%2Fcows-800x450.jpg&w=1200&q=75 1200w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fdelaval%2Fcows-800x450.jpg&w=1920&q=75 1920w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fdelaval%2Fcows-800x450.jpg&w=2048&q=75 2048w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fdelaval%2Fcows-800x450.jpg&w=3840&q=75 3840w" src="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fdelaval%2Fcows-800x450.jpg&w=3840&q=75"/></div><div class="css-1bx6qgl"><div class="css-k008qs"><p class="chakra-text css-n0kerw">DeLaval</p></div><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-18bct4s" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div><h2 class="chakra-heading css-eim6vu"><a class="chakra-linkbox__overlay css-1h5w00s" href="/kunder/fran-hardvara-och-mjukvara-till-integrerade-losningar--att-realisera-transformation-i-industribolag/">FrÃ¥n hÃ¥rdvara och mjukvara till integrerade lösningar â att realisera transformation i industribolag</a></h2></div></article></div></div></div></div><div class="slide slide-visible" style="width:6.25%;height:auto;padding:0 0px;opacity:1"><div class="css-gds9a0"><div class="css-11uxmi8"><div class="css-1isv5wi"><article role="group" class="chakra-linkbox css-2jgdd6"><div class="chakra-stack css-1nqar3d"><div class="chakra-aspect-ratio css-qd8ok0"><img alt="" loading="lazy" decoding="async" data-nimg="fill" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;object-fit:cover;color:transparent;border-radius:0.75rem;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' %3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='xMidYMid slice' style='filter: url(%23b);' href='https://www.knowit.se/globalassets/case/insight/alfa-sko/alfa-sko-hero-800x450.jpg?width=10'/%3E%3C/svg%3E")" sizes=" 1467 (max-width: 48em) 100vw, 1468 (max-width: 62em) 100vw, 1469 580px 1470 " srcSet="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Falfa-sko%2Falfa-sko-hero-800x450.jpg&w=640&q=75 640w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Falfa-sko%2Falfa-sko-hero-800x450.jpg&w=750&q=75 750w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Falfa-sko%2Falfa-sko-hero-800x450.jpg&w=828&q=75 828w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Falfa-sko%2Falfa-sko-hero-800x450.jpg&w=1080&q=75 1080w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Falfa-sko%2Falfa-sko-hero-800x450.jpg&w=1200&q=75 1200w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Falfa-sko%2Falfa-sko-hero-800x450.jpg&w=1920&q=75 1920w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Falfa-sko%2Falfa-sko-hero-800x450.jpg&w=2048&q=75 2048w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Falfa-sko%2Falfa-sko-hero-800x450.jpg&w=3840&q=75 3840w" src="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Falfa-sko%2Falfa-sko-hero-800x450.jpg&w=3840&q=75"/></div><div class="css-1bx6qgl"><div class="css-k008qs"><p class="chakra-text css-n0kerw">Alfa Sko</p></div><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-18bct4s" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div><h2 class="chakra-heading css-eim6vu"><a class="chakra-linkbox__overlay css-1h5w00s" href="/kunder/erp-plattform-for-alfa-sko/">Knowit hjälpte Alfa Sko välja rätt ERP för framtida tillväxt</a></h2></div></article></div></div></div></div><div class="slide slide-visible" style="width:6.25%;height:auto;padding:0 0px;opacity:1"><div class="css-gds9a0"><div class="css-11uxmi8"><div class="css-1isv5wi"><article role="group" class="chakra-linkbox css-2jgdd6"><div class="chakra-stack css-1nqar3d"><div class="chakra-aspect-ratio css-qd8ok0"><img alt="" loading="lazy" decoding="async" data-nimg="fill" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;object-fit:cover;color:transparent;border-radius:0.75rem;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' %3E%3Cfilter id='b' color-interpolation-filters='
1470sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='xMidYMid slice' style='filter: url(%23b);' href='https://www.knowit.se/globalassets/case/experience/bewi-raw/bewi-high-800x450.jpg?width=10'/%3E%3C/svg%3E")" sizes=" 1471 (max-width: 48em) 100vw, 1472 (max-width: 62em) 100vw, 1473 580px 1474 " srcSet="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fbewi-raw%2Fbewi-high-800x450.jpg&w=640&q=75 640w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fbewi-raw%2Fbewi-high-800x450.jpg&w=750&q=75 750w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fbewi-raw%2Fbewi-high-800x450.jpg&w=828&q=75 828w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fbewi-raw%2Fbewi-high-800x450.jpg&w=1080&q=75 1080w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fbewi-raw%2Fbewi-high-800x450.jpg&w=1200&q=75 1200w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fbewi-raw%2Fbewi-high-800x450.jpg&w=1920&q=75 1920w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fbewi-raw%2Fbewi-high-800x450.jpg&w=2048&q=75 2048w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fbewi-raw%2Fbewi-high-800x450.jpg&w=3840&q=75 3840w" src="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fbewi-raw%2Fbewi-high-800x450.jpg&w=3840&q=75"/></div><div class="css-1bx6qgl"><div class="css-k008qs"><p class="chakra-text css-n0kerw">BEWI RAW</p></div><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-18bct4s" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div><h2 class="chakra-heading css-eim6vu"><a class="chakra-linkbox__overlay css-1h5w00s" href="/kunder/bewi-raw-nya-webb-lanserades-rekordsnabbt-med-ai-native-arbetssatt/">BEWI RAW nya webb lanserades rekordsnabbt med AI-native arbetssätt</a></h2></div></article></div></div></div></div><div class="slide slide-visible" style="width:6.25%;height:auto;padding:0 0px;opacity:1"><div class="css-gds9a0"><div class="css-11uxmi8"><div class="css-1isv5wi"><article role="group" class="chakra-linkbox css-2jgdd6"><div class="chakra-stack css-1nqar3d"><div class="chakra-aspect-ratio css-qd8ok0"><img alt="" loading="lazy" decoding="async" data-nimg="fill" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;object-fit:cover;color:transparent;border-radius:0.75rem;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' %3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='xMidYMid slice' style='filter: url(%23b);' href='https://www.knowit.se/globalassets/case/products/ica-forsakring/ica-forsakring-high-800x450.jpg?width=10'/%3E%3C/svg%3E")" sizes=" 1475 (max-width: 48em) 100vw, 1476 (max-width: 62em) 100vw, 1477 580px 1478 " srcSet="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fproducts%2Fica-forsakring%2Fica-forsakring-high-800x450.jpg&w=640&q=75 640w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fproducts%2Fica-forsakring%2Fica-forsakring-high-800x450.jpg&w=750&q=75 750w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fproducts%2Fica-forsakring%2Fica-forsakring-high-800x450.jpg&w=828&q=75 828w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fproducts%2Fica-forsakring%2Fica-forsakring-high-800x450.jpg&w=1080&q=75 1080w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fproducts%2Fica-forsakring%2Fica-forsakring-high-800x450.jpg&w=1200&q=75 1200w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fproducts%2Fica-forsakring%2Fica-forsakring-high-800x450.jpg&w=1920&q=75 1920w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fproducts%2Fica-forsakring%2Fica-forsakring-high-800x450.jpg&w=2048&q=75 2048w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fproducts%2Fica-forsakring%2Fica-forsakring-high-800x450.jpg&w=3840&q=75 3840w" src="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fproducts%2Fica-forsakring%2Fica-forsakring-high-800x450.jpg&w=3840&q=75"/></div><div class="css-1bx6qgl"><div class="css-k008qs"><p class="chakra-text css-n0kerw">ICA Försäkring</p></div><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-18bct4s" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div><h2 class="chakra-heading css-eim6vu"><a class="chakra-linkbox__overlay css-1h5w00s" href="/kunder/sa-h
1478anterar-ica-forsakring-over-en-miljard-kronor-i-premievolym/">SÃ¥ hanterar Ica Försäkring över en miljard kronor i premievolym </a></h2></div></article></div></div></div></div><div class="slide slide-visible" style="width:6.25%;height:auto;padding:0 0px;opacity:1"><div class="css-gds9a0"><div class="css-11uxmi8"><div class="css-1isv5wi"><article role="group" class="chakra-linkbox css-2jgdd6"><div class="chakra-stack css-1nqar3d"><div class="chakra-aspect-ratio css-qd8ok0"><img alt="" loading="lazy" decoding="async" data-nimg="fill" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;object-fit:cover;color:transparent;border-radius:0.75rem;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' %3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='xMidYMid slice' style='filter: url(%23b);' href='https://www.knowit.se/globalassets/case/insight/boras-energi/boras-energi-800x450.jpg?width=10'/%3E%3C/svg%3E")" sizes=" 1479 (max-width: 48em) 100vw, 1480 (max-width: 62em) 100vw, 1481 580px 1482 " srcSet="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fboras-energi%2Fboras-energi-800x450.jpg&w=640&q=75 640w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fboras-energi%2Fboras-energi-800x450.jpg&w=750&q=75 750w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fboras-energi%2Fboras-energi-800x450.jpg&w=828&q=75 828w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fboras-energi%2Fboras-energi-800x450.jpg&w=1080&q=75 1080w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fboras-energi%2Fboras-energi-800x450.jpg&w=1200&q=75 1200w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fboras-energi%2Fboras-energi-800x450.jpg&w=1920&q=75 1920w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fboras-energi%2Fboras-energi-800x450.jpg&w=2048&q=75 2048w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fboras-energi%2Fboras-energi-800x450.jpg&w=3840&q=75 3840w" src="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fboras-energi%2Fboras-energi-800x450.jpg&w=3840&q=75"/></div><div class="css-1bx6qgl"><div class="css-k008qs"><p class="chakra-text css-n0kerw">BorÃ¥s Energi och Miljö</p></div><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-18bct4s" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div><h2 class="chakra-heading css-eim6vu"><a class="chakra-linkbox__overlay css-1h5w00s" href="/kunder/boras-energi-och-miljos-ai-resa--ett-verksamhetsdrivet-ai-labb-for-langsiktig-nytta/">BorÃ¥s Energi och Miljös AI-resa â ett verksamhetsdrivet AI-labb för lÃ¥ngsiktig nytta</a></h2></div></article></div></div></div></div><div class="slide slide-visible" style="width:6.25%;height:auto;padding:0 0px;opacity:1"><div class="css-gds9a0"><div class="css-11uxmi8"><div class="css-1isv5wi"><article role="group" class="chakra-linkbox css-2jgdd6"><div class="chakra-stack css-1nqar3d"><div class="chakra-aspect-ratio css-qd8ok0"><img alt="" loading="lazy" decoding="async" data-nimg="fill" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;object-fit:cover;color:transparent;border-radius:0.75rem;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' %3E%3Cfilter id='b' color-interpolation-filters='
1482sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='xMidYMid slice' style='filter: url(%23b);' href='https://www.knowit.se/globalassets/case/experience/mq/mq-rfid-high-800x450.jpg?width=10'/%3E%3C/svg%3E")" sizes=" 1483 (max-width: 48em) 100vw, 1484 (max-width: 62em) 100vw, 1485 580px 1486 " srcSet="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fmq%2Fmq-rfid-high-800x450.jpg&w=640&q=75 640w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fmq%2Fmq-rfid-high-800x450.jpg&w=750&q=75 750w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fmq%2Fmq-rfid-high-800x450.jpg&w=828&q=75 828w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fmq%2Fmq-rfid-high-800x450.jpg&w=1080&q=75 1080w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fmq%2Fmq-rfid-high-800x450.jpg&w=1200&q=75 1200w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fmq%2Fmq-rfid-high-800x450.jpg&w=1920&q=75 1920w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fmq%2Fmq-rfid-high-800x450.jpg&w=2048&q=75 2048w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fmq%2Fmq-rfid-high-800x450.jpg&w=3840&q=75 3840w" src="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fmq%2Fmq-rfid-high-800x450.jpg&w=3840&q=75"/></div><div class="css-1bx6qgl"><div class="css-k008qs"><p class="chakra-text css-n0kerw">MQ</p></div><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-18bct4s" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div><h2 class="chakra-heading css-eim6vu"><a class="chakra-linkbox__overlay css-1h5w00s" href="/kunder/rfid-forandrade-kundbeteendet-hos-mq--19--av-alla-onlinekop-sker-nu-via-reservation/">RFID förändrade kundbeteendet hos MQ â 19 % av alla onlineköp sker nu via reservation</a></h2></div></article></div></div></div></div><div class="slide slide-visible" style="width:6.25%;height:auto;padding:0 0px;opacity:1"><div class="css-gds9a0"><div class="css-11uxmi8"><div class="css-1isv5wi"><article role="group" class="chakra-linkbox css-2jgdd6"><div class="chakra-stack css-1nqar3d"><div class="chakra-aspect-ratio css-qd8ok0"><img alt="" loading="lazy" decoding="async" data-nimg="fill" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;object-fit:cover;color:transparent;border-radius:0.75rem;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' %3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='xMidYMid slice' style='filter: url(%23b);' href='https://www.knowit.se/globalassets/case/connectivity/pluxee/pluxee-high-800x450.jpg?width=10'/%3E%3C/svg%3E")" sizes=" 1487 (max-width: 48em) 100vw, 1488 (max-width: 62em) 100vw, 1489 580px 1490 " srcSet="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fconnectivity%2Fpluxee%2Fpluxee-high-800x450.jpg&w=640&q=75 640w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fconnectivity%2Fpluxee%2Fpluxee-high-800x450.jpg&w=750&q=75 750w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fconnectivity%2Fpluxee%2Fpluxee-high-800x450.jpg&w=828&q=75 828w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fconnectivity%2Fpluxee%2Fpluxee-high-800x450.jpg&w=1080&q=75 1080w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fconnectivity%2Fpluxee%2Fpluxee-high-800x450.jpg&w=1200&q=75 1200w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fconnectivity%2Fpluxee%2Fpluxee-high-800x450.jpg&w=1920&q=75 1920w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fconnectivity%2Fpluxee%2Fpluxee-high-800x450.jpg&w=2048&q=75 2048w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fconnectivity%2Fpluxee%2Fpluxee-high-800x450.jpg&w=3840&q=75 3840w" src="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fconnectivity%2Fpluxee%2Fpluxee-high-800x450.jpg&w=3840&q=75"/></div><div class="css-1bx6qgl"><div class="css-k008qs"><p class="chakra-text css-n0kerw">Pluxee</p></div><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-18bct4s" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div><h2 class="chakra-heading css-eim6vu"><a class="chakra-linkbox__overlay css-1h5w00s" href="/kunder/molnplattformen-driver-cirka-1-miljon-anvandare-av-pluxees-forbetalda-kort/">Molnplattformen driver cirka 1 miljon användare av Pluxees förbetalda kort</a></h2></div></article></div></div></div></div><div class="slide slide-visible" style="width:6.25%;height:auto;padding:0 0px;opacity:1"><div class="css-gds9a0"><div class="css-11uxmi8"><div class="css-1isv5wi"><article role="group" class="chakra-linkbox css-2jgdd6"><div class="chakra-stack css-1nqar3d"><div class="chakra-aspect-ratio css-qd8ok0"><img alt="" loading="lazy" decoding="async" data-nimg="fill" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;object-fit:cover;color:transparent;border-radius:0.75rem;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' %3E%3Cfilter id='b' color-interpolation-filters='
1490sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='xMidYMid slice' style='filter: url(%23b);' href='https://www.knowit.se/globalassets/case/solutions/smhi/hero.png?width=10'/%3E%3C/svg%3E")" sizes=" 1491 (max-width: 48em) 100vw, 1492 (max-width: 62em) 100vw, 1493 580px 1494 " srcSet="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Fsmhi%2Fhero.png&w=640&q=75 640w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Fsmhi%2Fhero.png&w=750&q=75 750w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Fsmhi%2Fhero.png&w=828&q=75 828w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Fsmhi%2Fhero.png&w=1080&q=75 1080w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Fsmhi%2Fhero.png&w=1200&q=75 1200w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Fsmhi%2Fhero.png&w=1920&q=75 1920w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Fsmhi%2Fhero.png&w=2048&q=75 2048w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Fsmhi%2Fhero.png&w=3840&q=75 3840w" src="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Fsmhi%2Fhero.png&w=3840&q=75"/></div><div class="css-1bx6qgl"><div class="css-k008qs"><p class="chakra-text css-n0kerw">SMHI</p></div><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-18bct4s" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div><h2 class="chakra-heading css-eim6vu"><a class="chakra-linkbox__overlay css-1h5w00s" href="/kunder/fran-forelaggande-till-foredome--sa-hjalpte-knowit-smhi-att-fa-ordning-pa-arkivredovisningen/">FrÃ¥n föreläggande till föredöme â sÃ¥ hjälpte Knowit SMHI att fÃ¥ ordning pÃ¥ arkivredovisningen</a></h2></div></article></div></div></div></div><div class="slide slide-visible" style="width:6.25%;height:auto;padding:0 0px;opacity:1"><div class="css-gds9a0"><div class="css-11uxmi8"><div class="css-1isv5wi"><article role="group" class="chakra-linkbox css-2jgdd6"><div class="chakra-stack css-1nqar3d"><div class="chakra-aspect-ratio css-qd8ok0"><img alt="" loading="lazy" decoding="async" data-nimg="fill" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;object-fit:cover;color:transparent;border-radius:0.75rem;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' %3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='xMidYMid slice' style='filter: url(%23b);' href='https://www.knowit.se/globalassets/case/insight/returpack/eldriven-panttransport-hero-high-1804x1015.jpg?width=10'/%3E%3C/svg%3E")" sizes=" 1495 (max-width: 48em) 100vw, 1496 (max-width: 62em) 100vw, 1497 580px 1498 " srcSet="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Freturpack%2Feldriven-panttransport-hero-high-1804x1015.jpg&w=640&q=75 640w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Freturpack%2Feldriven-panttransport-hero-high-1804x1015.jpg&w=750&q=75 750w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Freturpack%2Feldriven-panttransport-hero-high-1804x1015.jpg&w=828&q=75 828w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Freturpack%2Feldriven-panttransport-hero-high-1804x1015.jpg&w=1080&q=75 1080w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Freturpack%2Feldriven-panttransport-hero-high-1804x1015.jpg&w=1200&q=75 1200w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Freturpack%2Feldriven-panttransport-hero-high-1804x1015.jpg&w=1920&q=75 1920w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Freturpack%2Feldriven-panttransport-hero-high-1804x1015.jpg&w=2048&q=75 2048w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Freturpack%2Feldriven-panttransport-hero-high-1804x1015.jpg&w=3840&q=75 3840w" src="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Freturpack%2Feldriven-panttransport-hero-high-1804x1015.jpg&w=3840&q=75"/></div><div class="css-1bx6qgl"><div class="css-k008qs"><p class="chakra-text css-n0kerw">Returpack</p></div><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-18bct4s" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div><h2 class="chakra-heading css-eim6vu"><a class="chakra-linkbox__overlay css-1h5w00s" href="/kunder/skraddarsytt-ledningssystem-hojer-returpacks-informationssakerhet-i-linje-med-nis2/">Skräddarsytt ledningssystem höjer Returpacks informationssäkerhet i linje med NIS2</a></h2></div></article></div></div></div></div><div class="slide slide-visible" style="width:6.25%;height:auto;padding:0 0px;opacity:1"><div class="css-gds9a0"><div class="css-11uxmi8"><div class="css-1isv5wi"><article role="group" class="chakra-linkbox css-2jgdd6"><div class="chakra-stack css-1nqar3d"><div class="chakra-aspect-ratio css-qd8ok0"><img alt="" loading="lazy" decoding="async" data-nimg="fill" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;object-fit:cover;color:transparent;border-radius:0.75rem;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' %3E%3Cfilter id='b' color-interpolation-filters='
1498sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='xMidYMid slice' style='filter: url(%23b);' href='https://www.knowit.se/globalassets/case/solutions/innovation-norge/oslo-innovation-norge-high-800x450.jpg?width=10'/%3E%3C/svg%3E")" sizes=" 1499 (max-width: 48em) 100vw, 1500 (max-width: 62em) 100vw, 1501 580px 1502 " srcSet="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Finnovation-norge%2Foslo-innovation-norge-high-800x450.jpg&w=640&q=75 640w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Finnovation-norge%2Foslo-innovation-norge-high-800x450.jpg&w=750&q=75 750w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Finnovation-norge%2Foslo-innovation-norge-high-800x450.jpg&w=828&q=75 828w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Finnovation-norge%2Foslo-innovation-norge-high-800x450.jpg&w=1080&q=75 1080w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Finnovation-norge%2Foslo-innovation-norge-high-800x450.jpg&w=1200&q=75 1200w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Finnovation-norge%2Foslo-innovation-norge-high-800x450.jpg&w=1920&q=75 1920w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Finnovation-norge%2Foslo-innovation-norge-high-800x450.jpg&w=2048&q=75 2048w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Finnovation-norge%2Foslo-innovation-norge-high-800x450.jpg&w=3840&q=75 3840w" src="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Finnovation-norge%2Foslo-innovation-norge-high-800x450.jpg&w=3840&q=75"/></div><div class="css-1bx6qgl"><div class="css-k008qs"><p class="chakra-text css-n0kerw">Innovation Norge</p></div><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-18bct4s" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div><h2 class="chakra-heading css-eim6vu"><a class="chakra-linkbox__overlay css-1h5w00s" href="/kunder/komponerbar-karnbankplattform-starker-norsk-affarstillvaxt/">Komponerbar kärnbankplattform stärker norsk affärstillväxt</a></h2></div></article></div></div></div></div><div class="slide slide-visible" style="width:6.25%;height:auto;padding:0 0px;opacity:1"><div class="css-gds9a0"><div class="css-11uxmi8"><div class="css-1isv5wi"><article role="group" class="chakra-linkbox css-2jgdd6"><div class="chakra-stack css-1nqar3d"><div class="chakra-aspect-ratio css-qd8ok0"><img alt="" loading="lazy" decoding="async" data-nimg="fill" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;object-fit:cover;color:transparent;border-radius:0.75rem;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' %3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'
1502/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='xMidYMid slice' style='filter: url(%23b);' href='https://www.knowit.se/globalassets/case/experience/raddningsmissionen/matratt-hero-high-800x450.jpg?width=10'/%3E%3C/svg%3E")" sizes=" 1503 (max-width: 48em) 100vw, 1504 (max-width: 62em) 100vw, 1505 580px 1506 " srcSet="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fraddningsmissionen%2Fmatratt-hero-high-800x450.jpg&w=640&q=75 640w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fraddningsmissionen%2Fmatratt-hero-high-800x450.jpg&w=750&q=75 750w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fraddningsmissionen%2Fmatratt-hero-high-800x450.jpg&w=828&q=75 828w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fraddningsmissionen%2Fmatratt-hero-high-800x450.jpg&w=1080&q=75 1080w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fraddningsmissionen%2Fmatratt-hero-high-800x450.jpg&w=1200&q=75 1200w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fraddningsmissionen%2Fmatratt-hero-high-800x450.jpg&w=1920&q=75 1920w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fraddningsmissionen%2Fmatratt-hero-high-800x450.jpg&w=2048&q=75 2048w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fraddningsmissionen%2Fmatratt-hero-high-800x450.jpg&w=3840&q=75 3840w" src="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fexperience%2Fraddningsmissionen%2Fmatratt-hero-high-800x450.jpg&w=3840&q=75"/></div><div class="css-1bx6qgl"><div class="css-k008qs"><p class="chakra-text css-n0kerw">Räddningsmissionen</p></div><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-18bct4s" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div><h2 class="chakra-heading css-eim6vu"><a class="chakra-linkbox__overlay css-1h5w00s" href="/kunder/ny-webbapp-skapar-tryggare-kundfloden-och-starker-social-hallbarhet/">Ny webbapp skapar tryggare kundflöden och stärker social hållbarhet </a></h2></div></article></div></div></div></div><div class="slide slide-visible" style="width:6.25%;height:auto;padding:0 0px;opacity:1"><div class="css-gds9a0"><div class="css-11uxmi8"><div class="css-1isv5wi"><article role="group" class="chakra-linkbox css-2jgdd6"><div class="chakra-stack css-1nqar3d"><div class="chakra-aspect-ratio css-qd8ok0"><img alt="" loading="lazy" decoding="async" data-nimg="fill" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;object-fit:cover;color:transparent;border-radius:0.75rem;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' %3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='xMidYMid slice' style='filter: url(%23b);' href='https://www.knowit.se/globalassets/case/insight/msb/people-sitting-in-a-white-room-hero-high-800x450.jpg?width=10'/%3E%3C/svg%3E")" sizes=" 1507 (max-width: 48em) 100vw, 1508 (max-width: 62em) 100vw, 1509 580px 1510 " srcSet="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fmsb%2Fpeople-sitting-in-a-white-room-hero-high-800x450.jpg&w=640&q=75 640w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fmsb%2Fpeople-sitting-in-a-white-room-hero-high-800x450.jpg&w=750&q=75 750w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fmsb%2Fpeople-sitting-in-a-white-room-hero-high-800x450.jpg&w=828&q=75 828w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fmsb%2Fpeople-sitting-in-a-white-room-hero-high-800x450.jpg&w=1080&q=75 1080w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fmsb%2Fpeople-sitting-in-a-white-room-hero-high-800x450.jpg&w=1200&q=75 1200w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fmsb%2Fpeople-sitting-in-a-white-room-hero-high-800x450.jpg&w=1920&q=75 1920w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fmsb%2Fpeople-sitting-in-a-white-room-hero-high-800x450.jpg&w=2048&q=75 2048w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fmsb%2Fpeople-sitting-in-a-white-room-hero-high-800x450.jpg&w=3840&q=75 3840w" src="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fmsb%2Fpeople-sitting-in-a-white-room-hero-high-800x450.jpg&w=3840&q=75"/></div><div class="css-1bx6qgl"><div class="css-k008qs"><p class="chakra-text css-n0kerw">Myndigheten för civilt försvar</p></div><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-18bct4s" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div><h2 class="chakra-heading css-eim6vu"><a class="chakra-linkbox__overlay css-1h5w00s" href="/kunder/cybersakerhetsradgivning-till-offentlig-och-privat-sektor/">Cybersäkerhetsrådgivning till offentlig och privat sektor</a></h2></div></article></div></div></div></div><div class="slide slide-visible" style="width:6.25%;height:auto;padding:0 0px;opacity:1"><div class="css-gds9a0"><div class="css-11uxmi8"><div class="css-1isv5wi"><article role="group" class="chakra-linkbox css-2jgdd6"><div class="chakra-stack css-1nqar3d"><div class="chakra-aspect-ratio css-qd8ok0"><img alt="" loading="lazy" decoding="async" data-nimg="fill" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;object-fit:cover;color:transparent;border-radius:0.75rem;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' %3E%3Cfilter id='b' color-interpolation-filters='
1510sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='xMidYMid slice' style='filter: url(%23b);' href='https://www.knowit.se/globalassets/case/connectivity/airplane-landing-hero-high-800x450.jpg?width=10'/%3E%3C/svg%3E")" sizes=" 1511 (max-width: 48em) 100vw, 1512 (max-width: 62em) 100vw, 1513 580px 1514 " srcSet="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fconnectivity%2Fairplane-landing-hero-high-800x450.jpg&w=640&q=75 640w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fconnectivity%2Fairplane-landing-hero-high-800x450.jpg&w=750&q=75 750w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fconnectivity%2Fairplane-landing-hero-high-800x450.jpg&w=828&q=75 828w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fconnectivity%2Fairplane-landing-hero-high-800x450.jpg&w=1080&q=75 1080w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fconnectivity%2Fairplane-landing-hero-high-800x450.jpg&w=1200&q=75 1200w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fconnectivity%2Fairplane-landing-hero-high-800x450.jpg&w=1920&q=75 1920w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fconnectivity%2Fairplane-landing-hero-high-800x450.jpg&w=2048&q=75 2048w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fconnectivity%2Fairplane-landing-hero-high-800x450.jpg&w=3840&q=75 3840w" src="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fconnectivity%2Fairplane-landing-hero-high-800x450.jpg&w=3840&q=75"/></div><div class="css-1bx6qgl"><div class="css-k008qs"><p class="chakra-text css-n0kerw">Anonym kund</p></div><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-18bct4s" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div><h2 class="chakra-heading css-eim6vu"><a class="chakra-linkbox__overlay css-1h5w00s" href="/kunder/skalbar-och-saker-aws-landing-zone-for-ett-globalt-foretag/">Skalbar och säker AWS Landing Zone för ett globalt företag</a></h2></div></article></div></div></div></div><div class="slide slide-visible" style="width:6.25%;height:auto;padding:0 0px;opacity:1"><div class="css-gds9a0"><div class="css-11uxmi8"><div class="css-1isv5wi"><article role="group" class="chakra-linkbox css-2jgdd6"><div class="chakra-stack css-1nqar3d"><div class="chakra-aspect-ratio css-qd8ok0"><img alt="" loading="lazy" decoding="async" data-nimg="fill" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;object-fit:cover;color:transparent;border-radius:0.75rem;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' %3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'
1514/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='xMidYMid slice' style='filter: url(%23b);' href='https://www.knowit.se/globalassets/case/insight/stockholm-exergi/stockholm-exergi-hero-high-800x450.jpg?width=10'/%3E%3C/svg%3E")" sizes=" 1515 (max-width: 48em) 100vw, 1516 (max-width: 62em) 100vw, 1517 580px 1518 " srcSet="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fstockholm-exergi%2Fstockholm-exergi-hero-high-800x450.jpg&w=640&q=75 640w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fstockholm-exergi%2Fstockholm-exergi-hero-high-800x450.jpg&w=750&q=75 750w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fstockholm-exergi%2Fstockholm-exergi-hero-high-800x450.jpg&w=828&q=75 828w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fstockholm-exergi%2Fstockholm-exergi-hero-high-800x450.jpg&w=1080&q=75 1080w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fstockholm-exergi%2Fstockholm-exergi-hero-high-800x450.jpg&w=1200&q=75 1200w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fstockholm-exergi%2Fstockholm-exergi-hero-high-800x450.jpg&w=1920&q=75 1920w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fstockholm-exergi%2Fstockholm-exergi-hero-high-800x450.jpg&w=2048&q=75 2048w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fstockholm-exergi%2Fstockholm-exergi-hero-high-800x450.jpg&w=3840&q=75 3840w" src="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Finsight%2Fstockholm-exergi%2Fstockholm-exergi-hero-high-800x450.jpg&w=3840&q=75"/></div><div class="css-1bx6qgl"><div class="css-k008qs"><p class="chakra-text css-n0kerw">Stockholm Exergi</p></div><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-18bct4s" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div><h2 class="chakra-heading css-eim6vu"><a class="chakra-linkbox__overlay css-1h5w00s" href="/kunder/sa-skapade-stockholm-exergi-forutsattningar-for-ett-mer-hallbart-energisystem/">Så skapade Stockholm Exergi förutsättningar för ett mer hållbart energisystem </a></h2></div></article></div></div></div></div><div class="slide slide-visible" style="width:6.25%;height:auto;padding:0 0px;opacity:1"><div class="css-gds9a0"><div class="css-11uxmi8"><div class="css-1isv5wi"><article role="group" class="chakra-linkbox css-2jgdd6"><div class="chakra-stack css-1nqar3d"><div class="chakra-aspect-ratio css-qd8ok0"><img alt="" loading="lazy" decoding="async" data-nimg="fill" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;object-fit:cover;color:transparent;border-radius:0.75rem;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' %3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='xMidYMid slice' style='filter: url(%23b);' href='https://www.knowit.se/globalassets/case/solutions/fmv/kalfjallet-hero-high-800x450.jpg?width=10'/%3E%3C/svg%3E")" sizes=" 1519 (max-width: 48em) 100vw, 1520 (max-width: 62em) 100vw, 1521 580px 1522 " srcSet="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Ffmv%2Fkalfjallet-hero-high-800x450.jpg&w=640&q=75 640w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Ffmv%2Fkalfjallet-hero-high-800x450.jpg&w=750&q=75 750w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Ffmv%2Fkalfjallet-hero-high-800x450.jpg&w=828&q=75 828w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Ffmv%2Fkalfjallet-hero-high-800x450.jpg&w=1080&q=75 1080w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Ffmv%2Fkalfjallet-hero-high-800x450.jpg&w=1200&q=75 1200w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Ffmv%2Fkalfjallet-hero-high-800x450.jpg&w=1920&q=75 1920w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Ffmv%2Fkalfjallet-hero-high-800x450.jpg&w=2048&q=75 2048w, /_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Ffmv%2Fkalfjallet-hero-high-800x450.jpg&w=3840&q=75 3840w" src="/_next/image/?url=https%3A%2F%2Fwww.knowit.se%2Fglobalassets%2Fcase%2Fsolutions%2Ffmv%2Fkalfjallet-hero-high-800x450.jpg&w=3840&q=75"/></div><div class="css-1bx6qgl"><div class="css-k008qs"><p class="chakra-text css-n0kerw">Försvarsmakten</p></div><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-18bct4s" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div><h2 class="chakra-heading css-eim6vu"><a class="chakra-linkbox__overlay css-1h5w00s" href="/kunder/strategiskt-samarbete-for-digital-omstallning-inom-forsvarsmakten/">Strategiskt samarbete för digital omställning inom Försvarsmakten</a></h2></div></article></div></div></div></div></div></div></div></div></div><style data-emotion="css bxm9v3">.css-bxm9v3{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;
1522-webkit-justify-content:flex-end;justify-content:flex-end;margin-top:var(--chakra-space-8);}</style><div class="css-bxm9v3"><style data-emotion="css 13abcv5">.css-13abcv5{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;appearance:none;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;white-space:nowrap;vertical-align:middle;outline:2px solid transparent;outline-offset:2px;line-height:var(--chakra-lineHeights-lg);border-radius:8px;font-weight:var(--chakra-fontWeights-normal);transition-property:var(--chakra-transition-property-common);transition-duration:var(--chakra-transition-duration-normal);border:var(--chakra-borders-none);variant:primary;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;-webkit-transition:0.3s ease;transition:0.3s ease;height:52px;min-width:var(--chakra-sizes-12);font-size:var(--chakra-fontSizes-xs);-webkit-padding-start:0px;padding-inline-start:0px;-webkit-padding-end:0px;padding-inline-end:0px;padding-top:var(--chakra-space-4);padding-bottom:var(--chakra-space-4);background:var(--chakra-colors-transparent);color:inherit;border-bottom:unset;}@media screen and (min-width: 48em){.css-13abcv5{line-height:var(--chakra-lineHeights-xl);height:64px;font-size:var(--chakra-fontSizes-sm);}}.css-13abcv5:disabled,.css-13abcv5[disabled],.css-13abcv5[aria-disabled=true],.css-13abcv5[data-disabled]{opacity:0.2;cursor:pointer;box-shadow:var(--chakra-shadows-none);background-color:var(--chakra-colors-brand-bg5);}.css-13abcv5:hover,.css-13abcv5[data-hover]{border-bottom:unset;}.css-13abcv5:focus,.css-13abcv5[data-focus]{outline:2px solid transparent;outline-offset:2px;}.css-13abcv5:focus-visible,.css-13abcv5[data-focus-visible]{outline-color:var(--chakra-colors-black);outline-offset:2px;outline:2px solid;box-shadow:var(--chakra-shadows-none);}</style><a class="chakra-button css-13abcv5" href="/kunder/">Fler samarbeten<style data-emotion="css 1hzyiq5">.css-1hzyiq5{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;-webkit-margin-start:0.5rem;margin-inline-start:0.5rem;}</style><span class="chakra-button__icon css-1hzyiq5"><style data-emotion="css 1wq3x2a">.css-1wq3x2a{width:1em;height:1em;display:inline-block;line-height:1em;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;color:currentColor;vertical-align:middle;}[role=group]:hover .css-1wq3x2a,[role=group][data-hover] .css-1wq3x2a,[data-group]:hover .css-1wq3x2a,[data-group][data-hover] .css-1wq3x2a,.group:hover .css-1wq3x2a,.group[data-hover] .css-1wq3x2a{display:block;}</style><svg viewBox="0 0 19 18" focusable="false" class="chakra-icon css-1wq3x2a" aria-hidden="true"><path d="M8.61914 17.3791L8.6476 13.3589V9.91478H5.15907C3.67952 9.91478 2.12668 9.81621 0.744141 9.6908L0.744173 7.81665H8.6476V4.54881C8.6476 3.15145 8.75196 1.68488 8.88475 0.37915L10.8691 0.379181V7.81665L14.451 7.81665C15.9306 7.81665 17.3616 7.94209 18.7441 8.0675L18.7441 9.94165L14.4874 9.91478H10.8691L10.8691 13.3245C10.8691 14.7219 10.7363 16.0734 10.6035 17.3792L8.61914 17.3791Z" fill="currentColor"></path></svg></span></a></div></div></div></div></section><section class="NewsListingBlock css-0"><div class="css-whh5e5"><div class="css-1bbe9dr"><style data-emotion="css 16pwwvi">.css-16pwwvi{padding-right:20px;padding-left:20px;margin:0 auto;height:100%;z-index:3;position:unset;max-width:calc(1548px + 40px);padding-bottom:0px;padding-top:0px;}</style><div class="css-16pwwvi"><div class="css-0"><div class="css-whh5e5"><div class="css-1bbe9dr"><style data-emotion="css k7nhbn">.css-k7nhbn{padding-right:0px;padding-left:0px;margin:0 auto;height:100%;z-index:3;position:unset;max-width:calc(1665px + 40px);padding-bottom:0px;padding-top:0px;}</style><div class="css-k7nhbn"><style data-emotion="css 9pwddg">.css-9pwddg{font-family:var(--chakra-fonts-heading);font-size:var(--chakra-fontSizes-sm);line-height:var(--chakra-lineHeights-3xl);font-weight:400;margin-bottom:var(--chakra-space-8);}@media screen and (min-width: 48em){.css-9pwddg{font-size:var(--chakra-fontSizes-xl);margin-bottom:var(--chakra-space-17);}}</style><h2 class="chakra-heading css-9pwddg">Nyheter</h2><style data-emotion="css cg4t14">.css-cg4t14{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:0px;max-width:1285px;}</style><div class="chakra-stack css-cg4t14"><style data-emotion="css 53dhxj">.css-53dhxj{position:relative;padding-top:var(--chakra-space-8);padding-bottom:var(--chakra-space-8);width:100%;border-bottom:var(--chakra-borders-1px);border-color:rgba(10, 9, 56, 0.22);}.css-53dhxj a[href]:not(.chakra-linkbox__overlay),.css-53dhxj abbr[title]{position:relative;z-index:1;}@media screen and (min-width: 48em){.css-53dhxj{padding-top:var(--chakra-space-4);padding-bottom:var(--chakra-space-4);}}</style><div role="group" class="chakra-linkbox css-53dhxj"><style data-emotion="css zuvz7m">.css-zuvz7m{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;
1522-webkit-justify-content:space-between;justify-content:space-between;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-flex-basis:90%;-ms-flex-preferred-size:90%;flex-basis:90%;gap:var(--chakra-space-4);}@media screen and (min-width: 48em){.css-zuvz7m{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;gap:0px;}}</style><div class="css-zuvz7m"><style data-emotion="css kui65n">.css-kui65n{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;gap:var(--chakra-space-2);min-width:131px;}@media screen and (min-width: 48em){.css-kui65n{gap:0px;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}</style><div class="chakra-stack css-kui65n"><style data-emotion="css 1a7s3os">.css-1a7s3os{font-size:var(--chakra-fontSizes-3xs);line-height:var(--chakra-lineHeights-3xs);}@media screen and (min-width: 48em){.css-1a7s3os{font-size:var(--chakra-fontSizes-3xs);line-height:var(--chakra-lineHeights-3xs);}}</style><time class="chakra-text css-1a7s3os">2026-09-02</time><style data-emotion="css eqjygn">.css-eqjygn{font-size:var(--chakra-fontSizes-3xs);line-height:var(--chakra-lineHeights-3xs);color:var(--chakra-colors-brand-dim);}@media screen and (min-width: 48em){.css-eqjygn{font-size:var(--chakra-fontSizes-3xs);line-height:var(--chakra-lineHeights-3xs);}}</style><p class="chakra-text css-eqjygn">Pressmeddelande</p></div><style data-emotion="css 1ufrzn0">.css-1ufrzn0{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:100%;-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;}</style><div class="css-1ufrzn0"><style data-emotion="css jg008c">.css-jg008c{font-family:var(--chakra-fonts-heading);font-size:var(--chakra-fontSizes-5);line-height:var(--chakra-lineHeights-xl);font-weight:400;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;}@media screen and (min-width: 48em){.css-jg008c{font-size:var(--chakra-fontSizes-2-5xl);line-height:var(--chakra-lineHeights-3xl);}}[role=group]:hover .css-jg008c,[role=group][data-hover] .css-jg008c,[data-group]:hover .css-jg008c,[data-group][data-hover] .css-jg008c,.group:hover .css-jg008c,.group[data-hover] .css-jg008c{border-color:var(--chakra-colors-black);}</style><h3 class="chakra-heading css-jg008c"><style data-emotion="css 1opl5mm">.css-1opl5mm{position:static;}.css-1opl5mm::before{content:'';cursor:inherit;display:block;position:absolute;top:0px;left:0px;z-index:0;width:100%;height:100%;}.css-1opl5mm:focus,.css-1opl5mm[data-focus]{outline:2px solid transparent;outline-offset:2px;}.css-1opl5mm:focus-visible,.css-1opl5mm[data-focus-visible]{outline-color:var(--chakra-colors-black);outline-offset:2px;outline:2px solid;box-shadow:var(--chakra-shadows-none);}.css-1opl5mm:hover,.css-1opl5mm[data-hover]{-webkit-text-decoration:underline;text-decoration:underline;}</style><a class="chakra-linkbox__overlay css-1opl5mm" href="/nyheter-press/knowit-infor-landsledd-organisationsstruktur-och-presenterar-ny-koncernledning/">Knowit inför landsledd organisationsstruktur och presenterar ny koncernledning</a></h3><style data-emotion="css 3el9k5">.css-3el9k5{width:1em;height:1em;display:inline-block;line-height:1em;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;color:var(--chakra-colors-black);vertical-align:middle;margin:4px;z-index:0;-webkit-transition:0.3s ease;transition:0.3s ease;}[role=group]:hover .css-3el9k5,[role=group][data-hover] .css-3el9k5,[data-group]:hover .css-3el9k5,[data-group][data-hover] .css-3el9k5,.group:hover .css-3el9k5,.group[data-hover] .css-3el9k5{-webkit-transform:translateX(0.5rem);-moz-transform:translateX(0.5rem);-ms-transform:translateX(0.5rem);transform:translateX(0.5rem);}</style><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-3el9k5" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div></div></div></div><div class="chakra-stack css-cg4t14"><div role="group" class="chakra-linkbox css-53dhxj"><div class="css-zuvz7m"><div class="chakra-stack css-kui65n"><time class="chakra-text css-1a7s3os">2026-08-18</time><p class="chakra-text css-eqjygn">Pressmeddelande</p></div><div class="css-1ufrzn0"><h3 class="chakra-heading css-jg008c"><a class="chakra-linkbox__overlay css-1opl5mm" href="/nyheter-press/knowit-vinner-europeisk-forsakringsaffar/">Knowit vinner europeisk försäkringsaffär</a></h3><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-3el9k5" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div></div></div></div><div class="chakra-stack css-cg4t14"><div role="group" class="chakra-linkbox css-53dhxj"><div class="css-zuvz7m"><div class="chakra-stack css-kui65n"><time class="chakra-text css-1a7s3os">2026-08-11</time><p class="chakra-text css-eqjygn">Pressmeddelande</p></div><div class="css-1ufrzn0"><h3 class="chakra-heading css-jg008c"><a class="chakra-linkbox__overlay css-1opl5mm" href="/nyheter-press/fredrik-ekerhovd-utses-till-ordinarie-vd-och-koncernchef-for-knowit/">Fredrik Ekerhovd utses till ordinarie vd och koncernchef för Knowit</a></h3><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-3el9k5" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div></div></div></div><div class="css-bxm9v3"><a class="chakra-button css-13abcv5" href="/nyheter-press/">Fler nyheter<span class="chakra-button__icon css-1hzyiq5"><svg viewBox="0 0 19 18" focusable="false" class="chakra-icon css-1wq3x2a" aria-hidden="true"><path d="M8.61914 17.3791L8.6476 13.3589V9.91478H5.15907C3.67952 9.91478 2.12668 9.81621 0.744141 9.6908L0.744173 7.81665H8.6476V4.54881C8.6476 3.15145 8.75196 1.68488 8.88475 0.37915L10.8691 0.379181V7.81665L14.451 7.81665C15.9306 7.81665 17.3616 7.94209 18.7441 8.0675L18.7441 9.94165L14.4874 9.91478H10.8691L10.8691 13.3245C10.8691 14.7219 10.7363 16.0734 10.6035 17.3792L8.61914 17.3791Z" fill="currentColor"></path></svg></span></a></div></div></div></div></div></div></div></div></section></div></div></div></main></div>
1522<style data-emotion="css zwhlfi">.css-zwhlfi{background:var(--chakra-colors-pageBg);padding-top:var(--chakra-space-20);}</style><footer class="css-zwhlfi"><style data-emotion="css 1uhmzk7">.css-1uhmzk7{opacity:1;background:var(--chakra-colors-brand-black);color:var(--chakra-colors-brand-primary);}</style><div class="css-1uhmzk7"><style data-emotion="css 1bbe9dr">.css-1bbe9dr{padding-top:0px;height:100%;}</style><div class="css-1bbe9dr"><style data-emotion="css l409r1">.css-l409r1{padding-right:20px;padding-left:20px;margin:0 auto;height:100%;z-index:3;position:unset;max-width:calc(1548px + 40px);padding-bottom:0px;padding-top:var(--chakra-space-12);}@media screen and (min-width: 48em){.css-l409r1{padding-top:var(--chakra-space-20);}}</style><div class="css-l409r1"><style data-emotion="css vxj34e">.css-vxj34e{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:var(--chakra-space-10);padding-bottom:var(--chakra-space-14);}@media screen and (min-width: 62em){.css-vxj34e{gap:24px;}}</style><div class="chakra-stack css-vxj34e"><style data-emotion="css 2bxxq6">.css-2bxxq6{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:var(--chakra-space-10);}@media screen and (min-width: 62em){.css-2bxxq6{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;gap:0px;}}</style><div class="css-2bxxq6"><style data-emotion="css nf9oxa">.css-nf9oxa{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;padding-right:0px;-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;}@media screen and (min-width: 62em){.css-nf9oxa{padding-right:8%;-webkit-flex-basis:38%;-ms-flex-preferred-size:38%;flex-basis:38%;}}</style><div class="css-nf9oxa"><style data-emotion="css 1vethzo">.css-1vethzo{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:16px;height:100%;margin-top:0px;max-width:100%;}@media screen and (min-width: 62em){.css-1vethzo{height:calc(100% - 64px);max-width:-webkit-fit-content;max-width:-moz-fit-content;max-width:fit-content;}}</style><div class="chakra-stack css-1vethzo"><style data-emotion="css njvf2l">.css-njvf2l{font-family:var(--chakra-fonts-heading);line-height:2rem;font-weight:var(--chakra-fontWeights-normal);font-size:var(--chakra-fontSizes-6-5);color:var(--chakra-colors-brand-primary);margin-top:-10px;}@media screen and (min-width: 48em){.css-njvf2l{line-height:var(--chakra-lineHeights-4-5xl);font-size:var(--chakra-fontSizes-3xl);}}</style><h2 class="chakra-heading css-njvf2l"> Become one of us</h2><style data-emotion="css 1b8zsyi">.css-1b8zsyi{line-height:var(--chakra-lineHeights-lg);font-size:var(--chakra-fontSizes-2xs);color:var(--chakra-colors-brand-primary);}@media screen and (min-width: 48em){.css-1b8zsyi{line-height:var(--chakra-lineHeights-xl);}}@media screen and (min-width: 62em){.css-1b8zsyi{font-size:var(--chakra-fontSizes-sm);}}</style><p class="chakra-text css-1b8zsyi">Tillsammans med våra kunder tar vi fram bra grejer som gör deras och vår vardag enklare. Vill du vara med?</p><style data-emotion="css en61s0">.css-en61s0{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-top:0px;}</style><div class="css-en61s0"><style data-emotion="css feed4f">.css-feed4f{position:relative;-webkit-transition:-webkit-transform 0.3s ease;transition:transform 0.3s ease;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:var(--chakra-fontSizes-sm);font-weight:400;color:var(--chakra-colors-brand-primary);display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;}.css-feed4f a[href]:not(.chakra-linkbox__overlay),.css-feed4f abbr[title]{position:relative;z-index:1;}@media screen and (min-width: 62em){.css-feed4f{font-size:var(--chakra-fontSizes-xl);}}</style><div role="group" class="chakra-linkbox css-feed4f"><style data-emotion="css 18lx61o">.css-18lx61o{position:static;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;border:var(--chakra-borders-none);border-bottom:1px solid transparent;border-color:var(--chakra-colors-transparent);-webkit-transition:inherit;transition:inherit;color:var(--chakra-colors-brand-primary);padding:0px;}.css-18lx61o::before{content:'';cursor:inherit;display:block;position:absolute;top:0px;left:0px;z-index:0;width:100%;height:100%;}[role=group]:hover .css-18lx61o,[role=group][data-hover] .css-18lx61o,[data-group]:hover .css-18lx61o,[data-group][data-hover] .css-18lx61o,.group:hover .css-18lx61o,.group[data-hover] .css-18lx61o{border-color:none;}.css-18lx61o:focus,.css-18lx61o[data-focus]{outline:2px solid transparent;outline-offset:2px;}.css-18lx61o:focus-visible,.css-18lx61o[data-focus-visible]{outline-color:var(--chakra-colors-black);outline-offset:2px;outline:2px solid;box-shadow:var(--chakra-shadows-none);}</style><a title="Hitta ditt nya jobb här" class="chakra-linkbox__overlay css-18lx61o" href="https://www.knowit.se/karriar/lediga-jobb/">Hitta ditt nya jobb här</a><style data-emotion="css ak75ar">.css-ak75ar{width:1em;height:1em;display:inline-block;line-height:1em;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;color:var(--chakra-colors-brand-primary);vertical-align:middle;opacity:1;margin-left:var(--chakra-space-3);-webkit-transition:inherit;transition:inherit;}[role=group]:hover .css-ak75ar,[role=group][data-hover] .css-ak75ar,[data-group]:hover .css-ak75ar,[data-group][data-hover] .css-ak75ar,.group:hover .css-ak75ar,.group[data-hover] .css-ak75ar{-webkit-transform:translateX(0.25rem);-moz-transform:translateX(0.25rem);-ms-transform:translateX(0.25rem);transform:translateX(0.25rem);}</style><svg viewBox="0 0 20 20" focusable="false" class="chakra-icon css-ak75ar" aria-hidden="true"><path d="M10.6364 2.35791C13.5455 5.26782 16.6667 8.10115 20 10.8579C16.4848 13.787 13.3636 16.6203 10.6364 19.3579L8.90909 17.7211L13.0606 14.1603C13.9697 13.3754 14.899 12.6766 15.8485 12.064C14.6364 12.0257 13.4141 12.0066 12.1818 12.0066H0V9.70926H12.1818C13.4141 9.70926 14.596 9.78584 15.7273 9.93899L13.0606 7.58426L8.90909 3.99473L10.6364 2.35791Z" fill="currentColor"></path></svg></div></div></div></div><style data-emotion="css 1iojrxl">.css-1iojrxl{opacity:0.6;border:0;border-style:solid;border-bottom-width:1px;width:100%;border-color:var(--chakra-colors-brand-primary);}</style><hr aria-orientation="horizontal" class="chakra-divider css-1iojrxl"/><style data-emotion="css izw0ek">.css-izw0ek{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;}@media screen and (min-width: 62em){.css-izw0ek{-webkit-flex-basis:62%;-ms-flex-preferred-size:62%;flex-basis:62%;}}</style><div class="css-izw0ek"><style data-emotion="css 1x78qm6">.css-1x78qm6{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;gap:var(--chakra-space-10);-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;}</style><div class="css-1x78qm6"><style data-emotion="css 1h8ljdg">.css-1h8ljdg{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:var(--chakra-space-6);width:50%;min-width:152px;-webkit-flex:1;-ms-flex:1;flex:1;}@media screen and (min-width: 48em){.css-1h8ljdg{width:100%;}}</style><div class="chakra-stack css-1h8ljdg"><style data-emotion="css e141q0">.css-e141q0{font-size:var(--chakra-fontSizes-2xs);line-height:var(--chakra-lineHeights-sm);text-transform:uppercase;color:var(--chakra-colors-brand-primary);letter-spacing:1.7px;}@media screen and (min-width: 48em){.css-e141q0{font-size:var(--chakra-fontSizes-2xs);line-height:22px;}}</style><h3 class="chakra-text css-e141q0">Kontakt</h3><style data-emotion="css 11nrrcx">.css-11nrrcx{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:var(--chakra-space-3);}</style><div class="chakra-stack css-11nrrcx"><style data-emotion="css 3xcw7j">.css-3xcw7j{font-size:14px;text-underline-offset:5px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}</style><div class="css-3xcw7j"><style data-emotion="css 14eft27">.css-14eft27{width:1em;height:1em;display:inline-block;line-height:1em;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;color:var(--chakra-colors-brand-primary);vertical-align:middle;margin-right:var(--chakra-space-2);}</style><svg viewBox="0 0 26 26" focusable="false" class="chakra-icon css-14eft27" aria-hidden="true"><path fill="none" stroke="currentColor" stroke-width="1.3" d="M5.15527 0.427734C5.65682 0.426873 6.17404 0.630633 6.62402 1.07324C7.94671 2.37453 9.26023 3.68379 10.5605 5.00977L10.5615 5.01074C11.0158 5.4725 11.2177 5.98214 11.2139 6.46973C11.2104 6.89718 11.0483 7.34439 10.7002 7.76367L10.5391 7.94238C10.1901 8.29988 9.83884 8.65106 9.48633 9.00195L8.4248 10.0605C8.21801 10.2674 7.98395 10.5226 7.96191 10.8584C7.93995 11.1937 8.13895 11.4753 8.30957 11.7002C10.008 13.9459 11.9709 15.9275 14.2725 17.5752L14.2734 17.5762C14.4194 17.6798 14.5603 17.7767 14.6924 17.8438C14.8289 17.913 14.9952 17.9708 15.1865 17.9551C15.3779 17.9393 15.5332 17.8549 15.6582 17.7627C15.7793 17.6733 15.9032 17.552 16.0332 17.4209L18.002 15.458C18.4947 14.9709 19.0181 14.7549 19.5117 14.7549C20.0054 14.7549 20.5287 14.9709 21.0215 15.458V15.457C21.6663 16.0954 22.3103 16.7353 22.9531 17.376L24.875 19.3027C25.3572 19.7887 25.571 20.3072 25.5723 20.7969C25.5734 21.2865 25.3621 21.8051 24.8857 22.293C23.9793 23.2197 23.1395 24.0841 22.0547 24.626L21.834 24.7295C20.9161 25.1374 19.9591 25.3378 19.291 25.3574L19.1816 25.3604C17.9464 25.3543 16.9785 25.0942 16.0322 24.7578L15.6143 24.6045L14.875 24.3135C11.2233 22.8004 8.18063 20.4066 5.54688 17.4238C3.54166 15.1482 1.94969 12.6275 0.929688 9.77344C0.416023 8.33312 0.302216 6.99766 0.564453 5.75684C0.810343 4.59343 1.39181 3.48659 2.3291 2.43652L2.52148 2.22754C2.89212 1.83585 3.27668 1.45534 3.67188 1.07715L3.67285 1.07617C4.13092 0.634814 4.65308 0.428667 5.15527 0.427734Z"></path></svg><style data-emotion="css 1hljilr">.css-1hljilr{transition-property:var(--chakra-transition-property-common);transition-duration:var(--chakra-transition-duration-fast);transition-timing-function:var(--chakra-transition-easing-ease-out);cursor:pointer;outline:2px solid transparent;outline-offset:2px;color:inherit;-webkit-transition:0.3s ease;transition:0.3s ease;border-bottom:1px solid;border-color:var(--chakra-colors-black);-webkit-text-decoration:underline;text-decoration:underline;}.css-1hljilr:focus,.css-1hljilr[data-focus]{outline:2px solid transparent;outline-offset:2px;}.css-1hljilr:focus-visible,.css-1hljilr[data-focus-visible]{outline-color:var(--chakra-colors-black);outline-offset:2px;outline:2px solid;box-shadow:var(--chakra-shadows-none);}.css-1hljilr:hover,.css-1hljilr[data-hover]{border-color:none;-webkit-text-decoration:none;text-decoration:none;}</style><a target="" class="chakra-link css-1hljilr" href="tel:087006600">08 700 66 00</a></div><style data-emotion="css 3t3oz">.css-3t3oz{font-size:14px;text-underline-offset:5px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;padding-bottom:var(--chakra-space-4);-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}</style><div class="css-3t3oz"><svg viewBox="0 0 18 14" focusable="false" class="chakra-icon css-14eft27" aria-hidden="true"><path fill="none" stroke="currentColor" d="M0.5 3.19995H17.5V14.899H0.5V3.19995Z" stroke-miterlimit="10"></path><mask id="path-2-inside-1_6225_13803" fill="white"><path d="M0 3.59985L9 11.6639L18 3.59985"></path></mask><path d="M9 11.6639L8.33268 12.4086L9 13.0065L9.66732 12.4086L9 11.6639ZM-0.667317 4.34463L8.33268 12.4086L9.66732 10.9191L0.667317 2.85508L-0.667317 4.34463ZM9.66732 12.4086L18.6673 4.34463L17.3327 2.85508L8.33268 10.9191L9.66732 12.4086Z" fill="currentColor" mask="url(#path-2-inside-1_6225_13803)"></path></svg><a target="" class="chakra-link css-1hljilr" href="mailto:[email protected]">[email protected]</a></div><style data-emotion="css 1sdrz3g">.css-1sdrz3g{max-width:47.25rem;font-size:14px;line-height:1.75rem;}@media screen and (min-width: 48em){.css-1sdrz3g{font-size:1.125rem;line-height:2rem;}}.css-1sdrz3g ol,.css-1sdrz3g ul{padding-left:20px;margin-block-end:20px;}.css-1sdrz3g ul li{list-style-type:disc;}.css-1sdrz3g ol li{list-style-type:decimal;}.css-1sdrz3g a{-webkit-transition:0.3s ease;transition:0.3s ease;}.css-1sdrz3g p,.css-1sdrz3g p span{font-size:14px;}.css-1sdrz3g p:not(:last-child){margin-bottom:20px;}.css-1sdrz3g span{font-size:inherit;line-height:inherit;}.css-1sdrz3g div{font-size:inherit!important;margin-left:inherit!important;line-height:inherit!important;}.css-1sdrz3g table{width:100%!important;overflow-x:auto;overflow-y:hidden;font-size:16px;}.css-1sdrz3g table tr{padding-left:16px;padding-right:16px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;height:96px!important;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-bottom:0.5px solid black;}.css-1sdrz3g table tr td,.css-1sdrz3g table tr th{height:auto!important;text-align:right!important;padding:8px;box-sizing:border-box;text-align:center;}@media screen and (max-width: 80em){.css-1sdrz3g table tr td:not(first-of-type),.css-1sdrz3g table tr th:not(first-of-type){white-space:nowrap;}}.css-1sdrz3g table tr td:first-of-type,.css-1sdrz3g table tr th:first-of-type{text-align:left!important;white-space:wrap;}.CasePage .css-1sdrz3g table{width:100%!important;font-size:16px;height:auto!important;}.CasePage .css-1sdrz3g table tr{height:auto!important;border-bottom:0;display:table-row;}.CasePage .css-1sdrz3g table tr:first-of-type td{padding-top:0;border-bottom:3px solid black;}.CasePage .css-1sdrz3g table td{padding:24px 12px;
1522height:auto!important;border-bottom:1px solid black;text-align:left!important;}.CasePage .css-1sdrz3g table td:last-child{text-align:center!important;}.CasePage .css-1sdrz3g table td:first-child{padding-left:0;}</style><div font-size="14px" class="css-1sdrz3g"><p><strong>Knowit AB</strong> <br/>Box 3383<br/>103 68 Stockholm<br/>Sverige</p> 1523<p>Besök oss: Sveavägen 20</p></div></div></div><div class="chakra-stack css-1h8ljdg"><h3 class="chakra-text css-e141q0">Om Knowit</h3><style data-emotion="css 1153lrp">.css-1153lrp{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:var(--chakra-space-5);}</style><ul class="chakra-stack css-1153lrp"><li><style data-emotion="css 1n6k91h">.css-1n6k91h{transition-property:var(--chakra-transition-property-common);transition-duration:var(--chakra-transition-duration-fast);transition-timing-function:var(--chakra-transition-easing-ease-out);cursor:pointer;outline:2px solid transparent;outline-offset:2px;-webkit-transition:0.3s ease;transition:0.3s ease;border-bottom:1px solid;border-color:var(--chakra-colors-transparent);font-size:14px;color:var(--chakra-colors-brand-primary);-webkit-text-decoration:underline;text-decoration:underline;text-underline-offset:5px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}.css-1n6k91h:focus,.css-1n6k91h[data-focus]{outline:2px solid transparent;outline-offset:2px;}.css-1n6k91h:focus-visible,.css-1n6k91h[data-focus-visible]{outline-color:var(--chakra-colors-black);outline-offset:2px;outline:2px solid;box-shadow:var(--chakra-shadows-none);}.css-1n6k91h:hover,.css-1n6k91h[data-hover]{border-color:none;-webkit-text-decoration:none;text-decoration:none;}</style><a class="chakra-link css-1n6k91h" title="Om oss" href="https://www.knowit.se/om-knowit/">Om oss</a></li><li><a class="chakra-link css-1n6k91h" title="Hållbarhet" href="https://www.knowit.se/om-knowit/hallbarhet/">Hållbarhet</a></li><li><a class="chakra-link css-1n6k91h" title="Nyheter & press" href="https://www.knowit.se/nyheter-press/">Nyheter & press</a></li><li><a class="chakra-link css-1n6k91h" href="https://www.knowit.se/om-knowit/partners/">Partners</a></li><li><a class="chakra-link css-1n6k91h" title="Ramavtal" href="https://www.knowit.se/business-portal/ramavtal/">Ramavtal</a></li><li><a target="_blank" class="chakra-link css-1n6k91h" title="Blogg" href="https://blogg.knowit.se/">Blogg</a></li></ul></div><div class="chakra-stack css-1h8ljdg"><h3 class="chakra-text css-e141q0">Affärsområden</h3><ul class="chakra-stack css-1153lrp"><li><a class="chakra-link css-1n6k91h" title="Knowit Solutions" href="https://www.knowit.se/om-knowit/solutions/">Knowit Solutions</a></li><li><a class="chakra-link css-1n6k91h" title="Knowit Experience" href="https://www.knowit.se/om-knowit/experience/">Knowit Experience</a></li><li><a class="chakra-link css-1n6k91h" title="Knowit Connectivity" href="https://www.knowit.se/om-knowit/connectivity/">Knowit Connectivity</a></li><li><a class="chakra-link css-1n6k91h" title="Knowit Insight" href="https://www.knowit.se/om-knowit/insight/">Knowit Insight</a></li><li><a class="chakra-link css-1n6k91h" title="Knowit Products" href="https://www.knowit.se/om-knowit/products/">Knowit Products</a></li></ul></div></div></div></div><hr aria-orientation="horizontal" class="chakra-divider css-1iojrxl"/><style data-emotion="css 29zybq">.css-29zybq{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:100%;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;gap:var(--chakra-space-5);font-size:14px;}@media screen and (min-width: 62em){.css-29zybq{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;gap:var(--chakra-space-2);}}</style><div class="css-29zybq"><style data-emotion="css siapkm">.css-siapkm{width:100%;}@media screen and (min-width: 62em){.css-siapkm{width:50%;}}</style><div class="css-siapkm"><style data-emotion="css 7x3r43">.css-7x3r43{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:start;-ms-flex-pack:start;
1523-webkit-justify-content:flex-start;justify-content:flex-start;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:var(--chakra-space-4);color:var(--chakra-colors-brand-primary);}</style><ul class="chakra-stack css-7x3r43"><style data-emotion="css rdwj84">.css-rdwj84{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:var(--chakra-space-4);}</style><li class="css-rdwj84"><style data-emotion="css xhjgcp">.css-xhjgcp{transition-property:var(--chakra-transition-property-common);transition-duration:var(--chakra-transition-duration-fast);transition-timing-function:var(--chakra-transition-easing-ease-out);cursor:pointer;outline:2px solid transparent;outline-offset:2px;color:inherit;-webkit-transition:0.3s ease;transition:0.3s ease;border-bottom:1px solid;border-color:var(--chakra-colors-transparent);text-underline-offset:5px;-webkit-text-decoration:underline;text-decoration:underline;font-size:14px;}.css-xhjgcp:focus,.css-xhjgcp[data-focus]{outline:2px solid transparent;outline-offset:2px;}.css-xhjgcp:focus-visible,.css-xhjgcp[data-focus-visible]{outline-color:var(--chakra-colors-black);outline-offset:2px;outline:2px solid;box-shadow:var(--chakra-shadows-none);}.css-xhjgcp:hover,.css-xhjgcp[data-hover]{border-color:none;-webkit-text-decoration:none;text-decoration:none;}</style><a class="chakra-link css-xhjgcp" title="Knowits Cookie policy" href="https://www.knowit.se/misc/cookie-policy/">Cookie policy</a></li><li class="css-rdwj84"><style data-emotion="css 91s7d4">.css-91s7d4{width:1em;height:1em;display:inline-block;line-height:1em;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;color:var(--chakra-colors-brand-primary);vertical-align:middle;font-size:8px;}</style><svg viewBox="0 0 11 10" focusable="false" class="chakra-icon css-91s7d4" aria-hidden="true"><path d="M4.49001 1.83152C4.55688 2.43942 4.74634 3.14864 5.0584 3.95918L2.98545 2.65218L1.34715 1.61875L0.0432003 3.41206L2.11615 4.23273C2.74026 4.45563 3.50926 4.65826 4.42314 4.84063C3.50926 5.18511 2.74026 5.47893 2.11615 5.72209L0.00976562 6.48197L1.31372 8.30568L2.95201 7.27225C3.50926 6.92777 4.11108 6.45158 4.75749 5.84367C4.62375 6.73526 4.53459 7.48501 4.49001 8.09291L4.2894 9.64307H6.73013L6.52952 8.09291C6.44036 7.48501 6.23976 6.77579 5.9277 5.96526C6.73013 6.51237 7.40997 6.94803 7.96721 7.27225L9.63894 8.36647L10.9429 6.57316L8.90338 5.75249C8.27927 5.52959 7.51027 5.33709 6.59639 5.17498C7.51027 4.8305 8.27927 4.53668 8.90338 4.29352L11.0098 3.50325L9.70581 1.67954L8.03408 2.74337C7.47684 3.06758 6.87501 3.54378 6.22861 4.17194C6.36235 3.28035 6.46265 2.5306 6.52952 1.9227L6.73013 0.342155H4.2894L4.49001 1.83152Z" fill="currentColor"></path></svg><a class="chakra-link css-xhjgcp" href="https://www.knowit.se/misc/hantering-av-personuppgifter/">Hantering av personuppgifter</a></li><li class="css-rdwj84"><svg viewBox="0 0 11 10" focusable="false" class="chakra-icon css-91s7d4" aria-hidden="true"><path d="M4.49001 1.83152C4.55688 2.43942 4.74634 3.14864 5.0584 3.95918L2.98545 2.65218L1.34715 1.61875L0.0432003 3.41206L2.11615 4.23273C2.74026 4.45563 3.50926 4.65826 4.42314 4.84063C3.50926 5.18511 2.74026 5.47893 2.11615 5.72209L0.00976562 6.48197L1.31372 8.30568L2.95201 7.27225C3.50926 6.92777 4.11108 6.45158 4.75749 5.84367C4.62375 6.73526 4.53459 7.48501 4.49001 8.09291L4.2894 9.64307H6.73013L6.52952 8.09291C6.44036 7.48501 6.23976 6.77579 5.9277 5.96526C6.73013 6.51237 7.40997 6.94803 7.96721 7.27225L9.63894 8.36647L10.9429 6.57316L8.90338 5.75249C8.27927 5.52959 7.51027 5.33709 6.59639 5.17498C7.51027 4.8305 8.27927 4.53668 8.90338 4.29352L11.0098 3.50325L9.70581 1.67954L8.03408 2.74337C7.47684 3.06758 6.87501 3.54378 6.22861 4.17194C6.36235 3.28035 6.46265 2.5306 6.52952 1.9227L6.73013 0.342155H4.2894L4.49001 1.83152Z" fill="currentColor"></path></svg><a target="_blank" rel="noopener noreferrer" class="chakra-link css-xhjgcp" href="https://knowit.whistlelink.com/">Whistleblower</a></li><li class="css-rdwj84"> <svg viewBox="0 0 11 10" focusable="false" class="chakra-icon css-91s7d4" aria-hidden="true"><path d="M4.49001 1.83152C4.55688 2.43942 4.74634 3.14864 5.0584 3.95918L2.98545 2.65218L1.34715 1.61875L0.0432003 3.41206L2.11615 4.23273C2.74026 4.45563 3.50926 4.65826 4.42314 4.84063C3.50926 5.18511 2.74026 5.47893 2.11615 5.72209L0.00976562 6.48197L1.31372 8.30568L2.95201 7.27225C3.50926 6.92777 4.11108 6.45158 4.75749 5.84367C4.62375 6.73526 4.53459 7.48501 4.49001 8.09291L4.2894 9.64307H6.73013L6.52952 8.09291C6.44036 7.48501 6.23976 6.77579 5.9277 5.96526C6.73013 6.51237 7.40997 6.94803 7.96721 7.27225L9.63894 8.36647L10.9429 6.57316L8.90338 5.75249C8.27927 5.52959 7.51027 5.33709 6.59639 5.17498C7.51027 4.8305 8.27927 4.53668 8.90338 4.29352L11.0098 3.50325L9.70581 1.67954L8.03408 2.74337C7.47684 3.06758 6.87501 3.54378
15236.22861 4.17194C6.36235 3.28035 6.46265 2.5306 6.52952 1.9227L6.73013 0.342155H4.2894L4.49001 1.83152Z" fill="currentColor"></path></svg><style data-emotion="css 1p4b2zl">.css-1p4b2zl{line-height:var(--chakra-lineHeights-lg);text-align:start;width:100%;display:block;font-size:14px;color:var(--chakra-colors-brand-primary);}@media screen and (min-width: 48em){.css-1p4b2zl{line-height:var(--chakra-lineHeights-xl);}}@media screen and (min-width: 62em){.css-1p4b2zl{width:auto;}}</style><p class="chakra-text css-1p4b2zl">© Knowit AB 2026 </p></li></ul></div><ul class="chakra-stack css-7x3r43"><li class="css-rdwj84"><a target="_blank" rel="noopener noreferrer" class="chakra-link css-xhjgcp" title="Knowits Linkedinsida" href="https://www.linkedin.com/company/knowit">Linkedin</a></li><li class="css-rdwj84"><svg viewBox="0 0 11 10" focusable="false" class="chakra-icon css-91s7d4" aria-hidden="true"><path d="M4.49001 1.83152C4.55688 2.43942 4.74634 3.14864 5.0584 3.95918L2.98545 2.65218L1.34715 1.61875L0.0432003 3.41206L2.11615 4.23273C2.74026 4.45563 3.50926 4.65826 4.42314 4.84063C3.50926 5.18511 2.74026 5.47893 2.11615 5.72209L0.00976562 6.48197L1.31372 8.30568L2.95201 7.27225C3.50926 6.92777 4.11108 6.45158 4.75749 5.84367C4.62375 6.73526 4.53459 7.48501 4.49001 8.09291L4.2894 9.64307H6.73013L6.52952 8.09291C6.44036 7.48501 6.23976 6.77579 5.9277 5.96526C6.73013 6.51237 7.40997 6.94803 7.96721 7.27225L9.63894 8.36647L10.9429 6.57316L8.90338 5.75249C8.27927 5.52959 7.51027 5.33709 6.59639 5.17498C7.51027 4.8305 8.27927 4.53668 8.90338 4.29352L11.0098 3.50325L9.70581 1.67954L8.03408 2.74337C7.47684 3.06758 6.87501 3.54378 6.22861 4.17194C6.36235 3.28035 6.46265 2.5306 6.52952 1.9227L6.73013 0.342155H4.2894L4.49001 1.83152Z" fill="currentColor"></path></svg><a target="_blank" rel="noopener noreferrer" class="chakra-link css-xhjgcp" title="Knowits Facebooksida" href="https://www.facebook.com/weareknowit">Facebook</a></li><li class="css-rdwj84"><svg viewBox="0 0 11 10" focusable="false" class="chakra-icon css-91s7d4" aria-hidden="true"><path d="M4.49001 1.83152C4.55688 2.43942 4.74634 3.14864 5.0584 3.95918L2.98545 2.65218L1.34715 1.61875L0.0432003 3.41206L2.11615 4.23273C2.74026 4.45563 3.50926 4.65826 4.42314 4.84063C3.50926 5.18511 2.74026 5.47893 2.11615 5.72209L0.00976562 6.48197L1.31372 8.30568L2.95201 7.27225C3.50926 6.92777 4.11108 6.45158 4.75749 5.84367C4.62375 6.73526 4.53459 7.48501 4.49001 8.09291L4.2894 9.64307H6.73013L6.52952 8.09291C6.44036 7.48501 6.23976 6.77579 5.9277 5.96526C6.73013 6.51237 7.40997 6.94803 7.96721 7.27225L9.63894 8.36647L10.9429 6.57316L8.90338 5.75249C8.27927 5.52959 7.51027 5.33709 6.59639 5.17498C7.51027 4.8305 8.27927 4.53668 8.90338 4.29352L11.0098 3.50325L9.70581 1.67954L8.03408 2.74337C7.47684 3.06758 6.87501 3.54378 6.22861 4.17194C6.36235 3.28035 6.46265 2.5306 6.52952 1.9227L6.73013 0.342155H4.2894L4.49001 1.83152Z" fill="currentColor"></path></svg><a target="_blank" rel="noopener noreferrer" class="chakra-link css-xhjgcp" title="Knowits Instagramsida" href="https://www.instagram.com/weareknowit/">Instagram</a></li></ul></div></div></div></div></div></footer><span></span><span id="__chakra_env" hidden=""></span></div>
1523<script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"slug":"","contentLink":{"id":5,"workId":0,"guidValue":"7148f4e8-99da-42cd-a928-ace346534c74","url":"https://www.knowit.se/"},"name":"Startsida","contentType":["Page","StartPage"],"parentLink":{"id":1,"workId":0,"guidValue":"43f936c9-9b23-4ea3-97b2-61c538ad07c9","url":"https://www.knowit.eu/"},"routeSegment":"startsida","url":"https://www.knowit.se/","created":"2023-04-18T08:15:35Z","startPublish":"2023-04-18T08:15:38Z","searchPageLink":{"id":13,"workId":0,"guidValue":"22624de0-9cc4-4c10-a4fa-702494af81e9","url":"https://www.knowit.se/sok/","expanded":{"contentLink":{"id":13,"workId":0,"guidValue":"22624de0-9cc4-4c10-a4fa-702494af81e9","url":"https://www.knowit.se/sok/"},"name":"Sök","contentType":["Page","SearchPage"],"parentLink":{"id":5,"workId":0,"guidValue":"7148f4e8-99da-42cd-a928-ace346534c74","url":"https://www.knowit.se/"},"routeSegment":"sok","url":"https://www.knowit.se/sok/","created":"2023-06-14T08:29:54Z","startPublish":"2023-06-14T08:30:27Z","metaTitle":"Sök","partialHeading":"Sök","heading":"Sök","disableIndexing":true,"noResultsText":"Sökningen gav inget resultat"}},"metaTitle":"Digital partner för innovation \u0026 hÃ¥llbar utveckling | Knowit","partialHeading":"Let's reshape it","focusBlockHeading":"I fokus","heading":"Building the future takes a whole set of digitalization skills. Welcome to our world.","partialPreamble":"Shaping a new future for your business takes a whole set of digitalization skills. Weâve got these skills. And we combine them to also create a sustainable and humane society. Welcome to our world.","metaDescription":"Knowit är ett it-konsultbolag med 3700 it-konsulter som levererar digitala lösningar \u0026 hjälper kunder med med deras digitala transformation. Kontakta oss!","caseListBlockHeading":"Selected","preamble":"Shaping a new future for your business takes a whole set of digitalization skills. Weâve got these skills. And we combine them to also create a sustainable and humane society. Welcome to our world.","partialImage":{"id":18294,"workId":0,"guidValue":"5cac93ac-5230-42cd-858a-fc48fbfc3e98","url":"https://www.knowit.se/globalassets/image-bank/gradients/afterglow-1920x1080.jpg","expanded":{"contentLink":{"id":18294,"workId":0,"guidValue":"5cac93ac-5230-42cd-858a-fc48fbfc3e98","url":"https://www.knowit.se/globalassets/image-bank/gradients/afterglow-1920x1080.jpg"},"name":"Afterglow-1920x1080.jpg","contentType":["Image","Media","ImageFile"],"parentLink":{"id":18283,"workId":0,"guidValue":"ce8c9f92-4d8c-45b7-94da-e710f14b0955","url":"https://www.knowit.se/globalassets/image-bank/gradients/"},"routeSegment":"afterglow-1920x1080.jpg","url":"https://www.knowit.se/globalassets/image-bank/gradients/afterglow-1920x1080.jpg","created":"2024-03-06T09:38:23Z","startPublish":"2024-03-06T09:38:23Z","thumbnail":{"id":"epi.fx.blob://default/5cac93ac523042cd858afc48fbfc3e98/f21e61b8facd40268509759846bb32b2_Thumbnail.png","url":"https://www.knowit.se/globalassets/image-bank/gradients/afterglow-1920x1080.jpg/Thumbnail"},"mimeType":"image/jpeg","fileSize":99200,"fileExtension":"jpg"}},"heroContentArea":[{"displayOption":"","contentLink":{"id":30812,"workId":0,"guidValue":"fd64e8d9-c6a9-41d3-b8a7-021e805b1c26","expanded":{"contentLink":{"id":30812,"workId":0,"guidValue":"fd64e8d9-c6a9-41d3-b8a7-021e805b1c26"},"name":"Animation script","contentType":["Block","ScriptContainerBlock"],"parentLink":{"id":6,"workId":0,"guidValue":"bccf851d-3950-4313-9898-b570c47cdb78","url":"https://www.knowit.se/contentassets/bccf851d395043139898b570c47cdb78/"},"created":"2025-06-12T06:52:49Z","startPublish":"2025-06-12T06:52:49Z","mainBody":"\u003cdiv id=\"animated-hero\" style=\"position: absolute; inset: 0;\"\u003e\u003ccanvas id=\"animated-hero__canvas\" style=\"position: absolute; inset: 0; width: 100%; height: 100%;\"\u003e\u003c/canvas\u003e\n\u003cdiv id=\"animated-hero__footer\" class=\"auto-ink\" style=\"text-align: start; position: absolute; bottom: 35px; left: 48px; max-width: 50%; color: #fff; z-index: 10; font-size: 20px; line-height: 28px; transition: color 0.25s linear;\"\u003e\u003cspan id=\"animated-hero__status\"\u003e Design inspired by the Nordic sky above \u003cspan class=\"status-cluster\" style=\"display: inline-flex; align-items: baseline; gap: 0.35em;\"\u003e Knowit, \u003cspan id=\"animated-hero__city\"\u003e\u0026bull;\u003c/span\u003e \u003cbutton id=\"animated-hero__rnd\" aria-label=\"Randomize\" style=\"width: 20p
1523x; height: 20px; background: none; border: none; padding: 0; cursor: pointer; color: inherit; transition: color 0.25s linear;\"\u003e \u003csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewbox=\"0 0 15 18\" fill=\"none\" style=\"color: inherit; transition: color 0.25s linear;\"\u003e \u003cpath d=\"M7.87226 2.60254L5.98456 7.7373L5.04608 7.39258L6.44257 3.59082C5.59154 3.71764 4.77195 4.01502 4.03534 4.46875L3.8371 4.5957C2.85307 5.25325 2.07198 6.171 1.58026 7.24414L1.48554 7.45996C1.00255 8.62603 0.877087 9.90957 1.12323 11.1475L1.17304 11.3789C1.44599 12.5272 2.03258 13.5792 2.86933 14.416L3.03925 14.5801C3.90403 15.3831 4.97646 15.9311 6.1369 16.1621L6.3703 16.2041C7.53554 16.3913 8.73218 16.2526 9.82538 15.7998L10.0412 15.7051C11.1144 15.2134 12.0321 14.4323 12.6896 13.4482L12.8166 13.25C13.4357 12.2449 13.7648 11.0859 13.7648 9.90234H14.7648C14.7648 11.2713 14.3842 12.6119 13.6682 13.7744L13.5207 14.0039C12.7602 15.142 11.6994 16.0455 10.4582 16.6143L10.2072 16.7236C8.94267 17.2473 7.55895 17.408 6.21112 17.1914L5.94257 17.1436C4.60016 16.8765 3.35996 16.2414 2.35956 15.3125L2.1623 15.123C1.19449 14.1552 0.516127 12.9385 0.200381 11.6104L0.141787 11.3428C-0.142932 9.91105 0.00319747 8.42681 0.561709 7.07812L0.671084 6.82715C1.23985 5.586 2.14331 4.52515 3.28144 3.76465L3.51093 3.61719C4.11638 3.24426 4.77047 2.9629 5.45136 2.77832L2.39276 1.6543 2.73749 0.714844 7.87226 2.60254Z\" style=\"fill: currentColor; transition: fill 0.25s linear, stroke 0.25s linear;\"\u003e\u003c/path\u003e \u003c/svg\u003e \u003c/button\u003e \u003c/span\u003e \u003c/span\u003e\u003c/div\u003e\n\u003cdiv id=\"animated-hero__met\" class=\"auto-ink\" style=\"position: absolute; bottom: 35px; right: 48px; display: flex; align-items: center; gap: 19px; color: #fff; z-index: 10; font-size: 20px; line-height: 28px; transition: color 0.25s linear;\"\u003e\n\u003cdiv class=\"met-group\" style=\"display: flex; align-items: center;\"\u003e\u003csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"23\" height=\"16\" viewbox=\"0 0 23 16\" fill=\"none\" style=\"color: inherit; transition: color 0.25s linear;\"\u003e \u003cpath d=\"M18.296 7.013C18.4372 5.61392 18.0324 4.21484 17.1609 3.09201C16.2894 1.96918 15.0157 1.20567 13.5919 0.951853C12.1675 0.697521 10.6975 0.972242 9.47212 1.72097C8.24675 2.4702 7.3558 3.63839 6.97569 4.99466C6.26273 4.89782 5.53663 4.9447 4.84309 5.13227C4.14955 5.31932 3.50275 5.64297 2.94361 6.08333C2.38448 6.5237 1.92455 7.07058 1.59222 7.69087C1.25988 8.31115 1.06251 8.99056 1.01263 9.6878C0.962758 10.385 1.06091 11.0849 1.30084 11.7439C1.54129 12.4029 1.91878 13.0063 2.40966 13.5181C2.90055 14.0293 3.49435 14.437 4.15482 14.7158C4.81476 14.9946 5.52719 15.1389 6.24698 15.1394H17.7972C18.8682 15.1399 19.8994 14.7433 20.679 14.0303C21.4592 13.3178 21.9291 12.3422 21.9926 11.3045C22.0561 10.2663 21.7091 9.24388 21.0219 8.44623C20.3346 7.64858 19.3597 7.13583 18.296 7.013Z\" stroke=\"currentColor\" stroke-width=\"1.26004\" style=\"stroke: currentColor; transition: stroke 0.25s linear;\"\u003e\u003c/path\u003e \u003c/svg\u003e\n\u003cdiv id=\"animated-hero__weather\" style=\"margin-left: 6px;\"\u003e\n\u003cdiv id=\"animated-hero__weather-track\" style=\"display: flex; align-items: center; gap: 19px;\"\u003e\u003cspan id=\"animated-hero__temp\"\u003e\u0026bull;\u003c/span\u003e \u003cspan id=\"animated-hero__wind\"\u003e\u0026bull;\u003c/span\u003e \u003cspan id=\"animated-hero__time\"\u003e\u0026bull;\u003c/span\u003e\u003c/div\u003e\n\u003c/div\u003e\n\u003c/div\u003e\n\u003c/div\u003e\n\u003cscript\u003e\n if (!window.__heroCanvasLoaded) {\n window.__heroCanvasLoaded = true;\n (function () {\n window.addEventListener(\"load\", () =\u003e {\n const clamp = (x, a = 0, b = 1) =\u003e Math.max(a, Math.min(b, x));\n const lerp = (a, b, t) =\u003e a + (b - a) * t;\n const sigmoid = (x) =\u003e 1 / (1 + Math.exp(-x));\n const tanh = Math.tanh;\n const parseISO = (s) =\u003e new Date(s);\n\n function hexToRgbNorm(hex) {\n return {\n r: parseInt(hex.slice(1, 3), 16) / 25
15235,\n g: parseInt(hex.slice(3, 5), 16) / 255,\n b: parseInt(hex.slice(5, 7), 16) / 255,\n };\n }\n\n // Colour conversions\n function hslToHex(h, s, l) {\n h /= 360;\n s /= 100;\n l /= 100;\n let r, g, b;\n if (s === 0) {\n r = g = b = l;\n } else {\n const hue2rgb = (p, q, t) =\u003e {\n if (t \u003c 0) t += 1;\n if (t \u003e 1) t -= 1;\n if (t \u003c 1 / 6) return p + (q - p) * 6 * t;\n if (t \u003c 1 / 2) return q;\n if (t \u003c 2 / 3) return p + (q - p) * (2 / 3 - t) * 6;\n return p;\n };\n const q = l \u003c 0.5 ? l * (1 + s) : l + s - l * s;\n const p = 2 * l - q;\n r = hue2rgb(p, q, h + 1 / 3);\n g = hue2rgb(p, q, h);\n b = hue2rgb(p, q, h - 1 / 3);\n }\n const toHex = (x) =\u003e {\n const hex = Math.round(x * 255).toString(16);\n return hex.length === 1 ? \"0\" + hex : hex;\n };\n return `#${toHex(r)}${toHex(g)}${toHex(b)}`;\n }\n\n function hexToHsl(hex) {\n const r = parseInt(hex.slice(1, 3), 16) / 255;\n const g = parseInt(hex.slice(3, 5), 16) / 255;\n const b = parseInt(hex.slice(5, 7), 16) / 255;\n const max = Math.max(r, g, b);\n const min = Math.min(r, g, b);\n let h, s;\n const l = (max + min) / 2;\n if (max === min) {\n h = s = 0;\n } else {\n const d = max - min;\n s = l \u003e 0.5 ? d / (2 - max - min) : d / (max + min);\n switch (max) {\n case r:\n h = (g - b) / d + (g \u003c b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n default:\n h = (r - g) / d + 4;\n }\n h /= 6;\n }\n return { h: h * 360, s: s * 100, l: l * 100 };\n }\n\n const REFERENCE_PALETTES = {\n CR: {\n name: \"CloudyRain\",\n bands: [\n { hue: [240, 255], sat: [50, 65], light: [85, 95] },\n { hue: [250, 265], sat: [45, 60], light: [70, 80] },\n { hue: [250, 270], sat: [50, 70], light: [55, 65] },\n { hue: [220, 240], sat: [65, 85], light: [45, 60] },\n { hue: [180, 195], sat: [45, 65], light: [50, 65] },\n { hue: [210, 230], sat: [70, 85], light: [35, 45] },\n ],\n },\n HR: {\n name: \"HeavyRain\",\n bands: [\n { hue: [115, 125], sat: [80, 95], light: [45, 60] },\n { hue: [210, 230], sat: [50, 70], light: [55, 70] },\n { hue: [240, 255], sat: [45, 65], light: [50, 65] },\n { hue: [220, 235], sat: [55, 75], light: [45, 55] },\n { hue: [185, 200], sat: [50, 70], light: [40, 55] },\n { hue: [230, 250], sat: [80, 95], light: [25, 40] },\n ],\n },\n EV: {\n name: \"Evening\",\n bands: [\n { hue: [200, 215], sat: [65, 80], light: [40, 55] },\n { hue: [175, 190], sat: [55, 75], light: [50, 65] },\n { hue: [215, 235], sat: [40, 60], light: [60, 75] },\n { hue: [240, 255], sat: [35, 55], light: [65, 75] },\n { hue: [200, 220], sat: [25, 40], light: [80, 90] },\n ],\n },\n MD: {\n name: \"MiddayClear\",\n bands: [\n { hue: [235, 250], sat: [70, 85], light: [30, 45] },\n { hue: [265, 280], sat: [45, 65], light: [40, 55] },\n { hue: [290, 310], sat: [35, 55], light: [55, 70] },\n { hue: [15, 30], sat: [50, 70], light: [60, 75] },\n { hue: [270, 285], sat: [20, 35], light: [70, 85] },\n { hue: [210, 225], sat: [35, 55], light: [65, 80] },\n ],\n },\n AG: {\n name: \"Afterglow\",\n bands: [\n { hue: [0, 15], sat: [10, 20], light: [85, 95] },\n { hue: [20, 35], sat: [45, 65], light: [55, 70] },\n { hue: [280, 300], sat: [40, 60], light: [50, 65] },\n { hue: [250, 265], sat: [75, 90], light: [35, 50] },\n { hue: [25, 40], sat: [35, 55], light: [65, 80] },\n ],\n },\n SD: {\n name: \"SummerDusk\",\n bands: [\n { hue: [250, 265], sat: [65, 80], light: [40, 55] },\n { hue: [280, 295], sat: [45, 65], light: [50, 65] },\n { hue: [310, 330], sat: [40, 60], light: [60, 75] },\n { hue: [340, 355], sat: [35, 55], light: [65, 80] },\n { hue: [10, 25], sat: [30, 50], light: [70, 85] },\n { hue: [0, 15], sat: [15, 30], light: [80, 90] },\n ],\n },\n CL: {\n name: \"Cloudy\",\n bands: [\n { hue: [250, 265], sat: [25, 40], light: [85, 95] }
1523,\n { hue: [255, 270], sat: [35, 50], light: [65, 80] },\n { hue: [260, 275], sat: [40, 55], light: [55, 70] },\n { hue: [250, 265], sat: [25, 40], light: [85, 95] },\n ],\n },\n AU: {\n name: \"Aurora\",\n bands: [\n { hue: [240, 260], sat: [70, 90], light: [10, 20] },\n { hue: [120, 140], sat: [60, 80], light: [35, 50] },\n { hue: [160, 180], sat: [50, 70], light: [40, 55] },\n { hue: [280, 300], sat: [60, 80], light: [35, 50] },\n { hue: [300, 320], sat: [65, 85], light: [30, 45] },\n ],\n },\n };\n\n const defaultFeeling = {\n warmth: 0,\n warmth_change: 0,\n humidity: 0,\n gloom: 0,\n brightness: 0,\n rain_intensity: 0,\n rain_amount: 0,\n precip_form: \"none\",\n windiness: 0,\n pressure_trend: 0,\n sun_elevation: 0,\n golden: 0,\n twilight: 0,\n night: 0,\n uv: 0,\n };\n\n function generateHash(obj) {\n let hash = 2166136261;\n const str = JSON.stringify(obj, Object.keys(obj).sort());\n for (let i = 0; i \u003c str.length; i++) {\n hash ^= str.charCodeAt(i);\n hash = Math.imul(hash, 16777619);\n }\n return Math.abs(hash);\n }\n\n function buildGradient(feel) {\n const hash = generateHash(feel);\n const hashBytes = Array.from(\n { length: 32 },\n (_, i) =\u003e (hash * (i + 1) * 9999) \u0026 0xff\n );\n\n // Derived parameters\n const storm = clamp(feel.rain_intensity * 0.7 + feel.gloom * 0.3);\n const drama =\n storm * 0.4 +\n feel.windiness * 0.3 +\n Math.abs(feel.pressure_trend) * 0.3;\n const serenity =\n (1 - drama) * (1 - feel.rain_intensity) * feel.brightness;\n const melancholy =\n feel.gloom * feel.humidity * (1 - feel.brightness);\n const electric =\n (feel.rain_intensity \u003e 0.7 ? feel.rain_intensity : 0) +\n feel.twilight * feel.golden;\n const mystical =\n feel.twilight * (1 - feel.rain_intensity) * feel.humidity;\n const haziness = feel.humidity * feel.gloom * (1 - feel.windiness);\n const pressureDir = Math.sign(feel.pressure_trend);\n const tempDrift = (feel.warmth_change + 1) / 2;\n const gold = Math.max(feel.golden, feel.twilight);\n\n const derived = {\n storm,\n drama,\n serenity,\n melancholy,\n electric,\n mystical,\n haziness,\n pressureDir,\n tempDrift,\n gold,\n };\n\n const palette = selectPalette(feel, derived, hashBytes[0]);\n\n const stopData = generateStops(feel, derived, hashBytes);\n const colors = generateColors(\n feel,\n derived,\n palette,\n stopData,\n hashBytes\n );\n\n return validateAndCorrect({ colors, stops: stopData.stops }, feel);\n\n function selectPalette(feel, d) {\n if (feel.night === 1 \u0026\u0026 d.storm \u003c 0.4 \u0026\u0026 feel.twilight \u003c 0.2)\n return REFERENCE_PALETTES.AU;\n if (d.storm \u003e= 0.5) return REFERENCE_PALETTES.HR;\n if (d.gold \u003e= 0.5)\n return feel.gloom \u003c 0.4\n ? REFERENCE_PALETTES.AG\n : REFERENCE_PALETTES.SD;\n if (feel.brightness \u003e= 0.6 \u0026\u0026 feel.gloom \u003c= 0.3)\n return REFERENCE_PALETTES.MD;\n if (feel.rain_intensity \u003e 0) return REFERENCE_PALETTES.CR;\n if (feel.gloom \u003e 0.4) return REFERENCE_PALETTES.CL;\n return feel.warmth \u003c 0.4\n ? REFERENCE_PALETTES.EV\n : REFERENCE_PALETTES.SD;\n }\n\n function generateStops(feel, d, hb) {\n // Determine stop count\n let count =\n 6 +\n (d.drama \u003e 0.7) -\n (d.haziness \u003e 0.7) +\n (feel.
1523windiness \u003e 0.8) +\n (d.mystical \u003e 0.6);\n count = Math.max(4, Math.min(8, count));\n\n let pattern = \"balanced\";\n if (d.drama \u003e 0.6) pattern = \"dramatic\";\n else if (d.serenity \u003e 0.7) pattern = \"flowing\";\n else if (d.electric \u003e 0.6) pattern = \"horizon\";\n else if (d.melancholy \u003e 0.6) pattern = \"weighted\";\n\n // base stops generator map\n const gens = {\n dramatic: (c) =\u003e {\n const s = [0];\n const z1 = 0.35 + (hb[5] / 255) * 0.1;\n const z2 = 0.65 + (hb[6] / 255) * 0.1;\n if (c \u003c= 5) s.push(z1, z1 + 0.06, 1);\n else if (c === 6) s.push(0.2, z1, z1 + 0.05, z2, 1);\n else if (c === 7)\n s.push(0.15, z1, z1 + 0.05, 0.5, z2, z2 + 0.05, 1);\n else s.push(0.1, 0.25, z1, z1 + 0.05, 0.55, z2, z2 + 0.05, 1
1523);\n return s;\n },\n flowing: (c) =\u003e\n Array.from({ length: c }, (_, i) =\u003e i / (c - 1)),\n horizon: (c) =\u003e {\n const h = 0.4 + feel.sun_elevation * 0.2;\n const s = [0, h - 0.05, h + 0.05, 1];\n if (c \u003c= 4) return s;\n const before = Math.floor((c - 3) / 2);\n const after = c - 3 - before;\n const add = [];\n for (let i = 1; i \u003c= before; i++)\n add.push(h * (i / (before + 1)));\n add.push(h - 0.04, h + 0.04);\n for (let i = 1; i \u003c= after; i++)\n add.push(h + (1 - h) * (i / (after + 1)));\n add.push(1);\n return [0, ...add];\n },\n weighted: (c) =\u003e {\n const w = 0.7;\n const s = [0];\n for (let i = 1; i \u003c c - 1; i++) {\n const t = i / (c - 1);\n const eased = t * t * (3 - 2 * t);\n s.push(eased * w + t * (1 - w));\n }\n s.push(1);\n return s;\n },\n balanced: (c) =\u003e {\n const acc = 0.3 + (hb[7] / 255) * 0.4;\n return Array.from({ length: c }, (_, i) =\u003e {\n let p = i / (c - 1);\n if (i \u003e 0 \u0026\u0026 i \u003c c - 1 \u0026\u0026 Math.abs(p - acc) \u003c 0.15)\n p = acc + (p - acc) * 0.5;\n return p;\n });\n },\n };\n\n let stops = gens[pattern](count);\n\n // Jitter \u0026 skew\n stops = stops.map((s, i) =\u003e\n i === 0 || i === stops.length - 1\n ? s\n : clamp(s + (hb[i + 8] / 255 - 0.5) * 0.03 * feel.windiness)\n );\n const skew = pressureDir * 0.05 + (tempDrift - 0.5) * 0.03;\n stops = stops.map((s, i) =\u003e\n i === 0 || i === stops.length - 1\n ? s\n : clamp(s + skew * (1 - Math.abs(2 * s - 1)))\n );\n\n return { stops, pattern, count };\n }\n\n function generateColors(feel, d, palette, stopData, hb) {\n const assignments = assignBands(palette, stopData, d, hb);\n return assignments.map((bandIdx, i) =\u003e\n generateColorFromBand(palette.bands[bandIdx], i)\n );\n\n function assignBands(palette, sd, d, hb) {\n const bCount = palette.bands.length;\n const a = [];\n if (palette.name === \"Aurora\") {\n a.push(0);\n for (let i = 1; i \u003c sd.count - 1; i++) {\n const t = (i - 1) / (sd.count - 2);\n a.push(1 + Math.floor(t * (bCount - 1)));\n }\n a.push(0);\n return a;\n }\n for (let i = 0; i \u003c sd.count; i++) {\n if (\n sd.pattern === \"dramatic\" \u0026\u0026\n d.drama \u003e 0.5 \u0026\u0026\n i \u003e 0 \u0026\u0026\n sd.stops[i] - sd.stops[i - 1] \u003c 0.08\n ) {\n a.push((a[i - 1] + Math.floor(bCount / 2)) % bCount);\n } else {\n const prog = sd.stops[i];\n const base = Math.floor(prog * (bCount - 1));\n const varOff = hb[i + 12] / 255 \u003c 0.3 ? 1 : 0;\n const band = clamp(\n base + (hb[i + 13] % 2 ? varOff : -varOff),\n 0,\n bCount - 1\n );\n a.push(band);\n }\n }\n return a;\n }\n\n function generateColorFromBand(band, i) {\n let hue = lerp(band.hue[0], band.hue[1], hb[i + 16] / 255);\n let sat = lerp(band.sat[0], band.sat[1], hb[i + 17] / 25
15235);\n let light = lerp(\n band.light[0],\n band.light[1],\n hb[i + 18] / 255\n );\n\n // Weather tweaks\n hue += (feel.warmth - 0.5) * 12; // warmth shift\n if (feel.rain_intensity \u0026\u0026 hue \u003e= 180 \u0026\u0026 hue \u003c= 200)\n sat +=\n feel.rain_intensity *\n 15 *\n Math.pow(feel.rain_intensity, 0.3);\n sat = Math.max(30, sat - d.haziness * 15);\n light = Math.min(95, light + feel.brightness ** 2 * 15);\n if (d.gold \u0026\u0026 hue \u003e= 10 \u0026\u0026 hue \u003c= 40) {\n sat += d.gold * 20;\n light += d.gold * 10;\n }\n if (feel.night \u0026\u0026 i !== 0 \u0026\u0026 i !== stopData.count - 1)\n light = Math.max(35, light);\n if (\n stopData.pattern === \"dramatic\" \u0026\u0026\n i \u0026\u0026\n stopData.stops[i] - stopData.stops[i - 1] \u003c 0.08\n )\n sat = Math.min(85, sat + 20);\n if (feel.precip_form === \"snow\") {\n if (hue \u003e= 115 \u0026\u0026 hue \u003c= 140) {\n hue += 40;\n sat *= 0.7;\n }\n sat = Math.min(70, sat);\n light += 5;\n }\n if (feel.gloom \u003e 0.5)\n light = 50 + (light - 50) * (1 - feel.gloom * 0.4);\n if (!feel.night \u0026\u0026 light \u003c 35) light = 35;\n if (sat \u003c 40 \u0026\u0026 light \u003c 65) light = 65;\n\n return hslToHex(\n ((hue % 360) + 360) % 360,\n clamp(sat, 0, 100),\n clamp(light, 0, 100)\n );\n }\n }\n\n function validateAndCorrect(data, feel) {\n let { colors, stops } = data;\n const hsls = colors.map(hexToHsl);\n const spans = {\n hue:\n Math.max(...hsls.map((c) =\u003e c.h)) -\n Math.min(...hsls.map((c) =\u003e c.h)),\n sat:\n Math.max(...hsls.map((c) =\u003e c.s)) -\n Math.min(...hsls.map((c) =\u003e c.s)),\n light:\n Math.max(...hsls.map((c) =\u003e c.l)) -\n Math.min(...hsls.map((c) =\u003e c.l)),\n };\n\n const interest =\n spans.hue \u003e= 30 ||\n spans.sat \u003e= 40 ||\n spans.light \u003e= 40 ||\n stops.some((s, i) =\u003e i \u0026\u0026 s - stops[i - 1] \u003c= 0.08);\n if (!interest) {\n const maxSatIdx = hsls.reduce(\n (m, c, i, arr) =\u003e (c.s \u003e arr[m].s ? i : m),\n 0\n );\n const minSatIdx = hsls.reduce(\n (m, c, i, arr) =\u003e (c.s \u003c arr[m].s ? i : m),\n 0\n );\n hsls[maxSatIdx].s = Math.min(85, hsls[maxSatIdx].s + 25);\n hsls[minSatIdx].s = Math.max(30, hsls[minSatIdx].s - 15);\n colors[maxSatIdx] = hslToHex(\n hsls[maxSatIdx].h,\n hsls[maxSatIdx].s,\n hsls[maxSatIdx].l\n );\n colors[minSatIdx] = hslToHex(\n hsls[minSatIdx].h,\n hsls[minSatIdx].s,\n hsls[minSatIdx].l\n );\n }\n\n // Forbidden color combinations\n const forb = [\n [\n [115, 140],\n [0, 40],\n ],\n [\n [115, 140],\n [340, 360],\n ],\n [\n [60, 80],\n [280, 300],\n ],\n ];\n for (let i = 1; i \u003c colors.length;
1523 i++) {\n const a = hsls[i - 1].h;\n const b = hsls[i].h;\n forb.forEach(([r1, r2]) =\u003e {\n if (\n (a \u003e= r1[0] \u0026\u0026 a \u003c= r1[1] \u0026\u0026 b \u003e= r2[0] \u0026\u0026 b \u003c= r2[1]) ||\n (a \u003e= r2[0] \u0026\u0026 a \u003c= r2[1] \u0026\u0026 b \u003e= r1[0] \u0026\u0026 b \u003c= r1[1])\n ) {\n const bridge = hslToHex(270, 30, 70);\n colors.splice(i, 0, bridge);\n stops.splice(i, 0, (stops[i - 1] + stops[i]) / 2);\n hsls.splice(i, 0, hexToHsl(bridge));\n }\n });\n }\n\n // Green needs blue/purple\n if (\n hsls.some((c) =\u003e c.h \u003e= 115 \u0026\u0026 c.h \u003c= 140) \u0026\u0026\n !hsls.some((c) =\u003e c.h \u003e= 200 \u0026\u0026 c.h \u003c= 280)\n ) {\n colors = colors.map((col) =\u003e {\n const hsl = hexToHsl(col);\n if (hsl.h \u003e= 115 \u0026\u0026 hsl.h \u003c= 140) {\n hsl.h = 180 + (hsl.h - 115) * 0.8;\n return hslToHex(hsl.h, hsl.s, hsl.l);\n }\n return col;\n });\n }\n\n // Dayâlight constraints\n if (!feel.night) {\n colors = colors.map((col) =\u003e {\n const hsl = hexToHsl(col);\n if (hsl.l \u003c 35) hsl.l = 35;\n if (hsl.s \u003c 40 \u0026\u0026 hsl.l \u003c 65) hsl.l = 65;\n return hslToHex(hsl.h, hsl.s, hsl.l);\n });\n }\n\n // Ensure â¥5 % stop gap \u0026 bounds\n for (let i = 1; i \u003c stops.length; i++) {\n if (stops[i] - stops[i - 1] \u003c 0.05) {\n const adj = (0.05 - (stops[i] - stops[i - 1])) / 2;\n if (i - 2 \u003e= 0 \u0026\u0026 stops[i - 1] - stops[i - 2] \u003c 0.05 + adj)\n stops[i] += adj * 2;\n else {\n stops[i - 1] -= adj;\n stops[i] += adj;\n }\n }\n }\n stops = stops.map((s, idx) =\u003e clamp(s, 0, 1));\n stops[0] = 0;\n stops[stops.length - 1] = 1;\n\n return { colors, stops };\n }\n }\n\n // Weather \"feel\"\n function calcFeel(agg, sun, nowT) {\n const sunriseT = new Date(sun.properties.sunrise.time);\n const sunsetT = new Date(sun.properties.sunset.time);\n const elevFrac = solarElevationFrac(nowT, sunriseT, sunsetT);\n const golden = clamp(1 - Math.abs(elevFrac - 0.08) / 0.08);\n const twilight = clamp(1 - Math.abs(nowT - sunsetT) / 4.5e6);\n const night = elevFrac \u003c= 0 ? 1 : 0;\n const AT = apparentTemp(agg.Tbar, agg.RHbar, agg.WSbar);\n const warm = warmthScore(AT);\n const warmChange = tanh(agg.deltaT / 4);\n const humidityFeel = muggyIndex(agg.DPbar);\n const windFeel =\n sigmoid((agg.WSbar - 2) / 3) * (agg.Tbar \u003c 10 ? 1.2 : 1);\n const cloudFrac = agg.CCbar / 100;\n const brightness = elevFrac * (1 - cloudFrac);\n const gloom = clamp(1.2 * cloudFrac * (1 - elevFrac));\n const rainIntensity = agg.PR1 \u003e 0 ? sigmoid(agg.PR1max / 3) : 0;\n const rainAmount = tanh(agg.PR6sum / 24);\n const precipForm =\n agg.Tbar \u003c= 0\n ? \"snow\"\n : agg.Tbar \u003c 2 \u0026\u0026 agg.RHbar \u003e 90\n ? \"sleet\"\n : \"rain\";\n const uvNorm = clamp(agg.UV / 11);\n return {\n warmth: warm,\n warmth_change: warmChange,\n humidity: humidityFeel,\n gloom,\n brightness,\n rain_intensity: rainIntensity,\n rain_amount: rainAmount,\n precip_form: precipForm,\n windiness: windFeel,\n pressure_trend: tanh(agg.deltaP3h / 2),\n sun_elevation: elevFrac,\n golden,\n twilight,\n night,\n uv: uvNorm,\n };\n }\n\n function apparentTemp(T, RH, WS) {\n const e = (RH / 100) * 6.105 * Math.exp((17.27 * T) / (237.7 + T));\n return T + 0.33 * e - 0.7 * WS - 4.0;\n }\n function muggyIndex(dp) {\n return clamp((dp - 10) / 14);\n }\n function warmthScore(AT) {\n return clamp(sigmoid((AT - 15) / 10));\n }\n function solarElevationFrac(now, sunrise, sunset) {\n const len = sunset - sunrise || 1;\n const f = clamp((now - sunrise) / len);\n return Math.sin(Math.PI * f);\n }\n\n async function fetchForecast(lat, lon) {\n const fcRes = await fetch(\n `https://api.met.no/weatherapi/locationforecast/2.0/complete?lat=${lat}\u0026lon=${lon}`\n );\n if (!fcRes.ok) throw Error(`locationforecast ${fcRes.status}`);\n const fc = await fcRes.json();\n const sunRes = await fetch(\n `https://api.met.no/weatherapi/sunrise/3.0/sun?lat=${lat}\u0026lon=${lon}\u0026date=${new Date()\n .toISOString()\n .slice(0, 10)}`\n );\n if (!sunRes.ok) throw Error(`sunrise ${sunRes.status}`);\n const sun = await sunRes.json();\n const start = new Date();\n start.setUTCHours(0, 0, 0, 0);\n const end = new Date(start);\n end.setUTCDate(end.getUTCDate() + 1);\n const pts = fc.properties.timeseries.filter((p) =\u003e {\n const t = parseISO(p.time);\n return t \u003e= start \u0026\u0026 t \u003c end;\n });\n const pull = (f) =\u003e\n pts.map((p) =\u003e p.data.instant.details[f] ?? null);\n const mean = (a) =\u003e a.reduce((s, v) =\u003e s + v, 0) / a.length;
1523\n const agg = {\n Tbar: mean(pull(\"air_temperature\")),\n DPbar: mean(pull(\"dew_point_temperature\")),\n RHbar: mean(pull(\"relative_humidity\")),\n Pbar: mean(pull(\"air_pressure_at_sea_level\")),\n CCbar: mean(pull(\"cloud_area_fraction\")),\n WSbar: mean(pull(\"wind_speed\")),\n UV: mean(pull(\"ultraviolet_index_clear_sky\")),\n PR1: pts[0].data.next_1_hours?.details?.precipitation_amount ?? 0,\n PR1max: Math.max(\n ...pts.map(\n (p) =\u003e p.data.next_1_hours?.details?.precipitation_amount ?? 0\n )\n ),\n PR6sum: pts\n .filter((_, i) =\u003e i % 6 === 0)\n .reduce(\n (s, p) =\u003e\n s +\n (p.data.next_6_hours?.details?.precipitation_amount ?? 0),\n 0\n ),\n deltaP3h:\n pull(\"air_pressure_at_sea_level\").slice(-1)[0] -\n pull(\"air_pressure_at_sea_level\").slice(-4)[0],\n deltaT:\n mean(pull(\"air_temperature\").slice(pts.length / 2)) -\n mean(pull(\"air_temperature\").slice(0, pts.length / 2)),\n };\n const nowT = parseISO(pts[0].time);\n const feeling = calcFeel(agg, sun, nowT);\n const first = pts[0].data.instant.details;\n const p1h = pts[0].data.next_1_hours?.details ?? {};\n return {\n temp: first.air_temperature,\n wind: first.wind_speed,\n clouds: first.cloud_area_fraction / 100,\n humidity: first.relative_humidity / 100,\n precipAmount: p1h.precipitation_amount ?? 0,\n precipType:\n feeling.precip_form === \"snow\"\n ? \"snow\"\n : (p1h.precipitation_amount ?? 0) \u003e 0\n ? \"rain\"\n : \"none\",\n uvIndex: first.ultraviolet_index_clear_sky,\n timeISO: pts[0].time,\n sunriseISO: sun.properties.sunrise.time,\n sunsetISO: sun.properties.sunset.time,\n feeling,\n };\n }\n\n const TIME_SCALE = 0.53,\n WIND_SCALE = 3,\n NOISE_FREQ = 0.45,\n CLOUD_DETAIL = 0.65,\n LERP = 0.05,\n MAX_STOPS = 8,\n MAX_GAPS = MAX_STOPS - 1;\n\n const status = document.getElementById(\"animated-hero__status\");\n const cityEl = document.getElementById(\"animated-hero__city\");\n const tempEl = document.getElementById(\"animated-hero__temp\");\n const windEl = document.getElementById(\"animated-hero__wind\");\n const timeEl = document.getElementById(\"animated-hero__time\");\n const footer = document.getElementById(\"animated-hero__footer\");\n const rndBtn = document.getElementById(\"animated-hero__rnd\");\n const rndSvg = rndBtn.querySelector(\"svg\");\n const met = document.getElementById(\"animated-hero__met\");\n const weather = document.getElementById(\"animated-hero__weather\");\n const track = document.getElementById(\"animated-hero__weather-track\");\n\n const canv = document.getElementById(\"animated-hero__canvas\");\n const gl = canv.getContext(\"webgl\");\n\n let tickId = null;\n\n let lowerContrast = \"#fff\";\n let upperContrast = \"#fff\";\n\n const deskCSS = {\n footer: footer.style.cssText,\n rndBtn: rndBtn.style.cssText,\n rndSvg: rndSvg.style.cssText,\n met: met.style.cssText,\n weather: weather.style.cssText,\n track: track.style.cssText,\n };\n\n function resize() {\n canv.width = canv.clientWidth * devicePixelRatio;\n canv.height = canv.clientHeight * devicePixelRatio;\n gl.viewport(0, 0, canv.width, canv.height);\n applyResponsive();\n }\n addEventListener(\"resize\", resize);\n resize();\n\n const vs = `attribute vec2 p;varying vec2 vUv;void main(){vUv=(p+1.)*.5;gl_Position=vec4(p,0,1);} `;\n const noise = `//\tSimplex 3D Noise \n //\tby Ian McEwan, Stefan Gustavson (https://github.com/stegu/webgl-noise)\n //\n vec4 permute(vec4 x){return mod(((x*34.0)+1.0)*x, 289.0);}\n vec4 taylorInvSqrt(vec4 r){return 1.79284291400159 - 0.85373472095314 * r;}\n\n float snoise(vec3 v){ \n const vec2 C = vec2(1.0/6.0, 1.0/3.0) ;\n const vec4 D = vec4(0.0, 0.5, 1.0, 2.0);
1523\n\n // First corner\n vec3 i = floor(v + dot(v, C.yyy) );\n vec3 x0 = v - i + dot(i, C.xxx) ;\n\n // Other corners\n vec3 g = step(x0.yzx, x0.xyz);\n vec3 l = 1.0 - g;\n vec3 i1 = min( g.xyz, l.zxy );\n vec3 i2 = max( g.xyz, l.zxy );\n\n // x0 = x0 - 0. + 0.0 * C \n vec3 x1 = x0 - i1 + 1.0 * C.xxx;\n vec3 x2 = x0 - i2 + 2.0 * C.xxx;\n vec3 x3 = x0 - 1. + 3.0 * C.xxx;\n\n // Permutations\n i = mod(i, 289.0 ); \n vec4 p = permute( permute( permute( \n i.z + vec4(0.0, i1.z, i2.z, 1.0 ))\n + i.y + vec4(0.0, i1.y, i2.y, 1.0 )) \n + i.x + vec4(0.0, i1.x, i2.x, 1.0 ));\n\n // Gradients\n // ( N*N points uniformly over a square, mapped onto an octahedron.)\n float n_ = 1.0/7.0; // N=7\n vec3 ns = n_ * D.wyz - D.xzx;\n\n vec4 j = p - 49.0 * floor(p * ns.z *ns.z); // mod(p,N*N)\n\n vec4 x_ = floor(j * ns.z);\n vec4 y_ = floor(j - 7.0 * x_ ); // mod(j,N)\n\n vec4 x = x_ *ns.x + ns.yyyy;\n vec4 y = y_ *ns.x + ns.yyyy;\n vec4 h = 1.0 - abs(x) - abs(y);\n\n vec4 b0 = vec4( x.xy, y.xy );\n vec4 b1 = vec4( x.zw, y.zw );\n\n vec4 s0 = floor(b0)*2.0 + 1.0;\n vec4 s1 = floor(b1)*2.0 + 1.0;\n vec4 sh = -step(h, vec4(0.0));\n\n vec4 a0 = b0.xzyw + s0.xzyw*sh.xxyy ;\n vec4 a1 = b1.xzyw + s1.xzyw*sh.zzww ;\n\n vec3 p0 = vec3(a0.xy,h.x);\n vec3 p1 = vec3(a0.zw,h.y);\n vec3 p2 = vec3(a1.xy,h.z);\n vec3 p3 = vec3(a1.zw,h.w);\n\n //Normalise gradients\n vec4 norm = taylorInvSqrt(vec4(dot(p0,p0), dot(p1,p1), dot(p2, p2), dot(p3,p3)));\n p0 *= norm.x;\n p1 *= norm.y;\n p2 *= norm.z;\n p3 *= norm.w;\n\n // Mix final noise value\n vec4 m = max(0.6 - vec4(dot(x0,x0), dot(x1,x1), dot(x2,x2), dot(x3,x3)), 0.0);\n m = m * m;\n return 42.0 * dot( m*m, vec4( dot(p0,x0), dot(p1,x1), \n dot(p2,x2), dot(p3,x3) ) );\n }\\n`;\n const fs = `precision mediump float;varying vec2 vUv;uniform vec2 iResolution;uniform float iTime,uTimeScale,uWindScale,uNoiseFreq,uCloudDetail;uniform float uCloudCover,uWindNorm,uWindOffset;uniform vec3 uColor[${MAX_STOPS}];uniform float uStops[${\n MAX_STOPS - 1\n }];uniform float uStopCount;${noise}\nvec3 pal(float t){vec3 col=uColor[0];float prev=0.;int cnt=int(uStopCount+0.5);for(int i=1;i\u003c${MAX_STOPS};i++){if(i\u003e=cnt)break;float edge=smoothstep(prev,uStops[i-1],t);col=mix(col,uColor[i],edge);prev=uStops[i-1];}return col;}\nvec3 toSRGB(vec3 v){return pow(v,vec3(1./2.2));}\nvoid main(){vec2 uv=vUv;float t=iTime*uTimeScale;float base=snoise(vec3(uv*0.8*uNoiseFreq,t*0.1));vec2 wuv=uv;wuv.x-=uWindOffset;vec2 wind=vec2(snoise(vec3(wuv*2.*uNoiseFreq+t*0.2,t*0.5)),snoise(vec3(wuv*2.*uNoiseFreq-t*0.05,t*0.2)));uv+=wind*(pow(uWindNorm,0.7)*0.15+0.02)*uWindScale;uv.x+=base*0.05*uNoiseFreq;float cloudEff=max(uCloudCover,uWindNorm*0.5);float g=uv.y+snoise(vec3(uv*uCloudDetail*mix(1.,3.,cloudEff),t*0.1))*0.2*cloudEff;g=clamp(g,0.,1.);g+=sin(uv.y*10.*uNoiseFreq+t*0.2+base*2.*uNoiseFreq)*0.02;g=clamp(g,0.,1.);gl_FragColor=vec4(toSRGB(pal(g)),1.);} `;\n\n function sh(type, src) {\n const s = gl.createShader(type);\n gl.shaderSource(s, src);\n gl.compileShader(s);\n if (!gl.getShaderParameter(s, gl.COMPILE_STATUS))\n throw gl.getShaderInfoLog(s);\n return s;\n }\n const prog = gl.createProgram();\n gl.attachShader(prog, sh(gl.VERTEX_SHADER, vs));\n gl.attachShader(prog, sh(gl.FRAGMENT_SHADER, fs));\n gl.linkProgram(prog);\n if (!gl.getProgramParameter(prog, gl.LINK_STATUS))\n throw gl.getProgramInfoLog(prog);\n gl.useProgram(prog);\n\n const buf = gl.createBuffer();\n gl.bindBuffer(gl.ARRAY_BUFFER, buf);\n gl.bufferData(\n gl.ARRAY_BUFFER,\n new Float32Array([-1, -1, 1, -1, -1, 1, 1, 1]),\n gl.STATIC_DRAW\n );\n const loc = gl.getAttribLocation(prog, \"p\");\n gl.enableVertexAttribArray(loc);\n gl.vertexAttribPointer(loc, 2, gl.FLOAT, false, 0, 0);\n\n const uni = {\n res: gl.getUniformLocation(prog, \"iResolution\"),\n time: gl.getUniformLocation(prog, \"iTime\"),\n cloud: gl.getUniformLocation(prog, \"uCloudCover\"),\n windNorm: gl.getUniformLocation(prog, \"uWindNorm\"),\n windOff: gl.getUniformLocation(prog, \"uWindOffset\"),\n stopCount: gl.getUniformLocation(prog, \"uStopCount\"),\n stops: gl.getUniformLocation(prog, \"uStops\"),\n colors: gl.getUniformLocation(prog, \"uColor[0]\"),\n timeScale: gl.getUniformLocation(prog, \"uTimeScale\"),\n windScale: gl.getUniformLocation(prog, \"uWindScale\"),\n noiseFreq: gl.getUniformLocation(prog, \"uNoiseFreq\"),\n cloudDet: gl.getUniformLocation(prog, \"uCloudDetail\"),\n };\n gl.uniform1f(uni.timeScale, TIME_SCALE);\n gl.uniform1f(uni.windScale, WIND_SCALE);\n gl.uniform1f(uni.noiseFreq, NOISE_FREQ);\n gl.uniform1f(uni.cloudDet, CLOUD_DETAIL);\n\n let anim = {\n colors: Array.from({ length: MAX_STOPS }, () =\u003e ({\n r: 1,\n g: 1,\n b: 1,\n })),\n stops: new Float32Array(MAX_GAPS).fill(1),\n stopCount: 4,\n cloud: 0,\n wind: 0.2,\n };\n let target = { ...anim };\n let windOffset = 0;\n\n function uploadColors() {\n const flat = [];\n for (const c of anim.colors) {\n flat.push(c.r, c.g, c.b);\n }\n gl.uniform3fv(uni.colors, new Float32Array(flat));\n }
1523\n function uploadStops() {\n gl.uniform1fv(uni.stops, anim.stops);\n }\n function uploadStatics() {\n gl.uniform1f(uni.stopCount, anim.stopCount);\n gl.uniform1f(uni.cloud, anim.cloud);\n gl.uniform1f(uni.windNorm, anim.wind);\n }\n\n function applyResponsive() {\n const MOBILE_MAX = 600;\n\n function desktop() {\n footer.style.cssText = deskCSS.footer;\n rndBtn.style.cssText = deskCSS.rndBtn;\n rndSvg.style.cssText = deskCSS.rndSvg;\n met.style.cssText = deskCSS.met;\n weather.style.cssText = deskCSS.weather;\n track.style.cssText = deskCSS.track;\n stopTicker();\n applyInk();\n }\n\n function mobile() {\n footer.style.cssText = `\n ${deskCSS.footer}\n top:30px; bottom:auto; left:20px;\n font-size:16px; line-height:25px; max-width:60vw;`;\n\n rndBtn.style.cssText = `${deskCSS.rndBtn} width:16px; height:16px;`;\n rndSvg.style.cssText = `${deskCSS.rndSvg} width:16px; height:16px;`;\n\n met.style.cssText = `\n ${deskCSS.met}\n left:20px; right:auto; bottom:30px;\n font-size:16px; line-height:25px;`;\n\n weather.style.cssText = `\n ${deskCSS.weather}\n overflow:hidden;\n height:${track.firstElementChild.offsetHeight}px;`;\n\n track.style.cssText = `\n display:flex;\n flex-direction:column;\n gap:6px;\n will-change:transform;\n transform:translateY(0);`;\n startTicker();\n applyInk(true);\n }\n\n (window.innerWidth \u003c= MOBILE_MAX ? mobile : desktop)();\n }\n\n function startTicker() {\n if (tickId) return;\n\n tickId = setInterval(() =\u003e {\n track.style.transition = \"transform .35s ease-out\";\n track.style.transform = `translateY(-${track.firstElementChild.offsetHeight + 6}px)`;\n\n track.addEventListener(\n \"transitionend\",\n function f() {\n track.removeEventListener(\"transitionend\", f);\n\n track.appendChild(track.firstElementChild);\n\n track.style.transition = \"none\";\n track.style.transform = \"translateY(0)\";\n void track.offsetHeight;\n },\n { once: true }\n );\n }, 5000);\n }\n\n function stopTicker() {\n clearInterval(tickId);\n tickId = null;\n track.style.transition = \"none\";\n track.style.transform = \"translateY(0)\";\n }\n\n const offices = [\n {\n city: \"Stockholm\",\n lat: 59.3293,\n lon: 18.0686,\n tz: \"Europe/Stockholm\",\n },\n {\n city: \"Göteborg\",\n lat: 57.7075,\n lon: 11.9675,\n tz: \"Europe/Stockholm\",\n },\n {\n city: \"Malmö\",\n lat: 55.6058,\n lon: 13.0358,\n tz: \"Europe/Stockholm\",\n },\n {\n city: \"Jönköping\",\n lat: 57.7828,\n lon: 14.1606,\n tz: \"Europe/Stockholm\",\n },\n {\n city: \"Karlstad\",\n lat: 59.3783,\n lon: 13.5042,\n tz: \"Europe/Stockholm\",\n },\n {\n city: \"Karlskrona\",\n lat: 56.1612,\n lon: 15.5869,\n tz: \"Europe/Stockholm\",\n },\n {\n city: \"Linköping\",\n lat: 58.4109,\n lon: 15.6216,\n tz: \"Europe/Stockholm\",\n },\n {\n city: \"LuleÃ¥\",\n lat: 65.5848,\n lon: 22.1547,\n tz: \"Europe/Stockholm\",\n },\n { city: \"Lund\", lat: 55.7047, lon: 13.191, tz: \"Europe/Stockholm\" },\n {\n city: \"Borlänge\",\n lat: 60.4847,\n lon: 15.426,\n tz: \"Europe/Stockholm\",\n },\n {\n city: \"Gävle\",\n lat: 60.6749,\n lon: 17.1413,\n tz: \"Europe/Stockholm\",\n },\n {\n city: \"Helsingborg\",\n lat: 56.0465,\n lon: 12.6945,\n tz: \"Europe/Stockholm\",\n },\n {\n city: \"Sundsvall\",\n lat: 62.3908,\n lon: 17.3069,\n tz: \"Europe/Stockholm\",\n },\n {\n city: \"Uppsala\",\n lat: 59.8586,\n lon: 17.6389,\n tz: \"Europe/Stockholm\",\n },\n {\n city: \"Ãrebro\",\n lat: 59.2741,\n lon: 15.2066,\n tz: \"Europe/Stockholm\",\n },\n {\n city: \"Trollhättan\",\n lat: 58.2837,\n lon: 12.2886,\n tz: \"Europe/Stockholm\",\n },\n { city: \"Oslo\", lat: 59.9139, lon: 10.7522, tz: \"Europe/Oslo\" },\n { city: \"Bergen\", lat: 60.3928, lon: 5.3239, tz: \"Europe/Oslo\" },\n { city: \"Stavanger\", lat: 58.969, lon: 5.7331, tz: \"Europe/Oslo\" },\n {\n city: \"Kristiansand\",\n lat: 58.1467,\n lon: 7.9956,\n tz: \"Europe/Oslo\",\n }
1523,\n { city: \"Arendal\", lat: 58.4614, lon: 8.772, tz: \"Europe/Oslo\" },\n { city: \"Hamar\", lat: 60.7945, lon: 11.067, tz: \"Europe/Oslo\" },\n {\n city: \"København\",\n lat: 55.6761,\n lon: 12.5683,\n tz: \"Europe/Copenhagen\",\n },\n {\n city: \"Aarhus\",\n lat: 56.1629,\n lon: 10.2039,\n tz: \"Europe/Copenhagen\",\n },\n {\n city: \"Helsinki\",\n lat: 60.1699,\n lon: 24.9384,\n tz: \"Europe/Helsinki\",\n },\n {\n city: \"Tampere\",\n lat: 61.4978,\n lon: 23.761,\n tz: \"Europe/Helsinki\",\n },\n {\n city: \"Turku\",\n lat: 60.4518,\n lon: 22.2673,\n tz: \"Europe/Helsinki\",\n },\n { city: \"Oulu\", lat: 65.0121, lon: 25.4651, tz: \"Europe/Helsinki\" },\n {\n city: \"Warszawa\",\n lat: 52.2297,\n lon: 21.0122,\n tz: \"Europe/Warsaw\",\n },\n {\n city: \"Bydgoszcz\",\n lat: 53.1235,\n lon: 18.0084,\n tz: \"Europe/Warsaw\",\n },\n { city: \"Åódź\", lat: 51.7592, lon: 19.455, tz: \"Europe/Warsaw\" },\n { city: \"Bremen\", lat: 53.0793, lon: 8.8017, tz: \"Europe/Berlin\" },\n {\n city: \"UmeÃ¥\",\n lat: 63.8274,\n lon: 20.2699,\n tz: \"Europe/Stockholm\",\n },\n {\n city: \"Ãstersund\",\n lat: 63.1743,\n lon: 14.6411,\n tz: \"Europe/Stockholm\",\n },\n {\n city: \"Viby\",\n lat: 56.1188,\n lon: 10.1399,\n tz: \"Europe/Copenhagen\",\n },\n {\n city: \"Aalborg\",\n lat: 57.0465,\n lon: 9.9225,\n tz: \"Europe/Copenhagen\",\n },\n {\n city: \"Trondheim\",\n lat: 63.4302,\n lon: 10.3829,\n tz: \"Europe/Oslo\",\n },\n { city: \"Ã
lesund\", lat: 62.4712, lon: 6.158, tz: \"Europe/Oslo\" },\n ];\n let lastIdx = -1;\n function pickOffice() {\n let i;\n do i = Math.floor(Math.random() * offices.length);\n while (i === lastIdx);\n lastIdx = i;\n return offices[i];\n }\n async function load() {\n const office = pickOffice();\n try {\n const wx = await fetchForecast(office.lat, office.lon);\n cityEl.textContent = office.city;\n\n const timeStr = new Date().toLocaleTimeString(\"sv-SE\", {\n hour: \"2-digit\",\n minute: \"2-digit\",\n hour12: false,\n timeZone: office.tz,\n });\n\n // Update individual elements using textContent\n tempEl.textContent = wx.temp + \"ºC\";\n windEl.textContent = wx.wind + \" m/s\";\n timeEl.textContent = timeStr;\n\n const pal = buildGradient(wx.feeling);\n // pad/trim\n while (pal.colors.length \u003c MAX_STOPS)\n pal.colors.push(pal.colors[pal.colors.length - 1]);\n const cArr = pal.colors.slice(0, MAX_STOPS).map(hexToRgbNorm);\n target.colors = cArr;\n const st = pal.stops.slice(1);\n while (st.length \u003c MAX_GAPS) st.push(1);\n target.stops = Float32Array.from(st);\n target.stopCount = pal.colors.length;\n target.cloud = wx.clouds;\n target.wind = clamp(wx.wind / 16, 0.02, 1);\n\n sampleInk(pal);\n } catch (e) {\n status.textContent = \"Error: \" + e.message;\n }\n }\n (function initPlaceholder() {\n const pal = buildGradient(defaultFeeling);\n\n // pad/trim to MAX_STOPS\n while (pal.colors.length \u003c MAX_STOPS)\n pal.colors.push(pal.colors[pal.colors.length - 1]);\n\n target.colors = pal.colors.slice(0, MAX_STOPS).map(hexToRgb
1523Norm);\n const st = pal.stops.slice(1);\n while (st.length \u003c MAX_GAPS) st.push(1);\n target.stops = Float32Array.from(st);\n target.stopCount = pal.colors.length;\n target.cloud = 0;\n target.wind = 0.2;\n\n sampleInk(pal);\n })();\n document.getElementById(\"animated-hero__rnd\").onclick = load;\n load();\n\n let prev = performance.now();\n function step(ts) {\n const dt = (ts - prev) / 1000;\n prev = ts;\n // interpolate colours\n for (let i = 0; i \u003c MAX_STOPS; i++) {\n anim.colors[i].r = lerp(\n anim.colors[i].r,\n target.colors[i].r,\n LERP\n );\n anim.colors[i].g = lerp(\n anim.colors[i].g,\n target.colors[i].g,\n LERP\n );\n anim.colors[i].b = lerp(\n anim.colors[i].b,\n target.colors[i].b,\n LERP\n );\n }\n // interpolate stops\n for (let i = 0; i \u003c MAX_GAPS; i++) {\n anim.stops[i] = lerp(anim.stops[i], target.stops[i], LERP);\n }\n anim.stopCount = lerp(anim.stopCount, target.stopCount, LERP);\n anim.cloud = lerp(anim.cloud, target.cloud, LERP);\n anim.wind = lerp(anim.wind, target.wind, LERP);\n windOffset += (0.1 + 0.75 * anim.wind) * TIME_SCALE * dt;\n\n uploadColors();\n uploadStops();\n uploadStatics();\n gl.uniform2f(uni.res, canv.width, canv.height);\n gl.uniform1f(uni.time, ts / 1000);\n gl.uniform1f(uni.windOff, windOffset);\n\n gl.drawArrays(gl.TRIANGLE_STRIP, 0, 4);\n requestAnimationFrame(step);\n }\n uploadColors();\n uploadStops();\n uploadStatics();\n\n function luminance(r, g, b) {\n // WCAG relative luminance\n return (0.2126 * r + 0.7152 * g + 0.0722 * b) / 255;\n }\n function bestInk(r, g, b) {\n return luminance(r, g, b) \u003e 0.53 ? \"#000\" : \"#fff\";\n }\n\n function contrastFor(hex1, hex2) {\n const avg = [hex1, hex2]\n .map(hexToRgbNorm)\n .reduce(\n (a, c) =\u003e ({ r: a.r + c.r, g: a.g + c.g, b: a.b + c.b }),\n {\n r: 0,\n g: 0,\n b: 0,\n }\n );\n\n return bestInk(avg.r * 127.5, avg.g * 127.5, avg.b * 127.5);\n }\n\n function sampleInk(pal) {\n lowerContrast = contrastFor(pal.colors[0], pal.colors[1]);\n upperContrast = contrastFor(\n pal.colors[pal.colors.length - 2],\n pal.colors[pal.colors.length - 1]\n );\n applyInk();\n }\n\n function applyInk(mobile = false) {\n if (mobile) {\n footer.style.color = upperContrast;\n met.style.color = lowerContrast;\n } else {\n footer.style.color = lowerContrast;\n met.style.color = lowerContrast;\n }\n }\n\n requestAnimationFrame(step);\n });\n window.addEventListener(\"pagehide\", () =\u003e {\n window.__heroCanvasLoaded = false;\n });\n })();\n }\n \u003c/script\u003e\n\u003c/div\u003e"}}}],"heroContentFallbackImage":{"id":42352,"workId":0,"guidValue":"d56a490b-8015-406c-bf59-bbfbcf395036","url":"https://www.knowit.se/globalassets/for-local-sites/sweden/test-blocks/test-images/1-solar-arc-1600x900.webp","expanded":{"contentLink":{"id":42352,"workId":0,"guidValue":"d56a490b-8015-406c-bf59-bbfbcf395036","url":"https://www.knowit.se/globalassets/for-local-sites/sweden/test-blocks/test-images/1-solar-arc-1600x900.webp"},"name":"1-Solar-Arc-1600x900.webp","contentType":["Image","Media","ImageFile"],"parentLink":{"id":42329,"workId":0,"guidValue":"51125534
1523-e158-462a-a015-0a382a18af63","url":"https://www.knowit.se/globalassets/for-local-sites/sweden/test-blocks/test-images/"},"routeSegment":"1-solar-arc-1600x900.webp","url":"https://www.knowit.se/globalassets/for-local-sites/sweden/test-blocks/test-images/1-solar-arc-1600x900.webp","created":"2026-09-08T14:27:59Z","startPublish":"2026-09-08T14:27:59Z","thumbnail":{"id":"epi.fx.blob://default/d56a490b8015406cbf59bbfbcf395036/7381339a6e804039bbd05b24e6bb7e4d_Thumbnail.png","url":"https://www.knowit.se/globalassets/for-local-sites/sweden/test-blocks/test-images/1-solar-arc-1600x900.webp/Thumbnail"},"mimeType":"application/octet-stream","altText":"Solar arc banner","fileSize":6228,"fileExtension":"webp"}},"newsListkHeading":"Nyheter","organizationName":"Knowit","legalOrganizationName":"Knowit AB","organizationDescription":"Knowit är en nordisk konsultverksamhet som hjälper företag, myndigheter och organisationer att lyckas i den digitala transformationen. Med kompetens inom AI, teknik, strategi och design utvecklar vi lösningar som skapar kundvärde och stärker digital motstÃ¥ndskraft. Verksamheten är organiserad i fem affärsomrÃ¥den â Solutions, Experience, Connectivity, Insight och Products â som tillsammans erbjuder kompetens inom bland annat systemutveckling, datadrivna kundupplevelser, AI, molntjänster, cybersäkerhet, IP-baserade produktlösningar och managementkonsulting. Kompetenser frÃ¥n olika affärsomrÃ¥den kombineras ofta i kunduppdrag.\n\nKnowit grundades 1990 och har omkring 3 700 medarbetare, huvudsakligen i Norden, med verksamhet även i Polen, Tyskland och Serbien. Knowit AB (publ) är noterat pÃ¥ Nasdaq Stockholm Mid Cap.","organizationSlogan":"A sustainable and humane society. ","logo":{"id":41224,"workId":0,"guidValue":"bacc97c7-1d55-41bf-8698-bbaa01551d79","url":"https://www.knowit.se/globalassets/image-bank/logotype/knowit-logoweb-black.svg","expanded":{"contentLink":{"id":41224,"workId":0,"guidValue":"bacc97c7-1d55-41bf-8698-bbaa01551d79","url":"https://www.knowit.se/globalassets/image-bank/logotype/knowit-logoweb-black.svg"},"name":"Knowit-logoweb-black.svg","contentType":["Image","Media","VectorImageFile"],"parentLink":{"id":41223,"workId":0,"guidValue":"babddcc0-0103-48ea-8563-80834ccaef59","url":"https://www.knowit.se/globalassets/image-bank/logotype/"},"routeSegment":"knowit-logoweb-black.svg","url":"https://www.knowit.se/globalassets/image-bank/logotype/knowit-logoweb-black.svg","created":"2026-06-29T09:48:50Z","startPublish":"2026-06-29T09:48:50Z","thumbnail":{"id":"epi.fx.blob://default/bacc97c71d5541bf8698bbaa01551d79/2d5831a3e27b43a09f3d36b2c1e0ffa4.svg","url":"https://www.knowit.se/globalassets/image-bank/logotype/knowit-logoweb-black.svg/Thumbnail"},"mimeType":"image/svg+xml","fileSize":6920,"fileExtension":"svg"}},"organizationIdentifiers":[{"displayOption":"","contentLink":{"id":41902,"workId":0,"guidValue":"55f7745c-d8ab-460a-8a47-c468fca2dba8","expanded":{"contentLink":{"id":41902,"workId":0,"guidValue":"55f7745c-d8ab-460a-8a47-c468fca2dba8"},"name":"Knowit AB (publ.)","contentType":["Block","OrganizationIdentifierBlock"],"parentLink":{"id":6,"workId":0,"guidValue":"bccf851d-3950-4313-9898-b570c47cdb78","url":"https://www.knowit.se/contentassets/bccf851d395043139898b570c47cdb78/"},"created":"2026-08-19T08:00:48Z","startPublish":"2026-08-19T08:01:23Z","identifierType":"0007","value":"5563910354"}}}],"ethicsPolicy":"https://www.knowit.se/globalassets/about-us/policies/english/kab_0155_code-of-conduct_14.0.pdf","streetAddress":"Sveavägen 20","postalCode":"103 68","addressRegion":"Stockholm","country":"SWE","sameAs":[{"href":"https://www.linkedin.com/company/knowit","title":"Knowit Linkedin","text":"Knowit Linkedin"}],"mainContentArea":[{"heading":null,"pages":[{"schemaData":{"kind":"service","schemaData":null},"heading":"Redo för det oväntade?","preamble":"Strategierna finns. Planerna är skrivna. ÃndÃ¥ tvivlar nästan hälften av svenska företag pÃ¥ sin förmÃ¥ga att hantera en digital kris. Vi har undersökt hur det ser ut.","image":"/globalassets/for-local-sites/sweden/test-blocks/test-images/trendrapport-knowit-high-1080x1080.webp","icon":null,"url":"/kampanjer/redo-for-det-ovantade/","contentAdmin":"Sofia Alatalo"},{"heading":"Changing the world as we know it","preamble":"At Knowit, we donât do things halfway. We develop high-quality solutions â ready for the unexpected. Letâs talk about how we can grow your business. ","image":"/globalassets/for-local-sites/sweden/test-blocks/test-images/eye-high-1080x1080.webp","icon":null,"url":"https://www.knowit.eu/kamp/asweknowit/","contentAdmin":null},{"heading":"Hur mogen är er AI-satsning?","preamble":"Steget frÃ¥n PowerPoint till produktion är längre än det ser ut. Det krävs ett tydligt arbetssätt, en genomtänkt strategi och rätt prioriteringar. Med vÃ¥rt AI-maturity test fÃ¥r ni en konkret bild av var ni stÃ¥r, var möjligheterna finns och vad som krävs för att ta nästa steg. Testet tar nÃ¥gra minuter â gör det idag och fÃ¥ insikter ni kan agera pÃ¥ direkt.","image":"/globalassets/for-local-sites/sweden/test-blocks/test-images/mockup-scorecardtest-800x800.webp","icon":null,"url":"https://knowit-ai-scorecard-se.netlify.app/","contentAdmin":null}],"contentType":"FocusBlock","contentGuid":"d206df43-a5a6-4211-82f9-806e844d86d0","blockId":null},{"heading":"Utvalda samarbeten som gör oss stolta: ","cases":[{"clientLabel":"Kappahl Group","industryLabels":["Handel \u0026 tjänster"],"switchBlockColors":false,"cultureSpecificSubTopicCategories":null,"partialImageStartPage":"/globalassets/case/experience/kappahl/kappahl-high-800x800.jpg","schemaData":{"kind":"creativeWork","schemaData":{"url":"https://www.knowit.se/kunder/ai-agenten-som-ger-kappahl-group-ett-forsprang-i-flodet/","
1523name":"KappAhl Group: Alva, AI-agenten som ger ett försprÃ¥ng i flödet","description":"Knowit har byggt Alva â en AI-agent som förutspÃ¥r hur ett socialt medieinlägg kommer att prestera innan det publiceras. Alva analyserar Ã¥r av kampanjdata, bildval och tonalitet och gör om det till enkla, konkreta rekommendationer, sÃ¥ att Kappahl Groups marknadsteam kan gÃ¥ frÃ¥n magkänsla till datadriven träffsäkerhet i sitt innehÃ¥llsarbete. Resultatet hittills: halverad tid för att skriva och planera organiska inlägg, samt tidiga tecken pÃ¥ högre engagemang när Alvas rekommendationer följs. Lösningen bygger pÃ¥ en teknikagnostisk \"Microsoft first\"-strategi och är byggd i samarbete mellan Knowits expertis, Kappahl Groups verksamhetskunskap och Microsofts teknik.","abstract":"Kappahl Group gick frÃ¥n magkänsla till datadriven träffsäkerhet i sociala medier med hjälp av AI-agenten Alva, som förutspÃ¥r engagemang innan publicering. Resultat: halverad produktionstid och tidiga tecken pÃ¥ högre engagemang.","about":{"caseCustomer":"Kappahl Group","caseCustomerDescription":"Kappahl Group är en svensk detaljhandelskoncern inom mode och heminredning, verksam under flera varumärken.","service":{"url":"https://www.knowit.se/vart-erbjudande/ai-data/","name":"AI \u0026 dataanalys â konsulter för en datadriven verksamhet","description":"Knowits konsulter hjälper er bli mer datadrivna genom fyra kompetensomrÃ¥den: Analytics \u0026 Business Intelligence, artificiell intelligens, data governance \u0026 master data management samt data management \u0026 data engineering. Ansvarsfull AI-användning â juridik, säkerhet och regelefterlevnad (AI Act, GDPR) â vägs in genom hela resan, frÃ¥n förstudie till drift. Genomfört bland andra LKAB, Kappahl, Boxon, Domstolsverket och DNB Sverige.","slogan":null,"brand":{"url":"https://www.knowit.se/om-knowit/","name":"Knowit","description":"Knowit är ett nordiskt konsultbolag som hjälper företag, myndigheter och organisationer att lyckas i den digitala transformationen. Med kompetens inom AI, tech, strategi och design utvecklar vi lösningar som skapar kundvärde och stärker den digitala motstÃ¥ndskraften.","logo":"https://kest01mstrc9jb4prod.dxcloud.episerver.net/globalassets/image-bank/logotype/knowit-logoweb-black.svg","slogan":"Building the future takes a whole set of digitalization skills. Welcome to our world.","sameAs":["https://www.linkedin.com/company/knowit"]},"serviceType":"Analytics \u0026 Business Intelligence (BI), Artificiell intelligens (AI), Data Governance \u0026 Master Data Management, Data Management \u0026 Data Engineering","audience":"Organisationer som vill bli mer datadrivna â frÃ¥n dataplattform och analys till AI-implementation â oavsett bransch, men med extra tyngd mot verksamheter där juridik, säkerhet och regelefterlevnad väger tungt.","award":null}},"brand":{"url":"https://www.knowit.se/om-knowit/","name":"Knowit","description":"Knowit är ett nordiskt konsultbolag som hjälper företag, myndigheter och organisationer att lyckas i den digitala transformationen. Med kompetens inom AI, tech, strategi och design utvecklar vi lösningar som skapar kundvärde och stärker den digitala motstÃ¥ndskraften.","logo":"https://kest01mstrc9jb4prod.dxcloud.episerver.net/globalassets/image-bank/logotype/knowit-logoweb-black.svg","slogan":"Building the future takes a whole set of digitalization skills. Welcome to our world.","sameAs":["https://www.linkedin.com/company/knowit"]},"country":null,"keywords":null,"dateCreated":"2026-02-24","dateModified":"2026-03-04"}},"heading":"AI-agenten som ger Kappahl Group ett försprÃ¥ng i flödet","preamble":"Det blir allt svÃ¥rare att nÃ¥ igenom bruset pÃ¥ sociala medier. Samtidigt är ditt community det viktigaste du har i en tid av generiskt genererat innehÃ¥ll. Tillsammans med Kappahl Group har vi pÃ¥ Knowit tagit steget frÃ¥n analys och magkänsla till träffsäkerhet genom AI-agenten Alva. Som en osynlig Community Manager förutspÃ¥r hon responsen innan du ens hunnit trycka pÃ¥ knappen. Det är ett projekt drivet av skaparglädje som tagit Kappahl Group frÃ¥n diskussioner om agentisk AI till en vardag där tekniken ger ett faktiskt försprÃ¥ng. ","image":"/globalassets/for-local-sites/sweden/test-blocks/test-images/kappahl-start-1725x969.webp","icon":null,"url":"/kunder/ai-agenten-som-ger-kappahl-group-ett-forsprang-i-flodet/","contentAdmin":null},{"clientLabel":"Anonym kund","industryLabels":["Försvar"],"switchBlockColors":false,"cultureSpecificSubTopicCategories":null,"partialImageStartPage":"/globalassets/for-local-sites/sweden/test-blocks/test-images/powerplant-750x750.webp","schemaData":{"kind":"creativeWork","schemaData":null},"heading":"AI-driven bevakning av kritisk infrastruktur","preamble":"I takt med ett försämrat säkerhetsläge i Europa ökar kraven pÃ¥ att skydda kritisk infrastruktur mot bÃ¥de externa hot och insiderrelaterade risker. Genom att kombinera sensorteknik, systemintegrationer och AI-baserad realtidsanalys möjliggör Knowit en mer träffsäker, skalbar bevakning av stora och komplexa anläggningar.","image":"/globalassets/case/insight/anonymous-clients/powerplant-1920x1080.jpg","icon":null,"url":"/kunder/ai-driven-bevakning-av-kritisk-infrastruktur/","contentAdmin":null},{"clientLabel":"DeLaval","industryLabels":["Industri"],"switchBlockColors":false,"cultureSpecificSubTopicCategories":null,"partialImageStartPage":"/globalassets/for-local-sites/sweden/test-blocks/test-images/cows-800x800.webp","schemaData":{"kind":"creativeWork","schemaData":null},"heading":"FrÃ¥n hÃ¥rdvara och mjukvara till integrerade lösningar â att realisera transformation i industribolag","preamble":"När DeLaval ville accelerera utvecklingen av sina integrerade lösningar där hÃ¥rdvara, mjukvara och tjÃ
1523¤nster samverkar, blev det tydligt att organisationens utvecklingsförmÃ¥ga behövde stärkas i samma takt. Genom en holistisk analys av strategi, styrning, teknik och kultur hjälpte Knowit företaget att skapa samsyn, öka leveransförmÃ¥gan och lägga grunden för en mer koordinerad och lÃ¥ngsiktigt hÃ¥llbar transformation.","image":"/globalassets/case/insight/delaval/cows-800x450.jpg","icon":null,"url":"/kunder/fran-hardvara-och-mjukvara-till-integrerade-losningar--att-realisera-transformation-i-industribolag/","contentAdmin":null},{"clientLabel":"Alfa Sko","industryLabels":["Handel \u0026 tjänster"],"switchBlockColors":false,"cultureSpecificSubTopicCategories":null,"partialImageStartPage":"/globalassets/for-local-sites/sweden/test-blocks/test-images/alfa-sko-hero-start-page-730x730.webp","schemaData":{"kind":"creativeWork","schemaData":null},"heading":"Knowit hjälpte Alfa Sko välja rätt ERP för framtida tillväxt","preamble":"SÃ¥ valde Alfa Sko ett framtidssäkert ERP-system för ökad effektivitet, tillväxt \u0026 skalbarhet â med strukturerad analys \u0026 oberoende rÃ¥dgivning frÃ¥
1523n Knowit.","image":"/globalassets/case/insight/alfa-sko/alfa-sko-hero-800x450.jpg","icon":null,"url":"/kunder/erp-plattform-for-alfa-sko/","contentAdmin":null},{"clientLabel":"BEWI RAW","industryLabels":["Handel \u0026 tjänster"],"switchBlockColors":false,"cultureSpecificSubTopicCategories":null,"partialImageStartPage":"/globalassets/for-local-sites/sweden/test-blocks/test-images/bewi-high-800x800.webp","schemaData":{"kind":"creativeWork","schemaData":null},"heading":"BEWI RAW nya webb lanserades rekordsnabbt med AI-native arbetssätt","preamble":"Vad händer när AI blir en integrerad del av hela arbetssättet? I arbetet med BEWI RAW, som levererar rÃ¥material till industri- och förpackningslösningar, fick vi möjlighet att testa just det. En ny webb lanserades samtidigt som nya insikter om hur digital utveckling kan bedrivas.","image":"/globalassets/case/experience/bewi-raw/bewi-high-800x450.jpg","icon":null,"url":"/kunder/bewi-raw-nya-webb-lanserades-rekordsnabbt-med-ai-native-arbetssatt/","contentAdmin":null},{"clientLabel":"ICA Försäkring","industryLabels":["Bank, finans \u0026 försäkring","Handel \u0026 tjänster"],"switchBlockColors":false,"cultureSpecificSubTopicCategories":null,"partialImageStartPage":"/globalassets/for-local-sites/sweden/test-blocks/test-images/ica-forsakring-high-800x800.webp","schemaData":{"kind":"creativeWork","schemaData":null},"heading":"SÃ¥ hanterar Ica Försäkring över en miljard kronor i premievolym ","preamble":"Sedan starten 2015 har ICA Försäkring byggt en digital och datadriven försäkringsaffär med stark koppling till ICA:s ekosystem. Med en flexibel arkitektur och i nära samarbete med Knowit har bolaget möjliggjort snabb innovation och skalbar tillväxt â och pÃ¥ mindre än ett decennium vuxit till över en miljard kronor i premievolym.","image":"/globalassets/case/products/ica-forsakring/ica-forsakring-high-800x450.jpg","icon":null,"url":"/kunder/sa-hanterar-ica-forsakring-over-en-miljard-kronor-i-premievolym/","contentAdmin":null},{"clientLabel":"BorÃ¥s Energi och Miljö","industryLabels":["Energi"],"switchBlockColors":false,"cultureSpecificSubTopicCategories":null,"partialImageStartPage":"/globalassets/for-local-sites/sweden/test-blocks/test-images/boras-energi-800x800.webp","schemaData":{"kind":"creativeWork","schemaData":null},"heading":"BorÃ¥s Energi och Miljös AI-resa â ett verksamhetsdrivet AI-labb för lÃ¥ngsiktig nytta","preamble":"BorÃ¥s Energi och Miljö har tillsammans med Knowit pÃ¥börjat en lÃ¥ngsiktig AI-resa med fokus pÃ¥ samhällsnytta, intern kompetens och hÃ¥llbar digital utveckling. Genom ett verksamhetsdrivet AI-labb, ett nätverk av AI-ambassadörer och parallella strategiska AI-projekt har organisationen tagit viktiga steg mot ökad AI-mognad och konkret verksamhetsnytta.","image":"/globalassets/case/insight/boras-energi/boras-energi-800x450.jpg","icon":null,"url":"/kunder/boras-energi-och-miljos-ai-resa--ett-verksamhetsdrivet-ai-labb-for-langsiktig-nytta/","contentAdmin":null},{"clientLabel":"MQ","industryLabels":["Handel \u0026 tjänster"],"switchBlockColors":false,"cultureSpecificSubTopicCategories":null,"partialImageStartPage":"/globalassets/for-local-sites/sweden/test-blocks/test-images/mq-rfid-high-600x600.webp","schemaData":{"kind":"creativeWork","schemaData":null},"heading":"RFID förändrade kundbeteendet hos MQ â 19 % av alla onlineköp sker nu via reservation","preamble":"När MQ tog nästa steg i sin omnichannel-satsning blev RFID nyckeln till att knyta samman online och butik. I dag sker 19 % av alla onlineköp genom reservationer, ett tydligt kvitto pÃ¥ att integrationen fungerar. Med realtidsdata genom hela kedjan har kundresan blivit mer tillförlitlig, samtidigt som ett förändrat kundbeteende blivit allt mer pÃ¥tagligt.","image":"/globalassets/case/experience/mq/mq-rfid-high-800x450.jpg","icon":null,"url":"/kunder/rfid-forandrade-kundbeteendet-hos-mq--19--av-alla-onlinekop-sker-nu-via-reservation/","contentAdmin":null},{"clientLabel":"Pluxee","industryLabels":["Bank, finans \u0026 försäkring"],"switchBlockColors":false,"cultureSpecificSubTopicCategories":null,"partialImageStartPage":"/globalassets/for-local-sites/sweden/test-blocks/test-images/pluxee-high-800x800.webp","schemaData":{"kind":"creativeWork","schemaData":null},"heading":"Molnplattformen driver cirka 1 miljon användare av Pluxees förbetalda kort","preamble":"Genom ett lÃ¥ngsiktigt partnerskap har Knowit hjälpt Pluxee att utveckla en säker, skalbar och användarvänlig plattform för hantering av förbetalda personalförmÃ¥ner och säljstödsverktyg. Lösningen används idag av omkring 1 miljon personer och fÃ¥r genomgÃ¥ende höga betyg samt mycket stark kundnöjdhet.","image":"/globalassets/case/connectivity/pluxee/pluxee-high-800x450.jpg","
1523icon":null,"url":"/kunder/molnplattformen-driver-cirka-1-miljon-anvandare-av-pluxees-forbetalda-kort/","contentAdmin":null},{"clientLabel":"SMHI","industryLabels":["Offentlig sektor"],"switchBlockColors":false,"cultureSpecificSubTopicCategories":null,"partialImageStartPage":"/globalassets/for-local-sites/sweden/test-blocks/test-images/smhi-hero-high-647x647.webp","schemaData":{"kind":"creativeWork","schemaData":null},"heading":"FrÃ¥n föreläggande till föredöme â sÃ¥ hjälpte Knowit SMHI att fÃ¥ ordning pÃ¥ arkivredovisningen","preamble":"SMHI hade utmaningar med att uppfylla Riksarkivets krav och behÃ¥lla en rimlig arbetsbelastning för arkivarierna. Med stöd av Knowits konsulter och informationsförvaltningssystem Klara har de nu fÃ¥tt struktur, efterlevnad och en smidigare informationshantering som stärker hela verksamheten. ","image":"/globalassets/case/solutions/smhi/hero.png","icon":"/globalassets/case/solutions/smhi/smhi-hero-high-800x450.jpg","url":"/kunder/fran-forelaggande-till-foredome--sa-hjalpte-knowit-smhi-att-fa-ordning-pa-arkivredovisningen/","contentAdmin":"Ella Ollas"},{"clientLabel":"Returpack","industryLabels":["Handel \u0026 tjänster"],"switchBlockColors":false,"cultureSpecificSubTopicCategories":null,"partialImageStartPage":"/globalassets/for-local-sites/sweden/test-blocks/test-images/returpack-startpage-high-700x700.webp","schemaData":{"kind":"creativeWork","schemaData":null},"heading":"Skräddarsytt ledningssystem höjer Returpacks informationssäkerhet i linje med NIS2","preamble":"När EU:s NIS2-direktiv breddade kraven pÃ¥ cybersäkerhet omfattades Returpack för första gÃ¥ngen av reglering inom informationssäkerhet. Tillsammans med Knowit har organisationen tagit fram ett skräddarsytt och praktiskt ledningssystem som stärker informationssäkerheten och skapar förutsättningar för lÃ¥ngsiktig regelefterlevnad.","image":"/globalassets/case/insight/returpack/eldriven-panttransport-hero-high-1804x1015.jpg","icon":null,"url":"/kunder/skraddarsytt-ledningssystem-hojer-returpacks-informationssakerhet-i-linje-med-nis2/","contentAdmin":null},{"clientLabel":"Innovation Norge","industryLabels":["Bank, finans \u0026 försäkring"],"switchBlockColors":false,"cultureSpecificSubTopicCategories":null,"partialImageStartPage":"/globalassets/for-local-sites/sweden/test-blocks/test-images/oslo-innovation-norge-high-800x800.webp","schemaData":{"kind":"creativeWork","schemaData":null},"heading":"Komponerbar kärnbankplattform stärker norsk affärstillväxt","preamble":"I samarbete med Mambu hjälper Knowit Innovation Norge att bygga en flexibel, molnbaserad kärnbankplattform. Det nya systemet minskar manuellt arbete, förbättrar datakvaliteten och pÃ¥skyndar beslutsfattandet sÃ¥ att norska företag kan fÃ¥ tillgÃ¥ng till finansiering pÃ¥ ett mer effektivt och tillförlitligt sätt.","image":"/globalassets/case/solutions/innovation-norge/oslo-innovation-norge-high-800x450.jpg","icon":null,"url":"/kunder/komponerbar-karnbankplattform-starker-norsk-affarstillvaxt/","contentAdmin":null},{"clientLabel":"Räddningsmissionen","industryLabels":["Handel \u0026 tjänster"],"switchBlockColors":false,"cultureSpecificSubTopicCategories":null,"partialImageStartPage":"/globalassets/for-local-sites/sweden/test-blocks/test-images/matratt-start-high-750x750.webp","schemaData":{"kind":"creativeWork","schemaData":null},"heading":"Ny webbapp skapar tryggare kundflöden och stärker social hÃ¥llbarhet ","preamble":"I samarbete med Räddningsmissionens sociala supermarket MatRätt har vi tagit fram en ny webbaserad lösning för tidsbokning och medlemskapsansökan. Webbappen förenklar vardagen för bÃ¥de medlemmar och medarbetare, samtidigt som den bidrar till minskat matsvinn och ökad social hÃ¥llbarhet. ","image":"/globalassets/case/experience/raddningsmissionen/matratt-hero-high-800x450.jpg","icon":null,"url":"/kunder/ny-webbapp-skapar-tryggare-kundfloden-och-starker-social-hallbarhet/","contentAdmin":null},{"clientLabel":"Myndigheten för civilt försvar","industryLabels":["Offentlig sektor"],"switchBlockColors":false,"cultureSpecificSubTopicCategories":null,"partialImageStartPage":"/globalassets/for-local-sites/sweden/test-blocks/test-images/people-sitting-in-a-white-room-startpage-high-800x800.webp","schemaData":{"kind":"creativeWork","schemaData":null},"heading":"CybersäkerhetsrÃ¥dgivning till offentlig och privat sektor","preamble":"Hög cybersäkerhet i en organisation är bÃ¥de en viktig framgÃ¥ngsfaktor och ett krav för att hantera dagens risker. Myndigheten för civilt försvar har i regeringsuppdrag att ge användarnärastöd till offentlig och privat sektor i cybersÃ
1523¤kerhetsarbetet för att ge aktörerna bättre vägledning inom omrÃ¥det. Knowit har sedan 2023 pÃ¥ uppdrag av Myndigheten för civilt försvar bistÃ¥tt med och utvecklat, implementerat och förvaltat CybersäkerhetsrÃ¥dgivningen.","image":"/globalassets/case/insight/msb/people-sitting-in-a-white-room-hero-high-800x450.jpg","icon":null,"url":"/kunder/cybersakerhetsradgivning-till-offentlig-och-privat-sektor/","contentAdmin":null},{"clientLabel":"Anonym kund","industryLabels":["Telekom"],"switchBlockColors":false,"cultureSpecificSubTopicCategories":null,"partialImageStartPage":"/globalassets/for-local-sites/sweden/test-blocks/test-images/airplane-landing-startpage-high-800x800.webp","schemaData":{"kind":"creativeWork","schemaData":null},"heading":"Skalbar och säker AWS Landing Zone för ett globalt företag","preamble":"För att möjliggöra en säker och standardiserad användning av molntjänster i hundratals AWS-konton samarbetade Knowit med ett globalt företag för att designa och införa en avancerad AWS-struktur med full kontroll över styrning, Ã¥tkomsträttigheter och regelefterlevnad i stor skala.","image":"/globalassets/case/connectivity/airplane-landing-hero-high-800x450.jpg","icon":null,"url":"/kunder/skalbar-och-saker-aws-landing-zone-for-ett-globalt-foretag/","contentAdmin":null},{"clientLabel":"Stockholm Exergi","industryLabels":["Energi"],"switchBlockColors":false,"cultureSpecificSubTopicCategories":null,"partialImageStartPage":"/globalassets/for-local-sites/sweden/test-blocks/test-images/stockholm-exergi-partial-1008x1008.webp","schemaData":{"kind":"creativeWork","schemaData":null},"heading":"SÃ¥ skapade Stockholm Exergi förutsättningar för ett mer hÃ¥llbart energisystem ","preamble":"För att öka utvecklings- och leveranstakten av digitala energitjänster behövde Stockholm Exergi en mer effektiv och flexibel produktorganisation. I nära samarbete med Knowit utvecklades strategin, den operativa modellen och organisationens arbetssätt med utgÃ¥ngspunkt i en kartläggning av nuläget och identifierade förbättringsomrÃ¥den. Resultatet blev tydligare struktur, starkare team och möjlighet att skala lösningar som Intelligy Solutions","image":"/globalassets/case/insight/stockholm-exergi/stockholm-exergi-hero-high-800x450.jpg","icon":null,"url":"/kunder/sa-skapade-stockholm-exergi-forutsattningar-for-ett-mer-hallbart-energisystem/","contentAdmin":null},{"clientLabel":"Försvarsmakten","industryLabels":["Försvar"],"switchBlockColors":false,"cultureSpecificSubTopicCategories":null,"partialImageStartPage":"/globalassets/for-local-sites/sweden/test-blocks/test-images/kalfjallet-hero-high-800x800.webp","schemaData":{"kind":"creativeWork","schemaData":null},"heading":"Strategiskt samarbete för digital omställning inom Försvarsmakten","preamble":"Digitaliseringen av armén är en nödvändighet som drivs av teknikutvecklingen i samhället och den globala omvärlden. Försvarsmakten, med hjälp av Försvarets materielverk (FMV) och olika leverantörer, där bland Knowit, har under en längre tid arbetat med att utveckla, implementera och leverera ett nytt taktiskt ledningsstödssystem för markförbanden. Arbetet har redan nÃ¥tt flera milstolpar och bidragit till att öka effektiviteten inom försvaret.","image":"/globalassets/case/solutions/fmv/kalfjallet-hero-high-800x450.jpg","icon":null,"url":"/kunder/strategiskt-samarbete-for-digital-omstallning-inom-forsvarsmakten/","contentAdmin":null}],"buttonLinkItem":{"buttonLink":"/kunder/","buttonText":"Fler samarbeten"},"casePageLabel":"Kund","contentType":"CaseListingBlock","contentGuid":"1919f66d-26e2-4fad-b873-23e33191cc0b","blockId":null},{"heading":"Nyheter","news":[{"heading":"Knowit inför landsledd organisationsstruktur och presenterar ny koncernledning","published":"2026-09-02","label":"Pressmeddelande","url":"/nyheter-press/knowit-infor-landsledd-organisationsstruktur-och-presenterar-ny-koncernledning/","category":0,"hideDateAndTime":false},{"heading":"Knowit vinner europeisk försäkringsaffär","published":"2026-08-18","label":"Pressmeddelande","url":"/nyheter-press/knowit-vinner-europeisk-forsakringsaffar/","category":0,"hideDateAndTime":false},{"heading":"Fredrik Ekerhovd utses till ordinarie vd och koncernchef för Knowit","published":"2026-08-11","label":"Pressmeddelande","url":"/nyheter-press/fredrik-ekerhovd-utses-till-ordinarie-vd-och-koncernchef-for-knowit/","category":0,"hideDateAndTime":false}],"buttonLinkItem":{"buttonLink":"/nyheter-press/","buttonText":"Fler nyheter"},"contentType":"NewsListingBlock","contentGuid":"c700e944-bd10-4bc4-85bd-aeb6c3131795","blockId":null}],"photographer":"Photo: ","schemaInput":{"kind":"organization","data":{"url":"https://www.knowit.se/","name":"Knowit","legalName":"Knowit AB","iso6523
1523Codes":["0007:5563910354"],"description":"Knowit är en nordisk konsultverksamhet som hjälper företag, myndigheter och organisationer att lyckas i den digitala transformationen. Med kompetens inom AI, teknik, strategi och design utvecklar vi lösningar som skapar kundvärde och stärker digital motstÃ¥ndskraft. Verksamheten är organiserad i fem affärsomrÃ¥den â Solutions, Experience, Connectivity, Insight och Products â som tillsammans erbjuder kompetens inom bland annat systemutveckling, datadrivna kundupplevelser, AI, molntjänster, cybersäkerhet, IP-baserade produktlösningar och managementkonsulting. Kompetenser frÃ¥n olika affärsomrÃ¥den kombineras ofta i kunduppdrag.\n\nKnowit grundades 1990 och har omkring 3 700 medarbetare, huvudsakligen i Norden, med verksamhet även i Polen, Tyskland och Serbien. Knowit AB (publ) är noterat pÃ¥ Nasdaq Stockholm Mid Cap.","address":{"streetAddress":"Sveavägen 20","postalCode":"103 68","addressRegion":"Stockholm","addressCountry":"SWE"},"sameAs":["https://www.linkedin.com/company/knowit"],"slogan":"A sustainable and humane society. ","logo":"https://kest01mstrc9jb4prod.dxcloud.episerver.net/globalassets/image-bank/logotype/knowit-logoweb-black.svg","ethicsPolicy":"https://kest01mstrc9jb4prod.dxcloud.episerver.net/link/f2be9884bc4a4f81a25fe8ebe1dcc923.aspx"}},"breadcrumbs":[{"name":"Startsida","url":"/","isSelected":true}],"schemaData":{"@context":"https://schema.org","@type":"Organization","@id":"https://www.knowit.se/#organization","url":"https://www.knowit.se/","name":"Knowit","legalName":"Knowit AB","iso6523Code":["0007:5563910354"],"description":"Knowit är en nordisk konsultverksamhet som hjälper företag, myndigheter och organisationer att lyckas i den digitala transformationen. Med kompetens inom AI, teknik, strategi och design utvecklar vi lösningar som skapar kundvärde och stärker digital motstÃ¥ndskraft. Verksamheten är organiserad i fem affärsomrÃ¥den â Solutions, Experience, Connectivity, Insight och Products â som tillsammans erbjuder kompetens inom bland annat systemutveckling, datadrivna kundupplevelser, AI, molntjänster, cybersäkerhet, IP-baserade produktlösningar och managementkonsulting. Kompetenser frÃ¥n olika affärsomrÃ¥den kombineras ofta i kunduppdrag.\n\nKnowit grundades 1990 och har omkring 3 700 medarbetare, huvudsakligen i Norden, med verksamhet även i Polen, Tyskland och Serbien. Knowit AB (publ) är noterat pÃ¥ Nasdaq Stockholm Mid Cap.","address":{"@type":"PostalAddress","streetAddress":"Sveavägen 20","postalCode":"103 68","addressRegion":"Stockholm","addressCountry":"SWE"},"logo":"https://kest01mstrc9jb4prod.dxcloud.episerver.net/globalassets/image-bank/logotype/knowit-logoweb-black.svg","sameAs":["https://www.linkedin.com/company/knowit"],"slogan":"A sustainable and humane society. ","ethicsPolicy":"https://kest01mstrc9jb4prod.dxcloud.episerver.net/link/f2be9884bc4a4f81a25fe8ebe1dcc923.aspx"},"ENVIRONMENT":"production","app":{"footerData":{"heading":" Become one of us","preamble":"Tillsammans med vÃ¥ra kunder tar vi fram bra grejer som gör deras och vÃ¥r vardag enklare. Vill du vara med?","infoButton":{"src":"https://www.knowit.se/karriar/lediga-jobb/","title":"Hitta ditt nya jobb här"},"copyright":"© Knowit AB 2026 ","footerNavigation":[{"columnText":"Kontakt","columnLink":null,"phoneNumber":"08 700 66 00","emailAddress":"[email protected]","contactField":"\u003cp\u003e\u003cstrong\u003eKnowit AB\u003c/strong\u003e \u003cbr /\u003eBox 3383\u003cbr /\u003e103 68 Stockholm\u003cbr /\u003eSverige\u003c/p\u003e\n\u003cp\u003eBes\u0026ouml;k oss: Sveav\u0026auml;gen 20\u003c/p\u003e","links":null},{"columnText":"Om Knowit","columnLink":null,"phoneNumber":null,"emailAddress":null,"contactField":null,"links":[{"url":"https://www.knowit.se/om-knowit/","title":"Om oss","target":null,"rel":null,"name":"Om Knowit"},{"url":"https://www.knowit.se/om-knowit/hallbarhet/","title":"HÃ¥llbarhet","target":null,"rel":null,"name":"HÃ¥llbarhet"},{"url":"https://www.knowit.se/nyheter-press/","title":"Nyheter \u0026 press","target":null,"rel":null,"name":"Nyheter \u0026 press"},{"url":"https://www.knowit.se/om-knowit/partners/","title":null,"target":null,"rel":null,"name":"Partners"},{"url":"https://www.knowit.se/business-portal/ramavtal/","title":"Ramavtal","target":null,"rel":null,"name":"Ramavtal"},{"url":"https://blogg.knowit.se/","title":"Blogg","target":"_blank","rel":null,"name":"Blogg"}]},{"columnText":"AffärsomrÃ¥den","columnLink":null,"phoneNumber":null,"emailAddress":null,"contactField":null,"links":[{"url":"https://www.knowit.se/om-knowit/solutions/","title":"Knowit Solutions","target":null,"rel":null,"name":"Knowit Solutions"},{"url":"https://www.knowit.se/om-knowit/experience/","title":"Knowit Experience","target":null,"rel":null,"name":"Knowit Experience"},{"url":"https://www.knowit.se/om-knowit/connectivity/","title":"Knowit Connectivity","target":null,"rel":null,"name":"Knowit Connectivity"},{"url":"https://www.knowit.se/om-knowit/insight/","title":"Knowit Insight","target":null,"rel":null,"name":"Knowit Insight"},{"url":"https://www.knowit.se/om-knowit/products/","title":"Knowit Products","target":null,"rel":null,"name":"Knowit Products"}]}],"footerLinks":[{"url":"https://www.knowit.se/misc/cookie-policy/","title":"Knowits Cookie policy","target":null,"name":"Cookie policy","textUnderlineOffset":"5px","textDecoration":"underline"},{"url":"https://www.knowit.se/misc/hantering-av-personuppgifter/","title":null,"target":null,"name":"Hantering av personuppgifter","textUnderlineOffset":"5px","textDecoration":"underline"},{"url":"https://knowit.whistlelink.com/","title":null,"target":"_blank","name":"Whistleblower","textUnderlineOffset":"5px","textDecoration":"underline"}],"socialmediaLinks":[{"url":"https://www.linkedin.com/company/knowit","title":"Knowits Linkedinsida","target":"_blank","name":"Linkedin","textUnderlineOffset":"5px","textDecoration":"underline"},{"url":"https://www.facebook.com/weareknowit","title":"Knowits Facebooksida","target":"_blank","name":"Facebook","textUnderlineOffset":"5px","textDecoration":"underline"},{"url":"https://www.instagram.com/weareknowit/","title":"Knowits Instagramsida","target":"_blank","name":"Instagram","textUnderlineOffset":"5px","textDecoration":"underline"}]},"headerData":{"navigation":null,"priorityLinks":[{"url":"https://www.knowit.se/vart-erbjudande/","title":"VÃ¥rt erbjudande","target":"","name":null},{"url":"https://www.knowit.se/kunder/","title":"Kunder","target":"","name":null},{"url":"https://www.knowit.se/karriar/","title":"Karriär","target":"","name":null}],"headerLogo":"https://www.knowit.se/contentassets/048e04e9abca42e0bd83aacf7ed0b338/logotype-knowit-digital-white_large.svg","favicon":"https://www.knowit.se/contentassets/048e04e9abca42e0bd83aacf7ed0b338/knowit_favicon.png"},"megamenu":{"priorityLinks":[{"name":"VÃ¥rt erbjudande","url":"https://www.knowit.se/vart-erbjudande/","secondaryTitle":"Alla erbjudanden","childPages":[{"name":"Management consulting","url":"https://www.knowit.se/vart-erbjudande/management-consulting/","childPages":[{"name":"Operational Performance","url":"https://www.knowit.se/vart-erbjudande/management-consulting/operational-performance/","childPages":null},{"name":"Commercial Excellence","url":"https://www.knowit.se/vart-erbjudande/management-consulting/commercial-excellence/","childPages":null},{"name":"Tech Transformation","url":"https://www.knowit.se/vart-erbjudande/management-consulting/tech-transformation/","childPages":null},{"name":"Strategy \u0026 Growth","url":"https://www.knowit.se/vart-erbjudande/management-consulting/strategy-growth/","childPages":null}]},{"name":"ERP-rÃ¥dgivning \u0026 affärssystem","url":"https://www.knowit.se/vart-erbjudande/affarssystem-erp/","childPages":[{"name":"ERP Strategy \u0026 Transformation","url":"https://www.knowit.se/vart-erbjudande/affarssystem-erp/erp-strategy--transformation/","childPages":null},{"name":"Microsoft Dynamics 365","url":"https://www.knowit.se/vart-erbjudande/affarssystem-erp/microsoft-dynamics-365/","childPages":null}]},{"name":"Digital produktutveckling \u0026 IT-tjänster","url":"https://www.knowit.se/vart-erbjudande/digital-produktutveckling-it-tjanster/","childPages":[{"name":"Mobil- \u0026 apputveckling","url":"https://www.knowit.se/vart-erbjudande/digital-produktutveckling-it-tjanster/mobil-apputveckling/","childPages":null},{"name":"Webbutveckling","url":"https://www.knowit.se/vart-erbjudande/digital-produktutveckling-it-tjanster/webbutveckling/","childPages":null},{"name":"Test \u0026 kvalitetssäkring","url":"https://www.knowit.se/vart-erbjudande/digital-produktutveckling-it-tjanster/test-kvalitetssakring/","childPages":null},{"name":"Systemintegration","url":"https://www.knowit.se/vart-erbjudande/digital-produktutveckling-it-tjanster/systemintegration/","childPages":null},{"name":"Nätverk \u0026 datacenter","url":"https://www.knowit.se/vart-erbjudande/digital-produktutveckling-it-tjanster/natverk-datacenter/","childPages":null},{"name":"IoT","url":"https://www.knowit.se/vart-erbjudande/digital-produktutveckling-it-tjanster/iot/","childPages":null},{"name":"DevOps \u0026 CI/CD automation","url":"https://www.knowit.se/vart-erbjudande/digital-produktutveckling-it-tjanster/devops-cicd-automation/","childPages":null},{"name":"Inbyggda system","url":"https://www.knowit.se/vart-erbjudande/digital-produktutveckling-it-tjanster/inbyggda-system/","childPages":null}]},{"name":"Cloud","url":"https://www.knowit.se/vart-erbjudande/cloud/","childPages":[{"name":"Google Worksp
1523ace","url":"https://www.knowit.se/vart-erbjudande/cloud/google-workspace/","childPages":null}]},{"name":"Försvar \u0026 säkerhet","url":"https://www.knowit.se/vart-erbjudande/forsvarslosningar/","childPages":[{"name":"Konsulttjänster","url":"https://www.knowit.se/vart-erbjudande/forsvarslosningar/konsulttjanster-forsvar/","childPages":null},{"name":"Produktlösningar","url":"https://www.knowit.se/vart-erbjudande/forsvarslosningar/produktlosningar-inom-forsvar-och-sakerhet/","childPages":null}]},{"name":"Cybersäkerhet \u0026 juridik","url":"https://www.knowit.se/vart-erbjudande/cybersakerhet-och-juridik/","childPages":[{"name":"Säkra och legala molntjänster","url":"https://www.knowit.se/vart-erbjudande/cloud/","childPages":null},{"name":"Strategi för cybersäkerhet, juridik och integritet","url":"https://www.knowit.se/vart-erbjudande/cybersakerhet-och-juridik/strategi-for-cybersakerhet-juridik-och-integritet/","childPages":null},{"name":"Dataskydd, e-förvaltning och it-rätt","url":"https://www.knowit.se/vart-erbjudande/cybersakerhet-och-juridik/dataskydd-e-forvaltning-och-it-ratt/","childPages":null},{"name":"Säker och laglig utveckling av system och produkter","url":"https://www.knowit.se/vart-erbjudande/cybersakerhet-och-juridik/saker-och-laglig-utveckling-av-system-och-produkter/","childPages":null},{"name":"Identitets- och behörighetshantering (IAM)","url":"https://www.knowit.se/vart-erbjudande/cybersakerhet-och-juridik/identitets--och-behorighetshantering-iam/","childPages":null},{"name":"Säkerhetsgranskningar inklusive penetrationstester","url":"https://www.knowit.se/vart-erbjudande/cybersakerhet-och-juridik/sakerhetsgranskningar-inklusive-penetrationstester/","childPages":null},{"name":"Ledningssystem och certifiering","url":"https://www.knowit.se/vart-erbjudande/cybersakerhet-och-juridik/ledningssystem-och-certifiering/","childPages":null},{"name":"Säkerhetsskydd","url":"https://www.knowit.se/vart-erbjudande/cybersakerhet-och-juridik/sakerhetsskydd/","childPages":null},{"name":"Säkerhet \u0026 juridik för AI","url":"https://www.knowit.se/vart-erbjudande/ai-data/sakerhet-och-juridik-for-ai/","childPages":null},{"name":"Cybersäkerhet för styrelse och ledning","url":"https://www.knowit.se/vart-erbjudande/cybersakerhet-och-juridik/cybersakerhet-for-styrelse-och-ledning/","childPages":null}]},{"name":"AI \u0026 data","url":"https://www.knowit.se/vart-erbjudande/ai-data/","childPages":[{"name":"Artificiell Intelligens (AI)","url":"https://www.knowit.se/vart-erbjudande/ai-data/artificiell-intelligens-ai/","childPages":null},{"name":"Data Governance \u0026 Master Data Management","url":"https://www.knowit.se/vart-erbjudande/ai-data/data-governance-master-data-management/","childPages":null},{"name":"Data Management \u0026 Data Engineering","url":"https://www.knowit.se/vart-erbjudande/ai-data/data-management-data-engineering/","childPages":null},{"name":"Analytics \u0026 Business Intelligence","url":"https://www.knowit.se/vart-erbjudande/ai-data/analytics-business-intelligence/","childPages":null},{"name":"Säkerhet och juridik för AI","url":"https://www.knowit.se/vart-erbjudande/ai-data/sakerhet-och-juridik-for-ai/","childPages":null}]},{"name":"Produkter","url":"https://www.knowit.se/vart-erbjudande/produkter/","childPages":[{"name":"Smart Mobility","url":"https://www.knowit.se/vart-erbjudande/produkter/smart-mobility/","childPages":null},{"name":"Trusted Identities","url":"https://www.knowit.se/vart-erbjudande/produkter/trusted-identities-secure-solutions/","childPages":null},{"name":"Signport","url":"https://www.knowit.se/vart-erbjudande/produkter/signport/","childPages":null},{"name":"Klara","url":"https://www.knowit.se/vart-erbjudande/produkter/klara/","childPages":null}]},{"name":"Bank \u0026 försäkring","url":"https://www.knowit.se/vart-erbjudande/bank--finans/","childPages":[{"name":"i2i","url":"https://www.knowit.se/vart-erbjudande/bank--finans/i2i/","childPages":null},{"name":"Governance Platform","url":"https://www.knowit.se/vart-erbjudande/bank--finans/governance-platform/","childPages":null},{"name":"Dploy","url":"https://www.knowit.se/vart-erbjudande/bank--finans/dploy/","childPages":null},{"name":"Bank Connect","url":"https://www.knowit.se/vart-erbjudande/bank--finans/bank-connect/","childPages":null},{"name":"Rådgivning","url":"https://www.knowit.se/vart-erbjudande/bank--finans/radgivning/","childPages":null},{"name":"Systemintegration","url":"https://www.knowit.se/vart-erbjudande/bank--finans/systemintegration/","childPages":null}]},{"name":"Commerce","url":"https://www.knowit.se/vart-erbjudande/e-handel/","childPages":null},{"name":"Hållbarhetstjänster","url":"https://www.knowit.se/vart-erbjudande/hallbarhetstjanster/","childPages":null},{"name":"Digital Experience","url":"https://www.knowit.se/vart-erbjudande/digital-experience/","childPages":[{"name":"Tillgänglighet","url":"https://www.knowit.se/vart-erbjudande/digital-experience/tillganglighet/","childPages":null},{"name":"Design \u0026 UX","url":"https://www.knowit.se/vart-erbjudande/digital-experience/design-ux/","childPages":null}]},{"name":"Brand Intelligence","url":"https://www.knowit.se/vart-erbjudande/brand-intelligence/","childPages":null}]},{"name":"Kunder","url":"https://www.knowit.se/kunder/","secondaryTitle":null,"childPages":null},{"name":"Karriär","url":"https://www.knowit.se/karriar/","secondaryTitle":null,"childPages":null}],"secondaryLinks":[{"name":"Om oss","url":"https://www.knowit.se/om-knowit/"},{"name":"Nyheter och press","url":"https://www.knowit.se/nyheter-press/"},{"name":"Event och kurser","url":"https://www.knowit.se/event/"},{"name":"Investor Relations","url":"https://www.knowit.se/investor-relations/"},{"name":"Kontakt","url":"https://www.knowit.se/kontakt/"}],"countrySelectionLinks":[{"url":"https://www.knowit.de/","title":"DE - Deutschland","target":"_self","rel":null,"name":"DE - Deutschland"},{"url":"https://www.knowit.dk/","title":"DK - Denmark","target":"_self","rel":null,"name":"DK - Denmark"},{"url":"https://www.knowit.eu/","title":"EU - Global","target":"_self","rel":null,"name":"EU - Global"},{"url":"https://www.knowit.fi/","title":"FI - Suomi","target":"_self","rel":null,"name":"FI - Suomi"},{"url":"https://www.knowit.no/","title":"NO - Norge","target":"_self","rel":null,"name":"NO - Norge"},{"url":"https://www.knowit.pl/","title":"PL - Polska","target":"_self","rel":null,"name":"PL - Polska"},{"url":"https://www.knowit.se/","title":"SE - Sverige","target":"_self","rel":null,"name":"SE - Sverige"}],"quickLinks":[{"url":"https://blogg.knowit.se/","title":"Blogg","target":"_blank","rel":null,"name":"Blogg"},{"url":"https://www.knowit.se/om-knowit/partners/","title":"Partners","target":null,"rel":null,"name":"Partners"},{"url":"https://www.knowit.se/om-knowit/hallbarhet/","title":"Hållbarhet","target":null,"rel":null,"name":"Hållbarhet"}],"openMegaMenuText":"Meny","closeMegaMenuText":"Stäng","countrySelectionMegaMenuText":"Land","backButtonText":"Tillbaka"},"generalTexts":{"relatedLinksText":"Se också:","skipNavigationText":"Hoppa till huvudinnehåll","ariaLabelText":"Till startsidan på Knowit"},"llmRichText":"# Knowit\n\u003e Knowit är ett konsultbolag som hjälper företag och organisationer att lyckas i den digitala transformationen. Miljontals människor använder varje dag de lösningar vi tagit fram. Idag är vi cirka 3 700 medarbetare huvudsakligen i Norden, men även verksamheter i Tyskland och Polen, som tillsammans med kunder och partners utvecklar innovativa lösningar som bidrar till att skapa ett hållbart och mänskligt samhälle där vi själva vill leva och utvecklas. Knowit är noterat på Nasdaq Stockholm och medlem i UN Global Compact, vilket innebär att vi ska driva affärer på ett etiskt sätt med respekt för egna och andras medarbetare, samt minimera den negativa miljöpåverkan. Vi har fem affärsområden där vi jobbar för att skapa ett hållbart och mänskligt samhälle tillsammans med våra kunder.\n \n## Om Knowit\n- [Om oss](https://www.knowit.se/om-knowit/): Mer om Knowit som organisation.\n- [Vårt erbjudande](https://www.knowit.se/vart-erbjudande/): Hur Knowit kan hjälpa din verksamhet.\n- [Lediga jobb](https://www.knowit.se/karriar/lediga-jobb/): Lediga tjänster på våra svenska kontor.\n- [Kontakta oss](https://www.knowit.se/kontakt/): Kontaktuppgifter och lista över svenska kontor samt hänvisningar till andra länder där vi finns.\n- [Partners](https://www.knowit.se/om-knowit/partners/): Vilka affärspartners vi har och kan erbjuda dig lösningar inom.\n- [Kundcase](https://www.knowit.se/kunder/): Samarbeten och leveranser som gör oss stolta.\n- [Hållbarhetsarbete](https://www.knowit.se/om-knowit/hallbarhet/): Hur vi jobbar med hållbarhet och kan hjälpa andra att göra detsamma.\n- [Riktlinjer \u0026 policydokument](https://www.knowit.se/om-knowit/riktlinjer-och-policydokument/): Interna regelverk och policydokument som sätter Knowits spelregler som schysst affärspartner och arbetsgivare.\n \n## Nyheter \u0026 Investerare\n- [Nyheter \u0026 press](https://www.knowit.se/nyheter-press/): Pressmeddelanden och nyheter om Knowit.\n- [Investor relations](https://www.knowit.se/investor-relations/): Finansiell information för aktieägare, investerare och anal
1523ytiker. Knowit AB (KNOW) är noterat pÃ¥ Nasdaq Stockholm.\n- [Finansiella rapporter \u0026 presentationer](https://www.knowit.se/investor-relations/rapporter-presentationer/): Kvartalsrapporter, Ã¥rsredovisningar och presentationer.\n \n## Teknologipartners\n- [Microsoft](https://www.knowit.se/om-knowit/partners/microsoft/): Knowit är Microsoft Solutions Partner inom Cloud \u0026 AI Platforms, AI Business Solutions och Security, har erkännandena Microsoft Cloud och Support Services, och är Azure Expert MSP samt Microsoft Fabric Featured Partner. 270+ certifierade Microsoft-experter, 300+ Microsoft-projekt levererade Ã¥rligen.\n- [AWS (Amazon Web Services)](https://www.knowit.se/om-knowit/partners/amazon-web-services/): Knowits partnerskap med AWS inom molntjänster och molnmigrering.\n- [Databricks](https://www.knowit.se/om-knowit/partners/databricks/): Knowits partnerskap med Databricks inom data- och AI-plattformar.\n- [Optimizely](https://www.knowit.se/om-knowit/partners/optimizely/): Knowits partnerskap med Optimizely inom digitala upplevelser och innehÃ¥llshantering.\n- [SiteVision](https://www.knowit.se/om-knowit/partners/sitevision/): Knowits partnerskap med SiteVision inom CMS-lösningar, vanligt inom offentlig sektor.\n- [Norce](https://www.knowit.se/om-knowit/partners/norce/): Knowits partnerskap med Norce inom e-handelsplattformar.\n \n## AffärsomrÃ¥de: Knowit Solutions\nMed skräddarsydda systemlösningar säkerställer vi som IT-konsulter att vÃ¥ra kunders verksamheter utvecklas i takt med att affärsbehov, teknik och hÃ¥llbarhetsmÃ¥l förändras. Vi skapar motstÃ¥ndskraftiga digitala lösningar som gör skillnad för organisationer och människor.\n[Knowit Solutions](https://www.knowit.se/om-knowit/solutions/): Mer om affärsomrÃ¥det Knowit Solutions\n**Teknologi kombinerad med erfarenhet och spetskompetens**\nKnowit Solutions har lÃ¥ng erfarenhet och djup teknisk kompetens frÃ¥n flera olika branscher. Med uppdrag inom offentlig sektor och hos stora och medelstora bolag inom allt frÃ¥n telekom till bank och finans skapar vi morgondagens skräddarsydda systemlösningar.\nKnowit Solutions är experter inom:\n- [AI \u0026 data analytics](https://www.knowit.se/vart-erbjudande/ai-data/): Utveckla din verksamhet, skapa innovativa tjänster och lösningar och säkerställa en mer datadriven affärsmodell.\n- [Digital produktutveckling \u0026 IT-tjänster](https://www.knowit.se/vart-erbjudande/digital-produktutveckling-it-tjanster/): Integrera befintliga system eller utveckla nya lösningar.\n- [Cloud Solutions](https://www.knowit.se/vart-erbjudande/cloud/): FÃ¥ ut full effekt av din molnsatsning. Vi stöttar med allt ifrÃ¥n arkitektur och migrering till säker, resilient och compliant molninfrastruktur samt utveckling av cloud-native och AI-drivna applikationer.\nKundcase inom Knowit Solutions:\n- [Dataplattform hjälper LKAB att fokusera pÃ¥ hÃ¥llbar gruvdrift](https://www.knowit.se/kunder/dataplattform-hjalper-lkab-att-fokusera-pa-hallbar-gruvdrift/): Molnbaserad dataplattform som samlar data frÃ¥n gruvdrift, ekonomi, arbetsmiljö, IT, logistik och försäljning.\n \n## AffärsomrÃ¥de: Knowit Experience\nSom Nordens största webbyrÃ¥ kombinerar vi data, design, teknik och marknadsföring för att skapa datadrivna kundupplevelser som stärker varumärken och driver affärer. Med expertis inom e-handel, digitala plattformar och marknadsföring hjälper vi organisationer att växa lÃ¥ngsiktigt.\n[Knowit Experience](https://www.knowit.se/om-knowit/experience/): Mer om affärsomrÃ¥det Knowit Experience\n**FrÃ¥n e-handel till offentlig sektor â digital innovation som gör skillnad**\nVi täcker hela spektrumet av digital utveckling och kundupplevelser genom att vara experter inom:\n- Digitala tjänster och plattformar â webb, mobil och appar\n- UX och tjänstedesign â interaktiv design, service design, business design\n- E-handel och digital handel â frÃ¥n plattform till kundresa\n- Varumärkesstrategi och visuell identitet â bygg varumärke som hÃ¥ller\n- Datadriven och automatiserad marknadsföring â nÃ¥ rätt människor, i rätt tid\n- Innovation och affärsutveckling â skapa nya digitala affärsmodeller\nKundcase inom Knowit Experience:\n- [RFID förändrade kundbeteendet hos MQ â 19 % av alla onlineköp sker nu via reservation](https://www.knowit.se/kunder/rfid-forandrade-kundbeteendet-hos-mq--19--av-alla-onlinekop-sker-nu-via-reservation/): Med realtidsdata genom hela kedjan har kundresan blivit mer tillförlitlig, samti
1523digt som ett förändrat kundbeteende blivit allt mer pÃ¥tagligt.\n- [Procurator förenklar B2B-kundresan med ny e-handel byggd pÃ¥ Knowit Launchpad](https://www.knowit.se/kunder/procurator-forenklar-b2b-kundresan-med-ny-e-handel-byggd-pa-knowit-launchpad/): Digital plattform som förenklar inköp, stärker kundresan och driver tillväxt.\n- [Fremias nya sajt har fokus pÃ¥ användaren och laddar 92 procent snabbare](https://www.knowit.se/kunder/fremias-nya-sajt-har-fokus-pa-anvandaren-och-laddar-92procent-snabbare/): En plattform med bättre prestanda, smartare integrationer och förbättrad medlemsservice.\n- [Boxon revolutionerar förpackningsindustrin med AI-boten AIDEN](https://www.knowit.se/kunder/boxon-revolutionerar-forpackningsindustrin-med-ai-boten-aiden/): En av branschens första AI-botar för förpackningsrekommendationer.\n- [BEWI RAW â ny webb lanserades rekordsnabbt med AI-native arbetssätt](https://www.knowit.se/kunder/bewi-raw-nya-webb-lanserades-rekordsnabbt-med-ai-native-arbetssatt/): Exempel pÃ¥ hur Knowit själva använder AI-native metodik i leveransen.\n \n## AffärsomrÃ¥de: Knowit Connectivity\nNästa generations lösningar utvecklas tillsammans med vÃ¥ra kunders R\u0026D-organisationer. Som specialister pÃ¥ inbyggda system, molnapplikationer, IoT-plattformar och säkerhet, stärker vi vÃ¥ra kunders konkurrenskraft.\n[Knowit Connectivity](https://www.knowit.se/om-knowit/connectivity/): Mer om affärsomrÃ¥det Knowit Connectivity\n**Experter inom kommunikationsteknik**\nKnowit Connectivity är experter pÃ¥ inbyggda system och bygger en säker och uppkopplad värld i nära samarbete med företagens R\u0026D-avdelningar. Ett bevis pÃ¥ detta är att vi fÃ¥tt nöjet att samarbeta med mÃ¥nga av vÃ¥ra kunder i över tio Ã¥rs tid.\nKnowit Connectivity är experter inom:\n- [Digital produktutveckling \u0026 IT-tjänster](https://www.knowit.se/vart-erbjudande/digital-produktutveckling-it-tjanster/): Integrera befintliga system eller utveckla nya lösningar.\n- [Cloud Solutions](https://www.knowit.se/vart-erbjudande/cloud/): FÃ¥ ut full effekt av din molnsatsning. Vi stöttar med allt ifrÃ¥n arkitektur och migrering till säker, resilient och compliant molninfrastruktur samt utveckling av cloud-native och AI-drivna applikationer.\nKundcase inom Knowit Connectivity:\n- [The making of IoT â Automower® Connect](https://www.knowit.se/kunder/the-making-of-iot-automower-connect/): Hur Knowit hjälpte Husqvarna koppla upp sina robotgräsklippare mot molnet.\n \n## AffärsomrÃ¥de: Knowit Insight\nManagementkonsulter och specialister inom cybersäkerhet, juridik och försvar som hjälper organisationer att förbättra operativ effektivitet, driva innovation och skapa nya affärsmöjligheter.\n[Knowit Insight](https://www.knowit.se/om-knowit/insight/): Mer om affärsomrÃ¥det Knowit Insight\n**Tar fram det bästa i nordiskt beslutsfattande**\nVÃ¥r expertis sträcker sig frÃ¥n cybersäkerhet, juridik, försvar och hÃ¥llbarhet till strategi, förändringsledning och implementation. I ett direkt och faktabaserat samarbete driver vi organisationsutveckling tillsammans med beslutsfattare inom den privata, offentliga och ideella sektorn.\nKnowit Insight är experter inom:\n- [Strategy \u0026 Growth](https://www.knowit.se/vart-erbjudande/management-consulting/strategy-growth/): Genom innovation, M\u0026A och smarta strategier hjälper vi er att ta nästa steg i takt med marknadens utveckling.\n- [Tech Transformation](https://www.knowit.se/vart-erbjudande/management-consulting/tech-transformation/): Knowits managementkonsulter arbetar i skärningspunkten mellan affär och IT och hjälper dig att fÃ¥ styrningsmodell, strategi och sourcing-struktur pÃ¥ plats.\n- [Commercial Excellence](https://www.knowit.se/vart-erbjudande/management-consulting/commercial-excellence/): Med Commercial Excellence hjälper vÃ¥ra managementkonsulter dig att optimera säljprocesser, prissättning och kundupplevelse för att driva lÃ¥ngsiktigt affärsvärde.\n- [Operational performance](https://www.knowit.se/vart-erbjudande/management-consulting/operational-performance/): VÃ¥ra managementkonsulter utmanar arbetssätt, transformerar operativa modeller och gör processer till drivkrafter för framgÃ¥ng.\n- [ESG \u0026 digitala hÃ¥llbarhetstjänster](https://www.knowit.se/vart-erbjudande/hallbarhetstjanster/): Klimatutmaning, skärpta ESG-krav och ökade förväntningar pÃ¥ transparens gör hÃ¥llbarhet till en affärskritisk frÃ¥ga.\n- [Försvar \u0026 säkerhet](https://www.knowit.se/vart-erbjudande/forsvarslosningar/): Knowit bidrar till att stärka Sveriges och Europas motstÃ¥ndskraft genom att stödja myndigheter, försvarsindustri och strategiska partners med teknik och kompetens som skyddar demokrati, frihet och ett öppet samhälle.\n- [CybersÃ
1523¤kerhet \u0026 juridik](https://www.knowit.se/vart-erbjudande/cybersakerhet-och-juridik/): Vi hjälper dig att integrera säkerhet och regelefterlevnad i affären, skapa nya möjligheter och bidra till ett mer motstÃ¥ndskraftigt samhälle.\nKundcase inom Knowit Insight:\n- [Microsoft Sustainability Manager stärker Stora Ensos klimatrapportering](https://www.knowit.se/kunder/microsoft-sustainability-manager-starker-stora-ensos-klimatrapportering/): Implementation hos Stora Enso Packaging Solutions som automatiserade klimatrapporteringen pÃ¥ tvÃ¥ produktionsenheter.\n \n## AffärsomrÃ¥de: Knowit Products\nVi utvecklar digitala lösningar som används av den offentliga och privata sektorn, inom finans och försäkring, försvar, informationssäkerhet och informationsförvaltning. VÃ¥r leverans ligger mellan färdiga SaaS-produkter och konsulttjänster, vilket ger kunder skräddarsydda lösningar, tryggt förankrade i befintlig IP.\n[Knowit Products](https://www.knowit.se/om-knowit/products/): Mer om affärsomrÃ¥det Knowit Products\n**Befintlig IP, skräddarsydd efter era behov**\nVi verkar i en miljö med IP- och plattformsbaserad verksamhet där marknadens efterfrÃ¥gan ökar snabbt. Med vÃ¥ra kompetenta team, innovationsförmÃ¥ga och smarta produkter â bland annat Signport, Klara, Dploy och BlueGo â skapar vi betydande värde och digital motstÃ¥ndskraft för vÃ¥ra kunder.\nKnowit Products är experter inom:\n- [Smart mobility](https://www.knowit.se/vart-erbjudande/produkter/smart-mobility/): Vi ser till att du pÃ¥ ett hÃ¥llbart sätt alltid är uppkopplad, säker, samt har full visibilitet över flödet (bland annat via vÃ¥r Bluetooth-lösning BlueGo).\n- [Försvar \u0026 säkerhet](https://www.knowit.se/vart-erbjudande/forsvarslosningar/): Knowit bidrar till att stärka Sveriges och Europas motstÃ¥ndskraft genom att stödja myndigheter, försvarsindustri och strategiska partners med teknik och kompetens som skyddar demokrati, frihet och ett öppet samhälle.\n- [Trusted Identities](https://www.knowit.se/vart-erbjudande/produkter/trusted-identities-secure-solutions/): Det som gör vÃ¥r strategi unik är vÃ¥rt breda erbjudande inom identitets- och behörighetshantering som inkluderar styrning, fristÃ¥ende e-underskrifter (vÃ¥r tjänst Signport), samt avancerade kryptolösningar.\n- [Digitalisering och fintechlösningar för bank \u0026 försäkring](https://www.knowit.se/vart-erbjudande/bank--finans/): VÃ¥ra fintech-experter digitaliserar och automatiserar kreditprocesser, försäkringsflöden, tar fram effektivare betalflöden och levererar skalbara systemintegrationer, bland annat via vÃ¥r bankplattform Dploy.\nKundcase inom Knowit Products:\n- [SÃ¥ hanterar ICA Försäkring över en miljard kronor i premievolym](https://www.knowit.se/kunder/sa-hanterar-ica-forsakring-over-en-miljard-kronor-i-premievolym/): Exempel pÃ¥ leverans inom bank- och försäkringssektorn.\n \n## Optional\n- [Sitemap](https://www.knowit.se/sitemap.xml): XML-sajtkarta över Knowits indexerbara sidor.","searchSettings":{"searchLink":{"url":"https://www.knowit.se/sok/","title":"Sök"},"noResultsTextSearchPage":"Sökningen gav inga resultat tyvärr. ","searchLabel":"Sök","srCloseLabel":"Stäng","placeholderText":"Ange ett sökord","resultText":"träffar pÃ¥ ","batchText":"Visa fler sökträffar"},"IMAGE_URL":"https://www.knowit.se","IMAGE_HOST":"https://kest01mstrc9jb4prod.dxcloud.episerver.net","locale":"sv","isStartPage":true,"host":"https://www.knowit.se","instrumentationKey":"a7755278-880f-41e9-a09d-f91442e32100"},"locale":"sv","host":"https://www.knowit.se"},"__N_SSP":true},"page":"/[[...slug]]","query":{},"buildId":"azM-6MnyJRFJ_7YqFlWAP","isFallback":false,"isExperimentalCompile":false,"dynamicIds":[3848],"gssp":true,"scriptLoader":[{"id":"gtm-script","strategy":"afterInteractive","dangerouslySetInnerHTML":{"__html":"\n (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':\n new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],\n j=d.createElement(s),dl=l!='dataLayer'?'\u0026l='+l:'';j.async=true;j.src=\n 'https://www.googletagmanager.com/gtm.js?id='
1523+i+dl;f.parentNode.insertBefore(j,f);\n })(window,document,'script','dataLayer','GTM-K4HQP95');\n "}}]}</script>
1523</body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.