/* Amdal Trefelling, utkast. Oppsett fra ftcc.com.au (hero 1, datapanel, rytme), hero 2 fra cochranslumber.com. */

/* ---------- Fonter (selvhostet, ingen tredjepart) ----------
   ITF Free Font License + SIL Open Font License 1.1. Balboa er demoOnly: kunden må kjøpe lisens før levering.
   ---------------------------------------------------------- */
@font-face{font-family:'Tanker';src:url('../assets/fonts/tanker-400-normal.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Nippo';src:url('../assets/fonts/nippo-normal.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:'Balboa';src:url('../assets/fonts/balboa-400-normal.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Sans';src:url('../assets/fonts/ibm-plex-sans-normal.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url('../assets/fonts/ibm-plex-mono-normal.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}

/* ---------- Tokens ---------- */
:root{
  /* 🎨1 Gran og varsel: granmørk flate, oransje fra Gautes jakke */
  --c-dyp:#141C17; --rgb-dyp:20,28,23; --c-dyp-2:#1C2720;
  --c-papir:#EFEAE0; --c-sand:#E3DACB; --c-flate:#F7F4EE;
  --c-blekk:#17201A; --c-dempet:#545A50;
  --c-aksent:#EE6A12; --c-paa-aksent:#141C17;
  --c-lys:#F1ECE2; --c-lys-dempet:#B8B5A9;
  --c-tekst:var(--c-blekk); --c-svak:var(--c-dempet); --c-linje:rgba(23,32,26,.18); --c-fokus:#17201A;

  --f-display:'Tanker',Impact,sans-serif; --w-display:400; --lh-display:1.05; --spor-display:.01em; --skala-display:1;
  --f-tekst:'IBM Plex Sans',system-ui,sans-serif;
  --f-mono:'IBM Plex Mono',ui-monospace,monospace;

  --s-1:8px; --s-2:16px; --s-3:24px; --s-4:32px; --s-5:48px; --s-6:64px; --s-7:96px; --s-8:120px;
  --bredde:1200px; --kant:clamp(16px,4vw,40px);
  --t-liten:13px; --t-brod:17px; --t-ingress:19px;
  --ease:cubic-bezier(.23,1,.32,1);
  --z-dekor:1; --z-sticky:100; --z-dokk:200; --z-overlay:300; --z-panel:400; --z-varsel:500;
  --topp-h:72px;
}
/* 🎨2 Kundens egne: grønn og bronse fra dagens side */
html[data-pal="2"]{
  --c-dyp:#1C3D22; --rgb-dyp:28,61,34; --c-dyp-2:#234829;
  --c-papir:#F7F4EF; --c-sand:#E8E3D8; --c-flate:#FCFAF6;
  --c-blekk:#1A1A1A; --c-dempet:#565049;
  --c-aksent:#D1A15A; --c-paa-aksent:#1A1A1A;
  --c-lys:#F7F4EF; --c-lys-dempet:#C3C8BA;
}
/* 🎨3 Bark og signalgul */
html[data-pal="3"]{
  --c-dyp:#2A2019; --rgb-dyp:42,32,25; --c-dyp-2:#34281F;
  --c-papir:#F2F0EA; --c-sand:#DDD7CA; --c-flate:#FAF9F5;
  --c-blekk:#211A14; --c-dempet:#5A5249;
  --c-aksent:#F2C230; --c-paa-aksent:#211A14;
  --c-lys:#F2F0EA; --c-lys-dempet:#C4B9AC;
}
/* 🅰️2 Nippo: bred og industriell */
html[data-font="2"]{--f-display:'Nippo',Impact,sans-serif; --w-display:700; --lh-display:1.08; --spor-display:0em; --skala-display:.74}
/* 🅰️3 Balboa (demoOnly): komprimert art deco */
html[data-font="3"]{--f-display:'Balboa',Impact,sans-serif; --w-display:400; --lh-display:1.04; --spor-display:.005em; --skala-display:1.06}

/* Mørke flater bytter tokens, ikke regler */
.paa-mork,.hero,.sikkerhet,.om,.bunn,.stripe{
  --c-tekst:var(--c-lys); --c-svak:var(--c-lys-dempet); --c-linje:rgba(241,236,226,.2); --c-fokus:var(--c-aksent);
}

/* ---------- Grunnlag ---------- */
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;scroll-padding-top:var(--topp-h)}
body{margin:0;background:var(--c-papir);color:var(--c-tekst);font:400 var(--t-brod)/1.55 var(--f-tekst);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,video{display:block;max-width:100%;height:auto}
a{color:inherit}
h1,h2,h3,p,figure,ul,ol,dl,dd{margin:0}
ul,ol{padding:0;list-style:none}
:focus-visible{outline:2px solid var(--c-fokus);outline-offset:3px;border-radius:2px}
.vis-skjermleser{position:absolute!important;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:var(--s-2);top:-60px;z-index:var(--z-varsel);background:var(--c-aksent);color:var(--c-paa-aksent);padding:12px 16px;font-weight:600}
.hopp:focus{top:var(--s-2)}
.sprite{display:none}
.ramme{width:100%;max-width:calc(var(--bredde) + 2*var(--kant));margin:0 auto;padding:0 var(--kant)}
.ikon{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.ikon--stor{width:40px;height:40px}

.seksjon__tittel{font-family:var(--f-display);font-weight:var(--w-display);font-size:calc(clamp(44px,5vw,72px)*var(--skala-display));line-height:var(--lh-display);letter-spacing:var(--spor-display);text-transform:uppercase}

/* ---------- Knapper ---------- */
.knapp{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 24px;border:1px solid transparent;border-radius:0;font:600 var(--t-liten)/1.2 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:background-color .18s var(--ease),color .18s var(--ease),transform .12s var(--ease)}
.knapp:active{transform:scale(.97)}
.knapp--aksent{background:var(--c-aksent);color:var(--c-paa-aksent)}
.knapp--linje{background:transparent;color:var(--c-tekst);border-color:var(--c-linje)}
@media (hover:hover) and (pointer:fine){
  .knapp--aksent:hover{background:var(--c-lys);color:var(--c-dyp)}
  .knapp--linje:hover{border-color:var(--c-tekst)}
}

/* ---------- Toppstripe og meny ---------- */
.stripe{background:var(--c-dyp);color:var(--c-tekst);border-bottom:1px solid var(--c-linje);font:500 13px/1 var(--f-mono)}
.stripe__rad{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);min-height:44px}
.stripe__lenke{display:inline-flex;align-items:center;gap:8px;text-decoration:none;min-height:44px}
.stripe__lenke .ikon{width:15px;height:15px;color:var(--c-aksent)}
.stripe__sted{color:var(--c-svak)}
.topp{position:sticky;top:0;z-index:var(--z-sticky);background:var(--c-papir);border-bottom:1px solid var(--c-linje)}
.topp__rad{display:flex;align-items:center;gap:var(--s-4);height:var(--topp-h)}
.merke{display:flex;align-items:baseline;gap:8px;text-decoration:none;margin-right:auto;min-height:44px;align-items:center}
.merke__navn{font-family:var(--f-display);font-weight:var(--w-display);font-size:calc(30px*var(--skala-display));line-height:1;text-transform:uppercase;letter-spacing:var(--spor-display)}
.merke__fag{font:500 12px/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--c-svak)}
.meny{display:flex;gap:var(--s-4)}
.meny a{font:500 13px/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;padding:16px 0}
.meny a:hover{text-decoration:underline;text-underline-offset:6px}

/* ---------- Hero, felles ---------- */
html:not([data-hero="2"]) .hero--film,html[data-hero="2"] .hero--panel{display:none}
.hero{background:var(--c-dyp);color:var(--c-tekst);position:relative;overflow:hidden}
.hero__tittel{display:flex;flex-direction:column;font-family:var(--f-display);font-weight:var(--w-display);font-size:calc(clamp(64px,8.2vw,118px)*var(--skala-display));line-height:var(--lh-display);letter-spacing:var(--spor-display);text-transform:uppercase;margin:var(--s-2) 0 var(--s-4)}
.hero__line{display:block;overflow:hidden;padding:.2em .25em .26em;margin:-.2em -.25em -.26em}
.hero__line-in{display:block}
.hero__aksent{color:var(--c-aksent)}
.hero__vurdering{display:inline-flex;align-items:center;gap:10px;min-height:44px;font:500 14px/1 var(--f-mono);text-decoration:none;color:var(--c-tekst)}
.hero__vurdering:hover span:last-child{text-decoration:underline;text-underline-offset:4px}
.hero__sted{font:500 var(--t-liten)/1.4 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--c-svak)}
.hero__ingress{font-size:var(--t-ingress);line-height:1.55;max-width:34em;color:var(--c-tekst)}
.hero__knapper{display:flex;flex-wrap:wrap;gap:12px;margin-top:var(--s-4)}

.stjerner{--s:16px;position:relative;display:inline-block;width:calc(var(--s)*5);height:var(--s);background:var(--c-linje);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.5l2.9 6.1 6.6.8-4.9 4.6 1.3 6.6L12 17.3l-5.9 3.3 1.3-6.6L2.5 9.4l6.6-.8z'/%3E%3C/svg%3E") 0 0/var(--s) var(--s) repeat-x;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.5l2.9 6.1 6.6.8-4.9 4.6 1.3 6.6L12 17.3l-5.9 3.3 1.3-6.6L2.5 9.4l6.6-.8z'/%3E%3C/svg%3E") 0 0/var(--s) var(--s) repeat-x}
.stjerner__fylt{position:absolute;inset:0 auto 0 0;width:var(--fylt,100%);background:var(--c-aksent)}

/* ---------- Hero 1: tekst venstre, Gautes foto som bakgrunn til høyre ---------- */
.hero--panel{min-height:min(84svh,760px);display:flex;align-items:center}
.hero__bakgrunn{position:absolute;inset:0 0 0 auto;width:60%;z-index:0}
.hero__bakgrunn img{width:100%;height:100%;object-fit:cover;object-position:50% 22%}
.hero__bakgrunn::after{content:"";position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(var(--rgb-dyp),1) 0%,rgba(var(--rgb-dyp),.82) 22%,rgba(var(--rgb-dyp),.3) 52%,rgba(var(--rgb-dyp),0) 72%),
  linear-gradient(0deg,rgba(var(--rgb-dyp),.55) 0%,rgba(var(--rgb-dyp),0) 30%)}
.hero__rad{position:relative;z-index:var(--z-dekor);display:grid;grid-template-columns:minmax(0,680px);padding-top:var(--s-7);padding-bottom:var(--s-7)}

/* ---------- Hero 2: film i hele bakgrunnen, tekst høyre (klatreren står til venstre i bildet) ---------- */
.hero--film{min-height:min(88svh,800px);display:flex;align-items:center}
.hero__film{position:absolute;inset:0;z-index:0}
.hero__film video{width:100%;height:100%;object-fit:cover;object-position:30% 50%}
.hero__film::after{content:"";position:absolute;inset:0;background:
  linear-gradient(270deg,rgba(var(--rgb-dyp),.93) 0%,rgba(var(--rgb-dyp),.9) 46%,rgba(var(--rgb-dyp),.55) 62%,rgba(var(--rgb-dyp),0) 80%),
  linear-gradient(0deg,rgba(var(--rgb-dyp),.6) 0%,rgba(var(--rgb-dyp),0) 40%)}
.hero__film-rad{position:relative;z-index:var(--z-dekor);padding-top:var(--s-7);padding-bottom:var(--s-7)}
.hero__tekst--film{max-width:600px;margin-left:auto;text-align:right;display:flex;flex-direction:column;align-items:flex-end}
.hero__tekst--film .hero__tittel{align-items:flex-end;font-size:calc(clamp(56px,6.6vw,96px)*var(--skala-display))}
.hero__tekst--film .hero__knapper{justify-content:flex-end}

/* ---------- Ordrad ---------- */
.ordrad{background:var(--c-sand);border-bottom:1px solid var(--c-linje)}
.ordrad__rad{display:flex;justify-content:center;flex-wrap:wrap;gap:6px 0;padding-top:18px;padding-bottom:18px;font:500 13px/1.4 var(--f-mono);letter-spacing:.14em;text-transform:uppercase}
.ordrad__rad span+span::before{content:"·";margin:0 22px;color:var(--c-dempet)}

/* ---------- Tjenester ---------- */
.tjenester{padding:var(--s-8) 0}
.seksjon__hode{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--s-5);margin-bottom:var(--s-6)}
.seksjon__ingress{max-width:30em;color:var(--c-svak)}
.tjeneste-rad{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s-3)}
.tjeneste{position:relative;display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--c-blekk);padding-top:var(--s-2)}
.tjeneste__bilde{overflow:hidden;margin-bottom:6px}
.tjeneste__bilde img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .3s var(--ease)}
.tjeneste__navn{display:flex;align-items:center;gap:10px;font:600 20px/1.25 var(--f-tekst)}
.tjeneste__navn .ikon{color:var(--c-blekk)}
.tjeneste__linje{font:500 12px/1.45 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--c-svak)}
.tjeneste__tekst{font-size:15.5px;line-height:1.55}
.tjeneste__lenke{position:absolute;inset:0;z-index:var(--z-dekor)}
@media (hover:hover) and (pointer:fine){.tjeneste:hover .tjeneste__bilde img{transform:scale(1.03)}}

/* ---------- Sikkerhet: bilde i halv bredde helt ut til kanten ---------- */
.sikkerhet{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:var(--c-dyp);color:var(--c-tekst)}
.sikkerhet__bilde img{width:100%;height:100%;min-height:560px;object-fit:cover}
.sikkerhet__tekst{display:flex;flex-direction:column;justify-content:center;gap:var(--s-3);padding:var(--s-7) var(--kant) var(--s-7) var(--s-6);max-width:640px}
.sikkerhet__tekst p{max-width:32em;color:var(--c-svak)}
.sikkerhet__tekst p:first-of-type{color:var(--c-tekst);font-size:var(--t-ingress)}
.sikkerhet__punkter{display:grid;gap:12px;margin-top:var(--s-1)}
.sikkerhet__punkter li{display:flex;gap:12px;align-items:center;font:500 13px/1.4 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;padding-top:12px;border-top:1px solid var(--c-linje)}
.sikkerhet__punkter .ikon{color:var(--c-aksent)}

/* ---------- Slik jobber vi ---------- */
.slik{background:var(--c-sand);padding:var(--s-8) 0}
.steg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-5);margin-top:var(--s-6)}
.steg__punkt{border-top:1px solid var(--c-blekk);padding-top:var(--s-3);display:grid;gap:10px;align-content:start}
.steg__nr{font:600 13px/1 var(--f-mono);letter-spacing:.1em;display:flex;align-items:center;gap:10px}
.steg__nr::before{content:"";width:10px;height:10px;background:var(--c-aksent)}
.steg__punkt h3{font:600 22px/1.25 var(--f-tekst)}
.steg__punkt p{color:var(--c-svak);max-width:28em}

/* ---------- Befaring (lead-modul) ---------- */
.befaring{padding:var(--s-8) 0}
.befaring__rad{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,6fr);gap:var(--s-6);align-items:start}
.befaring__hode{display:grid;gap:var(--s-3);position:sticky;top:calc(var(--topp-h) + var(--s-4))}
.befaring__hode p{color:var(--c-svak);max-width:26em}
.befaring__tlf{display:inline-flex;align-items:center;gap:10px;min-height:44px;font:600 14px/1 var(--f-mono);text-decoration:none}
.befaring__tlf:hover{text-decoration:underline;text-underline-offset:5px}
.sjekk{background:var(--c-flate);border:1px solid var(--c-linje);padding:var(--s-5)}
.sjekk__topp{display:flex;align-items:center;gap:var(--s-2);font:500 12px/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--c-svak);margin-bottom:var(--s-4)}
.sjekk__bar{flex:1;height:2px;background:var(--c-linje);overflow:hidden}
.sjekk__bar span{display:block;height:100%;background:var(--c-blekk);transform:scaleX(.2);transform-origin:0 50%;transition:transform .3s var(--ease)}
.sjekk__sp{border:0;margin:0;padding:0;display:grid;gap:10px;min-width:0}
.sjekk__sp legend{font:600 26px/1.25 var(--f-tekst);margin-bottom:var(--s-2);padding:0}
.sjekk__sp legend:focus{outline:none}
.val{position:relative;display:block;cursor:pointer}
.val input{position:absolute;opacity:0;width:1px;height:1px}
.val__rad{display:flex;align-items:center;gap:14px;min-height:52px;padding:12px 16px;border:1px solid var(--c-linje);background:var(--c-papir);transition:background-color .15s var(--ease),border-color .15s var(--ease)}
.val__rad b{display:inline-grid;place-items:center;width:28px;height:28px;flex:none;border:1px solid var(--c-blekk);font:600 13px/1 var(--f-mono)}
.val:hover .val__rad{border-color:var(--c-blekk)}
.val input:checked+.val__rad{background:var(--c-dyp);color:var(--c-lys);border-color:var(--c-dyp)}
.val input:checked+.val__rad b{background:var(--c-aksent);color:var(--c-paa-aksent);border-color:var(--c-aksent)}
.val input:focus-visible+.val__rad{outline:2px solid var(--c-fokus);outline-offset:2px}
.sjekk__svar{background:var(--c-dyp);color:var(--c-lys);padding:var(--s-3);display:grid;gap:6px;margin-bottom:var(--s-3)}
.sjekk__svar:focus{outline:none}
.sjekk__etikett{font:500 12px/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--c-lys-dempet)}
.sjekk__metode{font-family:var(--f-display);font-weight:var(--w-display);font-size:calc(34px*var(--skala-display));line-height:1.1;text-transform:uppercase;letter-spacing:var(--spor-display)}
.sjekk__svar .sjekk__metode{color:var(--c-aksent)}
.felt-rad{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.felt{display:grid;gap:6px;font:500 13px/1.3 var(--f-mono);letter-spacing:.04em}
.felt--bred{grid-column:1/-1}
.felt input{font:400 17px/1.3 var(--f-tekst);min-height:50px;padding:12px 14px;border:1px solid var(--c-dempet);border-radius:0;background:var(--c-papir);color:var(--c-blekk)}
.felt input[aria-invalid="true"]{border-color:#A3260F;border-width:2px}
.samtykke{display:flex;gap:12px;align-items:flex-start;margin-top:var(--s-2);font-size:15px;line-height:1.45;cursor:pointer;min-height:44px}
.samtykke input{width:22px;height:22px;margin:1px 0 0;flex:none;accent-color:var(--c-dyp)}
.sjekk__feil{margin-top:var(--s-2);color:#A3260F;font-weight:600}
.sjekk__knapper{display:flex;justify-content:space-between;gap:12px;margin-top:var(--s-3)}
.sjekk__knapper:has(> :not([hidden])) {}
#sjekk-send{margin-left:auto}
.sjekk__takk{text-align:left;gap:var(--s-2)}
.sjekk__takk:focus{outline:none}
.sjekk__takk .ikon{color:var(--c-dyp)}

/* ---------- Om og kontakt ---------- */
.om{background:var(--c-dyp);color:var(--c-tekst);padding:var(--s-8) 0}
.om__rad{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:var(--s-7);align-items:end}
.om__tekst{display:grid;gap:var(--s-3)}
.om__tekst p{max-width:34em;color:var(--c-svak)}
.om__tekst p:first-of-type{color:var(--c-tekst);font-size:var(--t-ingress)}
.omtale{display:flex;align-items:center;gap:var(--s-2);flex-wrap:wrap;padding-top:var(--s-3);border-top:1px solid var(--c-linje)}
.omtale p{color:var(--c-tekst)!important;font-size:var(--t-brod)!important}
.omtale a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:4px}
.kontakt{border:1px solid var(--c-linje);padding:var(--s-4)}
.kontakt__tittel{font:500 12px/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--c-svak);margin-bottom:var(--s-2)}
.kontakt__liste li{display:flex;align-items:center;gap:12px;min-height:52px;border-top:1px solid var(--c-linje)}
.kontakt__liste li:first-child{border-top:0}
.kontakt__liste .ikon{color:var(--c-aksent)}
.kontakt__liste a{display:flex;align-items:center;min-height:44px;flex:1;text-decoration:none;font-size:18px}
.kontakt__liste a:hover{text-decoration:underline;text-underline-offset:4px}
.kontakt__org{margin-top:var(--s-2);font:500 12px/1.4 var(--f-mono);color:var(--c-svak)}

/* ---------- Bunn ---------- */
.bunn{background:var(--c-dyp);color:var(--c-tekst);border-top:1px solid var(--c-linje);padding:var(--s-4) 0 var(--s-5)}
.bunn__rad{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s-2) var(--s-4);font:400 13px/1.5 var(--f-mono);color:var(--c-svak)}
.bunn__kilde{flex-basis:100%;order:3}
.bunn__kreditt{display:inline-flex;align-items:center;min-height:44px;color:var(--c-svak);text-underline-offset:4px}

/* ---------- Dokk (mobil) ---------- */
.dokk{display:none}

/* ---------- Designvalg ---------- */
.lab{position:fixed;right:12px;bottom:12px;z-index:var(--z-panel);display:flex;flex-direction:column-reverse;align-items:flex-end;gap:8px;font:500 13px/1 var(--f-mono)}
.lab__veksle{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(20,28,23,.72);color:#F1ECE2;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);cursor:pointer;font:inherit}
.lab__panel{display:grid;gap:8px;padding:12px;border:1px solid rgba(255,255,255,.22);border-radius:14px;background:rgba(20,28,23,.78);color:#F1ECE2;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}
.lab__gruppe{display:flex;align-items:center;gap:6px}
.lab__merke{width:26px;text-align:center}
.lab__gruppe button{width:44px;height:44px;border-radius:10px;border:1px solid rgba(255,255,255,.25);background:transparent;color:inherit;font:inherit;cursor:pointer}
.lab__gruppe button[aria-pressed="true"]{background:#F1ECE2;color:#141C17}
.lab__kreditt{font-size:11px;opacity:.75;text-align:right;padding-top:4px}
.lab__kreditt a{display:inline-flex;align-items:center;min-height:44px;color:inherit}

/* ---------- Intro: bare heroen skjules, og bare med JS ---------- */
.anim-hero .hero__line-in{transform:translateY(150%)}
.anim-hero .hero__sub{opacity:0}

/* ---------- Nettbrett ---------- */
@media (max-width:1080px){
  .meny{display:none}
  .tjeneste-rad{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hero__rad{gap:var(--s-5)}
}

/* ---------- Mobil: ruter, ikke ramse opp ---------- */
@media (max-width:760px){
  :root{--topp-h:60px;--t-brod:16px;--t-ingress:17px}
  .stripe__sted,.stripe__epost{display:none}
  .stripe__rad{justify-content:center}
  .topp__knapp{min-height:44px;padding:10px 14px;font-size:12px}
  .merke__fag{display:none}

  .hero--panel{min-height:0;display:block}
  .hero__bakgrunn{inset:0 0 auto 0;width:auto;height:min(46svh,380px)}
  .hero__bakgrunn img{object-position:50% 12%}
  .hero__bakgrunn::after{background:linear-gradient(0deg,rgba(var(--rgb-dyp),1) 0%,rgba(var(--rgb-dyp),.92) 30%,rgba(var(--rgb-dyp),.5) 52%,rgba(var(--rgb-dyp),0) 74%)}
  .hero__rad{grid-template-columns:1fr;padding-top:min(34svh,280px);padding-bottom:var(--s-4)}
  .hero__tittel{font-size:calc(clamp(52px,16vw,72px)*var(--skala-display));margin:var(--s-1) 0 var(--s-3)}
  .hero__knapper{margin-top:var(--s-3)}
  .hero__knapper .knapp{flex:1 1 100%}

  .hero--film{min-height:0;display:block}
  .hero__film{bottom:auto;height:min(50svh,420px)}
  .hero__film video{object-position:22% 50%}
  .hero__film::after{background:linear-gradient(0deg,rgba(var(--rgb-dyp),1) 0%,rgba(var(--rgb-dyp),.55) 30%,rgba(var(--rgb-dyp),0) 60%)}
  .hero__film-rad{padding-top:min(41svh,340px);padding-bottom:var(--s-5)}
  .hero__tekst--film{text-align:left;align-items:flex-start;margin-left:0}
  .hero__tekst--film .hero__tittel{align-items:flex-start;font-size:calc(clamp(44px,12.5vw,60px)*var(--skala-display))}
  .hero__tekst--film .hero__knapper{justify-content:flex-start}

  .ordrad__rad{font-size:11px;letter-spacing:.1em;padding-top:12px;padding-bottom:12px}
  .ordrad__rad span+span::before{margin:0 8px}

  .tjenester,.slik,.befaring,.om{padding:var(--s-5) 0}
  .seksjon__hode{display:block;margin-bottom:var(--s-4)}
  .seksjon__ingress{display:none}
  .seksjon__tittel{font-size:calc(44px*var(--skala-display))}
  .tjeneste-rad{gap:var(--s-3) 12px}
  .tjeneste{gap:6px;padding-top:10px}
  .tjeneste__bilde img{aspect-ratio:3/2}
  .tjeneste__navn{font-size:15px;gap:6px}
  .tjeneste__navn .ikon{width:16px;height:16px}
  .tjeneste__linje{font-size:11px}
  .tjeneste__tekst{display:none}

  .sikkerhet{grid-template-columns:1fr}
  .sikkerhet__bilde img{min-height:0;aspect-ratio:2/1;height:auto}
  .sikkerhet__tekst{padding:var(--s-4) var(--kant) var(--s-5);gap:var(--s-2)}
  .sikkerhet__tekst p:not(:first-of-type){display:none}

  .steg{grid-template-columns:1fr;gap:0;margin-top:var(--s-3)}
  .steg__punkt{grid-template-columns:44px 1fr;gap:4px 8px;padding:var(--s-2) 0}
  .steg__nr{grid-row:1/3}
  .steg__punkt h3{font-size:18px}
  .steg__punkt p{font-size:15px}

  .befaring__rad{grid-template-columns:1fr;gap:var(--s-3)}
  .befaring__hode{position:static;gap:var(--s-2)}
  .befaring__hode p{font-size:15px}
  .sjekk{padding:var(--s-3) var(--s-2)}
  .sjekk__sp legend{font-size:21px}
  .felt-rad{grid-template-columns:1fr}

  .om__rad{grid-template-columns:1fr;gap:var(--s-4)}
  .om__tekst p:nth-of-type(2){display:none}
  .kontakt{padding:var(--s-2) var(--s-3)}

  .bunn{padding-bottom:96px}
  .dokk{display:grid;grid-template-columns:1fr 2fr;position:fixed;left:0;right:0;bottom:0;z-index:var(--z-dokk);background:var(--c-dyp);border-top:1px solid rgba(241,236,226,.2);padding:8px 8px calc(8px + env(safe-area-inset-bottom));gap:8px;transform:translateY(110%);transition:transform .3s var(--ease)}
  .dokk-ute .dokk{transform:none}
  .dokk__knapp{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;font:600 13px/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;text-decoration:none;color:#F1ECE2;border:1px solid rgba(241,236,226,.3)}
  .dokk__knapp--aksent{background:var(--c-aksent);color:var(--c-paa-aksent);border-color:var(--c-aksent)}
  .dokk-ute .lab{bottom:84px}
  .lab__veksle-tekst{display:none}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;scroll-behavior:auto!important}
  .anim-hero .hero__line-in{transform:none}
  .anim-hero .hero__sub{opacity:1}
}
