:root{
  --natt:#14163a;
  --lys:#eef1f8;
  --brod:#dbe0f0;
  --dempet:#a3a9cb;
  --strek:rgba(238,241,248,.13);
  --bla:#6cb2e4;
  --aksent:#6cb2e4;
  --dypbla:#27285e;
  --kakao:#c08a63;
  --rod:#e27a66;
  /* Nyanser som før lå som løse hexverdier rundt i fila */
  --aksent-lys:#8cc4ee;
  --dypnatt:#0f1130;
  --kortflate:#191c46;
  --lysflate:#dee6f2;
  --blamork:#0072b1;
  --feil:#c0453b;
  --feil-mork:#b23a30;
  --hvit:#ffffff;
  /* LinkedIn-farger, bare til kortet i linkedin-forhandsvisning.html */
  --li-hvit:#ffffff;
  --li-grunn:#f4f2ee;
  --li-tekst:rgba(0,0,0,.9);
  --li-under:rgba(0,0,0,.6);
  --li-strek:rgba(0,0,0,.08);
  --li-bla:#0a66c2;
  --mal:1180px;
  --topph:72px;
  --kaffe:url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2740%27%20height%3D%2740%27%3E%3Ctext%20x%3D%272%27%20y%3D%2730%27%20font-size%3D%2730%27%3E%E2%98%95%3C%2Ftext%3E%3C%2Fsvg%3E") 10 10, pointer;
}
*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}
#tjenesteliste{scroll-margin-top:calc(var(--topph) + 24px);}
body{
  margin:0;
  background:var(--natt);
  color:var(--lys);
  font-family:"Bricolage Grotesque","Helvetica Neue",Arial,sans-serif;
  font-weight:400;
  line-height:1.6;
  font-feature-settings:"liga" 1,"calt" 1;
  font-variant-numeric:tabular-nums;
  -webkit-font-smoothing:antialiased;
}
::selection{background:var(--aksent);color:var(--natt);}
a{color:inherit;cursor:var(--kaffe);}
button,[role="button"],.kort{cursor:var(--kaffe);}
a:focus-visible,button:focus-visible{outline:2px solid var(--aksent);outline-offset:5px;}
img{max-width:100%;height:auto;}
.skjult{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}
.hopp{position:absolute;left:-9999px;top:0;z-index:100;background:var(--aksent);color:var(--natt);padding:13px 20px;font-weight:600;font-size:16px;text-decoration:none;}
.hopp:focus{left:12px;top:12px;}
.ramme{width:100%;max-width:var(--mal);margin:0 auto;padding:0 28px;}

/* Toppmeny */
.topp{position:fixed;top:0;left:0;right:0;z-index:50;height:var(--topph);display:flex;align-items:center;background:rgba(20,22,58,.9);backdrop-filter:saturate(140%) blur(12px);-webkit-backdrop-filter:saturate(140%) blur(12px);border-bottom:1px solid var(--strek);}
.topp-rad{display:flex;align-items:center;justify-content:space-between;gap:12px 32px;flex-wrap:nowrap;min-width:0;}
.merke{display:block;flex:0 0 auto;text-decoration:none;line-height:0;}
.merke img{width:auto;height:24px;display:block;}
.topp nav{display:flex;gap:28px;flex-wrap:wrap;}
.topp nav a{
  text-decoration:none;font-size:16px;color:var(--dempet);
  padding-bottom:3px;border-bottom:1px solid transparent;transition:color .18s ease,border-color .18s ease;
}
.topp nav a:hover{color:var(--lys);}
.topp nav a[aria-current="page"]{color:var(--lys);border-bottom-color:var(--aksent);}
.meny-knapp{
  display:none;background:none;border:0;padding:8px 4px;margin:-8px -4px;
  flex-direction:column;gap:5px;align-items:flex-end;
}
.meny-knapp span{
  display:block;width:26px;height:2px;background:var(--lys);
  transition:transform .24s ease,opacity .18s ease,width .24s ease;
}
.meny-knapp span:nth-child(2){width:20px;}
.topp.apen .meny-knapp span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.topp.apen .meny-knapp span:nth-child(2){opacity:0;width:26px;}
.topp.apen .meny-knapp span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

/* Forsidehero */
.hero{position:relative;min-height:calc(100svh - var(--topph));display:flex;align-items:center;overflow:hidden;}
.portrett{position:absolute;inset:0 0 0 auto;width:min(58%,880px);z-index:0;}
.portrett img{width:100%;height:100%;object-fit:cover;object-position:52% 22%;display:block;}
.portrett::after{
  content:"";position:absolute;inset:0;
  background:
    linear-gradient(90deg,var(--natt) 0%,rgba(20,22,58,.93) 21%,rgba(20,22,58,.34) 52%,rgba(20,22,58,0) 78%),
    linear-gradient(0deg,rgba(20,22,58,.7) 0%,rgba(20,22,58,0) 36%);
}
.hero .midt{position:relative;z-index:1;padding-top:96px;padding-bottom:96px;}
h1{
  font-size:clamp(46px,7.4vw,96px);
  font-weight:800;line-height:.95;letter-spacing:-.03em;
  font-variation-settings:"opsz" 72;
  margin:0;max-width:11ch;text-wrap:balance;
}
.tagline{font-size:clamp(19px,2.1vw,25px);font-weight:400;line-height:1.35;letter-spacing:-.01em;margin:26px 0 0;max-width:23ch;}
.hero .tagline{max-width:36ch;}
/* Tredje nivå i heroen: det konkrete, under posisjoneringen. */
.hero-under{margin:16px 0 0;font-size:17px;line-height:1.55;color:var(--dempet);max-width:44ch;}
.knapper{display:flex;flex-wrap:wrap;gap:14px;margin-top:44px;}
.knapp,.knapp-tom{display:inline-block;padding:15px 26px;font-size:16px;text-decoration:none;}
.knapp{background:var(--aksent);color:var(--natt);font-weight:600;transition:background .18s ease,transform .18s ease;}
.knapp-tom{border:1px solid var(--strek);color:var(--lys);font-weight:500;transition:border-color .18s ease,transform .18s ease;}
/* Hover bare der det finnes en mus. På berøringsskjerm blir hover
   hengende etter trykket, og knappen står løftet til man trykker et annet sted. */
@media (hover:hover){
  .knapp:hover{background:var(--aksent-lys);transform:translateY(-2px);}
  .lys .knapp:hover{background:var(--blamork);}
  .knapp-tom:hover{border-color:var(--lys);}
}
/* Trykkrespons. Svarer i det fingeren eller musa går ned, ikke når den slippes. */
.knapp:active,.knapp-tom:active,.meny-knapp:active,.kort:active{transform:scale(.97);transition-duration:.1s;}

/* Undersider */
.sidetopp{padding:52px 28px 8px;}
.sidetopp h1{max-width:16ch;}
.sidetopp .tagline{color:var(--dempet);max-width:34ch;}

/* Seksjoner */
section{padding:72px 0;border-top:1px solid var(--strek);}
main > section:first-child{padding-top:48px;}
section.uten-strek{border-top:0;}
/* :where holder spesifisiteten til avsnittsstilen nede, slik at .stor
   under her vinner. Uten det ble ingressen brødtekst inne i en .brod-ramme. */
.brod :where(p){font-size:18px;line-height:1.65;max-width:58ch;margin:0 0 20px;color:var(--brod);}
.brod :where(p:last-child){margin-bottom:0;}
.stor{font-size:clamp(24px,2.9vw,34px);font-weight:500;line-height:1.28;letter-spacing:-.02em;max-width:26ch;margin:0 0 26px;color:var(--lys);}
.dempet{color:var(--dempet) !important;}
.videre{display:inline-block;margin-top:32px;color:var(--bla);text-decoration:none;font-size:17px;border-bottom:1px solid transparent;}
.videre:hover{border-bottom-color:var(--bla);}

/* Rader: tjenester og prosjekter */
.rad{
  display:grid;grid-template-columns:minmax(170px,.32fr) 1fr;gap:8px 48px;
  padding:26px 0;border-top:1px solid var(--strek);align-items:baseline;
}
.rad:last-of-type{border-bottom:1px solid var(--strek);}
.rad h3{font-size:21px;font-weight:600;letter-spacing:-.01em;margin:0;}
.rad p{margin:0;color:var(--dempet);font-size:17px;max-width:54ch;line-height:1.6;}
a.rad{text-decoration:none;color:inherit;}
a.rad:hover h3{color:var(--aksent);}
.tall{margin-top:10px !important;color:var(--lys) !important;font-size:16px !important;}
.tall span{color:var(--dempet);}
.tall span::before{content:"";display:inline-block;width:18px;}

/* Sitat */
blockquote{margin:0;max-width:24ch;}
.sitat{font-size:clamp(28px,4.4vw,52px);font-weight:500;line-height:1.16;letter-spacing:-.025em;margin:0;text-wrap:balance;}
.kilde{margin-top:28px;color:var(--dempet);font-size:16px;}

/* Kontakt */
.kontakt-linjer{display:flex;flex-direction:column;}
.kontakt-linje{
  display:grid;grid-template-columns:minmax(130px,.2fr) 1fr auto;gap:10px 40px;align-items:center;
  padding:28px 0;border-top:1px solid var(--strek);text-decoration:none;color:inherit;
  transition:border-color .22s ease;
}
.kontakt-linje:last-child{border-bottom:1px solid var(--strek);}
.kontakt-linje:hover{border-top-color:var(--aksent);}
.kontakt-linje:hover + .kontakt-linje{border-top-color:var(--aksent);}
.kontakt-linje:last-child:hover{border-bottom-color:var(--aksent);}
.kontakt-merk{
  font-size:13px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;
  color:var(--dempet);transition:color .22s ease;
}
.kontakt-linje:hover .kontakt-merk{color:var(--lys);}
.kontakt-verdi{
  display:flex;align-items:center;gap:14px;
  font-size:clamp(22px,3.1vw,34px);font-weight:600;letter-spacing:-.025em;line-height:1.1;
  transition:color .22s ease;
}
.kontakt-linje:hover .kontakt-verdi{color:var(--aksent);}
.ikon-li{width:.8em;height:.8em;flex:0 0 auto;fill:currentColor;display:block;}
.kontakt-pil{font-size:22px;color:var(--dempet);transition:transform .22s ease,color .22s ease;}
.kontakt-linje:hover .kontakt-pil{color:var(--aksent);transform:translateX(6px);}
.liten-lenke{font-size:18px;color:var(--bla);text-decoration:none;width:fit-content;border-bottom:1px solid transparent;}
.liten-lenke:hover{border-bottom-color:var(--bla);}

/* Spørsmål og svar */
.faq-rad{display:grid;grid-template-columns:1fr .62fr;gap:0 64px;align-items:start;}
.faq-bolk{font-size:13px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--aksent);margin:52px 0 6px;}
.faq-bolk:first-child{margin-top:0;}
.sporsmal{border-top:1px solid var(--strek);}
.sporsmal:last-of-type{border-bottom:1px solid var(--strek);}
.sporsmal summary{
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  padding:20px 0;list-style:none;cursor:var(--kaffe);
}
.sporsmal summary::-webkit-details-marker{display:none;}
.sporsmal summary:focus-visible{outline:2px solid var(--aksent);outline-offset:4px;}
.sporsmal summary h3{font-size:19px;font-weight:600;letter-spacing:-.01em;line-height:1.35;margin:0;}
.sporsmal summary:hover h3{color:var(--aksent);}
.sporsmal summary::after{
  content:"";flex:0 0 auto;width:15px;height:15px;
  background:
    linear-gradient(var(--dempet),var(--dempet)) center/15px 2px no-repeat,
    linear-gradient(var(--dempet),var(--dempet)) center/2px 15px no-repeat;
  transition:transform .22s ease;
}
.sporsmal[open] summary::after{transform:rotate(45deg);}
.sporsmal summary:hover::after{background-image:linear-gradient(var(--aksent),var(--aksent)),linear-gradient(var(--aksent),var(--aksent));}
.sporsmal .svar{padding:0 0 24px;}
.sporsmal .svar p{margin:0 0 16px;max-width:62ch;}
.sporsmal .svar p:last-child{margin-bottom:0;}

.faq-side{position:sticky;top:calc(var(--topph) + 32px);}
.faq-side img{width:100%;height:auto;display:block;}
.faq-kontakt{border:1px solid var(--strek);border-top:0;padding:26px 24px 28px;}
.faq-merk{font-size:13px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--dempet);margin:0 0 12px;}
.faq-epost{font-size:18px;font-weight:600;letter-spacing:-.01em;text-decoration:none;color:var(--lys);border-bottom:1px solid var(--strek);}
.faq-epost:hover{border-bottom-color:var(--aksent);color:var(--aksent);}
.faq-kontakt .knapper{margin-top:24px;}

@media (max-width:900px){
  .faq-rad{grid-template-columns:1fr;gap:56px;}
  .faq-side{position:static;}
  .sporsmal summary h3{font-size:18px;}
}

/* Pilen */
.med-pil{position:relative;}
.pil{
  background:url("data:image/png;base64,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") no-repeat center/contain;
  width:96px;height:164px;
  position:absolute;
  opacity:.9;
}
.pil-kontakt{right:6%;top:-26px;transform:rotate(14deg);}
.pil-tjenester{right:8%;bottom:-30px;transform:rotate(-8deg) scaleY(-1);}

/* Prosjekter */
.rutenett{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:28px;margin-top:44px;}
.kort{
  border:1px solid var(--strek);background:var(--kortflate);
  padding:0;text-align:left;color:inherit;font:inherit;
  display:flex;flex-direction:column;
  transition:transform .18s ease;
}
.kort .flate{
  aspect-ratio:9/16;width:100%;
  background-color:var(--dypnatt);background-size:cover;background-position:center;
  display:flex;align-items:center;justify-content:center;position:relative;
}
.kort .flate::after{
  content:"";width:58px;height:58px;border-radius:50%;
  background:rgba(20,22,58,.72);
  border:1px solid rgba(238,241,248,.45);
  box-shadow:0 0 0 1px rgba(20,22,58,.35);
  transition:background-color .18s ease;
}
.kort .flate::before{
  content:"";position:absolute;z-index:2;
  left:50%;top:50%;transform:translate(-40%,-50%);
  border-left:16px solid var(--lys);
  border-top:10px solid transparent;
  border-bottom:10px solid transparent;
}
.kort:hover .flate::after{background:var(--aksent);}
.kort-tekst{padding:18px 20px 22px;}
.kort h3{margin:0;font-size:18px;font-weight:600;letter-spacing:-.01em;}
.kort p{margin:8px 0 0;font-size:15px;color:var(--dempet);}
.kort iframe{width:100%;aspect-ratio:9/16;border:0;display:block;}

/* Logoband. To like rader ligger etter hverandre, og sporet skyves en halv
   bredde til side i en evig runde. Da er rad to akkurat der rad en startet,
   og skjoten blir usynlig. Logoene er hvite silhuetter med gjennomsiktig bunn,
   slik at fjorten ulike merkevarer kan sta side om side uten a slass. */
/* Logoene star alene, uten overskrift over seg, sa seksjonen holder
   avstanden selv. Selektoren matcher main > section:first-child lenger
   oppe i filen, og vinner fordi den star sist. */
main > section.logo-seksjon{padding-top:64px;padding-bottom:78px;}
.logoband{
  overflow:hidden;
  /* Masken toner logoene ut mot begge kanter, sa de glir inn og ut i stedet
     for a bli klippet tvert av. */
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);
}
.logospor{display:flex;width:max-content;animation:logorull 68s linear infinite;}
.logoband:hover .logospor,.logoband:focus-within .logospor{animation-play-state:paused;}
.logorad{display:flex;align-items:center;gap:70px;padding:0 70px 0 0;margin:0;list-style:none;}
.logorad li{flex:0 0 auto;line-height:0;}
.logorad img{display:block;height:48px;width:auto;opacity:.72;transition:opacity .3s ease;}
.logorad li:hover img{opacity:1;}
@keyframes logorull{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@media (max-width:600px){
  .logorad{gap:46px;padding-right:46px;}
  .logorad img{height:36px;}
}

/* Bunn */
footer.bunn{border-top:1px solid var(--strek);padding:56px 0 40px;color:var(--dempet);font-size:14px;line-height:1.7;}
footer.bunn p{margin:0;}
footer.bunn a{color:var(--bla);text-decoration:none;}
footer.bunn a:hover{text-decoration:underline;}

/* Merket til venstre, lenkespaltene til høyre. */
.bunn-topp{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:44px 56px;}
.bunn-merke{max-width:36ch;}
.bunn-logo{width:auto;height:22px;display:block;}
footer.bunn .bunn-merke p{margin:28px 0 0;font-size:15px;line-height:1.6;max-width:30ch;}
footer.bunn .bunn-li{display:inline-flex;margin-top:22px;color:var(--dempet);transition:color .18s ease;}
footer.bunn .bunn-li:hover{color:var(--aksent);}
.bunn-li .ikon-li{width:20px;height:20px;}

.bunn-lenker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;}
.bunn-lenker > div{display:flex;flex-direction:column;align-items:flex-start;gap:11px;}
footer.bunn .bunn-merk{margin:0 0 5px;font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--lys);}
footer.bunn .bunn-lenker a{
  color:var(--dempet);font-size:15px;line-height:1.4;
  border-bottom:1px solid transparent;transition:color .18s ease,border-color .18s ease;
}
footer.bunn .bunn-lenker a:hover{color:var(--lys);border-bottom-color:var(--strek);text-decoration:none;}

.bunn-bunn{
  display:flex;flex-wrap:wrap;gap:10px 40px;justify-content:space-between;
  margin-top:52px;padding-top:26px;border-top:1px solid var(--strek);
}
.bunn-bunn .ps{width:100%;order:3;}
.bunn-bunn .hemmelig{width:100%;order:4;font-size:13px;}
/* Rabattkoden er en liten, låst boks. Koden bak er sladdet, og blir bare nesten lesbar ved hover. */
footer.bunn .hemmelig a{
  display:inline-flex;align-items:center;gap:12px;padding:8px 14px;
  border:1px dashed var(--dempet);color:var(--dempet);
  font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;
  transition:color .18s ease,border-color .18s ease;
}
footer.bunn .hemmelig a::after{
  content:"K4K40-4U";letter-spacing:.24em;color:var(--lys);
  filter:blur(4px);transition:filter .3s ease;
}
footer.bunn .hemmelig a:hover{color:var(--lys);border-color:var(--aksent);text-decoration:none;}
footer.bunn .hemmelig a:hover::after{filter:blur(2px);}

.kontakt-bilde{display:block;width:100%;max-width:820px;height:auto;margin-bottom:36px;}

/* Innlasting */
.inn{opacity:0;transform:translateY(10px);animation:opp .6s cubic-bezier(.2,.7,.3,1) forwards;}
h1.inn{animation-delay:.04s;}
.tagline.inn{animation-delay:.1s;}
.hero-under.inn{animation-delay:.15s;}
.knapper.inn{animation-delay:.2s;}
.portrett{opacity:0;animation:tone .9s ease .05s forwards;}

/* Seksjoner som glir inn ved scroll. Skjules bare når JavaScript er på,
   slik at innholdet står synlig uten skript og ved redusert bevegelse. */
@media (scripting:enabled) and (prefers-reduced-motion:no-preference){
  main section > .ramme.brod:not(.synlig),
  main section > .ramme:not(.brod) > :not(.rutenett):not(.synlig),
  main section > .ramme:not(.brod) > .rutenett > .kort:not(.synlig){
    opacity:0;transform:translateY(12px);
  }
  /* Overgangen gjelder bare mens elementet glir inn. Når script.js setter
     .ferdig, får elementet tilbake sin egen transform og sine egne
     overganger, slik at pilene beholder vinkelen og kortene kan løftes. */
  main section > .ramme.brod.synlig:not(.ferdig),
  main section > .ramme:not(.brod) > .synlig:not(.ferdig),
  main section > .ramme:not(.brod) > .rutenett > .synlig:not(.ferdig){
    transition:opacity .6s cubic-bezier(.2,.7,.3,1),transform .6s cubic-bezier(.2,.7,.3,1);
  }
}

/* Personvern og andre tekstsider */
.vilkar h2{font-size:22px;font-weight:600;letter-spacing:-.02em;line-height:1.25;margin:46px 0 14px;}
.vilkar ul{margin:0 0 20px;padding-left:20px;max-width:58ch;color:var(--brod);font-size:18px;line-height:1.65;}
.vilkar li{margin-bottom:8px;}
.vilkar a{color:var(--bla);text-decoration:none;border-bottom:1px solid var(--strek);}
.vilkar a:hover{border-bottom-color:var(--bla);}

/* Glans over ordet i overskriften */
@supports ((-webkit-background-clip:text) or (background-clip:text)){
  .glans{
    background-image:linear-gradient(100deg,
      var(--lys) 0%,var(--lys) 44%,
      var(--bla) 48%,var(--brod) 50%,var(--bla) 52%,
      var(--lys) 56%,var(--lys) 100%);
    background-size:300% 100%;background-position:100% 50%;
    -webkit-background-clip:text;background-clip:text;
    -webkit-text-fill-color:transparent;color:transparent;
    animation:glans 6s linear -1s 2;
  }
}
/* Negativ forsinkelse starter sveipet et sekund uti runden, altså akkurat */
/* der båndet treffer ordet, slik at glansen er i gang med en gang siden lastes. */
/* Bakgrunnen er 300% bred, så ordet er alltid dekket av gradienten. */
/* Start og slutt ser like ut, begge har båndet utenfor ordet, så */
/* sveipet ruller sømløst videre uten pause mellom rundene. */
/* Glansen går to runder og stopper. En evig, langsom loop trekker blikket */
/* bort fra teksten, og siden start og slutt ser like ut, er stoppet usynlig. */
@keyframes glans{from{background-position:100% 50%;}to{background-position:0% 50%;}}
@keyframes opp{to{opacity:1;transform:none;}}
@keyframes tone{to{opacity:1;}}
@media (prefers-reduced-motion:reduce){
  .logospor{animation:none;width:100%;}
  .logospor .logorad[aria-hidden="true"]{display:none;}
  .logorad{flex-wrap:wrap;justify-content:center;gap:36px 56px;padding:0;}
  .logoband{-webkit-mask-image:none;mask-image:none;}
  .inn,.portrett{animation:none;opacity:1;transform:none;}
  .glans{animation:none;background-image:none;-webkit-text-fill-color:currentColor;color:inherit;}
  *{transition:none !important;}
}

/* Redusert gjennomsiktighet: toppen og takkeboksen blir heldekkende. */
@media (prefers-reduced-transparency:reduce){
  .topp{background:var(--natt);-webkit-backdrop-filter:none;backdrop-filter:none;}
  .takk{background:rgba(20,22,58,.96);-webkit-backdrop-filter:none;backdrop-filter:none;}
}

@media (max-width:900px){
  .hero{min-height:auto;display:block;}
  .portrett{position:relative;width:100%;height:58svh;max-height:480px;}
  .portrett img{object-position:50% 16%;}
  .portrett::after{background:linear-gradient(0deg,var(--natt) 2%,rgba(20,22,58,.5) 33%,rgba(20,22,58,0) 72%);}
  .hero .midt{padding-top:0;padding-bottom:72px;margin-top:0;}
  h1{max-width:14ch;font-variation-settings:"opsz" 48;}
  .tagline{max-width:30ch;}
  .hero .tagline{max-width:32ch;}
  section{padding:56px 0;}
  main > section:first-child{padding-top:38px;}
  .sidetopp{padding:38px 28px 4px;}
  .stor,blockquote{max-width:none;}
  .rad{grid-template-columns:1fr;gap:6px;padding:22px 0;}
  .kontakt-linje{grid-template-columns:1fr auto;gap:8px 20px;padding:22px 0;}
  .kontakt-merk{grid-column:1 / -1;}
  .tall span{display:block;}
  .tall span::before{display:none;}
  .knapp,.knapp-tom{flex:1 1 auto;text-align:center;}
  .bunn-topp{grid-template-columns:1fr;gap:36px;}
  .bunn-lenker{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px;}
  .bunn-bunn{margin-top:40px;}
  /* Begge pilene lever i lufta til høyre for teksten. Under 900 er alt
     en spalte, og da legger de seg tvers over den. Målt: rene ned til
     940, overlapp fra 900. */
  .pil{display:none;}
  :root{--topph:60px;}
  .merke img{height:18px;}
  .topp nav{gap:13px;}
  .topp nav a{font-size:13px;}
  .topp nav{gap:15px;flex-wrap:nowrap;}
  .topp nav a{font-size:14px;letter-spacing:0;white-space:nowrap;}
}

/* Mobilmeny under 600px */
@media (max-width:600px){
  .meny-knapp{display:flex;}
  /* Panelet glir ned fra toppen og tilbake samme vei. visibility holder
     lenkene utenfor tabulatorrekkefølgen mens menyen er lukket, og slippes
     først når lukkingen er ferdig. */
  .topp nav{
    position:absolute;top:var(--topph);left:0;right:0;
    flex-direction:column;gap:0;padding:6px 28px 18px;
    background:var(--natt);border-bottom:1px solid var(--strek);
    visibility:hidden;opacity:0;transform:translateY(-8px);
    transition:opacity .18s ease,transform .24s cubic-bezier(.2,.7,.3,1),visibility 0s linear .24s;
  }
  .topp.apen nav{visibility:visible;opacity:1;transform:none;transition-delay:0s;}
  .topp nav a{font-size:17px;padding:13px 0;border-bottom:0;}
  .topp nav a[aria-current="page"]{border-bottom:0;color:var(--aksent);}
}

@media (max-width:440px){
  :root{--topph:54px;}
  .ramme{padding:0 18px;}
  .sidetopp{padding:34px 20px 4px;}
  .merke img{height:14px;}
}


/* Faner: tjenester */
.faner{display:grid;grid-template-columns:.85fr 1.15fr;gap:24px 64px;align-items:start;}
.fane-liste{display:flex;flex-direction:column;}
.fane{
  appearance:none;background:none;border:0;border-bottom:1px solid var(--strek);
  color:var(--dempet);text-align:left;font:inherit;
  font-size:clamp(20px,2.2vw,27px);font-weight:600;letter-spacing:-.02em;line-height:1.25;
  padding:20px 0;transition:color .18s ease;
}
.fane:first-child{border-top:1px solid var(--strek);}
.fane[aria-selected="true"]{color:var(--lys);}
.fane:hover{color:var(--lys);}
.fane-panel{padding-top:6px;}
.fane-panel[hidden]{display:none;}
.fane-panel h3{margin:0 0 16px;font-size:24px;font-weight:600;letter-spacing:-.02em;}
.fane-panel p{margin:0;font-size:18px;line-height:1.65;color:var(--brod);max-width:52ch;}
.punkter{
  list-style:none;margin:26px 0 0;padding:0;max-width:52ch;
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;
}
.punkter li{
  display:flex;align-items:center;gap:12px;
  padding:11px 0;border-top:1px solid var(--strek);
  color:var(--lys);font-size:17px;font-weight:500;line-height:1.3;
}
.punkter li::before{content:"";flex:none;width:7px;height:7px;background:var(--bla);}
@media (max-width:600px){
  .punkter{grid-template-columns:1fr;}
}

/* Skjema */
.skjema{margin-top:12px;max-width:940px;}
.hei{font-size:clamp(28px,4.2vw,48px);font-weight:600;letter-spacing:-.025em;margin:0 0 34px;}
.linje{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 18px;margin-bottom:14px;}
.linje label{font-size:clamp(21px,2.9vw,34px);font-weight:500;letter-spacing:-.02em;white-space:nowrap;}
.linje input,.linje textarea{
  flex:1 1 240px;min-width:200px;
  background:transparent;border:0;border-bottom:1px solid var(--strek);
  color:var(--lys);font:inherit;font-size:19px;line-height:1.5;
  padding:8px 2px;border-radius:0;
}
.linje textarea{resize:vertical;min-height:58px;}
.linje input::placeholder,.linje textarea::placeholder{color:rgba(163,169,203,.7);font-size:17px;}
.linje input:focus,.linje textarea:focus{outline:0;border-bottom-color:var(--aksent);}
.skjema .knapp{margin-top:26px;border:0;font-family:inherit;}
.kvittering{margin-top:20px;color:var(--bla);font-size:17px;}
.kvittering[hidden]{display:none;}

@media (max-width:900px){
  .faner{grid-template-columns:1fr;gap:20px;}
  .fane{font-size:20px;padding:16px 0;}
  .linje label{white-space:normal;}
  .skjema .knapp{width:100%;}
}

/* Bilder i tjenestepaneler */
.fane-panel img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;margin:0 0 24px;}

.foredrag{display:grid;grid-template-columns:1fr 1fr;gap:32px 56px;align-items:center;}
.foredrag img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;}
@media (max-width:900px){.foredrag{grid-template-columns:1fr;gap:24px;}}

/* Portrett på om-siden */
.portrett-om{display:grid;grid-template-columns:1fr 1fr;gap:32px 56px;align-items:center;}
.portrett-om img{width:100%;height:auto;display:block;}
.brod ul.liste{margin:0 0 20px;padding-left:20px;max-width:58ch;font-size:18px;line-height:1.65;color:var(--brod);}
.brod ul.liste li{margin-bottom:4px;}
/* Holder et ord med bindestrek samlet, så det ikke brekker ved streken. */
.hel{white-space:nowrap;}
@media (max-width:900px){.portrett-om{grid-template-columns:1fr;gap:24px;}}

/* Lys seksjon: kontaktskjema */
.lys{background:var(--lysflate);color:var(--dypbla);border-top:0;}
.skjema-tittel{font-size:clamp(17px,1.9vw,21px);font-weight:600;letter-spacing:-.01em;margin:0 0 6px;opacity:.75;}
.hei-under{font-size:clamp(18px,2.2vw,24px);font-weight:400;line-height:1.4;margin:0 0 34px;max-width:34ch;opacity:.8;}
.hei{font-family:"Bricolage Grotesque","Helvetica Neue",Arial,sans-serif;}
.lys .hei{font-size:clamp(40px,6.6vw,80px);font-weight:800;letter-spacing:-.035em;line-height:.94;margin:0 0 14px;font-variation-settings:"opsz" 72;text-wrap:balance;}
.lys .skjema-kort .hei{margin-bottom:34px;}
.lys .linje{margin-bottom:26px;gap:10px 22px;}
.lys .linje label{font-size:clamp(20px,2.6vw,30px);font-weight:500;letter-spacing:-.02em;line-height:1.25;}
.lys .linje input,.lys .linje textarea{
  color:var(--dypbla);font-size:clamp(18px,2vw,23px);
  border-bottom:2px solid rgba(39,40,94,.25);padding:10px 2px;flex:1 1 320px;
}
.lys .linje textarea{min-height:76px;}
.lys .linje input::placeholder,.lys .linje textarea::placeholder{color:rgba(39,40,94,.4);font-size:.8em;}
.lys .linje input:focus,.lys .linje textarea:focus{border-bottom-color:var(--dypbla);}
.linje [aria-invalid="true"],.linje [aria-invalid="true"]:focus{border-bottom-color:var(--feil);}
.lys .linje [aria-invalid="true"],.lys .linje [aria-invalid="true"]:focus{border-bottom-color:var(--feil-mork);}
.lys .knapp{
  background:var(--dypbla);color:var(--hvit);
  margin-top:40px;padding:22px 46px;
  font-size:clamp(18px,2.1vw,23px);font-weight:700;letter-spacing:-.015em;
  width:auto;text-align:center;
}
.lys .kvittering{color:var(--blamork);font-size:19px;}
.kvittering.feil{color:var(--feil);}
.lys .kvittering.feil{color:var(--feil-mork);}
.lys .pil{background-image:url("data:image/png;base64,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");}
.lys a:focus-visible,.lys button:focus-visible{outline-color:var(--dypbla);}
.lys .stor{color:var(--dypbla);}

@media (max-width:900px){
  .lys .knapp{padding:20px 24px;width:100%;}
}

/* Tall som merkelapp på prosjektbildet */
.tall-merke{
  position:absolute;left:0;bottom:0;z-index:3;
  background:var(--aksent);color:var(--natt);
  font-size:14px;font-weight:700;letter-spacing:-.01em;
  padding:9px 14px;line-height:1;
}
.tall-merke em{font-style:normal;font-weight:500;opacity:.75;}

/* Booking */
.hei-book{font-size:17px;line-height:1.5;margin:24px 0 0;opacity:.85;}
.hei-book a{color:var(--blamork);text-decoration:none;border-bottom:1px solid rgba(0,114,177,.35);}
.hei-book a:hover{border-bottom-color:var(--blamork);}

/* Sidebytte */
body{padding-top:var(--topph);}


/* Tilbudsverktoy */
.dokument{margin:0 0 6px;max-width:440px;}
.dokument img{width:100%;display:block;}
.dokument figcaption,.dokrad figcaption{margin-top:12px;font-size:15px;line-height:1.5;color:var(--dempet);}
.dokrad{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin:38px 0 0;}
.dokrad figure{margin:0;}
.dokrad img{width:100%;display:block;}
.dokrad figcaption{font-size:14px;}
@media (max-width:900px){.dokrad{grid-template-columns:1fr;gap:34px;}.dokument{max-width:none;}}
.knapp-under{font-size:15px;color:var(--dempet);margin:14px 0 0;}
.signatur{display:flex;align-items:center;gap:16px;margin:0 0 32px;}
.signatur img{width:66px;height:66px;border-radius:50%;object-fit:cover;display:block;flex:0 0 auto;}
.signatur p{margin:0;font-size:16px;line-height:1.45;color:var(--dempet);}
.signatur strong{display:block;color:var(--lys);font-weight:600;}

/* Kvitteringsboks etter sendt skjema */
.takk{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:28px;background:rgba(20,22,58,.82);backdrop-filter:saturate(140%) blur(6px);-webkit-backdrop-filter:saturate(140%) blur(6px);}
.takk[hidden]{display:none;}
.takk-kort{width:100%;max-width:460px;background:var(--natt);border:1px solid var(--strek);padding:36px 32px 32px;text-align:left;}
.takk-kort p{margin:0 0 26px;font-size:clamp(19px,2.2vw,23px);line-height:1.4;color:var(--lys);}
.takk-kort .knapp{border:0;font-family:inherit;}

/* Bredt prosjektkort for film i 16:9 */
.kort-bredt{max-width:860px;}
.kort-bredt .flate{aspect-ratio:16/9;background-color:var(--dypbla);}
.kort-bredt iframe{aspect-ratio:16/9;}
.kort .kort-brod{font-size:16px;line-height:1.6;color:var(--brod);max-width:62ch;}

/* Filsiden: adressen som kan kopieres, bygget på kontakt-linjen */
.filadresse{margin-top:44px;}
button.kontakt-linje{width:100%;font:inherit;text-align:left;background:transparent;border-left:0;border-right:0;}
.kopi-status{font-size:13px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;}
.kontakt-linje:disabled .kopi-status,.kontakt-linje:disabled .kontakt-verdi{color:var(--aksent);}

/* Referanser under foredraget. Kortene ligger i et .rutenett og
   arver .kort, samme vei gjennom innglidningen som prosjektkortene.
   Ingenting her rører selve innglidningen. */
.rutenett-to{grid-template-columns:repeat(auto-fit,minmax(min(360px,100%),1fr));}
/* Sitatene inneholder lange ord uten bindestrek, som
   kommunikasjon/markedsavdelingene. Uten dette sprenger de kortet
   på de smaleste skjermene. */
.referanse{margin:0;cursor:auto;overflow-wrap:break-word;}
.referanse img{width:100%;aspect-ratio:1;object-fit:cover;display:block;}
.referanse blockquote{max-width:none;margin:0;padding:28px 28px 0;}
.referanse p{margin:0 0 16px;font-size:17px;line-height:1.6;color:var(--brod);}
.referanse p:last-child{margin-bottom:0;}
.referanse ul{margin:0 0 16px;padding-left:20px;font-size:17px;line-height:1.6;color:var(--brod);}
.referanse ul:last-child{margin-bottom:0;}
.referanse li{margin-bottom:6px;}
.referanse .kilde{margin:auto 0 0;padding:22px 28px 28px;font-size:15px;}

/* 404 */
.feilside{text-align:center;padding-top:8px;}
.feilside h1{max-width:none;margin:0 auto;}
.feilside .kakaoord{color:var(--kakao);}
.feilside .tagline{max-width:44ch;margin-left:auto;margin-right:auto;}
.feilside .knapper{justify-content:center;}
.feil-rad{display:flex;align-items:center;justify-content:center;margin:34px 0 40px;}
.feil-tall{
  font-size:clamp(135px,27vw,400px);
  font-weight:200;line-height:.78;letter-spacing:-.04em;
  font-variation-settings:"opsz" 96;
  color:var(--lys);position:relative;z-index:0;
}
.feil-tall:first-child{margin-right:-14px;}
.feil-tall:last-child{margin-left:-14px;}
.feil-bilde{position:relative;z-index:1;width:min(340px,38vw);height:auto;display:block;box-shadow:0 30px 80px rgba(0,0,0,.5);}
@media (max-width:600px){
  .feil-rad{margin:24px 0 30px;}
  .feil-tall:first-child{margin-right:-8px;}
  .feil-tall:last-child{margin-left:-8px;}
}

/* Sitatblokk på forsiden. Bruker .sitat og .kilde som allerede fantes. */
.sitat-blokk{margin:0;}
/* To sitater side om side. Mindre type enn ett alene, ellers blir
   det lange sitatet en vegg. Strek mellom dem på bred skjerm. */
.sitater{display:grid;grid-template-columns:1fr 1fr;gap:56px;}
.sitater .sitat-blokk + .sitat-blokk{border-left:1px solid var(--strek);padding-left:56px;}
.sitater blockquote{max-width:none;}
.sitater .sitat{font-size:clamp(22px,2.4vw,30px);line-height:1.25;letter-spacing:-.015em;}
@media (max-width:900px){
  .sitater{grid-template-columns:1fr;gap:48px;}
  .sitater .sitat-blokk + .sitat-blokk{border-left:0;padding-left:0;border-top:1px solid var(--strek);padding-top:48px;}
}

/* Utvalgt film med referanse ved siden av. Filmen står stående,
   derfor en smal spalte til den og resten til sitatet. */
.rutenett-utvalgt{grid-template-columns:minmax(0,340px) minmax(0,1fr);margin-top:0;}
@media (max-width:900px){
  .rutenett-utvalgt{grid-template-columns:1fr;}
  /* Stående film i full bredde blir en vegg. Hold den smal. */
  .rutenett-utvalgt > .kort:first-child{max-width:340px;}
}

/* Sveneviklia-sitatet skal poppe, derfor større type enn de fire
   referansekortene på tjenester-siden. Punktene holdes mindre, så
   historien står først og egenskapene leses som et etterord. */
.referanse-stor p{margin:0 0 20px;font-size:clamp(21px,2.7vw,34px);line-height:1.32;letter-spacing:-.015em;color:var(--lys);}
.referanse-stor ul{font-size:19px;}

/* Utvalgt referanse på en tjenesteside. Portrettet står i den smale
   spalten, og første avsnitt er selve poenget, derfor stor type.
   Resten leses som vanlig brødtekst under. */
.referanse-portrett{align-self:start;position:sticky;top:calc(var(--topph) + 24px);}
.referanse-portrett img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;}
.referanse-utvalgt p{font-size:18px;}
@media (max-width:900px){.referanse-portrett{position:static;}.referanse-portrett img{aspect-ratio:1;object-position:50% 20%;}}
.referanse-utvalgt p:first-child{margin-bottom:24px;font-size:clamp(24px,3vw,38px);font-weight:500;line-height:1.2;letter-spacing:-.02em;color:var(--lys);text-wrap:balance;}

/* Dronestripe. Ligger utenfor .ramme og går helt ut til kantene, så
   den er usynlig for innglidningen og kan ikke bli stående skjult.
   Venstre luft følger sidens egen tekstkant, slik at første bilde
   står i flukt med overskriften over. */
.dronestripe{
  display:flex;gap:20px;
  margin-top:30px;padding:0 28px 16px;
  padding-left:max(28px,calc((100% - var(--mal)) / 2 + 28px));
  padding-right:max(28px,calc((100% - var(--mal)) / 2 + 28px));
  overflow-x:auto;overscroll-behavior-x:contain;
  scroll-snap-type:x proximity;
  scroll-padding-left:max(28px,calc((100% - var(--mal)) / 2 + 28px));
}
.dronestripe:focus-visible{outline:2px solid var(--aksent);outline-offset:4px;}
.dronestripe figure{margin:0;flex:0 0 auto;width:min(76vw,860px);scroll-snap-align:start;}
.dronestripe img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;}
.dronestripe figcaption{margin-top:12px;font-size:15px;line-height:1.5;color:var(--dempet);}

/* Må stå etter .dronestripe over, ellers vinner max()-regelen der
   på rekkefølge og stripa får feil tekstkant på mobil. */
@media (max-width:440px){
  .dronestripe{padding-left:18px;padding-right:18px;scroll-padding-left:18px;}
}

/* Tjenestefelt. Introen til venstre står stille mens kortene til høyre
   ruller forbi, slik at overskriften følger deg hele veien ned.
   Kortene gjenbruker .rutenett og .kort, så innglidningen i script.js
   plukker dem opp uten endringer. */
.tjenestefelt{display:grid;grid-template-columns:.9fr 1.1fr;gap:24px 64px;align-items:stretch;}
.tjeneste-fast{position:sticky;top:calc(var(--topph) + 44px);}
.merkelapp{font-size:13px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--aksent);margin:0 0 18px;}
.tjeneste-fast .stor{margin:0 0 20px;}
.tjeneste-ingress{font-size:18px;line-height:1.65;color:var(--brod);max-width:40ch;margin:0;}
.tjeneste-fast .knapper{margin-top:32px;}
.tjenestespalte{grid-template-columns:1fr;gap:24px;margin-top:0;}
.tjenestekort{text-decoration:none;transition:border-color .22s ease,transform .22s ease;}
@media (hover:hover){.tjenestekort:hover{border-color:var(--dempet);transform:translateY(-3px);}}
.tjenestekort:active{transform:scale(.985);transition-duration:.1s;}
.tjenestebilde{position:relative;}
.tjenestebilde img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:center;display:block;}
.tjenestebilde img.staaende{object-position:50% 20%;}
.tjenestekort .kort-tekst{padding:22px 24px 26px;}
.tjenestekort h3{font-size:22px;letter-spacing:-.02em;}
.tjenestekort p{font-size:16px;line-height:1.6;color:var(--brod);max-width:52ch;}
@media (max-width:900px){
  .tjenestefelt{grid-template-columns:1fr;gap:36px;}
  .tjeneste-fast{position:static;}
  .tjeneste-ingress{max-width:none;}
}

/* Tjenesteside: bilde i toppen, punkter og en referanse under */
.tjenestebanner{margin:0 0 8px;}
.tjenestebanner img{width:100%;aspect-ratio:21/9;object-fit:cover;display:block;}
.tjenestebanner img.staaende{object-position:50% 20%;}
/* Er bildet noe man skal lese, som notater, vises det helt, uten utsnitt. */
.tjenestebanner img.helt{aspect-ratio:auto;height:auto;object-fit:contain;}
.tjenestebanner figcaption{margin-top:12px;font-size:15px;line-height:1.5;color:var(--dempet);}
.tjenestebanner figcaption a{color:var(--bla);text-decoration:none;border-bottom:1px solid var(--strek);}
.tjenestebanner figcaption a:hover{border-bottom-color:var(--bla);}
.tjeneste-to{display:grid;grid-template-columns:1.15fr .85fr;gap:32px 64px;align-items:start;}
.tjeneste-to h3{font-size:21px;font-weight:600;letter-spacing:-.02em;margin:0 0 14px;}
.tjeneste-to p{font-size:18px;line-height:1.65;color:var(--brod);margin:0 0 18px;max-width:56ch;}
.tjeneste-to p:last-child{margin-bottom:0;}
.tjeneste-boks{border:1px solid var(--strek);padding:26px 24px 28px;}
.tjeneste-boks .punkter{margin-top:0;grid-template-columns:1fr;max-width:none;}
@media (max-width:900px){.tjeneste-to{grid-template-columns:1fr;gap:28px;}}

/* Artikler på LinkedIn-siden. Ny artikkel: kopier en artikkel-fil og
   legg inn et nytt .artikkelkort øverst i listen. */
.artikkelliste{display:flex;flex-direction:column;margin-top:36px;}
.artikkelkort{
  display:grid;grid-template-columns:1fr auto;gap:6px 32px;align-items:baseline;
  padding:26px 0;border-top:1px solid var(--strek);text-decoration:none;
  transition:border-color .22s ease;
}
.artikkelkort:last-child{border-bottom:1px solid var(--strek);}
.artikkelkort:hover{border-top-color:var(--aksent);}
.artikkelkort:hover + .artikkelkort{border-top-color:var(--aksent);}
.artikkelkort:last-child:hover{border-bottom-color:var(--aksent);}
.artikkelkort h3{grid-column:1;margin:0;font-size:21px;font-weight:600;letter-spacing:-.02em;line-height:1.35;transition:color .22s ease;}
.artikkelkort:hover h3{color:var(--aksent);}
.artikkelkort p{grid-column:1;margin:0;font-size:16px;color:var(--dempet);max-width:60ch;line-height:1.6;}
.artikkeldato{grid-column:2;grid-row:1;font-size:14px;color:var(--dempet);white-space:nowrap;letter-spacing:.04em;}
@media (max-width:600px){
  .artikkelkort{grid-template-columns:1fr;gap:6px;}
  .artikkeldato{grid-column:1;grid-row:auto;order:-1;}
}

/* Artikkelsiden selv */
.artikkeltopp{padding:52px 28px 8px;}
.artikkeltopp h1{max-width:20ch;font-size:clamp(30px,4.6vw,54px);}
.artikkelmeta{margin:22px 0 0;color:var(--dempet);font-size:16px;}
.artikkel h2{font-size:24px;font-weight:600;letter-spacing:-.02em;line-height:1.28;margin:44px 0 14px;}
.artikkel h2:first-child{margin-top:0;}
.artikkel p{font-size:19px;line-height:1.7;color:var(--brod);margin:0 0 20px;max-width:62ch;}
.artikkel ul{margin:0 0 22px;padding-left:20px;max-width:62ch;color:var(--brod);font-size:19px;line-height:1.7;}
.artikkel li{margin-bottom:8px;}
.artikkel blockquote{margin:32px 0;padding-left:22px;border-left:2px solid var(--aksent);max-width:none;}
.artikkel blockquote p{font-size:21px;font-weight:500;color:var(--lys);letter-spacing:-.01em;}
.artikkel a{color:var(--bla);text-decoration:none;border-bottom:1px solid var(--strek);}
.artikkel a:hover{border-bottom-color:var(--bla);}
@media (max-width:900px){
  .artikkeltopp{padding:38px 28px 4px;}
  .artikkel p,.artikkel ul{font-size:18px;}
}

/* Tjenesteoversikten. Samme kort som på forsiden, men i to spalter
   siden overskriften alt står i sidetoppen over. */
.tjenesterutenett{grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));}

/* LinkedIn-forhåndsvisning (linkedin-forhandsvisning.html).
   Verktøyet rundt følger husreglene. Selve kortet, .li, etterligner
   LinkedIn med vilje, med LinkedIns runde hjørner og systemfont, ellers
   ser man ikke hvordan innlegget faktisk blir seende ut. */
.fv{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:start;}
@media (max-width:920px){.fv{grid-template-columns:minmax(0,1fr);}}
.fv-panel{border:1px solid var(--strek);}
.fv-hode{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:16px 20px;border-bottom:1px solid var(--strek);}
.fv-tittel{font-size:13px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--aksent);margin:0;}
.fv-kropp{padding:20px;}
.fv-merk{display:block;font-size:13px;font-weight:500;color:var(--dempet);margin:0 0 6px;}
.fv-felt{width:100%;background:transparent;border:1px solid var(--strek);color:var(--lys);font:inherit;font-size:16px;padding:10px 12px;}
.fv-felt:focus{outline:0;border-color:var(--aksent);}
textarea.fv-felt{min-height:300px;resize:vertical;line-height:1.55;}
.fv-felt::placeholder{color:var(--dempet);}
.fv-navn{margin-bottom:16px;}
.fv-teller{font-size:13px;font-weight:500;color:var(--dempet);border:1px solid var(--strek);padding:3px 10px;}
.fv-teller.over{color:var(--rod);border-color:var(--rod);}
.fv-rad{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:16px;}
.fv-rad .knapp{border:0;font-family:inherit;padding:12px 22px;}
.fv-notis{font-size:14px;color:var(--dempet);}
.fv-tall{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:14px;font-size:14px;color:var(--dempet);}
.fv-tall b{color:var(--lys);font-weight:600;}

.fv-krok{margin-top:18px;border:1px solid var(--strek);border-left-width:3px;}
.fv-krok.ok{border-left-color:var(--bla);}
.fv-krok.halv{border-left-color:var(--kakao);}
.fv-krok.kort{border-left-color:var(--rod);}
.fv-krok-dom{padding:16px 18px;font-size:18px;font-weight:600;line-height:1.3;letter-spacing:-.01em;}
.fv-krok.ok .fv-krok-dom{color:var(--bla);}
.fv-krok.halv .fv-krok-dom{color:var(--kakao);}
.fv-krok.kort .fv-krok-dom{color:var(--rod);}
.fv-krok-tekst{margin-top:8px;font-size:14px;font-weight:400;line-height:1.7;color:var(--brod);letter-spacing:0;}
.fv-krok-tekst .skjules{color:var(--dempet);opacity:.7;}
.fv-kutt{display:inline-block;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:1px 6px;margin:0 5px;vertical-align:middle;white-space:nowrap;color:var(--natt);}
.fv-kutt.m{background:var(--kakao);}
.fv-kutt.d{background:var(--rod);}
.fv-enheter{display:flex;border-top:1px solid var(--strek);}
.fv-enhet{flex:1;display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;padding:10px 18px;font-size:14px;font-weight:500;color:var(--brod);}
.fv-enhet + .fv-enhet{border-left:1px solid var(--strek);}
.fv-enhet small{color:var(--dempet);font-weight:400;font-size:13px;}
.fv-enhet .merke-ok{color:var(--bla);}
.fv-enhet .merke-kutt{color:var(--rod);}

.fv-media{margin-top:22px;padding-top:20px;border-top:1px solid var(--strek);}
.fv-media-hode{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:12px;}
.fv-store{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;}
@media (max-width:440px){.fv-store{grid-template-columns:1fr;}}
.fv-stor{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px 12px;border:1px solid var(--strek);background:transparent;color:var(--lys);font:inherit;font-size:16px;font-weight:600;transition:border-color .18s ease;}
.fv-stor:hover{border-color:var(--aksent);}
.fv-stor svg{width:28px;height:28px;color:var(--aksent);}
.fv-lenke{background:none;border:0;padding:0;color:var(--aksent);font:inherit;font-size:14px;font-weight:500;text-decoration:underline;text-underline-offset:3px;}
.fv-hint{font-size:14px;color:var(--dempet);margin:10px 0 0;}
.fv-hint.feil{color:var(--rod);}
.fv-tips{margin-top:14px;border:1px solid var(--strek);padding:14px 16px;}
.fv-tips p{margin:0 0 8px;font-size:13px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--aksent);}
.fv-tips ul{margin:0;padding-left:18px;}
.fv-tips li{font-size:14px;line-height:1.55;color:var(--brod);margin-bottom:6px;}
.fv-tips li:last-child{margin-bottom:0;}
.fv-miniatyrer{display:flex;flex-wrap:wrap;gap:8px;}
.fv-miniatyr{position:relative;width:60px;height:60px;border:1px solid var(--strek);overflow:hidden;flex:none;}
.fv-miniatyr img,.fv-miniatyr .ph{width:100%;height:100%;object-fit:cover;display:block;}
.fv-miniatyr .ph{display:flex;align-items:center;justify-content:center;color:var(--li-hvit);font-weight:800;font-size:20px;}
.fv-miniatyr .x{position:absolute;top:0;right:0;width:20px;height:20px;border:0;padding:0;background:var(--natt);color:var(--lys);font-size:14px;line-height:20px;text-align:center;}
.fv-pdf{display:flex;align-items:center;gap:12px;border:1px solid var(--strek);padding:10px;}
.fv-pdf .side{width:52px;height:66px;flex:none;overflow:hidden;border:1px solid var(--strek);}
.fv-pdf .side img{width:100%;height:100%;object-fit:cover;display:block;}
.fv-pdf .meta{flex:1;min-width:0;}
.fv-pdf .fv-felt{margin-top:4px;padding:6px 8px;font-size:14px;}
.fv-pdf .knapp-tom{padding:8px 14px;font-size:14px;background:transparent;font-family:inherit;}

.fv-valg{display:flex;flex-wrap:wrap;gap:8px;}
.fv-bryter{display:inline-flex;border:1px solid var(--strek);}
.fv-bryter button{border:0;background:transparent;color:var(--dempet);font:inherit;font-size:13px;font-weight:500;padding:6px 11px;line-height:1.2;}
.fv-bryter button + button{border-left:1px solid var(--strek);}
.fv-bryter button[aria-pressed="true"]{background:var(--lys);color:var(--natt);}
.fv-scene{background:var(--li-grunn);padding:24px 16px;display:flex;justify-content:center;}
.fv-fold{font-size:14px;line-height:1.55;color:var(--dempet);text-align:center;padding:14px 20px 18px;margin:0;}
.fv-fold b{color:var(--kakao);font-weight:600;}
.fv-fot{font-size:14px;line-height:1.7;color:var(--dempet);max-width:80ch;margin:28px 0 0;}

/* Kortet. Tallene er LinkedIns egne mål. */
.li{width:100%;max-width:555px;background:var(--li-hvit);border:1px solid var(--li-strek);border-radius:8px;overflow:hidden;font-family:-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--li-tekst);transition:max-width .2s ease;}
.li.mobil{max-width:360px;}
.li-topp{display:flex;align-items:flex-start;gap:8px;padding:12px 16px 0;}
.li-av{width:48px;height:48px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;background:var(--dypbla);color:var(--li-hvit);font-weight:700;font-size:17px;}
.li-id{flex:1;min-width:0;padding-top:1px;}
.li-navn{font-size:14px;font-weight:600;line-height:1.3;display:flex;align-items:center;gap:4px;}
.li-navn .grad{color:var(--li-under);font-weight:400;font-size:12px;}
.li-under{font-size:12px;color:var(--li-under);line-height:1.35;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.li-under svg{width:14px;height:14px;fill:var(--li-under);vertical-align:-2px;}
.li-meny{color:var(--li-under);flex:none;padding-top:2px;display:flex;gap:6px;}
.li-tekst{padding:8px 16px 0;font-size:14px;line-height:1.4285;white-space:pre-wrap;overflow-wrap:break-word;}
.li-mer{color:var(--li-under);cursor:pointer;}
.li-mer:hover{color:var(--li-bla);text-decoration:underline;}
.li-tom{color:var(--li-under);font-style:italic;}
.li-media{margin-top:10px;}
.li-media .ph{display:flex;align-items:center;justify-content:center;color:var(--li-hvit);font-weight:800;font-size:34px;}
.imgs{display:grid;gap:2px;}
.imgs img{display:block;width:100%;object-fit:cover;}
.imgs .ph{width:100%;}
.imgs.n1 img,.imgs.n1 .ph{max-height:500px;object-fit:contain;background:var(--li-grunn);height:auto;min-height:200px;}
.imgs.n2{grid-template-columns:1fr 1fr;}
.imgs.n2 img,.imgs.n2 .ph{height:250px;}
.imgs.n3{grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;}
.imgs.n3 .m0{grid-row:1/3;height:346px;}
.imgs.n3 .m1,.imgs.n3 .m2{height:172px;}
.imgs.n4{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;}
.imgs.n4 img,.imgs.n4 .ph{height:172px;}
.imgs .flere{position:relative;}
.imgs .flere .dekke{position:absolute;inset:0;background:rgba(0,0,0,.55);color:var(--li-hvit);display:flex;align-items:center;justify-content:center;font-size:26px;font-weight:700;}
.caro{position:relative;}
.caro-spor{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;}
.caro-spor::-webkit-scrollbar{display:none;}
.caro-bilde{flex:0 0 100%;scroll-snap-align:center;height:420px;background:var(--li-grunn);display:flex;align-items:center;justify-content:center;}
.caro-bilde img{width:100%;height:100%;object-fit:contain;}
.caro-bilde .ph{width:100%;height:100%;font-size:40px;}
.caro-prikker{position:absolute;bottom:10px;left:0;right:0;display:flex;justify-content:center;gap:6px;}
.caro-prikker i{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.55);}
.caro-prikker i.aktiv{background:var(--li-hvit);}
.caro-teller,.dok-teller{position:absolute;background:rgba(0,0,0,.65);color:var(--li-hvit);font-size:12px;font-weight:600;padding:2px 9px;border-radius:12px;z-index:4;pointer-events:none;}
.caro-teller{top:10px;right:12px;}
.dok-teller{bottom:14px;left:50%;transform:translateX(-50%);}
.dok{position:relative;}
.dok-spor{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;}
.dok-spor::-webkit-scrollbar{display:none;}
.dok-side{flex:0 0 auto;background:var(--li-grunn);border:1px solid var(--li-strek);border-radius:8px;overflow:hidden;}
.dok-side img{display:block;width:100%;height:100%;object-fit:cover;}
.dok-stor .dok-side{border:0;border-radius:0;scroll-snap-align:center;}
.dok-liten .dok-side{scroll-snap-align:start;}
.dok-liten .dok-spor{padding:0 12px;scroll-padding-left:12px;}
.dok-bar{position:absolute;top:12px;left:24px;background:rgba(0,0,0,.72);color:var(--li-hvit);font-size:13px;font-weight:600;padding:5px 12px;border-radius:8px;z-index:4;pointer-events:none;}
.dok-knapp{position:absolute;width:36px;height:36px;border-radius:50%;background:rgba(0,0,0,.55);border:0;padding:0;display:flex;align-items:center;justify-content:center;color:var(--li-hvit);z-index:4;}
.dok-knapp:hover{background:rgba(0,0,0,.75);}
.dok-knapp svg{width:18px;height:18px;}
.dok-knapp.forrige{left:12px;top:50%;transform:translateY(-50%);}
.dok-knapp.neste{right:12px;top:50%;transform:translateY(-50%);}
.dok-knapp.fullskjerm{right:12px;bottom:14px;}
.li-fot{padding:10px 16px 4px;margin-top:8px;}
.li-reaksjoner{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--li-under);padding-bottom:8px;border-bottom:1px solid var(--li-strek);}
.li-reaksjoner .ikoner{display:inline-flex;}
.li-reaksjoner .ikoner span{width:16px;height:16px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;margin-left:-4px;border:1.5px solid var(--li-hvit);color:var(--li-hvit);}
.li-reaksjoner .ikoner span:first-child{margin-left:0;}
.li-reaksjoner .ikoner svg{width:9px;height:9px;}
.li-handlinger{display:flex;padding:4px 6px 6px;}
.li-handlinger span{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:7px;color:var(--li-under);font-size:14px;font-weight:600;padding:10px 4px;}
.li-handlinger svg{width:20px;height:20px;flex:none;}
.li-handlinger span{min-width:0;}
.li.mobil .li-handlinger span{flex-direction:column;gap:2px;font-size:12px;}
@media (max-width:480px){
  .fv-scene{padding:16px 10px;}
  .li-handlinger span{flex-direction:column;gap:2px;font-size:12px;}
}
.dok-knapp[hidden]{display:none;}
