:root{--gra:#B6B6B6;--gronn-mork:#008789;--gronn-mellom:#87CAC9;--gronn-lys:#AED1D1;--burgunder:#75355D;--teal:#007A7C;--teal-mork:#00595B;--teal-lys:#E7F4F4;--base:#F3F5F7;--flate:#FFFFFF;--himmel:#9AD2D5;--tekst:#1E2B2B;--tekst-svak:#55706E;--sans:"Manrope",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--t-xs:.8125rem;--t-sm:.9rem;--t-base:1rem;--t-md:1.0625rem;--t-lg:1.25rem;--t-2xl:2rem;--t-3xl:2.75rem;--lh-brod:1.6;--s-1:.25rem;--s-2:.5rem;--s-3:.75rem;--s-4:1rem;--s-5:1.5rem;--s-6:2rem;--s-8:4.5rem;--seksjon-y:6rem;--wrap:68rem;--radius:14px;--logo-tagline-gra:#666666;--glans-sveip:.95}
*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:clip;background:var(--base)}
@media (prefers-reduced-motion:reduce){
html{scroll-behavior:auto}
}
body{margin:0;background:var(--base);color:var(--tekst);font:400 var(--t-base)/var(--lh-brod) var(--sans);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:clamp(1rem,4vw,3rem)}
h1,h2,h3{font-family:var(--sans);font-weight:800;line-height:1.15;margin:0;color:var(--tekst)}
h2{font-size:var(--t-2xl)}
h3{font-size:var(--t-lg)}
p{margin:0}
a{color:inherit}
.eyebrow{display:inline-block;font:700 var(--t-sm)/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--teal);margin-bottom:var(--s-2)}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.knapp{display:inline-flex;align-items:center;gap:var(--s-2);font:700 var(--t-sm)/1 var(--sans);padding:13px 20px;border-radius:999px;border:2px solid var(--teal);text-decoration:none;transition:background-color .2s,color .2s,transform .2s}
.knapp--omriss{background:#fff;color:var(--teal)}
@media (hover:hover){
.knapp--omriss:hover{background:var(--teal-lys)}
.knapp:not(:disabled):hover{transform:translateY(-1px)}
}
:where(a,button):focus-visible{outline:3px solid var(--teal);outline-offset:3px;border-radius:4px}
@media (prefers-reduced-motion:reduce){
.knapp{transition:none}
.knapp:hover{transform:none}
}
.hero{--logo-skrift:clamp(3.1rem, 11.5vw, 5.6rem);position:relative;overflow:hidden;min-height:min(100svh,56rem);display:flex;flex-direction:column;padding-top:clamp(2.5rem,8vh,5rem);background:var(--base)}
.hero__knapper{position:relative;z-index:2;margin-top:var(--s-6);display:flex;gap:var(--s-3);justify-content:center;flex-wrap:wrap;padding-inline:1rem}
.hero__rekkevidde{margin:var(--s-2) auto 0;max-width:44ch;font:600 .9375rem/1.45 var(--sans);color:var(--teal-mork)}
@media (max-width:48rem){
.hero__knapper{margin-top:var(--s-6)}
}
.hero__knapper .knapp{min-height:44px;justify-content:center}
@media (max-width:36rem){
.hero__knapper{flex-direction:column;align-items:stretch}
}
.hero__lockup{display:inline-flex;flex-direction:column;align-items:stretch;font-size:var(--logo-skrift)}
.logo{margin:0;display:flex;justify-content:center}
.logo svg{display:block;width:5.2em;max-width:100%;height:auto;overflow:visible}
.logo{--b0:1150ms;--stig:24px;--amp:2.4px}
.lg__b1{--i:0;--flyt:6.4s}
.lg__b2{--i:1;--flyt:5.2s}
.lg__b3{--i:2;--flyt:6.9s}
html.js .logo.kjor .lg__b1,html.js .logo.kjor .lg__b2,html.js .logo.kjor .lg__b3{transform-box:fill-box;transform-origin:50% 50%;animation:lg-vokse 750ms cubic-bezier(.34,1.56,.64,1) calc(var(--b0) + var(--i) * 170ms) both,lg-flyt var(--flyt) ease-in-out calc(var(--b0) + var(--i) * 170ms + 850ms) infinite alternate}
@keyframes lg-vokse{
from{transform:translateY(var(--stig)) scale(0);opacity:0}
to{transform:none;opacity:1}
}
@keyframes lg-flyt{
from{translate:0 calc(var(--amp) * -1)}
to{translate:0 var(--amp)}
}
@media (prefers-reduced-motion:reduce){
html.js .logo.kjor .lg__b1,html.js .logo.kjor .lg__b2,html.js .logo.kjor .lg__b3{animation:none}
}
html.js .logo,html.js-vask [data-vask]{clip-path:inset(-.15em 100% -.15em -.1em)}
html.js .logo.kjor,html.js-vask [data-vask].kjor{animation:vask-sveip var(--vask-ms,1560ms) cubic-bezier(.5,0,.2,1) both}
@keyframes vask-sveip{
from{clip-path:inset(-.15em 100% -.15em -.1em)}
to{clip-path:inset(-.15em -.1em -.15em -.1em)}
}
[data-vask]{--vask-ms:950ms}
.vask-boks{position:relative;width:fit-content;max-width:100%}
@media (prefers-reduced-motion:reduce){
html.js .logo,html.js-vask [data-vask]{clip-path:none}
html.js .logo.kjor,html.js-vask [data-vask].kjor{animation:none}
}
.hero__innhold{position:relative;z-index:1;margin-top:0;display:flex;flex-direction:column;align-items:center;text-align:center}
@media (max-width:48rem){
.hero__innhold{margin-top:0}
}
@keyframes sol-spinn{
to{transform:rotate(360deg)}
}
.hero__ingress,.hero__rekkevidde{position:relative}
.hero__tittel{position:relative;margin:.6em 0 0;color:var(--logo-tagline-gra);font:600 .24em/1.2 Quicksand,var(--sans);text-transform:uppercase;letter-spacing:var(--tagline-sperring, .18em);white-space:nowrap;text-align:justify;text-align-last:justify}
.by--oslo{--tagline-sperring:.9em}
.by--stavanger{--tagline-sperring:.5em}
.hero__tittel .tittel-aksent{color:var(--teal);text-shadow:0 0 3px rgba(135,202,201,.25)}
.hero__ingress{max-width:calc(5.2 * var(--logo-skrift));color:var(--tekst-svak);margin:var(--s-4) auto 0;font-size:.9375rem;line-height:1.55;text-wrap:balance}
@media (max-width:48rem){
.hero{--logo-skrift:clamp(3.6rem, 11.5vw, 5.6rem)}
.hero__ingress{font-size:var(--t-sm)}
.by--stavanger .hero__ingress br{display:none}
.hero__rekkevidde{font-size:var(--t-sm);margin-top:var(--s-2)}
}
.tillit-liste,.tjeneste-grid{list-style:none;margin:var(--s-6) 0 0;padding:0;display:grid}
.tjeneste-grid{gap:var(--s-5);grid-template-columns:repeat(auto-fit,minmax(15rem,1fr))}
.tillit-liste{gap:var(--s-6);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}
.tillit-liste p,.tjeneste-kort p{margin-top:var(--s-2);color:var(--tekst-svak);font-size:var(--t-sm)}
.stopp--tjenester{padding-block:var(--seksjon-y);background:var(--flate)}
.tjeneste-kort{position:relative;display:flex;flex-direction:column;background:var(--teal-lys);border-radius:var(--radius);padding:var(--s-5);transition:transform .2s,box-shadow .2s}
.tjeneste-kort h3{color:var(--teal-mork)}
.kort--vindu{box-shadow:inset 0 0 0 2px var(--teal),inset 0 0 0 7px var(--teal-lys),inset 0 0 0 8.5px rgba(0,122,124,.4)}
@media (hover:hover){
.kort--vindu:hover{box-shadow:inset 0 0 0 2px var(--teal),inset 0 0 0 7px var(--teal-lys),inset 0 0 0 8.5px rgba(0,122,124,.4),0 12px 24px -12px rgba(0,89,91,.35)}
}
.kort--vindu>details,.kort--vindu>h3,.kort--vindu>img,.kort--vindu>p{position:relative;z-index:1}
.kort--vindu::after{content:"";position:absolute;inset:8.5px;border-radius:5.5px;pointer-events:none;background:linear-gradient(90deg,transparent 0,rgb(255 255 255 / var(--glans-sveip)) 50%,transparent 100%);background-size:20% 100%;background-repeat:no-repeat;background-position:-140% 0}
.kort--vindu.glans-sveip::after{animation:glans-tork 3s ease-in-out forwards}
@keyframes glans-tork{
0%{background-position:-140% 0}
100%{background-position:240% 0}
}
@media (prefers-reduced-motion:reduce){
.kort--vindu.glans-sveip::after{animation:none}
}
.tjeneste-kort__ikon{height:6.25rem;width:auto;align-self:flex-start;margin-bottom:var(--s-3);transition:transform .2s}
@media (hover:hover){
.tjeneste-kort:hover{transform:translateY(-4px);box-shadow:0 12px 24px -12px rgba(0,89,91,.35)}
.tjeneste-kort:hover .tjeneste-kort__ikon{transform:scale(1.08)}
}
.kort-lenke{color:inherit;text-decoration:none}
.kort-lenke::after{content:"";position:absolute;inset:0;border-radius:var(--radius)}
.tjeneste-kort:has(.kort-lenke:focus-visible){outline:2px solid var(--teal);outline-offset:3px}
.kort-lenke:focus-visible{outline:0}
@media (hover:hover){
.tjeneste-kort:hover .kort-lenke{text-decoration:underline;text-underline-offset:3px}
}
.tjeneste-kort[id]{scroll-margin-top:5rem}
@media (prefers-reduced-motion:reduce){
.tjeneste-kort,.tjeneste-kort__ikon{transition:none}
.tjeneste-kort:hover{transform:none}
}
.stopp--referanser,.stopp--tillit{--himmel-fade:5rem}
.stopp--referanser{padding-block:var(--seksjon-y);background:linear-gradient(to bottom,var(--flate) 0,var(--himmel) var(--himmel-fade),var(--himmel) calc(100% - var(--himmel-fade)),var(--flate) 100%)}
.stopp--referanser .stopp__lede{color:var(--tekst)}
.stopp--referanser .eyebrow{color:var(--teal-mork)}
.stopp--referanser .sitat-liste{margin-top:var(--s-6)}
.stopp--tillit{padding-block:var(--seksjon-y);background:linear-gradient(to bottom,var(--base) 0,var(--himmel) var(--himmel-fade),var(--himmel) calc(100% - var(--himmel-fade)),var(--teal-lys) 100%)}
.stopp--tillit>.wrap>.eyebrow{color:var(--teal-mork)}
.tillit-liste li{display:flex;flex-direction:column;align-items:center;text-align:center;background:var(--gronn-lys);border:1px solid rgba(0,122,124,.3);border-radius:var(--radius);padding:var(--s-5);transition:transform .2s,box-shadow .2s}
@media (hover:hover){
.tillit-liste li:hover{transform:translateY(-4px);box-shadow:0 12px 24px -12px rgba(0,89,91,.35)}
}
@media (prefers-reduced-motion:reduce){
.tillit-liste li{transition:none}
.tillit-liste li:hover{transform:none}
}
.tillit-stempel{width:4.75rem;height:4.75rem;border-radius:50%;background:#fff;border:2px solid var(--teal);display:grid;place-items:center;position:relative;margin-bottom:var(--s-4);flex-shrink:0}
.tillit-stempel::before{content:"";position:absolute;inset:5px;border-radius:50%;border:1px dashed rgba(0,122,124,.35)}
.tillit-logo{width:2.4rem;height:2.1rem;display:block;object-fit:contain}
svg.tillit-logo{color:var(--teal)}
.stopp--om{padding-block:var(--seksjon-y);background:var(--flate)}
.stopp__lede{max-width:60ch;margin-top:var(--s-4);color:var(--tekst-svak)}
.stopp--om h3{margin-top:var(--s-6);color:var(--teal-mork)}
.stopp--om h3+p{max-width:80ch;margin-top:var(--s-2);color:var(--tekst-svak)}
.om-layout{display:grid;gap:var(--s-6)}
@media (min-width:56rem){
.om-layout{grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:var(--s-6) var(--s-8);align-items:start}
.om-team{margin-top:var(--s-6)}
}
.om-foto-rad{display:grid;gap:var(--s-4);margin-top:var(--s-6);grid-template-columns:repeat(auto-fit,minmax(12rem,1fr))}
.om-foto-rad[hidden]{display:none}
.om-foto-plassholder{margin:0}
.om-foto-boks{aspect-ratio:4/3;border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s-2);padding:var(--s-4);text-align:center;background:linear-gradient(155deg,var(--teal-lys),#fff);border:1px solid var(--teal-lys)}
.om-foto-boks svg{width:26%;height:auto;color:var(--teal);opacity:.6}
.om-foto-hint{margin:0;font:600 var(--t-sm)/1.3 var(--sans);color:var(--teal-mork);opacity:.7;max-width:16ch}
.om-foto-plassholder figcaption{margin-top:var(--s-2);font:600 var(--t-sm)/1 var(--sans);color:var(--tekst-svak);text-align:center}
.flaate{--flaate-b:clamp(7rem, 11.5vw, 10.5rem);--flaate-gap:clamp(.25rem, 1.5vw, 1.25rem);--flaate-heng:calc(0.027 * var(--flaate-b));position:relative;display:flex;justify-content:center;margin-top:var(--s-6);margin-bottom:calc(-1 * var(--flaate-heng))}
.flaate__spor{display:flex;align-items:flex-end;justify-content:center;gap:var(--flaate-gap);margin-inline:-3%;padding-bottom:var(--flaate-heng);overflow:hidden}
.flaate__bil{display:block;width:var(--flaate-b);height:auto;margin-bottom:calc(-1 * var(--flaate-heng))}
.flaate__vei{position:absolute;left:-3%;right:-3%;bottom:var(--flaate-heng);border-top:2px dashed color-mix(in srgb,var(--teal) 45%,transparent)}
@media (max-width:48rem){
.flaate{--flaate-gap:.5rem}
.flaate__bil:nth-child(n+3){display:none}
}
@keyframes flaate-inn{
from{opacity:0;transform:translateX(var(--flaate-ut));animation-timing-function:cubic-bezier(.2,.85,.3,1)}
14%{opacity:1}
86%{transform:translateX(2.2%);animation-timing-function:cubic-bezier(.4,0,.5,1)}
to{opacity:1;transform:none}
}
html.js .flaate{--flaate-takt:.44s;--flaate-start:.10s;--flaate-varighet:.74s;--flaate-ut:calc(-100% - var(--flaate-gap) - .5rem)}
html.js .flaate__bil{opacity:0;transform:translateX(var(--flaate-ut))}
html.js .flaate--inne .flaate__bil{animation:flaate-inn var(--flaate-varighet) both;animation-delay:calc(var(--flaate-start) + var(--flaate-takt) * var(--flaate-i, 0))}
html.js .flaate__bil:nth-child(4){--flaate-i:0}
html.js .flaate__bil:nth-child(3){--flaate-i:1}
html.js .flaate__bil:nth-child(2){--flaate-i:2}
html.js .flaate__bil:first-child{--flaate-i:3}
@media (max-width:48rem){
html.js .flaate__bil:nth-child(2){--flaate-i:0}
html.js .flaate__bil:first-child{--flaate-i:1}
}
html.js .flaate__vei{clip-path:inset(0 100% 0 0);transition:clip-path .55s linear}
html.js .flaate--inne .flaate__vei{clip-path:inset(0 0 0 0)}
@media (prefers-reduced-motion:reduce){
html.js .flaate__bil{opacity:1;transform:none;animation:none}
html.js .flaate__vei{clip-path:none;transition:none}
}
.stopp--jobb{padding-block:var(--seksjon-y);background:var(--base)}
.stopp--jobb h3{margin-top:var(--s-6);color:var(--teal-mork)}
.sitat-liste{list-style:none;margin:var(--s-3) 0 0;padding:0;display:grid;gap:var(--s-5);grid-template-columns:1fr;max-width:54rem}
.sitat-kort{background:#fff;border:1px solid var(--teal-lys);border-radius:var(--radius);padding:var(--s-5);display:flex;flex-direction:column;align-items:flex-start;gap:var(--s-4);transition:transform .2s,box-shadow .2s}
@media (hover:hover){
.sitat-kort:hover{transform:translateY(-4px);box-shadow:0 12px 24px -12px rgba(0,89,91,.35)}
}
@media (prefers-reduced-motion:reduce){
.sitat-kort{transition:none}
.sitat-kort:hover{transform:none}
}
@media (min-width:36rem){
.sitat-kort{flex-direction:row;align-items:center}
}
.sitat-kort blockquote{margin:0;flex:1;min-width:0}
.sitat-kort blockquote::before{content:"\201C";display:block;margin-bottom:var(--s-2);font:800 3rem/1 Georgia,"Times New Roman",serif;color:var(--teal);opacity:.55}
.stopp--jobb .sitat-kort blockquote::before,.stopp--referanser .sitat-kort blockquote::before{display:none}
.sitat-kort p{color:var(--tekst);font-style:italic;font-size:var(--t-md);line-height:1.6;max-width:62ch}
.sitat-kort p+p{margin-top:var(--s-3)}
@media (max-width:36rem){
.sitat-kort p{font-size:var(--t-base)}
}
.sitat-kort footer{margin-top:var(--s-3);font:700 var(--t-sm)/1.4 var(--sans);color:var(--teal-mork);font-style:normal}
.sitat-logo{display:block;width:12rem;height:5rem;object-fit:contain;object-position:left center;margin:0;flex-shrink:0}
@media (min-width:36rem){
.sitat-kort>picture{flex:0 0 12.5rem;display:flex;align-items:center}
.sitat-logo{object-position:center}
.stopp--referanser .sitat-kort:not(:has(> picture)){padding-left:calc(var(--s-5) + 12.5rem + var(--s-4))}
}
.stopp--jobb .jobb-soknad{margin-top:var(--s-6);font-weight:700;font-size:var(--t-md)}
.stopp--jobb .jobb-soknad a{color:var(--teal-mork);text-underline-offset:3px}
.side-footer{background:var(--teal-mork);color:#fff;padding-block:var(--s-8)}
.side-footer .wrap{display:grid;gap:var(--s-6);justify-items:center;text-align:center}
.side-footer{position:relative;overflow:hidden}
.side-footer>.wrap{position:relative;z-index:1}
.side-footer::before{content:"";position:absolute;left:56%;top:31%;width:clamp(320px,92vw,1150px);aspect-ratio:1;transform:translate(-50%,-50%);pointer-events:none;background:url("../bilder/dekning-nett.png") center/cover no-repeat;background-image:image-set(
    url("../bilder/dekning-nett.webp") type("image/webp"),
    url("../bilder/dekning-nett.png") type("image/png"));filter:invert(1) hue-rotate(180deg);mix-blend-mode:screen;opacity:.55}
.side-footer__merke{margin:0}
.side-footer__merke img{display:block;width:clamp(14rem,30vw,20rem);height:auto}
.parkering{--asfalt-h:clamp(1.1rem, 2.2vw, 1.7rem);position:relative;width:min(100%,60rem);display:grid;grid-template-columns:repeat(5,1fr);align-items:end;padding-bottom:calc(var(--asfalt-h) * .55)}
.parkering::after,.parkering::before{content:"";position:absolute;left:-2%;right:-2%;bottom:0;height:var(--asfalt-h)}
.parkering::before{background:#1d3b3d;border-radius:3px}
.parkering::after{background:linear-gradient(104deg,transparent calc(20% - 2px),rgba(255,255,255,.75) calc(20% - 2px) 20%,transparent 20%,transparent calc(40% - 2px),rgba(255,255,255,.75) calc(40% - 2px) 40%,transparent 40%,transparent calc(60% - 2px),rgba(255,255,255,.75) calc(60% - 2px) 60%,transparent 60%,transparent calc(80% - 2px),rgba(255,255,255,.75) calc(80% - 2px) 80%,transparent 80%);left:0;right:0}
.parkering__bil{position:relative;z-index:1;width:92%;height:auto;justify-self:center;display:block}
.parkering__p{position:relative;z-index:1;align-self:end;justify-self:center;font:800 clamp(1.1rem, 2.6vw, 1.9rem)/1 var(--sans);color:rgba(255,255,255,.8);margin-bottom:calc(var(--asfalt-h) * -.45);transform:scaleY(.6)}
@media (max-width:47.99rem){
.parkering{grid-template-columns:repeat(3,1fr);width:min(100%,24rem)}
.parkering::after{background:linear-gradient(104deg,transparent calc(33.333% - 2px),rgba(255,255,255,.75) calc(33.333% - 2px) 33.333%,transparent 33.333%,transparent calc(66.667% - 2px),rgba(255,255,255,.75) calc(66.667% - 2px) 66.667%,transparent 66.667%)}
.parkering>:nth-child(n+4){display:none}
}
html.js .js-reveal{opacity:0;transform:translateY(32px);transition:opacity .7s cubic-bezier(.22,.9,.32,1),transform .7s cubic-bezier(.22,.9,.32,1)}
html.js .js-reveal.revealed{opacity:1;transform:none}
.js-reveal:nth-child(3n+2){transition-delay:130ms}
.js-reveal:nth-child(3n+3){transition-delay:260ms}
@media (prefers-reduced-motion:reduce){
html.js .js-reveal{opacity:1;transform:none;transition:none}
}
.sti{position:absolute;left:0;top:0;width:100%;z-index:3;pointer-events:none}
.sti__linje{fill:none;stroke:var(--teal);stroke-width:2;stroke-linecap:round;stroke-dasharray:7 7;opacity:.5}
.sti__node{fill:var(--base);stroke:var(--teal);stroke-width:2.5;transition:fill .25s}
.sti__node--aktiv{fill:var(--teal)}
.sti__treff{fill:transparent}
.sti__lenke{cursor:pointer;pointer-events:auto}
.sti__lenke:focus-visible{outline:0}
.sti__lenke:focus-visible .sti__node{fill:var(--teal);stroke-width:4}
.sti__navn{font:600 12px/1 var(--sans);fill:var(--teal-mork);paint-order:stroke;stroke:var(--base);stroke-width:3px;stroke-linejoin:round;opacity:0;transition:opacity .15s}
.sti__lenke:focus-visible .sti__navn{opacity:1}
.stopp--kontakt{padding-block:var(--seksjon-y);background:var(--teal-lys)}
.kontakt-layout{margin-top:var(--s-5);max-width:40rem;display:grid;gap:var(--s-5)}
.kontakt__handling{background:var(--flate);border-radius:var(--radius);padding:var(--s-5);box-shadow:0 1px 3px rgba(0,89,91,.08);display:grid;gap:var(--s-4);align-content:start}
.kontakt__handling h3{color:var(--teal-mork);font-size:var(--t-lg)}
.kontakt__tittel{display:flex;align-items:center;gap:var(--s-3)}
.kontakt__ikon{flex:none;display:block;width:2.75rem;height:2.75rem}
.kontakt__firma{display:flex;align-items:center;gap:var(--s-3)}
.kontakt__firma>div{display:grid;gap:.1rem;min-width:0}
.kontakt__kontorer .kontakt__ikon{width:4rem;height:4rem}
.kontakt__lede{margin:0;color:var(--tekst-svak)}
.kontakt__knapper{display:flex;flex-direction:column;align-items:stretch;gap:var(--s-3)}
.kontakt__knapper .knapp{min-height:44px;justify-content:center}
@media (min-width:64rem){
.kontakt-layout{max-width:none;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"handling info" "bylenke info";grid-template-rows:auto 1fr;align-items:start;column-gap:var(--s-5)}
.kontakt__info{grid-area:info}
.kontakt__handling{grid-area:handling}
.kontakt__bylenke{grid-area:bylenke;margin-top:calc(var(--s-3) * -1)}
}
.kontakt__info{display:grid;gap:var(--s-5);align-content:start}
.kontakt__info{background:var(--teal-lys);border-radius:var(--radius);padding:var(--s-5);box-shadow:0 1px 3px rgba(0,89,91,.08)}
.kontakt__kontorer{display:grid;gap:var(--s-5)}
.kontakt__kontorer h3{color:var(--teal-mork);font-size:var(--t-lg)}
.kontakt__kontorer p{margin-top:var(--s-1);color:var(--tekst-svak);font-size:var(--t-sm)}
.kontakt__kontorer .kontakt__adresse{display:inline-block;padding-block:.7rem;margin-block:-.7rem;color:var(--teal-mork);text-decoration:underline;text-underline-offset:3px}
@media (hover:hover){
.kontakt__adresse:hover{text-decoration-thickness:2px}
}
.kontakt__orgnr{color:var(--tekst-svak)}
.kontakt__bylenke{display:inline-block;justify-self:start;margin-top:0;padding-block:.6rem;color:var(--teal-mork);font-weight:600;text-decoration:underline;text-underline-offset:.2em}
@media (hover:hover){
.kontakt__bylenke:hover{text-decoration-thickness:2px}
}
.kontakt__personer{list-style:none;margin:0;padding:0;display:grid;gap:var(--s-3);font-size:var(--t-sm);color:var(--tekst-svak)}
.kontakt__alternativ{border-top:1px solid var(--gronn-mellom);padding-top:var(--s-4);display:grid;gap:var(--s-3)}
.kontakt__personer li{display:flex;align-items:center;gap:var(--s-3)}
.kontakt__personer .team-initialer{width:2.75rem;height:2.75rem;font-size:var(--t-sm)}
.kontakt__personer li>div{display:grid;gap:.1rem;min-width:0}
.kontakt__personer strong{color:var(--tekst);font-size:var(--t-base)}
.kontakt__personer a{color:var(--teal-mork);text-underline-offset:3px}
.kontakt__personer li>div a{overflow-wrap:anywhere}
@media (pointer:coarse){
.kontakt__personer li>div a{display:inline-flex;align-items:center;justify-self:start;min-height:44px}
}
@media (min-width:48rem){
.kontakt__personer{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--s-4)}
}
@media (min-width:64rem) and (max-width:67.99rem){
.kontakt__personer{grid-template-columns:minmax(0,1fr)}
}
[hidden]{display:none}
.hopp-til-innhold{position:absolute;left:var(--s-3);top:-4rem;z-index:60;padding:var(--s-2) var(--s-4);background:var(--teal-mork);color:#fff;border-radius:0 0 8px 8px;font:700 var(--t-sm)/1.2 var(--sans)}
.hopp-til-innhold:focus{top:0}
.side-nav{position:sticky;top:-1px;z-index:50;background:var(--base);border-bottom:1px solid var(--teal-lys);box-shadow:0 1px 6px rgba(0,89,91,.06)}
.side-nav__rad{display:flex;align-items:center;gap:var(--s-4);min-height:3.75rem;position:relative}
.side-nav__logo{display:block;flex:none;line-height:0;border-radius:8px}
.side-nav__logo svg{display:block;width:2.6rem;height:2.6rem}
.side-nav__logo .nb-skinn{opacity:0;transform-box:view-box}
@keyframes nb-skinn-sveip{
0%{transform:translateX(0) skewX(-18deg);opacity:0}
12%{opacity:1}
88%{opacity:1}
100%{transform:translateX(150px) skewX(-18deg);opacity:0}
}
html.logo-anim .side-nav__logo .nb-skinn{animation:nb-skinn-sveip 520ms cubic-bezier(.45,0,.35,1) 60ms both}
@media (prefers-reduced-motion:reduce){
html.logo-anim .side-nav__logo .nb-skinn{animation:none}
}
@media (prefers-reduced-motion:reduce){
html.logo-anim .side-nav__logo .nb{animation:none!important}
}
.side-nav__bryter{display:none}
.side-nav__kontakt{display:none;border-color:var(--burgunder);color:var(--burgunder)}
.side-nav__meny{display:flex;align-items:center;gap:var(--s-4);flex:1;min-width:0}
.side-nav__meny ul{list-style:none;margin:0 auto 0 var(--s-3);padding:0;display:flex;gap:var(--s-1);flex-wrap:wrap}
.side-nav__lenke{display:block;padding:.6rem .75rem;border-radius:8px;color:var(--tekst);font:600 var(--t-sm)/1.2 var(--sans);text-decoration:none}
.side-nav__lenke[aria-current=page]{color:var(--teal-mork);box-shadow:inset 0 -2px 0 var(--teal);border-radius:8px 8px 0 0}
.side-nav__by{color:var(--teal-mork);font:600 var(--t-sm)/1.2 var(--sans);text-decoration:none;white-space:nowrap;padding:.6rem .5rem}
@media (hover:hover){
.side-nav__lenke:hover{background:var(--teal-lys);color:var(--teal-mork)}
.side-nav__by:hover{text-decoration:underline;text-underline-offset:3px}
}
.side-nav a:focus-visible,.side-nav__bryter:focus-visible{outline:2px solid var(--teal);outline-offset:2px}
#derfor,#jobb-hos-oss,#kontakt,#kunder,#miljo,#tjenester{scroll-margin-top:3.75rem}
@media (max-width:62rem){
.side-nav__rad{gap:var(--s-3)}
.side-nav__kontakt{display:inline-flex;order:2;margin-left:auto;min-height:44px;justify-content:center}
.side-nav__bryter{order:3;margin-left:0}
.side-nav__meny li:has(> a[href="#kontakt"]){display:none}
html.js .side-nav__bryter{display:inline-flex;flex:none;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border:1px solid #7a9593;border-radius:10px;background:var(--base);cursor:pointer;color:var(--teal-mork)}
.side-nav__bryter-ikon,.side-nav__bryter-ikon::after,.side-nav__bryter-ikon::before{display:block;width:1.15rem;height:2px;background:currentColor;border-radius:2px;content:"";transition:transform .2s,opacity .2s}
.side-nav__bryter-ikon{position:relative}
.side-nav__bryter-ikon::before{position:absolute;top:-6px;left:0}
.side-nav__bryter-ikon::after{position:absolute;top:6px;left:0}
.side-nav__bryter[aria-expanded=true] .side-nav__bryter-ikon{background:0 0}
.side-nav__bryter[aria-expanded=true] .side-nav__bryter-ikon::before{transform:translateY(6px) rotate(45deg)}
.side-nav__bryter[aria-expanded=true] .side-nav__bryter-ikon::after{transform:translateY(-6px) rotate(-45deg)}
.side-nav__meny{position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;gap:0;background:var(--base);border-bottom:1px solid var(--teal-lys);box-shadow:0 8px 16px rgba(0,89,91,.08);padding:var(--s-2) clamp(1rem,4vw,3rem) var(--s-4)}
html.js .side-nav__meny[hidden]{display:none}
.side-nav__meny ul{flex-direction:column;margin:0;gap:0}
.side-nav__lenke{padding:.85rem .5rem;font-size:var(--t-base)}
.side-nav__lenke[aria-current=page]{box-shadow:inset 3px 0 0 var(--teal);border-radius:0;background:var(--teal-lys)}
.side-nav__by{padding:.85rem .5rem;font-size:var(--t-base)}
}
.hero__ingress strong{color:var(--teal-mork);font-weight:700}
.hero__fakta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:0 .75rem;margin-top:.15rem}
.hero__fakta--to{justify-content:center;gap:0 .75rem}
.hero__fakta>span{white-space:nowrap}
.hero__fakta>i{flex:none;align-self:center;width:.3rem;height:.3rem;border-radius:50%;background:var(--teal)}
@media (max-width:48rem){
.hero__fakta{justify-content:center;gap:0 .45rem;font-size:.8125rem}
}
.stopp__lede--flere{max-width:68ch}
.stopp__lede--flere>p+p{margin-top:var(--s-3)}
.stopp--derfor{padding-block:var(--s-8);background:linear-gradient(to bottom,var(--himmel) 0,var(--teal-lys) 6rem)}
.derfor-rad{display:grid;gap:var(--s-5);grid-template-columns:minmax(0,1fr);max-width:46rem;margin-inline:auto}
.derfor-kort{background:#fff;border-radius:var(--radius);padding:var(--s-5) var(--s-5);text-align:center;display:flex;align-items:center;justify-content:center;transition:transform .2s,box-shadow .2s}
.derfor-kort p{color:var(--tekst);font-size:1rem;line-height:1.55}
@media (hover:hover){
.derfor-kort:hover{transform:translateY(-4px);box-shadow:0 12px 24px -12px rgba(0,89,91,.35)}
.derfor-kort:hover .derfor-kort__ikon{transform:scale(1.08)}
}
@media (prefers-reduced-motion:reduce){
.derfor-kort,.derfor-kort__ikon{transition:none}
.derfor-kort:hover,.derfor-kort:hover .derfor-kort__ikon{transform:none}
}
.derfor-kort:has(.derfor-kort__ikon){flex-direction:column;justify-content:flex-start;gap:var(--s-3)}
.derfor-kort__ikon{display:block;flex:none;width:3rem;height:3rem;transition:transform .2s}
.derfor-kort h3{color:var(--teal-mork)}
@media (min-width:48rem){
.derfor-rad{grid-template-columns:repeat(2,minmax(0,1fr))}
.derfor-kort{padding:var(--s-5) var(--s-6)}
}
:is(.tjeneste-grid--sju,.tjeneste-grid--stablet){grid-template-columns:1fr;align-items:start;max-width:52rem}
@media (min-width:36rem){
:is(.tjeneste-grid--sju,.tjeneste-grid--stablet)>.tjeneste-kort{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:var(--s-5);align-content:start}
:is(.tjeneste-grid--sju,.tjeneste-grid--stablet)>.tjeneste-kort>:not(.tjeneste-kort__ikon):not(picture){grid-column:2}
:is(.tjeneste-grid--sju,.tjeneste-grid--stablet)>.tjeneste-kort>.tjeneste-kort__ikon,:is(.tjeneste-grid--sju,.tjeneste-grid--stablet)>.tjeneste-kort>picture{grid-column:1;grid-row:1/span 3;margin-bottom:0}
}
.tjeneste-mer{margin-top:auto;padding-top:var(--s-3)}
.tjeneste-mer summary{cursor:pointer;padding:.85rem 0;font:700 var(--t-sm)/1.2 var(--sans);color:var(--teal-mork);text-decoration:underline;text-underline-offset:3px}
.tjeneste-mer summary:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-radius:4px}
.tjeneste-mer[open] summary{margin-bottom:var(--s-1)}
.om-team{min-width:0}
.team-liste h4{margin:0;font:700 var(--t-md)/1.3 var(--sans);color:var(--teal-mork)}
.team-liste{list-style:none;margin:0;padding:0;display:grid;gap:var(--s-4);grid-template-columns:1fr}
.team-liste li{display:flex;gap:var(--s-4);padding:var(--s-4);border:1px solid var(--burgunder);border-radius:var(--radius);background:var(--flate)}
.team-initialer{flex:none;display:grid;place-items:center;width:3.25rem;height:3.25rem;border-radius:50%;background:var(--teal-lys);color:var(--teal-mork);font:800 var(--t-md)/1 var(--sans);letter-spacing:.04em}
.team-liste p{margin-top:var(--s-1);color:var(--tekst-svak);font-size:var(--t-sm)}
.team-liste .team-rolle{color:var(--teal);font-weight:700;margin-top:0}
.ansatte{display:grid;gap:var(--s-5);margin-top:var(--s-6)}
.ansatte__bilder{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-2)}
.ansatte__bilder img{display:block;width:100%;height:auto;aspect-ratio:540/308;object-fit:cover;border-radius:var(--radius)}
.stopp--jobb .ansatte h3{margin-top:0}
.ansatte__tekst p{margin-top:var(--s-3);color:var(--tekst-svak);max-width:60ch}
@media (min-width:56rem){
.ansatte{grid-template-columns:1.15fr 1fr;align-items:center;gap:var(--s-6)}
}
.miljo-detaljer{margin-top:var(--s-8);display:grid;gap:var(--s-5);grid-template-columns:1fr}
@media (min-width:48rem){
.miljo-detaljer{grid-template-columns:repeat(2,1fr)}
.miljo-kort:first-child,.miljo-kort:last-child{grid-column:1/-1}
}
.miljo-kort{background:var(--flate);border:1px solid var(--teal-lys);border-radius:var(--radius);padding:0;overflow:hidden;display:flex;flex-direction:column;color:var(--tekst-svak);transition:transform .2s,box-shadow .2s}
.miljo-kort__topp{background:#fff;padding:var(--s-4) var(--s-5);min-height:calc(3.25rem + 2 * var(--s-4));display:flex;align-items:center}
.miljo-kort__tekst{background:var(--teal-lys);padding:var(--s-5);flex:1}
.miljo-kort p,.miljo-kort ul{max-width:68ch}
@media (hover:hover){
.miljo-kort:hover{transform:translateY(-4px);box-shadow:0 12px 24px -12px rgba(0,89,91,.35)}
}
@media (prefers-reduced-motion:reduce){
.miljo-kort{transition:none}
.miljo-kort:hover{transform:none}
}
.miljo-kort h3{color:var(--teal-mork);margin-bottom:var(--s-2)}
.miljo-kort p{margin-top:var(--s-2);font-size:var(--t-sm)}
.miljo-kort p strong{color:var(--tekst)}
.miljo-kort ul{margin:var(--s-2) 0 0;padding-left:1.2rem;font-size:var(--t-sm)}
.miljo-kort li{margin-top:var(--s-1)}
.miljo-kort__logo{display:block;height:3rem;width:auto;max-width:9rem;object-fit:contain}
.miljo-kort__logo--bred{height:3.25rem;max-width:11rem}
.miljo-kort__logo--sert{height:4.75rem;max-width:none}
.hero__innhold{margin-top:auto}
.hero__knapper{margin-bottom:auto}
.hero__scene{position:relative;flex:none;margin-top:var(--s-6);padding-bottom:2.75rem;background:linear-gradient(to bottom,transparent 0,var(--himmel) 26%)}
.hero__scene-ramme{position:relative;width:min(100%,135svh);margin-inline:auto;aspect-ratio:2172/724}
.hero__scene picture,.hero__scene-bilde{display:block;width:100%;height:100%}
.hero__scene .hero__scene-vinter{display:none}
html.vinter .hero__scene .hero__scene-sommer{display:none}
html.vinter .hero__scene .hero__scene-vinter{display:block}
html.vinter{--himmel:#93CED3}
.hero__scene-bilde{object-fit:cover;object-position:50% 100%;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 26%,#000 90%,transparent 100%),linear-gradient(to right,transparent 0,#000 7%,#000 93%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to bottom,transparent 0,#000 26%,#000 90%,transparent 100%),linear-gradient(to right,transparent 0,#000 7%,#000 93%,transparent 100%);mask-composite:intersect}
.hero__scene-ramme .hero__rekkevidde{position:absolute;left:0;right:0;top:90.5%;margin:0 auto;max-width:none;text-align:center;line-height:1.2;font-size:calc(2 * var(--t-base));font-weight:400;color:#595959}
.hero__scene-merke{position:absolute;left:19.4%;top:68%;width:5.5%;height:auto}
.hero__sti-start{position:absolute;left:9%;top:84%;width:0;height:0}
@media (max-width:48rem){
.hero__scene{padding-bottom:1.5rem}
.hero__scene-ramme .hero__rekkevidde{font-size:var(--t-base);font-weight:400;color:#4f4f4f;padding-inline:1rem}
.hero__sti-start{display:none}
}
@media (max-width:45rem){
.hero__scene-ramme{width:100%;aspect-ratio:auto;height:15rem}
.hero__scene-bilde{object-position:35% 100%}
.hero__scene-merke{left:calc(35% - 7.02rem);width:2.48rem}
}
html.js .side-nav:not(.side-nav--festet){background:0 0;box-shadow:none;border-bottom-color:transparent}
.privacy-panel{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;padding:var(--s-4)}
.privacy-panel[hidden]{display:none}
.privacy-panel__content{background:#fff;border-radius:var(--radius);padding:var(--s-5);max-width:36rem;position:relative;box-shadow:0 20px 40px rgba(0,0,0,.2)}
.privacy-panel__close{position:absolute;top:var(--s-3);right:var(--s-3);background:0 0;border:none;font:2rem/1 monospace;color:var(--tekst-svak);cursor:pointer;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center}
@media (hover:hover){
.privacy-panel__close:hover{color:var(--tekst)}
}
.privacy-panel__content h3{margin-bottom:var(--s-4)}
.privacy-panel__content p{color:var(--tekst-svak);line-height:var(--lh-brod)}
.side-footer__lenker{margin-top:var(--s-4);font-size:var(--t-sm)}
.side-footer__lenke{background:0 0;border:none;color:var(--gronn-lys);cursor:pointer;text-decoration:underline;font:inherit;padding:var(--s-3) var(--s-4);display:inline}
@media (hover:hover){
.side-footer__lenke:hover{color:#fff}
}
.sti__node--aktiv{fill:var(--burgunder);stroke:var(--burgunder)}
.team-initialer{background:var(--burgunder);color:#fff}
.parkering__p{color:#fff;background:var(--burgunder);border-radius:4px;padding:.1em .45em}
.stopp--jobb .sitat-kort{align-items:flex-start}
.sitat-avatar{flex:none;display:block;width:4rem;height:4rem}
.sitat-avatar--foto{border-radius:50%;object-fit:cover}
.sitat-kort>picture{flex:none;display:block}
.stopp--jobb .sitat-kort footer{color:var(--burgunder)}
.side-hode{padding-block:calc(3.75rem + var(--s-6)) var(--s-8);background:linear-gradient(to bottom,var(--base) 0,var(--himmel) 5rem,var(--himmel) calc(100% - 3rem),var(--hode-ned,var(--flate)) 100%)}
.side-hode--ned-base{--hode-ned:var(--base)}
.side-hode h1{font-size:clamp(2rem, 7vw, var(--t-3xl));color:var(--tekst)}
.side-hode+section{padding-top:var(--s-6)}
.side--referanser .stopp--referanser{background:var(--base)}
.side--miljo .stopp--tillit{background:var(--flate)}
.tekst-lenke{display:inline-flex;align-items:center;min-height:2.75rem;margin-top:var(--s-2);color:var(--teal-mork);font-weight:700;text-decoration:underline;text-underline-offset:3px}
@media (hover:hover){
.tekst-lenke:hover{text-decoration-thickness:2px}
}
.tjeneste-grid+.tekst-lenke{margin-top:var(--s-5)}
.stopp--kunder{padding-block:var(--seksjon-y);background:var(--base)}
.stopp--kunder h2{font-size:var(--t-lg)}
.kunde-rad{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--s-5) var(--s-6);margin:var(--s-5) 0 var(--s-3);padding:var(--s-5);background:var(--flate);border:1px solid var(--teal-lys);border-radius:var(--radius)}
.kunde-rad img{display:block;width:9rem;height:3rem;object-fit:contain}
.kunde-rad__navn{display:flex;align-items:center;justify-content:center;width:9rem;height:3rem;text-align:center;font-weight:700;color:var(--teal-mork)}
@media (min-width:64rem){
.kunde-rad{column-gap:var(--s-4)}
.kunde-rad img,.kunde-rad__navn{width:8rem}
}
@media (max-width:30rem){
.kunde-rad img{width:6.25rem}
.kunde-rad__navn{width:6.25rem}
}
@media (min-width:48rem){
.kunde-rad--sju img{width:8.5rem}
}
@media (min-width:64rem){
.kunde-rad--sju img{width:12rem;height:4rem}
}
.kunde-rad--fem{justify-content:space-evenly}
.kunde-rad--fem img{height:4rem}
.kunde-rad--fem img.kunde-rad__hoy{height:5.5rem}
@media (min-width:64rem){
.kunde-rad--fem img{width:10rem}
}
@media (max-width:30rem){
.kunde-rad--fem img{height:3rem}
.kunde-rad--fem img.kunde-rad__hoy{height:4.25rem}
}
.side-hode{position:relative}
.side-hode>.wrap{position:relative;z-index:1}
.side-hode__by{display:none}
@media (min-width:64rem){
.side-hode__by{display:block;position:absolute;z-index:0;pointer-events:none;top:var(--hode-by-topp,2.75rem);bottom:var(--hode-by-bunn,1.75rem);right:calc(max(0px,(100% - var(--wrap))/ 2) + clamp(1rem,4vw,3rem));-webkit-mask-image:linear-gradient(to right,transparent 0,#000 14%,#000 90%,transparent 100%),linear-gradient(to bottom,transparent 0,#000 22%,#000 88%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent 0,#000 14%,#000 90%,transparent 100%),linear-gradient(to bottom,transparent 0,#000 22%,#000 88%,transparent 100%);mask-composite:intersect}
.side-hode__by img{display:block;height:100%;width:auto}
}
.side-hode__by--miniby{--hode-by-topp:1.1rem;--hode-by-bunn:.4rem}
.by--stavanger .tjeneste-kort__ikon{height:3.5rem;opacity:.85}