/* ==========================================================
   REVISA - stilark
   ========================================================== */

/* SKRIFTENE. Noeyaktig samme to som programmet henter i
   vedtakssjekk/revisa_tema.css og app.py.

   LIGGER LOKALT, IKKE HOS GOOGLE (29.09.2026). Foer ble de hentet fra
   fonts.googleapis.com, og da ble IP-adressen til hver besoekende sendt
   til Google. Naa ligger filene i skrifter/, og siden henter ingenting
   utenfra. Personvernsiden (personvern.html) sier dette - legges en
   ekstern skrift inn igjen, maa den teksten endres samtidig.

   BARE LATIN OG LATIN-EXT er tatt med. Det dekker norsk (æøå), §, «»
   og tankestrek. Kyrillisk, gresk og vietnamesisk er utelatt.

   unicode-range gjoer at nettleseren bare laster latin-ext-filen naar
   siden faktisk bruker et tegn derfra.

   Source Serif 4 er EN variabel fil som dekker alle vekter - derfor
   peker 400 og 500 paa samme fil. Den lastes bare én gang.

   Skriftene er under SIL Open Font License 1.1, se skrifter/LISENS.txt.

   VIRKER FORTSATT UTEN SKRIFTENE: finnes ikke filene, faller Source
   Serif 4 ned paa Georgia og Barlow Condensed paa Segoe UI. */
/* latin-ext */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(skrifter/barlow-condensed-300-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(skrifter/barlow-condensed-300-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(skrifter/barlow-condensed-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(skrifter/barlow-condensed-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(skrifter/barlow-condensed-500-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(skrifter/barlow-condensed-500-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(skrifter/barlow-condensed-600-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(skrifter/barlow-condensed-600-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(skrifter/barlow-condensed-700-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(skrifter/barlow-condensed-700-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(skrifter/source-serif-4-variabel-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(skrifter/source-serif-4-variabel-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(skrifter/source-serif-4-variabel-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(skrifter/source-serif-4-variabel-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ---------- SKRUENE ----------
   Alt du sannsynligvis vil justere staar her, ett sted.
   Endrer du et tall her, slaar det gjennom overalt. */
:root {
  /* HET GULL, ER HVITT (13.09.2026). Aksentfargen #C9A24A er ute:
     programmet har ingen gullfarge lenger, og to ulike aksenter fikk
     nettsiden og verktoeyet til aa se ut som to produkter.

     NAVNET STAAR IGJEN. Det brukes to steder - streken under
     overskriftene og teksten i REVISA-baandet. Et navnebytte ville
     krevd at begge ble roert samtidig, med risiko for at ett ble
     glemt. Samme grep som --revisa-gull i programmets revisa_tema.css.
     Staar det «gull» i koden, er det hvitt som kommer ut. */
  --gull:      #FFFFFF;
  /* HET SORT, ER LYS (13.09.2026). Siden er lys over hele hoeyden naa,
     ikke bare i midtpartiet. #F4F5F7 er programmets egen flatefarge
     (backgroundColor i vedtakssjekk/.streamlit/config.toml).

     NAVNET STAAR IGJEN, av samme grunn som --gull og --navy: det brukes
     to steder - body og bunnfeltet - og et navnebytte krever at begge
     roeres samtidig. Staar det «sort» i koden, er det lys graa. */
  --sort:         #F4F5F7;
  --strek-farge:  var(--gull);      /* streken under overskriftene */
  --tekst-lys:    #c4c6c8;

  /* SKIFERGRAATT i heroen. Tre toner - lys oeverst, moerk nede. Vil du
     ha flaten lysere eller moerkere, endrer du alle tre i samme
     retning. Da holder dybden seg. GAA IKKE FOR LYST: over omtrent
     #55606B faar hvit tekst for lav kontrast.

     DETTE ER DEN MOERKE VERSJONEN, IKKE PROGRAMMETS EGEN FLATEFARGE.
     Det fantes en periode to konkurrerende svar paa "hvor lys skal
     heroen vaere": disse tre linjene sto en kort stund paa naer-hvite
     toner (#F8FAFC osv, laant fra programmets #F4F5F7), mens en egen
     proevefil (design-endring/prove-farger.css, 15.09.2026) samtidig
     satte de samme variablene til moerke skifertoner og VANT i
     nettleseren fordi den ble lastet sist. Nettsiden saa altsaa moerk
     ut i praksis hele tiden, mens denne fila paastod noe annet -
     noeyaktig den typen selvmotsigelse som gjoer en side vanskelig aa
     stole paa. Proevefila er nå tatt bort (21.09.2026), og de moerke
     tonene den brukte staar naa her, som eneste sannhet.
     Hvit heroetekst (.hero h1, .hero p) er skrevet med disse tre
     tonene som forutsetning - lyses de opp igjen, maa tekstfargene i
     heroen roeres samtidig. */
  --skifer-lys:   #3E4751;
  --skifer-midt:  #343C45;
  --skifer-mork:  #2B323A;

  /* --hero-hoyde er ikke lenger i bruk (21.09.2026): heroen faar naa
     hoeyden innholdet trenger, se .hero. Variabelnavnet staar igjen i
     tilfelle en fast hoeyde trengs igjen senere. */
  --hero-hoyde:   auto;

  /* Skriftstakkene, skrevet ut ett sted. Programmet bruker de samme to,
     og de er kopiert ord for ord derfra - ikke skrevet paa nytt.

     Univers Condensed Light staar foerst i broedskriften fordi den er
     kjoept og installert paa noen maskiner. Den kan IKKE lastes ned.
     Har maskinen den, brukes den; ellers faller den umerkelig ned paa
     Barlow Condensed, som har samme smale, lette karakter. */
  --antikva: 'Source Serif 4', Georgia, 'Times New Roman', serif;
  --brodskrift: 'Univers Condensed Light', 'Univers LT Std 47 Light Cn',
                'Barlow Condensed', 'Segoe UI Condensed', 'Segoe UI', sans-serif;
}

/* GRUNNSTOERRELSEN. 16px, ikke nettleserens vanlige 16px - samme verdi
   som programmet setter i revisa_tema.css. Alt som er skrevet i rem
   (nesten alt her) skalerer med denne, saa hele siden vokser jevnt og
   ingen enkeltregel maa roeres. Sto siden paa 16 og programmet paa 17.5,
   ville teksten vaert merkbart mindre her enn i verktoeyet. */
html { font-size: 16px; }

* { box-sizing: border-box; }

body {
  margin: 0;
  background: var(--sort);
  font-family: var(--brodskrift);
  /* Lett strek, som i programmet. Barlow Condensed i vanlig tykkelse
     blir for tung mot den smale bokstavformen. */
  font-weight: 300;
}


/* ==========================================================
   TOPPBANNER
   ========================================================== */

/* SAMLET HIT FRA design-endring/prove-farger.css (21.09.2026).
   Fila var midlertidig fra starten - se kommentaren øverst i den -
   og lå der lenge nok til å bli en usynlig andre kilde til fargene
   på siden: to stilark som delvis sa det samme, delvis overstyrte
   hverandre, og som ingen så på samtidig. Alt som fortsatt var i
   bruk er nå flyttet inn her, og index.html peker ikke lenger dit. */
.banner {
  display: flex;
  align-items: center;
  gap: 3.2rem;
  padding: 0 3.5rem;
  height: 82px;
  /* Noeyaktig programmets menylinje: .rv-nav i app.py bruker samme flate
     og samme haarfine kant under. Sto paa ren hvit uten kant, og da
     fløt banneret sammen med seksjonen under. */
  background: #F8F9FA;
  border-bottom: 1px solid #C9CDD4;
  /* HENGENDE BANNER. position:sticky lar banneret ta sin egen plass i
     sidens flyt helt til toppen av vinduet naar det opp - da blir det
     staaende. z-index loefter det over teksten som ruller forbi under;
     skyggen er svak med vilje (6 % sort) - den skal merkes, ikke ses. */
  position: sticky;
  top: 0;
  z-index: 100;
  box-shadow: 0 1px 12px rgba(0, 0, 0, .06);
}

.banner .merke {
  color: #14161a;
  font: 500 1.35rem/1 var(--antikva);
  /* #C9CDD4 er palettens kantfarge, den samme programmets menylinje
     bruker. Sto paa #b9bcc2 - en graatone som ikke fantes noe annet
     sted, og som derfor gjorde merket litt fremmed paa sin egen side.

     HELE NAVNET, IKKE BARE «R» (endret 29.09.2026, paa oenske).
     Fra 13.09 sto bare R her, for at navnet ikke skulle staa to ganger
     like over hverandre. Oensket er at merket skal kunne leses som navn
     overalt - ogsaa paa undersidene, der heroen ikke finnes. Versalene
     og sperringen er de samme som ordmerket i heroen, saa de to leses som
     samme merke i to stoerrelser.
     Programmet viser fortsatt bare R-ikonet (vedtakssjekk/app.py). */
  font-size: 1.05rem;
  text-transform: uppercase;
  letter-spacing: .26em;
  border-top: 1px solid #C9CDD4;
  border-bottom: 1px solid #C9CDD4;
  /* Sperringen legger luft ETTER siste bokstav ogsaa. Den ekstra
     venstrepolstringen (calc) gjoer at ordet staar midt mellom strekene. */
  padding: .45rem .5rem .45rem calc(.5rem + .26em);
  margin-right: auto;          /* dytter menyen mot hoeyre */
  text-decoration: none;
}

/* margin-left:auto dytter hele menyen mot hoeyre kant - ingen bredder
   aa regne ut, og det virker uansett hvor mange lenker menyen faar. */
.banner nav { display: flex; flex-wrap: wrap; margin-left: auto; gap: 0; }

.banner nav a {
  color: #14161a;
  font: 400 .97rem var(--antikva);
  text-decoration: none;
  padding: .4rem 1.15rem;
  border-left: 1px solid #C9CDD4;
  border-bottom: 2px solid transparent;   /* plass reservert, saa
                                             teksten ikke hopper
                                             naar streken kommer */
}
.banner nav a:hover,
.banner nav a.aktiv { border-bottom-color: #14161a; }
.banner nav a:focus-visible {
  outline: 2px solid #14161a;
  outline-offset: 3px;
}

/* «Begrenset analyse» og «Logg inn» er handlinger, ikke sider - litt
   ekstra luft og halvfet skrift paa «Logg inn» skiller dem fra resten
   av menyen uten aa gjoere dem mindre lettleste. */
.banner nav .lokal-analyse {
  font-weight: 400;
  margin-left: .9rem;
  padding-left: 1.7rem;
}
.banner nav .logg-inn {
  margin-left: .9rem;
  padding-left: 1.7rem;
  padding-right: 0;
  border-left: 1px solid #C9CDD4;
  font-weight: 500;
}
.banner nav .lokal-analyse + .logg-inn {
  margin-left: 0;
  padding-left: 1.15rem;
}

/* ==========================================================
   MOERK MENYLINJE (29.09.2026, paa oenske)
   ==========================================================
   Staar ETTER de lyse reglene over og overstyrer dem - fjernes denne
   blokken, gaar menylinjen tilbake til lys. Reglene over er beholdt
   fordi kommentarene der forklarer oppsettet (hengende banner, bredder).

   HALVGJENNOMSIKTIG SKIFER MED USKARPHET. 92 % dekkevne, ikke mindre:
   paa undersidene ruller hvit tekst under banneret, og med lavere
   dekkevne ville lenkefargen falt under kontrastkravet der.
   Maalt: #94A3B8 mot banneret over hvit side (~#33383E) er 4,7.

   SYSTEMSKRIFT I MENYEN. «Inter eller en ren systemskrift» - systemets
   egen (Segoe UI paa Windows) er valgt, fordi den ikke krever noen
   nedlasting. Inter maatte enten hentes fra Google (i strid med
   personvernsiden) eller legges lokalt som enda en skriftfil. */
.banner {
  background: rgba(33, 39, 46, .92);
  -webkit-backdrop-filter: blur(12px) saturate(1.2);
          backdrop-filter: blur(12px) saturate(1.2);
  border-bottom: 1px solid rgba(255, 255, 255, .08);
  box-shadow: 0 1px 16px rgba(0, 0, 0, .18);
}
.banner .merke {
  color: #E3E8EE;
  border-top-color: rgba(201, 209, 218, .45);
  border-bottom-color: rgba(201, 209, 218, .45);
}
.banner .merke:focus-visible { outline: 2px solid #F4F5F7; outline-offset: 3px; }
.banner nav { align-items: center; gap: .15rem; }
.banner nav a {
  font: 500 .9rem/1.2 system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  color: #94A3B8;
  border-left: 0;
  border-bottom: 0;
  border-radius: 8px;
  padding: .6rem .85rem;
  transition: color .15s ease, background-color .15s ease, border-color .15s ease;
}
.banner nav a:hover,
.banner nav a.aktiv { color: #FFFFFF; }
.banner nav a:focus-visible { outline: 2px solid #F4F5F7; outline-offset: 2px; }

/* Handlingene: kant i stedet for skillestreker. «Begrenset analyse» er
   en omrisset knapp, «Logg inn» en lys, fylt knapp - den ene tydelige
   handlingen oeverst. */
.banner nav .lokal-analyse,
.banner nav .lokal-analyse + .logg-inn,
.banner nav .logg-inn {
  border-left: 0;
  padding: .6rem 1.05rem;
}
.banner nav .lokal-analyse {
  margin-left: 1.1rem;
  color: #E2E8F0;
  border: 1px solid rgba(148, 163, 184, .4);
}
.banner nav .lokal-analyse:hover {
  color: #FFFFFF;
  border-color: rgba(255, 255, 255, .65);
  background: rgba(255, 255, 255, .05);
}
.banner nav .logg-inn,
.banner nav .lokal-analyse + .logg-inn {
  margin-left: .6rem;
  color: #1C1F23;
  background: #F4F5F7;
  border: 1px solid #F4F5F7;
  font-weight: 600;
}
.banner nav .logg-inn:hover {
  color: #1C1F23;
  background: #FFFFFF;
  box-shadow: 0 0 0 3px rgba(255, 255, 255, .15);
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .banner { background: #2B323A; }
}

/* Ankerlenkene skal stoppe UNDER det hengende banneret, ikke bak det. */
section[id] {
  scroll-margin-top: calc(82px + 1.5rem);
}
@media (prefers-reduced-motion: no-preference) {
  html { scroll-behavior: smooth; }
}

/* Skjult for oeyet, lest opp av skjermleser - brukes paa tabellbildetekster. */
.skjult {
  position: absolute;
  width: 1px; height: 1px;
  margin: -1px; padding: 0; border: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

/* Rullefelt for brede tabeller, med tastaturtilgang (tabindex). */
.tabell-rull {
  overflow-x: auto;
  margin-top: 1.6rem;
  border-radius: 8px;
}


/* ==========================================================
   HERO
   ========================================================== */
.hero {
  position: relative;      /* gjoer at lagene under kan legge seg
                              nøyaktig oppaa denne boksen */
  overflow: hidden;        /* klipper vekk det som stikker utenfor */
  display: flex;
  align-items: center;
  /* TO SPALTER, IKKE ÉN (21.09.2026). Heroen hadde bare tekst, plassert
     paa en 60 % bred spalte - resten av flaten var moensteret alene.
     Et ekte skjermbilde av analysen til hoeyre gjoer paastanden
     etterprøvbar med det samme, og fyller flaten med noe konkret i
     stedet for tomrom. HOEYDEN ER IKKE LENGER LAAST TIL SKJERMEN
     (var 50dvh/520px): et bilde av et helt sammendrag trenger den
     hoeyden innholdet faktisk krever, saa heroen bestemmes naa av
     polstringen under, som paa resten av siden. */
  justify-content: space-between;
  gap: 3.5rem;
  padding: 4.5rem 3.5rem;
  /* SKIFERMOENSTER, variant C - «kryssende brudd» (valgt 13.09.2026).

     Tre lag, oeverst foerst. Nettleseren tegner dem nedenfra og opp,
     saa gradienten nederst i lista er bunnen, og stripene ligger oppaa.

     Lag 1  hvite arer, 163 grader - samme vinkel som gradienten.
            1 piksel strek, saa 4 piksler tomt. Bare 3 % hvitt.
     Lag 2  moerke brudd, 73 grader - paa TVERS av arene. Det er
            krysningen som gjoer at det leses som stein og ikke som
            en stripet duk. 5 % sort, 1 piksel per 10.
     Lag 3  selve skiferflaten.

     PROSENTENE ER MED VILJE SAA LAVE. Ser du moensteret tydelig paa en
     vanlig skjerm, er det for sterkt: da konkurrerer flaten med
     overskriften i stedet for aa baere den. Det skal merkes, ikke ses.

     MAALT: hvit tekst mot den lyseste delen av flaten gir kontrast
     9,4. Kravet er 4,5. Moensteret endrer ikke dette - lagene er saa
     svake at de ikke flytter maalingen ett trinn.

     Samme tre lag ligger i programmets forside, app.py. */
  background:
    repeating-linear-gradient(163deg,
      rgba(255,255,255,.03) 0 1px, transparent 1px 5px),
    repeating-linear-gradient(73deg,
      rgba(0,0,0,.02) 0 1px, transparent 1px 11px),
    linear-gradient(163deg,
      var(--skifer-lys)  0%,
      var(--skifer-midt) 52%,
      var(--skifer-mork) 100%);
}

/* ---------- Bakgrunnen ----------
   Skifer er ikke én farge. Ekte skifer er blaagraa, og lysere der
   lyset treffer. Derfor en svak gradient og ikke en flat flate:
   en helt jevn farge leses som «en boks», mens en antydning til
   overgang leses som «en flate med dybde».

   Fallet er bevisst lite - fra 3E4751 til 2B323A, altsaa under
   tjue trinn. Mer enn det begynner aa se ut som en effekt, og en
   effekt er nettopp det denne flaten IKKE skal vaere.

   Stoppunktet paa 52 % gjoer overgangen ujevn med vilje: en
   gradient med stoppet midt paa 50 % ser mekanisk ut.
   ---------------------------------------------------------- */

/* ---------- Innholdet ---------- */
.hero-innhold {
  position: relative;   /* loefter teksten over bevegelseslagene */
  width: min(48%, 34rem);
  flex-shrink: 0;
}

.hero h1 {
  margin: 0 0 1rem;
  color: #fff;
}

/* ---------- Skjermbildet ----------
   Bildet er allerede rammet inn (kant, avrunding, skygge og
   «EKSEMPEL»-merket) i selve PNG-en - se nettside/bilder/README om
   det finnes, eller kommentaren der bildet lages. CSS-en her plasserer
   det bare paa flaten og holder det innenfor heroens hoeyde. */
.hero-bilde {
  position: relative;
  flex-grow: 1;
  min-width: 0;
  max-width: 40rem;
  display: flex;
  justify-content: center;
}
.hero-bilde img {
  width: 100%;
  height: auto;
  max-height: 34rem;
  object-fit: contain;
  object-position: top;
}

/* ---------- MERKET OVER TITTELEN (29.09.2026) ----------
   Kapsel med tynn kant og en pulserende prikk i samme cyan som hodet.
   Prikken er det eneste som beveger seg; den pulserer rolig og staar
   stille ved «reduser bevegelse». Teksten er #E2E8F0 paa moerk flate,
   kontrast over 10. */
.lovmerke {
  display: inline-flex;
  align-items: center;
  gap: .6rem;
  margin: 0 0 1.4rem;
  padding: .4rem .95rem .4rem .8rem;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, .35);
  background: rgba(255, 255, 255, .04);
  color: #E2E8F0;
  font: 500 .82rem/1.3 system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  letter-spacing: .01em;
}
.lovmerke-prikk {
  position: relative;
  width: .5rem;
  height: .5rem;
  border-radius: 50%;
  background: #38D6F0;
  box-shadow: 0 0 8px rgba(56, 214, 240, .8);
  flex-shrink: 0;
}
.lovmerke-prikk::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: #38D6F0;
  animation: lovpuls 2.4s ease-out infinite;
}
@keyframes lovpuls {
  0%   { transform: scale(1);   opacity: .6; }
  100% { transform: scale(2.8); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .lovmerke-prikk::after { animation: none; opacity: 0; }
}
/* .hero p gir alle avsnitt i heroen lang linjeavstand og stor skrift;
   merket skal ha sin egen. */
.hero p.lovmerke { font-size: .82rem; line-height: 1.3; color: #E2E8F0; margin-bottom: 1.4rem; }

/* ---------- NETTVERKSHODET (29.09.2026) ----------
   Hodet fra hero-hode.js, tegnet rett paa skiferflaten.

   INGEN BOKS. Beholderen har gjennomsiktig bunn, og canvaset toemmes i
   hvert bilde i stedet for aa fylles. Kantene tones bort med en radial
   maske, saa gulvlinjene forsvinner i skiferen i stedet for aa slutte i
   en rett kant.

   GLODEN er en egen div bak canvaset: #0EA5E9 paa 15 % i midten, helt
   gjennomsiktig i kanten, og kraftig uskarp. Den ligger bak «hjernen»,
   litt over midten.

   TALLET I HJOERNET («… av 1315 punkter lyser») er fjernet 29.09.2026.
   Det talte bare punktene i tegningen og kunne leses som et maaletall
   fra programmet. */
.hero-innhold { z-index: 1; }

.hode {
  position: relative;
  background: transparent;
  flex-direction: column;
  align-items: stretch;
}
/* Gloeden ligger bak HODET, som staar til hoeyre (skjermen er til
   venstre, fra 29.09.2026). */
.hode-glod {
  position: absolute;
  left: 50%; right: 2%;
  top: 10%; height: 62%;
  border-radius: 50%;
  background: radial-gradient(closest-side,
    rgba(14, 165, 233, .15) 0%,
    rgba(14, 165, 233, .06) 55%,
    rgba(14, 165, 233, 0) 100%);
  filter: blur(48px);
  pointer-events: none;
}
.hode-lerret {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 700 / 600;      /* = W / H i hero-hode.js med skjerm */
  /* Bredere enn hoey (60 % / 52 %) siden skjermen kom til venstre -
     ellers ble skjermen tonet bort sammen med gulvkanten. */
  -webkit-mask-image: radial-gradient(ellipse 60% 52% at 50% 48%, #000 72%, transparent 100%);
          mask-image: radial-gradient(ellipse 60% 52% at 50% 48%, #000 72%, transparent 100%);
}
.hode-knapp {
  align-self: flex-end;
  min-height: 44px;              /* minste trykkflate for en finger */
  padding: 0 1.25rem;
  border-radius: 999px;
  background: rgba(18,22,27,.45);
  color: #E6E9EC;
  border: 1px solid rgba(255,255,255,.28);
  font-family: var(--brodskrift);
  font-size: .95rem;
  letter-spacing: .02em;
  cursor: pointer;
}
.hode-knapp:hover { border-color: rgba(255,255,255,.55); }
.hode-knapp:focus-visible { outline: 3px solid #F4F5F7; outline-offset: 3px; }


/* ---------- ORDMERKET ----------
   Samme innretning som «R»-en oppe til venstre: to haarfine streker,
   én over og én under. Da leses heroen og banneret som samme merke,
   ikke som to ulike utforminger paa samme side.

   VERSALENE LAGES HER, ikke i index.html. Skal navnet tilbake til
   vanlig skrivemaate, er det denne ene linjen som fjernes.

   inline-block ER POENGET. Et span er normalt inline, og en ramme paa
   et inline-element strekker seg ikke over hele linjen - men den lar
   heller ikke hoeyden styres. inline-block gjoer at strekene legger seg
   noeyaktig rundt ordet og ingenting mer.

   SPERRINGEN LAGER ET HULL TIL HOEYRE. letter-spacing legger avstand
   ETTER hver bokstav, ogsaa den siste. Uten rettelsen under staar
   ordet skjevt inne i sin egen ramme - .28em for mye paa hoeyre side.
   Derfor trekkes det fra igjen i padding-right. */
/* STAAL OG SOELV (29.09.2026, paa oenske: «hoeyteknologisk, som
   representerer teknologiutvikling 2027 og fremover»).

   Bokstavene er en loddrett soelvgradient klippet til teksten
   (background-clip: text): lys kant oeverst, en moerkere staalstripe
   midt paa, og lys igjen nederst - slik boerstet metall ser ut. En svak
   lysrefleks glir over ordet hvert tiende sekund (soelvglans).

   Strekene over og under er samme metall: haarfine, sterkest i midten
   og svakere ut mot endene (border-image).

   KONTRAST: den moerkeste soelvtonen (#A9B4C0) er 3,2 mot heroens lyse
   topp. Logoer er unntatt kontrastkravet i WCAG 1.4.3, og navnet staar
   dessuten som vanlig tekst i h1 for skjermlesere. Gaa ikke moerkere.

   UTEN STOETTE for background-clip: text faller ordet tilbake til
   #E3E8EE (@supports under), ikke til usynlig tekst. */
.merkeord {
  display: inline-block;
  font-family: var(--antikva);
  font-weight: 500;
  font-size: clamp(1.1rem, 1.7vw, 1.45rem);
  text-transform: uppercase;
  letter-spacing: .3em;
  color: #E3E8EE;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  border-image: linear-gradient(90deg,
    rgba(201,209,218,.15), #E6EBF0 50%, rgba(201,209,218,.15)) 1;
  padding: .6rem .6rem .6rem calc(.6rem + .3em);
  margin-bottom: 1.6rem;
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  .merkeord {
    background:
      linear-gradient(105deg, rgba(255,255,255,0) 40%,
        rgba(255,255,255,.85) 50%, rgba(255,255,255,0) 60%) -200% 0 / 200% 100% no-repeat,
      linear-gradient(180deg, #F7F9FB 0%, #D5DCE3 38%, #A9B4C0 52%,
        #DCE2E8 70%, #F2F5F8 100%);
    -webkit-background-clip: text;
            background-clip: text;
    color: transparent;
    animation: soelvglans 10s ease-in-out infinite;
  }
}
@keyframes soelvglans {
  0%, 70%  { background-position: -200% 0, 0 0; }
  90%, 100% { background-position: 200% 0, 0 0; }
}
@media (prefers-reduced-motion: reduce) {
  .merkeord { animation: none; }
}

/* ---------- SLAGORDET ----------
   Egen linje, vanlig skrivemaate. Versaler her ville senket
   lesehastigheten maalbart, og slagordet er en setning - ikke et navn. */
.slagord {
  display: block;
  /* STOERRELSEN ER SATT NED (var clamp(1.55rem,3.3vw,2.85rem)) etter
     proeving 15.09.2026: naar spalten ble smalere for aa gi plass til
     skjermbildet, brakk «Dokumentkontroll foer klage og anke» over tre
     linjer i den store stoerrelsen. Denne verdien sto i
     design-endring/prove-farger.css og er flyttet inn som endelig. */
  font: 500 clamp(1.5rem, 3vw, 2rem)/1.25 var(--antikva);
}

.strek {
  width: 5.5rem; height: 4px;
  background: var(--strek-farge);
  margin-bottom: 1.9rem;
}

/* HEROENS STREK ER HAARFIN. Ordmerket over har allerede to streker, og
   en fjerde tykk strek rett under ble for mye - da konkurrerer
   inndelingen med teksten den skal dele opp.

   GJELDER BARE HEROEN. Strekene under seksjonsoverskriftene lenger nede
   staar urort paa 5,5rem x 4px. Skal de ogsaa bli tynne, er det den
   generelle .strek-regelen rett over som endres. */
.hero .strek {
  width: 2.5rem;
  height: 1px;
  margin-bottom: 1.6rem;
}

.hero p {
  margin: 0 0 1rem;
  color: rgba(255,255,255,.9);   /* samme verdi som --sbm-text hos deg */
  /* Flyttet inn fra design-endring/prove-farger.css (21.09.2026), som
     endelig verdi - se .slagord over for hvorfor spalten ble smalere. */
  font-size: clamp(.95rem, 1.25vw, 1.0625rem);
  line-height: 1.85;
}
.hero p + p { margin-top: 1.4rem; }

/* Hvit pille. border-radius 999px er trikset for helt runde
   ender: tallet er saa stort at nettleseren kapper det ned til
   halve hoeyden, uansett hvor hoey knappen blir. Skriver du
   30px, maa det rettes hver gang polstringen endres. */
.cta {
  display: inline-block;
  margin-top: 1.4rem;
  padding: .95rem 2.1rem;
  border-radius: 999px;
  background: #fff;
  color: #14161a;
  font-size: 1.02rem;
  text-decoration: none;
  border: 1px solid rgba(0,0,0,.18);
  box-shadow: 0 3px 14px rgba(0,0,0,.35);
  transition: background .18s ease, box-shadow .18s ease;
}
.cta:hover {
  background: #f1f2f4;
  box-shadow: 0 5px 20px rgba(0,0,0,.45);
}


/* ==========================================================
   MINDRE SKJERMER
   ========================================================== */
@media (max-width: 900px) {
  .banner { height: auto; padding: 1rem 1.5rem; flex-wrap: wrap; gap: 1rem; position: static; }
  .banner nav { gap: 0; margin-left: 0; }
  .hero { flex-direction: column; align-items: stretch; padding: 2.5rem 1.5rem; }
  .hero-innhold { width: 100%; }
  .hero-bilde { max-width: 100%; }
}

/* Heroen har ingen bevegelse lenger, saa reglene for
   «reduser bevegelse» og for aa spare batteri paa telefon er
   fjernet sammen med lagene. Kommer bevegelse tilbake, maa de
   med tilbake - se arkiv/stil-med-vann.css. */


/* ==========================================================
   LYSE SEKSJONER
   ========================================================== */

/* Fargene for lys bunn hoerer til her, ikke i :root sammen med
   hero-fargene. Da ser man med én gang hva som gjelder hvor. */
.lys {
  /* SKIFERBLAA, IKKE MARINEBLAA (13.09.2026). Sto paa #14213D, en
     blaatone som ikke fantes noe sted i programmet. #3E4A5E er den
     samme som programmet bruker paa overskrifter og knapper
     (--revisa-navy i vedtakssjekk/revisa_tema.css).

     NAVNET STAAR IGJEN, av samme grunn som --gull over: det brukes
     fire steder, og et navnebytte krever at alle roeres samtidig.

     MAALT: 9,0 i kontrast mot hvit bunn. Kravet er 4,5. */
  --navy:      #3E4A5E;
  --brod:      #5c6673;   /* broedtekst */
  --ramme-strek: #c9cdd4;

  /* STREKEN MAA OVERSTYRES HER. --strek-farge er hvit globalt, fordi
     heroen og Kontakt-seksjonen har moerk bunn. Paa hvit bunn ble den
     usynlig - streken sto der, 96 x 4 piksler, i samme farge som flaten
     bak. Funnet i nettleseren 13.09.2026, ikke gjettet.

     Skiferblaa her er ogsaa det programmet gjoer: h1::after i
     revisa_tema.css bruker --revisa-gull, som er satt til #3E4A5E. */
  --strek-farge: var(--navy);

  background: #fff;
  color: var(--brod);
}

.seksjon { padding: 5.5rem 3.5rem; }

.om-rad {
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 32% 1fr;   /* bilde | tekst */
  gap: 3.5rem;
  align-items: start;
}

/* ---------- Bildet ---------- */
.om-bilde img,
.bilde-plassholder {
  width: 100%;
  aspect-ratio: 4 / 3;
  border-radius: 6px;
  object-fit: cover;
}

.bilde-plassholder {
  display: grid;
  place-items: center;
  text-align: center;
  background: repeating-linear-gradient(45deg,
    #eceef1 0 10px, #e3e6ea 10px 20px);
  color: #8d95a1;
  font-size: .95rem;
  line-height: 1.6;
  border: 1px dashed var(--ramme-strek);
}
.bilde-plassholder small { font-size: .8rem; }

/* ---------- Teksten ---------- */
.om-tekst h2 {
  margin: 0 0 1.6rem;
  text-align: center;
  color: var(--navy);
  font: 500 clamp(1.7rem, 2.6vw, 2.2rem)/1.2 var(--antikva);
}

/* HEL STREK, IKKE STIPLET (21.09.2026, var stiplet fra skissen).
   Stiplet kant er nettleseres vanlige tegn for «her mangler noe» eller
   «midlertidig plassholder» - denne boksen har alltid hatt ferdig
   tekst. Rett ved siden av staar .mork-boks, som ER det andre kortet
   i samme rad; nå deler de samme kant, radius og skygge, og leses som
   et par - lyst kort og moerkt kort - i stedet for et utkast ved
   siden av et ferdig element. */
.ramme {
  border: 1px solid var(--ramme-strek);
  border-radius: 8px;
  box-shadow: 0 6px 18px rgba(43, 50, 58, .08);
  padding: 2.2rem 2.4rem;
  background: #fff;
}

.ramme p {
  margin: 0 0 1.15rem;
  font-size: 1rem;
  line-height: 1.75;
}
.ramme p:last-child { margin-bottom: 0; }

.ingress { color: var(--navy); }

/* Skjermbildet inne i "Hvorfor Revisa" (21.09.2026). Bildet selv er
   allerede rammet inn (kant, avrunding, skygge, «EKSEMPEL»-merket) -
   her styres bare bredden og billedteksten. */
.funnkort-bevis {
  margin: 2.2rem 0;
  max-width: 34rem;
}
.funnkort-bevis img { width: 100%; height: auto; display: block; }
.funnkort-bevis figcaption {
  margin-top: .9rem;
  font-size: .88rem;
  line-height: 1.6;
  color: var(--brod);
  font-style: italic;
}

/* «Under utvikling» skal leses som en merknad, ikke som et loefte.
   Kursiv og dempet farge sier det uten aa rope. */
/* MAALT OG RETTET 13.09.2026. #7a828d ga 3,89 mot hvit - underkjent,
   og feilen sto her fra foer denne omgangen. #646D79 gir 5,24 og er
   fortsatt lysere enn broedteksten rundt, saa merknaden leses fortsatt
   som en merknad og ikke som et loefte. */
.under-arbeid { font-style: italic; color: #646D79; }


/* ==========================================================
   LYSE SEKSJONER PAA MINDRE SKJERMER
   ========================================================== */

/* TODO(human): naar skal bilde og tekst slutte aa staa ved siden
   av hverandre, og legge seg under hverandre i stedet?
   Fyll inn et brytepunkt og regelen som stabler dem:

   @media (max-width: DITTTALLpx) {
     .om-rad { grid-template-columns: ... ; gap: ... ; }
     .om-bilde { ... }
   }

   Lar du dette staa tomt, virker siden fortsatt - bilde og tekst
   blir bare smalere og smalere jo mindre skjermen er. */


@media (max-width: 900px) {
  .seksjon { padding: 3.5rem 1.5rem; }
  .ramme { padding: 1.6rem 1.4rem; }
}


/* ==========================================================
   REVISA-BAANDET
   ========================================================== */

/* MOERKT IGJEN, OG FLATT (14.09.2026).

   Sto lyst ett doegn. Grunnen til at det snus tilbake: etter heroen var
   siden lys hele veien ned, og da fantes det ikke ett eneste holdepunkt
   for oeyet. Ett moerkt baand deler siden i to - «hva dette er» over,
   «hvorfor det betyr noe» under.

   FLATT, IKKE MOENSTRET. Heroen har skifermoensteret. Faar denne flaten
   det ogsaa, konkurrerer de to om aa vaere sidens ansikt. Heroen er
   identiteten; dette baandet er en uttalelse, og skal vaere stillere.

   #2B323A er bunnen av heroens gradient. Da henger de to sammen uten
   aa gjenta hverandre.

   TO MOERKE FLATER ER GRENSEN. En tredje ville gjort siden tung. */
.baand {
  background: #2B323A;
  padding: 5rem 2rem;
}

/* ---------- 2027-UTSAGNET ----------
   Erstattet R-E-V-I-S-A-akronymet 14.09.2026.

   max-width i ch, ikke i piksler. ch er bredden paa tegnet «0» i den
   skriften som faktisk brukes, saa linjelengden holder seg lesbar selv
   om skriftstoerrelsen endres. Over ca. 60 tegn mister oeyet linjen naar
   det skal tilbake til venstre kant - og dette er en setning folk skal
   huske, ikke skumme. */
.baand-utsagn {
  margin: 0 auto;
  max-width: 54ch;
  text-align: center;
  font-family: var(--antikva);
}

/* Paastanden. Stoerst, ren hvit - 13,0 i kontrast mot #2B323A. */
.baand-utsagn .paastand {
  display: block;
  color: #FFFFFF;
  font-weight: 500;
  font-size: clamp(1.3rem, 2.4vw, 1.85rem);
  line-height: 1.35;
  margin-bottom: 1.1rem;
}

/* Svaret. Mindre og dempet, saa oeyet tar paastanden foerst.
   #C9CDD4 gir 8,7 mot samme bunn - godt over kravet paa 4,5. */
.baand-utsagn .svaret {
  display: block;
  color: #C9CDD4;
  font-weight: 400;
  font-size: clamp(1rem, 1.5vw, 1.2rem);
  line-height: 1.6;
}


/* ==========================================================
   UNDERSIDER
   ==========================================================
   personvern.html, vilkar.html og ki-bruk.html. Alle tre har samme
   oppbygning: banner, smal moerk sidetopp, innhold, bunn.

   HVORFOR IKKE EN HERO: en underside skal ikke konkurrere med
   forsiden. Men den skal heller ikke vaere en naken hvit side der
   man mister foelelsen av hvilket produkt man er inne i. En smal
   moerk stripe loeser begge deler - den bruker samme flate som
   2027-baandet, saa merket henger med uten aa ta plass. */
.sidetopp {
  background: #2B323A;
  padding: 3rem 3.5rem 3.2rem;
}

.sidetopp-innhold {
  max-width: 72ch;      /* samme spaltebredde som .smal under, saa
                           overskriften staar loddrett over teksten */
  margin: 0 auto;
}

/* Tilbakelenken staar OVER overskriften, ikke under. Den er det
   foerste oeyet moeter etter banneret, og da vet man med én gang at
   dette er et sidespor man kommer tilbake fra.

   Samme teksttype som bunnmenyen og programmets menylinje: smaa
   versaler, sperret, halvfet. */
.sidetopp .tilbake {
  display: inline-block;
  margin-bottom: 1.6rem;
  color: #C9CDD4;
  text-decoration: none;
  font-size: .74rem;
  font-weight: 700;
  letter-spacing: .15em;
  text-transform: uppercase;
}
.sidetopp .tilbake:hover { color: #FFFFFF; }

.sidetopp h1 {
  margin: 0;
  color: #FFFFFF;
  font: 500 clamp(1.5rem, 2.8vw, 2.15rem)/1.2 var(--antikva);
}

/* Streken arver --strek-farge, som er hvit globalt. Riktig her, siden
   sidetoppen er moerk. Litt smalere enn seksjonsstrekene, som i heroen. */
.sidetopp .strek {
  width: 3.5rem;
  height: 2px;
  margin: 1.1rem 0 0;
}

/* Underoverskriftene inne i en underside. Venstrestilt, ikke
   midtstilt som paa forsiden: dette er dokumenttekst man leser
   ovenfra og ned, ikke seksjoner man skummer. */
.sidetopp + .seksjon .smal h2 {
  margin: 2.6rem 0 1rem;
  font: 500 clamp(1.15rem, 1.8vw, 1.4rem)/1.3 var(--antikva);
  color: var(--navy);
}
.sidetopp + .seksjon .smal h2:first-child { margin-top: 0; }

@media (max-width: 900px) {
  .sidetopp { padding: 2.2rem 1.5rem 2.4rem; }
}


/* ==========================================================
   RETTSKILDESIDEN
   ==========================================================
   rettskilder.html er GENERERT av nettside/verktoy/lag-rettskildemeny.py
   fra FORSIDE_MENY i vedtakssjekk/rettskilder.py. Stilen staar her, i
   det vanlige stilarket - da kan utseendet endres uten aa roere
   skriptet, og skriptet kan kjoeres uten aa roere utseendet. */

.sidetopp-ingress {
  margin: 1.4rem 0 0;
  color: #C9CDD4;          /* 8,7 mot #2B323A */
  font-size: .95rem;
  line-height: 1.7;
  max-width: 52ch;
}

.kildespalte {
  max-width: 1180px;
  margin: 0 auto;
}

.kildegruppe { margin-bottom: 3.5rem; }
.kildegruppe:last-child { margin-bottom: 0; }

.kildegruppe h2 {
  margin: 0 0 .3rem;
  padding-bottom: .7rem;
  border-bottom: 1px solid var(--ramme-strek);
  font: 500 1.25rem var(--antikva);
  color: var(--navy);
}

/* Antallet i gruppeoverskriften. Et lite tall som sier «her er det
   mye» uten at man maa telle. Dempet, saa det ikke konkurrerer med
   selve navnet paa gruppen. */
.kildegruppe .antall {
  font-family: var(--brodskrift);
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .1em;
  color: #5C6673;           /* 5,83 mot hvit */
  vertical-align: .35em;
  margin-left: .4rem;
}

/* SPALTER, IKKE ÉN LANG LISTE. «Rettskilder» alene har 43 punkter.
   I én spalte blir det en halv skjermlengde med korte linjer og mye
   tomt til hoeyre - tungt aa skumme.

   column-width, ikke column-count: da bestemmer NETTLESEREN hvor mange
   spalter det blir plass til. Paa en bred skjerm blir det tre, paa en
   smal blir det én, uten at vi maa skrive en eneste mediasporring.

   break-inside: avoid hindrer at et langt punkt deles paa tvers av to
   spalter midt i en setning. */
.kildeliste {
  margin: 1.2rem 0 0;
  padding: 0;
  list-style: none;
  column-width: 22rem;
  column-gap: 2.5rem;
}

.kildeliste li {
  break-inside: avoid;
  margin-bottom: .55rem;
}

.kildeliste a {
  color: var(--brod);
  text-decoration: none;
  font-size: .95rem;
  line-height: 1.5;
  border-bottom: 1px solid transparent;
}
.kildeliste a:hover {
  color: var(--navy);
  border-bottom-color: var(--navy);
}


/* ==========================================================
   SMAL TEKSTSPALTE
   ========================================================== */

/* Broedtekst skal ikke gaa over hele skjermen. Over ca. 75 tegn
   per linje mister oeyet lett linjen naar det skal tilbake til
   venstre kant. Derfor et tak her, ikke i hver enkelt seksjon. */
.smal {
  max-width: 72ch;
  margin: 0 auto;
}

.smal p {
  margin: 0 0 1.35rem;
  font-size: 1rem;
  line-height: 1.8;
}
.smal p b { color: var(--navy); }

.midtstilt { text-align: center; }

/* Skriften gjelder ALLE overskrifter i seksjonene. Fargen settes
   for seg - ellers ville en moerk seksjon staatt uten skrifttype
   fordi regelen var laast til .lys. */
.seksjon h2,
.kraft-rad h2 {
  margin: 0 0 1rem;
  font: 500 clamp(1.7rem, 2.6vw, 2.2rem)/1.2 var(--antikva);
}
.lys h2 { color: var(--navy); }

/* Streken under overskriften, sentrert. Samme element som i
   heroen - derfor gjenbrukes .strek, og bare midtstillingen
   legges til. */
.midtstilt-strek { margin: 0 auto 2.4rem; }


/* ==========================================================
   LOVENDRINGEN 2027
   ========================================================== */
.kraft-rad {
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3rem;
  align-items: start;
}
.kraft-rad p { margin: 0; font-size: 1rem; line-height: 1.8; }


/* ==========================================================
   MANGLENDE TEKST
   ========================================================== */

/* Med vilje stygg. En plassholder som ser ferdig ut, blir
   staaende. Denne skal irritere til den er borte. */
.mangler {
  border: 1px dashed #c2a06a;
  background: #fdf8ef;
  padding: 1.3rem 1.5rem;
  color: #7a6438;
  font-size: .95rem;
  line-height: 1.7;
}
.mangler b { display: block; margin-bottom: .35rem; color: #7a6438; }


/* ==========================================================
   MOERK SEKSJON OG BUNN
   ========================================================== */
/* KLASSEN HETER FORTSATT «moerk-seksjon», MEN ER LYS (13.09.2026).
   Navnet staar igjen fordi det brukes i index.html, og et bytte krever
   at begge filene roeres samtidig. Samme grep som --gull og --sort.
   Kontakt-seksjonen har naa samme tone som REVISA-baandet, saa de to
   rammer inn de hvite seksjonene mellom seg. */
.moerk-seksjon { background: #EDEEF0; }
.moerk-seksjon { --strek-farge: #3E4A5E; }
.lys-tekst { color: #5c6673; }
.moerk-seksjon h2 { color: #3E4A5E; }

/* KNAPPEN SNUR MED FLATEN. .cta er en HVIT pille, laget for den moerke
   heroen. Paa lys bunn forsvant den. Her blir den en MOERK pille med lys
   skrift - noeyaktig som «Start ny vedtaksrevisjon» i programmet. */
.lys .cta,
.moerk-seksjon .cta {
  background: #3E4A5E;
  color: #FFFFFF;
  border-color: rgba(0,0,0,.10);
  box-shadow: 0 2px 8px rgba(43,50,58,.18);
}
.lys .cta:hover,
.moerk-seksjon .cta:hover {
  background: #2B323A;
  box-shadow: 0 4px 14px rgba(43,50,58,.28);
}

.bunn {
  background: var(--sort);
  /* Sto paa #8c9097, riktig mot sort og bare 2,4 mot lys flate.
     #6B7480 var neste forsoek og ga 4,34 - fortsatt under kravet.
     #5C6673 gir 5,34. Maalt, ikke gjettet. */
  color: #5C6673;
  border-top: 1px solid #C9CDD4;
  padding: 2.5rem 3.5rem;
  text-align: center;
}
.bunn p { margin: 0; font-size: .9rem; line-height: 1.7; }

/* ---------- BUNNMENYEN ----------
   Samme teksttype som lenkene i programmets menylinje (.rv-nav-lenker i
   app.py): smaa versaler, sperret, halvfet. Det er den samme
   innretningen paa begge produkter, og det er hele poenget.

   flex-wrap gjoer at lenkene legger seg under hverandre paa en smal
   skjerm i stedet for aa presses sammen. */
.bunn-meny {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .6rem 2rem;
  margin-bottom: 1.6rem;
}
.bunn-meny a {
  color: #5C6673;
  text-decoration: none;
  font-size: .74rem;
  font-weight: 700;
  letter-spacing: .15em;
  text-transform: uppercase;
  padding-bottom: 3px;
  border-bottom: 1px solid transparent;   /* plass reservert, saa teksten
                                             ikke hopper naar streken kommer */
}
.bunn-meny a:hover {
  color: #3E4A5E;
  border-bottom-color: #3E4A5E;
}


/* ==========================================================
   SEKSJON 3-6 PAA MINDRE SKJERMER
   ========================================================== */
@media (max-width: 820px) {
  .kraft-rad { grid-template-columns: 1fr; gap: 2.2rem; }
  .baand { padding: 3rem 1.2rem; }
  .baand-utsagn { max-width: 100%; }
  .bunn { padding: 2rem 1.5rem; }
}


/* ==========================================================
   MOTTOET
   ========================================================== */

/* Latin i kursiv er gammel setterskikk: det signaliserer at
   ordene er paa et annet spraak, foer leseren rekker aa lure.
   Litt sperring gjoer at de to leddene leses som ett uttrykk
   og ikke som fire loesrevne ord. */
.motto {
  font-style: italic;
  letter-spacing: .015em;
  font-size: clamp(1.5rem, 2.3vw, 2rem);
}

/* Oversettelsen staar naermere mottoet enn resten av teksten,
   saa oeyet knytter de to sammen. */
.ramme .ingress { margin-bottom: 1.7rem; }
.ramme .ingress i { color: var(--brod); }


/* ==========================================================
   FRISTEN 1.1.2027 OG PILOT (19.09.2026)
   Skiferfargene fra resten av siden. Gullet fra skjermbildet er
   ikke tatt med: det er #C9A24A, som ble tatt ut 13.09.2026.
   Unntaket er pilot-blokken, som bruker #CA8A04 etter oensket.
   ========================================================== */
.frist-panel {
  max-width: 900px;
  margin: 0 auto;
  padding: 2.6rem 2.8rem 2.2rem;
  background: #2B323A;
  color: #F4F5F7;
  /* 8px og en svak skygge (var 4px, ingen skygge) - samme haandtak som
     .mork-boks, saa de moerke boksene paa siden leser som ETT
     kortsystem og ikke som flere ulike stiler (21.09.2026). */
  border-radius: 8px;
  box-shadow: 0 8px 24px rgba(20, 25, 33, .16);
}
.frist-etikett {
  margin: 0 0 1rem;
  font: 600 .78rem/1 var(--brodskrift);
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #c4c6c8;
}
.frist-dato {
  margin: 0 0 .5rem;
  font: 500 clamp(2.4rem, 5vw, 3.4rem)/1.05 var(--antikva);
  color: #FFFFFF;
}
.seksjon .frist-panel h2 {
  margin: 0 0 1.3rem;
  color: #FFFFFF;
  font-weight: 600;
}
.frist-liste { margin: 0 0 1.4rem; padding-left: 1.2rem; }
.frist-liste li { margin: .45rem 0; font-size: 1.05rem; line-height: 1.5; }
.frist-liste b { color: #FFFFFF; font-weight: 600; }
.frist-tekst { margin: 0 0 1.4rem; color: #E2E8F0; line-height: 1.6; max-width: 62ch; }
.frist-kilde {
  margin: 0;
  padding-top: 1.1rem;
  border-top: 1px solid rgba(255,255,255,.14);
  font-size: .88rem;
  line-height: 1.55;
  color: #c4c6c8;
}

.pilot { background: #2B323A; color: #E2E8F0; }
.pilot-boks { max-width: 760px; margin: 0 auto; text-align: center; }
.pilot-etikett {
  margin: 0 0 .8rem;
  font: 600 .78rem/1 var(--brodskrift);
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #c4c6c8;
}
.seksjon .pilot-boks h2 { color: #CA8A04; margin-bottom: 1.2rem; }
.pilot-boks p { line-height: 1.65; }
.pilot-boks .pilot-liten { font-size: .92rem; color: #c4c6c8; }
.pilot-knapp {
  display: inline-block;
  margin-top: 1.4rem;
  padding: .95rem 2.3rem;
  border-radius: 999px;
  background: #CA8A04;
  color: #1c1f23;
  font-weight: 600;
  font-size: 1.02rem;
  text-decoration: none;
  transition: background .18s ease;
}
.pilot-knapp:hover { background: #CA8A04; box-shadow: 0 0 0 3px rgba(202,138,4,.35); }
.pilot-knapp:focus-visible { outline: 3px solid #F4F5F7; outline-offset: 3px; }

@media (max-width: 820px) {
  .frist-panel { padding: 1.8rem 1.3rem 1.6rem; }
}

/* HVIT I HEROEN (29.09.2026, paa oenske): «en skarp hvit knapp med
   moerk tekst» i stedet for den gule. Pilotblokken lenger ned beholder
   den gule knappen. Kontrast #1C1F23 paa #F4F5F7: over 15. */
.pilot-knapp-hero {
  margin-top: 1.6rem;
  background: #F4F5F7;
  color: #1C1F23;
  border-radius: 8px;
  padding: 1rem 2.1rem;
  letter-spacing: .02em;
  box-shadow:
    0 12px 32px rgba(0, 0, 0, .35),
    0 0 0 1px rgba(255, 255, 255, .35),
    0 0 28px rgba(148, 163, 184, .22);
  transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease;
}
.pilot-knapp-hero:hover {
  background: #FFFFFF;
  transform: translateY(-1px);
  box-shadow:
    0 16px 40px rgba(0, 0, 0, .4),
    0 0 0 1px rgba(255, 255, 255, .6),
    0 0 36px rgba(148, 163, 184, .32);
}
@media (prefers-reduced-motion: reduce) {
  .pilot-knapp-hero, .pilot-knapp-hero:hover { transition: none; transform: none; }
}


/* ==========================================================
   SKISSEOPPSETTET (20.09.2026)
   To spalter med mørk boks til høyre, prisene i tabell, og
   «les mer» i samme oransje som pilotknappen (#CA8A04).
   ========================================================== */
.to-kol {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
  gap: 3rem;
  align-items: start;
  max-width: 1180px;
  margin: 0 auto;
}
.to-kol .smal { max-width: none; margin: 0; }

.mork-boks {
  background: #2B323A;
  color: #E2E8F0;
  padding: 2.2rem 2.4rem;
  border-radius: 8px;
  box-shadow: 0 8px 24px rgba(20, 25, 33, .16);
}
.seksjon .mork-boks h2 { color: #FFFFFF; font-size: clamp(1.4rem, 2vw, 1.75rem); margin: 0 0 1.2rem; }
.mork-boks h3 {
  margin: 1.3rem 0 .35rem;
  color: #FFFFFF;
  font: 600 1rem/1.3 var(--brodskrift);
}
.mork-boks p { margin: 0 0 .8rem; line-height: 1.6; font-size: .97rem; }

.frist-boks .frist-etikett { margin: 0 0 .9rem; font-size: 1rem; color: #c4c6c8; }
.frist-boks .frist-liste li { font-size: 1rem; }
.frist-boks .frist-kilde { margin: 1.2rem 0 0; padding-top: 1rem; }

.etikett {
  margin: 0 0 .7rem;
  font: 600 .78rem/1 var(--brodskrift);
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #5c6673;
}
.tid-venstre h2 { margin-bottom: 1rem; }
.tid-venstre > p { line-height: 1.65; }

.pris-tabell { width: 100%; border-collapse: collapse; margin-top: 1.4rem; }
.pris-tabell th, .pris-tabell td {
  padding: .95rem .8rem;
  border-top: 1px solid var(--ramme-strek);
  text-align: left;
  font-weight: 400;
  font-size: .98rem;
}
.pris-tabell td { text-align: right; white-space: nowrap; font-weight: 600; color: #2B323A; }
.pris-tabell th { color: #3E4A5E; }
.pris-tabell tr:last-child th, .pris-tabell tr:last-child td { border-bottom: 1px solid var(--ramme-strek); }
.pris-tabell tr.sum th, .pris-tabell tr.sum td { background: #F1F5F9; font-weight: 600; font-size: 1.05rem; }
.pris-note { margin-top: 1.2rem; font-size: .88rem; line-height: 1.6; color: #5c6673; }

/* «LES MER» I SAMME ORANSJE SOM PILOTKNAPPEN.
   På mørk boks: 4,4 mot #2B323A. På hvit bunn er #CA8A04 bare 2,94 (målt 20.09.2026),
   under selv 3,0-kravet for stor tekst. Teksten er derfor gjort STOR og
   FET for å hjelpe, men kontrasten er IKKE godkjent på hvit bunn. */
.les-mer-lenke {
  display: inline-block;
  margin-top: 1.4rem;
  color: #CA8A04;
  font-weight: 600;
  font-size: 1.15rem;
  text-decoration: none;
  border-bottom: 2px solid transparent;
}
.les-mer-lenke:hover, .les-mer-lenke:focus-visible { border-bottom-color: #CA8A04; }
.les-mer-lenke:focus-visible { outline: 3px solid #F4F5F7; outline-offset: 4px; }

/* NAVY, IKKE ORANSJE (21.09.2026, rettet). Sto paa #CA8A04, samme
   oransje som pilotknappen - men denne «Les mer»-pilen ligger i
   .seksjon, altsaa paa HVIT bunn, der oransjen selv er maalt til 2,94
   (kommentaren over .les-mer-lenke, 20.09.2026) - under selv det lave
   3,0-kravet for stor tekst. Oransjen er riktig BARE paa moerk bunn
   (.les-mer-lenke i frist-boksen, som beholder den). Navy er allerede
   sidens vanlige lenkefarge paa lys bunn (samme som .les-mer > summary
   lenger opp i fila, foer «SKISSEOPPSETTET»-seksjonen definerte sin
   egen, oransje versjon for akkurat denne detalj-visningen). */
.seksjon .les-mer > summary {
  color: var(--navy);
  font-size: 1.2rem;
  font-weight: 600;
}
.seksjon .les-mer > summary::before {
  border-right-color: var(--navy);
  border-bottom-color: var(--navy);
}
.seksjon .les-mer > summary:focus-visible { outline-color: var(--navy); }

@media (max-width: 900px) {
  .to-kol { grid-template-columns: 1fr; gap: 2rem; }
  .mork-boks { padding: 1.6rem 1.3rem; }
}


/* ==========================================================
   LOVENDRINGSTABELLEN
   ==========================================================
   SAMLET HIT FRA design-endring/prove-farger.css (21.09.2026). Disse
   klassene fantes IKKE andre steder i stilarket - hele
   «Lovendringen»-seksjonen sto altsaa uten stil den dagen proevefila
   ble tatt bort, om den ikke var flyttet hit foerst.

   FIRKANTEN FORAN «Hjemmel» OG «Til sammenligning» VAR ROED-ORANSJE
   (#C2410C), en TREDJE aksentfarge ved siden av pilotknappens gule og
   sidens skiferblaa - ingen forklarte hvorfor, og den fantes ingen
   andre steder paa siden. Byttet til skiferblaa, samme farge som
   resten av sidens lenker og tall. */
.lov-hode { max-width: 52rem; }

.lov-etikett {
  margin: 0 0 .6rem;
  color: var(--navy);
  font: 600 .78rem/1.3 var(--brodskrift);
  text-transform: uppercase;
  letter-spacing: .12em;
}
.lov-hode h2 { margin: 0 0 .8rem; }
.lov-hode p:last-child { margin: 0; }

.lovtabell {
  width: 100%;
  border-collapse: collapse;
  text-align: left;
  margin-top: 1.2rem;
  font-size: .94rem;
  line-height: 1.55;
}
.lovtabell thead th {
  padding: .7rem .9rem;
  border-bottom: 2px solid var(--navy);
  color: var(--navy);
  font: 600 .78rem/1.3 var(--brodskrift);
  text-transform: uppercase;
  letter-spacing: .09em;
}
.lovtabell tbody th {
  padding: .85rem .9rem;
  border-bottom: 1px solid var(--ramme-strek);
  color: var(--navy);
  font: 600 .94rem var(--brodskrift);
  text-align: left;
  vertical-align: top;
  white-space: nowrap;
  width: 34%;
}
.lovtabell tbody td {
  padding: .85rem .9rem;
  border-bottom: 1px solid var(--ramme-strek);
  color: var(--brod);
  vertical-align: top;
}
.lovtabell tbody tr:last-child th,
.lovtabell tbody tr:last-child td { border-bottom: 0; }
.lovtabell-kilde {
  margin: 1rem 0 0;
  color: var(--navy);
  font: 600 .88rem/1.5 var(--brodskrift);
}
@media (max-width: 700px) {
  .lovtabell tbody th { white-space: normal; }
}

/* Moerk tittelrad, som sammenligningstabellen lenger oppe paa siden -
   samme grep, saa de to tabellene leses som ett system. */
.lovtabell-bred { min-width: 36rem; margin-top: 0; }
.lovtabell-bred thead th {
  background: #2B323A;
  color: #FFFFFF;
  border-bottom: 3px solid var(--navy);
}
.lovtabell-bred tbody tr:nth-child(even) th,
.lovtabell-bred tbody tr:nth-child(even) td { background: #F1F3F5; }
.lovtabell-bred tbody th { width: 30%; }

.lov-bokser {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin-top: 1.6rem;
}
.lov-boks {
  padding: 1rem 1.2rem;
  border: 1px solid var(--ramme-strek);
  border-radius: 8px;
  background: #F1F3F5;
}
.lov-boks h3 {
  margin: 0 0 .4rem;
  color: var(--navy);
  font: 700 .95rem/1.3 var(--brodskrift);
}
.lov-boks h3::before {
  content: "";
  display: inline-block;
  width: .55rem;
  height: .55rem;
  margin-right: .5rem;
  background: var(--navy);
  vertical-align: .08em;
}
.lov-boks p { margin: 0; font-size: .9rem; line-height: 1.6; }

@media (max-width: 700px) {
  .lov-bokser { grid-template-columns: 1fr; }
}


/* ==========================================================
   NOEKKELTALLRADEN («9» og «7» rett under heroen)
   ==========================================================
   Ogsaa denne var bare i design-endring/prove-farger.css, hentet inn
   21.09.2026. auto-fit: to spalter naar det er plass, én naar det ikke
   er det - bryter av seg selv under 26rem uten en egen @media-regel. */
.fakta { padding: 3.5rem; }
.fakta-rad {
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(26rem, 1fr));
  gap: 2.5rem 4.5rem;
}
.fakta-tall {
  margin: 0 0 .4rem;
  font-family: var(--antikva);
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
  color: var(--navy);
}
.fakta-punkt p:last-child {
  margin: 0;
  font-size: 1rem;
  line-height: 1.55;
  max-width: 34ch;
}
@media (max-width: 900px) {
  .fakta { padding: 2.5rem 1.5rem; }
}

/* ==========================================================
   FORSIDELAGET (29.09.2026)
   ==========================================================
   Overgangen fra heroen til tallene, den kompakte menylinjen, vinduene
   for «Om Revisa» og lovtabellen, og strømmen i den mørke stripen.
   Oppførselen står i side.js. Ingen tekst er endret.

   Står sist i fila og overstyrer reglene lenger opp. Fjernes blokken,
   går siden tilbake til slik den var – bortsett fra at side.js fortsatt
   flytter innholdet inn i vinduene; fjern da også <script src="side.js">. */

/* ---------- 1. Heroen skrår inn i tallene ----------
   Skrå underkant i stedet for en rett, hard linje: 64 px høyere til
   høyre enn til venstre. Ekstra polstring nederst så pauseknappen ikke
   havner i den bortklipte delen. */
@media (min-width: 901px) {
  .hero {
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 64px), 0 100%);
    padding-bottom: 7.5rem;
  }
}

/* Tallkortene flyter over skillet: de trekkes 5,5rem opp i heroen.
   MØRKT GLASS, IKKE LYST. rgba(255,255,255,.05) ville vært usynlig der
   kortet ligger over den lyse flaten, og hvit tekst ville forsvunnet.
   Mørk skifer med 80 % dekkevne holder teksten lesbar over begge.
   Målt: #D5DBE2 mot kortet er over 9. */
.fakta { padding-top: 0; }
.fakta-rad {
  position: relative;
  z-index: 2;
  margin-top: -5.5rem;
}
.fakta-punkt {
  background: rgba(43, 50, 58, .8);
  -webkit-backdrop-filter: blur(12px);
          backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 14px;
  padding: 1.6rem 1.9rem;
  box-shadow: 0 18px 44px rgba(20, 24, 30, .22);
}
.fakta-punkt .fakta-tall { color: #FFFFFF; }
.fakta-punkt p:last-child { color: #D5DBE2; }
@media (max-width: 900px) {
  .fakta-rad { margin-top: 1.5rem; }
}

/* ---------- 2. Kompakt menylinje med «Bli pilotkunde» ----------
   side.js setter .kompakt når heroen er rullet forbi. Knappen har
   hidden-attributtet til da, så den er ute av tabulatorrekkefølgen
   når den ikke synes. */
.banner { transition: height .25s ease, box-shadow .25s ease; }
.banner.kompakt {
  height: 60px;
  box-shadow: 0 6px 24px rgba(0, 0, 0, .28);
}
.banner.kompakt .merke { font-size: .92rem; padding-top: .35rem; padding-bottom: .35rem; }
/* GUL, OG MED «.banner nav» I VELGEREN (rettet 29.09.2026).
   Uten «.banner nav» foran vant den vanlige lenkeregelen (.banner nav a,
   soelvgraa #94A3B8), og teksten ble lys graa paa lys knapp - nesten
   usynlig. Gul er pilotblokkens farge: knappen skiller seg da fra den
   hvite «Logg inn» ved siden av, og betyr det samme overalt paa siden.
   Maalt: #1C1F23 paa #CA8A04 er 6,4. */
.banner nav .banner-pilot {
  margin-left: .9rem;
  padding: .6rem 1.2rem;
  border: 0;
  border-radius: 8px;
  background: #CA8A04;
  color: #1C1F23;
  font: 700 .9rem/1.2 system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  text-decoration: none;
  white-space: nowrap;
  box-shadow: 0 0 0 1px rgba(202, 138, 4, .55), 0 6px 20px rgba(202, 138, 4, .35);
  animation: pilot-inn .25s ease-out;
}
.banner nav .banner-pilot:hover {
  background: #D99A0E;
  color: #1C1F23;
  box-shadow: 0 0 0 3px rgba(202, 138, 4, .35), 0 6px 20px rgba(202, 138, 4, .4);
}
.banner nav .banner-pilot:focus-visible { outline: 2px solid #F4F5F7; outline-offset: 3px; }
.banner-pilot[hidden] { display: none; }
@keyframes pilot-inn {
  from { opacity: 0; transform: translateY(-4px); }
  to   { opacity: 1; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  .banner, .banner-pilot { transition: none; animation: none; }
}

/* ---------- 3. Vinduene ----------
   Kortene som står igjen på siden, knappene som åpner vinduene, og
   selve vinduene (<dialog>). */
.vindu-kort {
  max-width: 52rem;
  background: #FFFFFF;
  border: 1px solid #E1E5EA;
  border-radius: 14px;
  padding: 2rem 2.2rem;
  box-shadow: 0 4px 14px rgba(43, 50, 58, .06);
}
.vindu-kort h2 { margin-top: 0; }
.vindu-kort p { max-width: 62ch; }
.om-kort { margin: 0 auto; }
.lov-kort { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem 2rem; }
.lov-kort .lov-etikett { margin: 0; }

.vindu-apne {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  min-height: 44px;
  margin-top: .4rem;
  padding: 0 1.2rem;
  border-radius: 8px;
  border: 1px solid #3E4A5E;
  background: #FFFFFF;
  color: #2B323A;
  font: 600 .95rem/1.2 system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  cursor: pointer;
  transition: background-color .15s ease, color .15s ease;
}
.vindu-apne:hover { background: #3E4A5E; color: #FFFFFF; }
.vindu-apne:focus-visible { outline: 3px solid #3E4A5E; outline-offset: 3px; }
.lov-apne { margin-top: 0; }

.vindu {
  border: 0;
  padding: 2.6rem 2.6rem 2.2rem;
  color: #2B323A;
  background: #FFFFFF;
  box-shadow: 0 30px 80px rgba(10, 14, 20, .35);
}
.vindu::backdrop {
  background: rgba(20, 24, 30, .55);
  -webkit-backdrop-filter: blur(4px);
          backdrop-filter: blur(4px);
}
.vindu-lukk {
  position: absolute;
  top: 1rem;
  right: 1rem;
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  border: 1px solid #E1E5EA;
  background: #FFFFFF;
  color: #2B323A;
  cursor: pointer;
}
.vindu-lukk:hover { background: #F4F5F7; }
.vindu-lukk:focus-visible { outline: 3px solid #3E4A5E; outline-offset: 2px; }

/* «Om Revisa»: midt på skjermen. */
.om-vindu {
  width: min(60rem, calc(100% - 2rem));
  max-height: calc(100vh - 4rem);
  border-radius: 16px;
  overflow: auto;
}
.om-vindu[open] { animation: vindu-inn .22s ease-out; }
@keyframes vindu-inn {
  from { opacity: 0; transform: translateY(8px) scale(.99); }
  to   { opacity: 1; transform: none; }
}

/* Lovtabellen: skuff fra høyre, full høyde. */
.skuff {
  margin: 0 0 0 auto;
  width: min(56rem, 100vw);
  height: 100vh;
  max-height: 100vh;
  max-width: 100vw;
  border-radius: 16px 0 0 16px;
  overflow: auto;
}
.skuff[open] { animation: skuff-inn .3s ease-out; }
@keyframes skuff-inn {
  from { transform: translateX(100%); }
  to   { transform: none; }
}
.skuff .lov-hode { padding-right: 3rem; }
@media (prefers-reduced-motion: reduce) {
  .om-vindu[open], .skuff[open] { animation: none; }
}

/* ---------- 4. Strømmen i den mørke stripen ----------
   Nodene tegnes av side.js på et lerret bak teksten. Auraen bak
   «Fra 2027» pulserer rolig; begge stoppes med pauseknappen og står
   stille ved «reduser bevegelse». */
.baand {
  position: relative;
  overflow: hidden;
  padding-bottom: 6rem;
}
.baand-strom {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.baand-utsagn { position: relative; z-index: 1; }
.aura {
  position: relative;
  display: inline-block;
  isolation: isolate;
}
.aura::before {
  content: "";
  position: absolute;
  inset: -.5em -.9em;
  z-index: -1;
  border-radius: 50%;
  background: radial-gradient(closest-side,
    rgba(191, 229, 250, .30), rgba(56, 214, 240, .12) 55%, rgba(56, 214, 240, 0));
  filter: blur(6px);
  animation: aura 3.6s ease-in-out infinite;
}
@keyframes aura {
  0%, 100% { opacity: .55; transform: scale(.94); }
  50%      { opacity: 1;   transform: scale(1.06); }
}
.baand.pauset .aura::before { animation-play-state: paused; }
.baand-pause {
  position: absolute;
  right: 1.5rem;
  bottom: 1.2rem;
  z-index: 1;
  min-height: 44px;
  padding: 0 1.1rem;
  border-radius: 999px;
  background: rgba(18, 22, 27, .45);
  color: #E6E9EC;
  border: 1px solid rgba(255, 255, 255, .28);
  font: 500 .88rem/1 system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  cursor: pointer;
}
.baand-pause:hover { border-color: rgba(255, 255, 255, .55); }
.baand-pause:focus-visible { outline: 3px solid #F4F5F7; outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) {
  .aura::before { animation: none; opacity: .8; }
}

/* ==========================================================
   KROPPSLAGET (29.09.2026)
   ==========================================================
   «Hvorfor Revisa», personvernkortet, pris- og fristpanelene og «Om
   Revisa» i bunnteksten. Ingen tekst er endret - bare rammene rundt.

   AKSENTEN ER CYAN (#38D6F0), IKKE #3b82f6. Overskriftene i
   sikkerhetspanelet står på mørk skifer: #3b82f6 gir der bare 3,9 i
   kontrast (under kravet 4,5), cyan gir 8,3 og er samme farge som
   nettverkshodet. */

/* ---------- Rad 1: egenskaper og sikkerhetspanel, 50/50 ---------- */
#hvorfor .panel-rutenett {
  max-width: 1180px;
  margin: 2.2rem auto 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.5rem;
  align-items: stretch;           /* like høye spalter */
}
.egenskaper {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.egenskap-kort {
  flex: 1;                        /* kortene deler høyden likt */
  display: flex;
  gap: 1.1rem;
  align-items: flex-start;
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 14px;
  padding: 1.5rem 1.6rem;
}
.egenskap-kort p {
  margin: 0;
  font-size: 1rem;
  line-height: 1.7;
}
.egenskap-kort p b { color: #2B323A; }
.egenskap-ikon {
  flex-shrink: 0;
  width: 42px;
  height: 42px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  background: #EEF1F5;
  color: #3E4A5E;
}
.sikkerhet {
  border-radius: 16px;
  padding: 2.2rem 2.4rem;
}
.sikkerhet h3 {
  color: #38D6F0;
  letter-spacing: .02em;
}

/* ---------- Rad 2: personvernkortet ---------- */
.personvern-kort {
  max-width: 1180px;
  margin: 1.5rem auto 0;
  box-sizing: border-box;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2.6rem;
  align-items: center;
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 16px;
  padding: 2.2rem 2.4rem;
}
.personvern-tekst p { margin: 0 0 1.1rem; line-height: 1.75; }
.personvern-tekst p b { color: #2B323A; }

/* Nettleserrammen. Bildet har en gjennomsiktig kant på 117 px rundt
   selve kortet (av 1600 x 1611). Den klippes bort: bildet gjøres 117 %
   bredt og trekkes 8,6 % opp og til venstre, så rammen sitter tett
   inntil kortet i bildet. Byttes bildet, må tallene regnes på nytt. */
.funnkort-bevis.nettleser {
  margin: 0;
  max-width: none;
}
.nettleser-topp {
  display: flex;
  gap: 6px;
  padding: .7rem .9rem;
  background: #2B323A;
  border-radius: 12px 12px 0 0;
}
.nettleser-topp span {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: rgba(255, 255, 255, .28);
}
.nettleser-flate {
  overflow: hidden;
  border: 1px solid #E2E8F0;
  border-top: 0;
  border-radius: 0 0 12px 12px;
  background: #E4E8ED;
  box-shadow: 0 14px 34px rgba(43, 50, 58, .12);
}
.nettleser-flate img {
  display: block;
  width: 117.1%;
  max-width: none;
  margin: -8.56% 0 -8.64% -8.56%;
}

/* ---------- Pris og frist: like høye, samme hjørner ---------- */
.lik-hoyde { align-items: stretch; }
.lik-hoyde .tid-venstre {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 16px;
  padding: 2.2rem 2.4rem;
  box-shadow: 0 4px 14px rgba(43, 50, 58, .05);
}
.lik-hoyde .frist-boks { border-radius: 16px; }

/* Pristabellen: ingen rutenett, vekslende lyse rader, og summen løftet
   fram. border-spacing gir luft mellom radene, så hver rad leses for seg. */
.pris-tabell {
  border-collapse: separate;
  border-spacing: 0 6px;
}
.pris-tabell th, .pris-tabell td,
.pris-tabell tr:last-child th, .pris-tabell tr:last-child td {
  border-top: 0;
  border-bottom: 0;
}
.pris-tabell tbody tr:nth-child(odd) th,
.pris-tabell tbody tr:nth-child(odd) td { background: #F8FAFC; }
.pris-tabell th { border-radius: 8px 0 0 8px; }
.pris-tabell td { border-radius: 0 8px 8px 0; }
/* tbody i velgeren: summen er 3. rad, altsaa ogsaa en «odd» rad - uten
   tbody her vant regelen for annenhver rad, og summen ble lys graa. */
.pris-tabell tbody tr.sum th,
.pris-tabell tbody tr.sum td {
  background: #E9EEF4;
  color: #2B323A;
  font-weight: 700;
  font-size: 1.08rem;
  padding-top: 1.1rem;
  padding-bottom: 1.1rem;
}
.pris-tabell tr.sum { filter: drop-shadow(0 6px 14px rgba(62, 74, 94, .18)); }

/* Lovtabellen i skuffen: samme rolige rader. */
.skuff .lovtabell thead th { border-bottom: 1px solid #E2E8F0; }
.skuff .lovtabell tbody td,
.skuff .lovtabell tbody th { border-top: 0; border-bottom: 0; }
.skuff .lovtabell tbody tr:nth-child(odd) { background: #F8FAFC; }

/* ---------- «Om Revisa» i bunnteksten ---------- */
.bunn-om {
  max-width: 1180px;
  margin: 0 auto 2rem;
  text-align: left;
}
.bunn-om h2 {
  margin: 0 0 1rem;
  font: 700 .74rem/1 var(--brodskrift);
  letter-spacing: .15em;
  text-transform: uppercase;
  color: #3E4A5E;
}
.bunn-om-spalter {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem 2.4rem;
}
/* #5C6673 mot bunntekstens flate er 5,3 - samme farge som resten av
   bunnteksten, målt tidligere (se .bunn). */
.bunn .bunn-om-spalter p {
  margin: 0 0 .8rem;
  font-size: .84rem;
  line-height: 1.65;
  color: #5C6673;
}
.bunn .bunn-meny {
  padding-top: 1.6rem;
  border-top: 1px solid #E1E5EA;
}

@media (max-width: 900px) {
  #hvorfor .panel-rutenett,
  .personvern-kort,
  .bunn-om-spalter { grid-template-columns: 1fr; }
  .personvern-kort { padding: 1.6rem 1.4rem; }
}

/* ==========================================================
   OVERGANGSLAGET (29.09.2026)
   ==========================================================
   Samme grep som heroen -> tallene (FORSIDELAGET) brukt to steder til:

     PILOT -> KONTAKT   Pilotblokken faar heroens stripete skifer og
                        skraa underkant. Kontakt blir et moerkt glasskort
                        som flyter over skillet.
     KONTAKT -> BUNN    Bunnteksten blir moerk med skraa OVERKANT, og de
                        tre «Om Revisa»-spaltene blir glasskort som flyter
                        over skillet.

   HVORFOR ::before I BUNNTEKSTEN, IKKE clip-path PAA SELVE ELEMENTET:
   clip-path klipper ogsaa barna. Kortene som stikker opp over den
   moerke flaten, ville blitt kuttet. Den moerke flaten er derfor et eget
   lag bak innholdet, og det er det laget som klippes.

   Ingen tekst er endret. */

/* Heroens flate: stripene + skifergradienten. */
.pilot {
  background:
    repeating-linear-gradient(163deg, rgba(255,255,255,.03) 0 1px, transparent 1px 5px),
    repeating-linear-gradient(73deg, rgba(0,0,0,.02) 0 1px, transparent 1px 11px),
    linear-gradient(163deg, var(--skifer-lys) 0%, var(--skifer-midt) 52%, var(--skifer-mork) 100%);
}

/* Moerkt glass - samme oppskrift som tallkortene i FORSIDELAGET. */
.bunn-om-spalter > div {
  background: rgba(43, 50, 58, .8);
  -webkit-backdrop-filter: blur(12px);
          backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 14px;
  box-shadow: 0 18px 44px rgba(20, 24, 30, .22);
}

/* ---------- Pilot -> bunnteksten ----------
   Kontakt-seksjonen er fjernet (29.09.2026). Pilotblokken beholder den
   skraa underkanten, og under den begynner bunnteksten. */
@media (min-width: 901px) {
  .seksjon.pilot {
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 64px), 0 100%);
    padding-bottom: 7.5rem;
  }
}

/* ---------- Kontakt -> bunnteksten ---------- */
.bunn {
  position: relative;
  isolation: isolate;               /* ::before (z-index -1) blir i bunnteksten */
  background: #EDEEF0;              /* samme lyse flate som Kontakt: ingen strek */
  border-top: 0;
  padding-top: 2rem;
}
.bunn::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    repeating-linear-gradient(163deg, rgba(255,255,255,.03) 0 1px, transparent 1px 5px),
    repeating-linear-gradient(73deg, rgba(0,0,0,.02) 0 1px, transparent 1px 11px),
    linear-gradient(163deg, var(--skifer-lys) 0%, var(--skifer-midt) 52%, var(--skifer-mork) 100%);
  /* Skraa overkant: hoeyere til hoeyre, som heroens underkant speilvendt. */
  clip-path: polygon(0 9rem, 100% 5rem, 100% 100%, 0 100%);
}
.bunn-om-spalter > div { padding: 1.5rem 1.7rem; }
.bunn .bunn-om-spalter p { color: #D5DBE2; }
.bunn .bunn-om-spalter p:last-child { margin-bottom: 0; }

/* Under kortene er flaten moerk: lenker og slagord i lyse toner.
   #94A3B8 mot #2B323A er 5,9; #C9CED6 er 9,7. */
.bunn .bunn-meny { border-top-color: rgba(255, 255, 255, .1); }
.bunn .bunn-meny a { color: #94A3B8; }
.bunn .bunn-meny a:hover { color: #FFFFFF; border-bottom-color: #FFFFFF; }
.bunn .bunn-meny a:focus-visible { outline: 2px solid #F4F5F7; outline-offset: 3px; }
.bunn > p { color: #C9CED6; }

@media (max-width: 900px) {
  .bunn::before { clip-path: polygon(0 3rem, 100% 1.5rem, 100% 100%, 0 100%); }
  .bunn { padding-top: 4rem; }
}

/* ---------- Hodet sier «Søker pilotkunder» (side.js, del 4) ----------
   Mens animasjonen spiller er teksten gjennomsiktig; den står fortsatt i
   HTML-en og leses av skjermlesere. Velgeren har «.seksjon .pilot-boks»
   foran fordi regelen som gir overskriften gul farge har det - ellers
   ville den vunnet (samme feil som sumraden og pilotknappen tidligere). */
.seksjon .pilot-boks h2 {
  position: relative;
  transition: color .6s ease;
}
.seksjon .pilot-boks h2.genererer { color: transparent; }
.tale-lerret {
  position: absolute;
  pointer-events: none;
}

/* ==========================================================
   TEKNOLAGET (29.09.2026, paa oenske: pris-, frist- og lovkortet skal
   ha samme uttrykk som resten av forsiden)
   ==========================================================
   Samme byggeklosser som heroen og glasskortene: stripete skifer, tynn
   lys kant, cyan aksent (#38D6F0, samme som nettverkshodet) og myk
   gloed. Seksjonsflaten rundt er fortsatt LYS, saa siden veksler
   lys/moerk som foer. Ingen tekst er endret.

   VELGERNE HAR «.lik-hoyde» ELLER «.lov-kort» FORAN med vilje: reglene
   de overstyrer (.seksjon h2, .pris-tabell ...) er ellers like spesifikke
   eller mer - samme felle som sumraden, pilotknappen og Kontakt. */

/* Felles flate for de tre kortene */
.lik-hoyde .tid-venstre,
.lik-hoyde .frist-boks,
.lov-kort {
  background:
    repeating-linear-gradient(163deg, rgba(255,255,255,.03) 0 1px, transparent 1px 5px),
    repeating-linear-gradient(73deg, rgba(0,0,0,.02) 0 1px, transparent 1px 11px),
    linear-gradient(163deg, var(--skifer-lys) 0%, var(--skifer-midt) 52%, var(--skifer-mork) 100%);
  border: 1px solid rgba(255, 255, 255, .08);
  border-radius: 16px;
  box-shadow:
    0 0 0 1px rgba(56, 214, 240, .10),
    0 20px 48px rgba(20, 24, 30, .22);
  color: #E2E8F0;
  position: relative;
  overflow: hidden;
}
/* Tynn cyan lyslinje langs overkanten - «skjermkanten». */
.lik-hoyde .tid-venstre::before,
.lik-hoyde .frist-boks::before,
.lov-kort::before {
  content: "";
  position: absolute;
  left: 8%; right: 8%; top: 0;
  height: 1px;
  background: linear-gradient(90deg, rgba(56,214,240,0), rgba(56,214,240,.75), rgba(56,214,240,0));
}

/* ---------- Priskortet ---------- */
.lik-hoyde .tid-venstre .etikett,
.lik-hoyde .frist-boks .frist-etikett { color: #38D6F0; letter-spacing: .16em; }
.lik-hoyde .tid-venstre h2 { color: #FFFFFF; }
.lik-hoyde .tid-venstre > p { color: #D5DBE2; }
.lik-hoyde .pris-tabell th { color: #C9CED6; }
.lik-hoyde .pris-tabell td { color: #FFFFFF; }
.lik-hoyde .pris-tabell tbody tr:nth-child(odd) th,
.lik-hoyde .pris-tabell tbody tr:nth-child(odd) td { background: rgba(255, 255, 255, .045); }
/* Summen: cyan kant og gloed - samme «lyser opp»-signal som funnene i
   nettverkshodet. Staar ETTER odd-regelen, som den er like spesifikk som. */
.lik-hoyde .pris-tabell tbody tr.sum th,
.lik-hoyde .pris-tabell tbody tr.sum td {
  background: rgba(56, 214, 240, .10);
  color: #FFFFFF;
  box-shadow: inset 0 1px 0 rgba(56, 214, 240, .45), inset 0 -1px 0 rgba(56, 214, 240, .45);
}
.lik-hoyde .pris-tabell tbody tr.sum th { box-shadow: inset 1px 1px 0 rgba(56,214,240,.45), inset 0 -1px 0 rgba(56,214,240,.45); }
.lik-hoyde .pris-tabell tbody tr.sum td { box-shadow: inset -1px 1px 0 rgba(56,214,240,.45), inset 0 -1px 0 rgba(56,214,240,.45); }
.lik-hoyde .pris-tabell tr.sum { filter: drop-shadow(0 0 14px rgba(56, 214, 240, .25)); }
/* #AEB6C1 mot kortet er 6,9. */
.lik-hoyde .pris-note { color: #AEB6C1; }
.lik-hoyde .pris-note b { color: #E2E8F0; }

/* ---------- Fristkortet ---------- */
.lik-hoyde .frist-boks .frist-liste li::marker { color: #38D6F0; }
.lik-hoyde .frist-boks .frist-kilde { border-top-color: rgba(255, 255, 255, .1); color: #AEB6C1; }

/* ---------- Kortet «Regelverksoppdatering» ----------
   Bredt, moerkt kort med et §-tegn i en gloedende sirkel til venstre.
   Ringen pulserer bare naar musen er over kortet eller knappen har fokus -
   stadig bevegelse ville krevd en egen pauseknapp. */
.lov-kort {
  max-width: 1180px;
  margin: 0 auto;
  box-sizing: border-box;
  padding: 1.8rem 2.2rem 1.8rem 5.8rem;
}
.lov-kort::after {
  content: "§";
  position: absolute;
  left: 1.8rem;
  top: 50%;
  width: 2.6rem;
  height: 2.6rem;
  margin-top: -1.3rem;
  display: grid;
  place-items: center;
  border-radius: 50%;
  font: 600 1.3rem/1 var(--antikva);
  color: #38D6F0;
  background: rgba(56, 214, 240, .08);
  box-shadow: 0 0 0 1px rgba(56, 214, 240, .45), 0 0 22px rgba(56, 214, 240, .25);
}
.lov-kort:hover::after,
.lov-kort:focus-within::after { animation: lov-ring 1.6s ease-out infinite; }
@keyframes lov-ring {
  0%   { box-shadow: 0 0 0 1px rgba(56,214,240,.45), 0 0 22px rgba(56,214,240,.25), 0 0 0 0 rgba(56,214,240,.35); }
  100% { box-shadow: 0 0 0 1px rgba(56,214,240,.45), 0 0 22px rgba(56,214,240,.25), 0 0 0 14px rgba(56,214,240,0); }
}
.lov-kort .lov-etikett { color: #38D6F0; letter-spacing: .16em; }
/* Hvit knapp paa moerkt kort - samme som «Bli pilotkunde» i heroen. */
.lov-kort .vindu-apne {
  background: #F4F5F7;
  color: #1C1F23;
  border-color: #F4F5F7;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .3);
}
.lov-kort .vindu-apne:hover {
  background: #FFFFFF;
  color: #1C1F23;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .3), 0 0 22px rgba(56, 214, 240, .3);
}
.lov-kort .vindu-apne:focus-visible { outline: 3px solid #38D6F0; }

@media (prefers-reduced-motion: reduce) {
  .lov-kort:hover::after, .lov-kort:focus-within::after { animation: none; }
}
@media (max-width: 900px) {
  .lov-kort { padding: 1.6rem 1.4rem 1.6rem 4.8rem; }
  .lov-kort::after { left: 1.2rem; }
}

/* Utskrift: overskriften skal aldri skrives ut usynlig, selv om
   elektrode-animasjonen ikke har kjoert. */
@media print {
  .seksjon .pilot-boks h2.genererer { color: #CA8A04; }
}

/* ==========================================================
   KAPITTELLAGET (29.09.2026)
   ==========================================================
   Midtdelen som fire kapitler med samme oppbygning:

     .kapittel-nr   nummer og etikett, «01 — Metode»
     h2             venstrestilt, samme serif som resten av siden
     innhold        samme bredde (1180 px), samme luft over og under

   FARGE ETTER BETYDNING - regelen for hele midtdelen:
     skifer og hvitt   alt innhold
     gult (#CA8A04)    bare handling: knapper som aapner noe
     cyan              bare i illustrasjonene (hodet, stroemmene) -
                       aldri i tekst her

   Lyse og moerke flater gaar i full bredde. Ingen moerke bokser paa hvit
   bunn - det var det som ga «klipp og lim»-foelelsen.

   Staar sist i fila. Velgerne starter med «.kapittel» saa de vinner over
   de eldre lagene (KROPPSLAGET, TEKNOLAGET) der de overlapper. */

.kapittel { padding: 6.5rem 3.5rem; }
.kapittel-indre { max-width: 1180px; margin: 0 auto; }
.kapittel.lys { background: #FFFFFF; }
.kapittel.mork {
  background:
    repeating-linear-gradient(163deg, rgba(255,255,255,.03) 0 1px, transparent 1px 5px),
    repeating-linear-gradient(73deg, rgba(0,0,0,.02) 0 1px, transparent 1px 11px),
    linear-gradient(163deg, var(--skifer-lys) 0%, var(--skifer-midt) 52%, var(--skifer-mork) 100%);
  color: #D5DBE2;
}
/* Kapittel 04 fortsetter den lyse flaten fra 03: tynn strek i stedet for
   ny luft, saa de leses som to deler av samme lyse felt. */
.kapittel-fortsatt { padding-top: 0; }
.kapittel-fortsatt .kapittel-indre { border-top: 1px solid #E1E5EA; padding-top: 4.5rem; }

/* Nummer og etikett. #5C6673 paa hvitt er 5,9; #AEB6C1 paa skifer 6,9. */
.kapittel-nr {
  display: flex;
  align-items: center;
  gap: .9rem;
  margin: 0 0 1.1rem;
  font: 600 .78rem/1 var(--brodskrift);
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #5C6673;
}
.kapittel-nr::before {
  content: "";
  width: 2.2rem;
  height: 1px;
  background: currentColor;
}
.kapittel.mork .kapittel-nr { color: #AEB6C1; }

.kapittel h2 {
  margin: 0 0 2.6rem;
  font: 500 clamp(1.8rem, 2.8vw, 2.4rem)/1.2 var(--antikva);
  color: #2B323A;
  max-width: 24ch;
}
.kapittel.mork h2 { color: #FFFFFF; }

/* ---------- 01 Metode ---------- */
.egenskap-rad {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2.4rem;
}
.egenskap {
  border-top: 1px solid #C9CDD4;
  padding-top: 1.4rem;
}
.egenskap .egenskap-ikon {
  width: auto; height: auto;
  background: none;
  color: #3E4A5E;
  display: block;
  margin-bottom: .9rem;
}
.egenskap p { margin: 0; font-size: 1.02rem; line-height: 1.75; color: #3A424C; }
.egenskap p b { color: #2B323A; }
.kapittel .funnkort-bevis.nettleser {
  max-width: 820px;
  margin: 4.5rem auto 0;
}
.kapittel .funnkort-bevis figcaption { text-align: center; }

/* ---------- 02 Personvern og sikkerhet ---------- */
.sikkerhet-rutenett {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 2.2rem;
}
.sikkerhet-rutenett > div {
  border-top: 1px solid rgba(255, 255, 255, .18);
  padding-top: 1.3rem;
}
.kapittel.mork h3 {
  margin: 0 0 .6rem;
  font: 600 1.05rem/1.3 var(--brodskrift);
  color: #FFFFFF;
  letter-spacing: .01em;
}
.kapittel.mork p { margin: 0 0 .9rem; font-size: .98rem; line-height: 1.7; color: #D5DBE2; }
.kapittel.mork b { color: #FFFFFF; }
.sladding {
  max-width: 72ch;
  margin-top: 3.4rem;
  padding-top: 2.2rem;
  border-top: 1px solid rgba(255, 255, 255, .12);
}
.kapittel.mork .les-mer summary { color: #FFFFFF; }
.kapittel.mork .les-mer summary:focus-visible { outline: 3px solid #F4F5F7; outline-offset: 3px; }
.kapittel.mork .les-mer h3 { margin-top: 1.6rem; }

/* ---------- 03 Lovendringen 2027 ---------- */
.kapittel h2.kapittel-utsagn { max-width: 30ch; margin-bottom: 3rem; }
.kapittel-utsagn .paastand { display: block; }
.kapittel-utsagn .svaret {
  display: block;
  margin-top: .8rem;
  font-size: .62em;
  line-height: 1.5;
  color: #5C6673;
}
.lov-rutenett {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
  gap: 3.5rem;
  align-items: start;
}
.frist h3 {
  margin: 0 0 1rem;
  font: 500 1.35rem/1.3 var(--antikva);
  color: #2B323A;
}
.frist .frist-liste { margin: 0 0 1.2rem; padding-left: 1.2rem; }
.frist .frist-liste li { margin-bottom: .45rem; line-height: 1.6; color: #3A424C; }
.frist .frist-liste li::marker { color: #3E4A5E; }
.frist p { line-height: 1.7; color: #3A424C; }
.frist .frist-kilde {
  margin-top: 1.2rem;
  padding-top: 1rem;
  border-top: 1px solid #E1E5EA;
  font-size: .88rem;
  color: #5C6673;
}
/* Lenken er navy paa hvit bunn - gult har bare 2,9 i kontrast her. */
.kapittel .frist .les-mer-lenke {
  color: #3E4A5E;
  font-size: 1.02rem;
  border-bottom: 1px solid #3E4A5E;
}
.kapittel .frist .les-mer-lenke:focus-visible { outline: 3px solid #3E4A5E; }

/* Lovkortet: lyst, med §-tegnet i skifer og en GUL knapp (handling). */
.kapittel .lov-kort {
  max-width: none;
  background: #F4F5F7;
  border: 1px solid #E1E5EA;
  box-shadow: none;
  color: #2B323A;
  flex-direction: column;
  align-items: flex-start;
  padding: 2rem 2rem 2rem 5.6rem;
}
.kapittel .lov-kort::before { display: none; }
.kapittel .lov-kort::after {
  color: #3E4A5E;
  background: #FFFFFF;
  box-shadow: 0 0 0 1px #C9CDD4;
  animation: none;
}
.kapittel .lov-kort .lov-etikett { color: #5C6673; }
.kapittel .lov-kort .vindu-apne {
  background: #CA8A04;
  color: #1C1F23;
  border-color: #CA8A04;
  box-shadow: none;
}
.kapittel .lov-kort .vindu-apne:hover { background: #D99A0E; color: #1C1F23; box-shadow: 0 0 0 3px rgba(202,138,4,.3); }
.kapittel .lov-kort .vindu-apne:focus-visible { outline: 3px solid #3E4A5E; }

/* ---------- 04 Tid og økonomi ---------- */
.pris-rutenett {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
  gap: 3.5rem;
  align-items: start;
}
.pris-rutenett h2 { margin-bottom: 1rem; }
.pris-rutenett > div:first-child > p { line-height: 1.7; color: #3A424C; }
.kapittel .pris-tabell { margin-top: 0; }

@media (max-width: 900px) {
  .kapittel { padding: 4.5rem 1.5rem; }
  .kapittel-fortsatt { padding-top: 0; }
  .egenskap-rad, .sikkerhet-rutenett, .lov-rutenett, .pris-rutenett { grid-template-columns: 1fr; }
}
@media (min-width: 901px) and (max-width: 1100px) {
  .sikkerhet-rutenett { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
/* De fete ordene i fristlista var hvite fra tiden i den moerke boksen -
   usynlige paa hvit bunn (funnet 29.09.2026). */
.kapittel .frist .frist-liste b { color: #2B323A; }

/* ==========================================================
   UNDERSIDENE SOM DOKUMENT (29.09.2026, paa oenske: «ikke saa hvit og
   lys graa»)
   ==========================================================
   personvern, tilgjengelighet, vilkaar, KI-bruk og databehandleravtale.
   Teksten staar paa et hvitt «dokumentark» med tynn kant og myk skygge,
   paa en lys skiferflate - samme lagdeling som kortene paa forsiden.

   KONTRAST GAAR OPP, IKKE NED: broedteksten er moerkere enn foer
   (#3A424C paa hvitt er 10,4 - kravet er 4,5), og overskriftene er
   #2B323A. Det lyse inntrykket kom av grå tekst paa hvit bunn; det er
   fjernet uten aa senke kontrasten noe sted.

   Gjelder bare .seksjon.lys med .smal inni - forsiden bruker ikke .smal
   lenger (kapitlene har egen oppbygning). */
.seksjon.lys:has(> .smal) { background: #EDEFF2; }
.seksjon.lys > .smal {
  box-sizing: border-box;
  max-width: 50rem;
  background: #FFFFFF;
  border: 1px solid #E1E5EA;
  border-radius: 16px;
  padding: 3.2rem 3.6rem 2.8rem;
  box-shadow: 0 10px 34px rgba(43, 50, 58, .07);
}
.seksjon.lys > .smal p,
.seksjon.lys > .smal li { color: #3A424C; }
.seksjon.lys > .smal p b { color: #2B323A; }
.seksjon.lys > .smal h2 {
  color: #2B323A;
  margin-top: 2.6rem;
  padding-top: 2.2rem;
  border-top: 1px solid #E8EBEF;
}
.seksjon.lys > .smal h2:first-child,
.seksjon.lys > .smal > h2:first-of-type { margin-top: 0; padding-top: 0; border-top: 0; }
.seksjon.lys > .smal a { color: #3E4A5E; }
.seksjon.lys > .smal code {
  font-size: .9em;
  background: #EEF1F5;
  border-radius: 4px;
  padding: .05em .35em;
  color: #2B323A;
}
/* Datoen nederst som signering. */
.seksjon.lys > .smal .signatur {
  margin-top: 2.6rem;
  padding-top: 1.2rem;
  border-top: 1px solid #E8EBEF;
  font-size: .92rem;
  color: #3A424C;
}
@media (max-width: 900px) {
  .seksjon.lys > .smal { padding: 2rem 1.4rem; border-radius: 12px; }
}

/* ==========================================================
   KAPITTEL 02 LOVENDRINGEN OG EKSEMPELVINDUET (29.09.2026)
   ==========================================================
   Lovendringen er naa et moerkt kapittel med tre like glasskort - samme
   uttrykk som «Om Revisa» i bunnteksten - og personvern er lyst. Den
   gule knappen er borte herfra: knappen som aapner lovtabellen er en
   stille, hvit omrisset knapp, saa det er NYHETEN som trekker blikket,
   ikke knappen. */

/* «Nytt»: en rolig pulserende prikk etter etiketten, samme som i heroen. */
.kapittel-nr.nytt::after {
  content: "";
  width: .5rem;
  height: .5rem;
  border-radius: 50%;
  background: #38D6F0;
  box-shadow: 0 0 8px rgba(56, 214, 240, .8);
  animation: lovpuls-prikk 2.4s ease-out infinite;
}
@keyframes lovpuls-prikk {
  0%   { box-shadow: 0 0 8px rgba(56,214,240,.8), 0 0 0 0 rgba(56,214,240,.5); }
  100% { box-shadow: 0 0 8px rgba(56,214,240,.8), 0 0 0 10px rgba(56,214,240,0); }
}
.kapittel.mork .kapittel-utsagn { color: #FFFFFF; }
.kapittel.mork .kapittel-utsagn .svaret { color: #C9CED6; }

.nyhet-rad {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.5rem;
  align-items: stretch;
}
.nyhet-kort {
  background: rgba(255, 255, 255, .04);
  -webkit-backdrop-filter: blur(12px);
          backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 14px;
  padding: 1.8rem 1.9rem;
  box-shadow: 0 18px 44px rgba(20, 24, 30, .22);
}
.nyhet-kort h3 { font: 500 1.25rem/1.3 var(--antikva) !important; margin: 0 0 1rem !important; }
.nyhet-kort .frist-liste { margin: 0; padding-left: 1.1rem; }
.nyhet-kort .frist-liste li { color: #D5DBE2; margin-bottom: .5rem; line-height: 1.6; }
.nyhet-kort .frist-liste li::marker { color: #AEB6C1; }
.kapittel.mork .nyhet-kort .frist-liste b { color: #FFFFFF; }
.nyhet-kort .frist-kilde {
  margin-top: 1rem !important;
  padding-top: .9rem;
  border-top: 1px solid rgba(255, 255, 255, .12);
  font-size: .86rem !important;
  color: #AEB6C1 !important;
}
.kapittel.mork .les-mer-lenke {
  color: #FFFFFF;
  font-size: 1rem;
  border-bottom: 1px solid rgba(255, 255, 255, .6);
}
.kapittel.mork .les-mer-lenke:focus-visible { outline: 3px solid #F4F5F7; }

/* Lovkortet inne i det tredje glasskortet: ingen egen boks, ingen gult. */
.kapittel.mork .lov-kort {
  background: none;
  border: 0;
  box-shadow: none;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.2rem;
  color: #D5DBE2;
}
.kapittel.mork .lov-kort::after {
  position: static;
  order: -1;
  margin: 0;
  color: #FFFFFF;
  background: rgba(255, 255, 255, .06);
  box-shadow: 0 0 0 1px rgba(255, 255, 255, .25);
}
.kapittel.mork .lov-kort .lov-etikett { color: #AEB6C1; }
.kapittel.mork .lov-kort .vindu-apne {
  background: transparent;
  color: #FFFFFF;
  border: 1px solid rgba(255, 255, 255, .5);
  box-shadow: none;
}
.kapittel.mork .lov-kort .vindu-apne:hover { background: rgba(255, 255, 255, .08); color: #FFFFFF; box-shadow: none; }
.kapittel.mork .lov-kort .vindu-apne:focus-visible { outline: 3px solid #F4F5F7; }

/* ---------- 03 Personvern, naa paa lys flate ---------- */
.kapittel.lys .sikkerhet-rutenett > div { border-top-color: #C9CDD4; }
.kapittel.lys h3 {
  margin: 0 0 .6rem;
  font: 600 1.05rem/1.3 var(--brodskrift);
  color: #2B323A;
}
.kapittel.lys .sikkerhet-rutenett p,
.kapittel.lys .sladding p { font-size: .98rem; line-height: 1.7; color: #3A424C; }
.kapittel.lys .sladding { border-top-color: #E1E5EA; }

/* ---------- Eksempelet i et vindu ---------- */
.eksempel-apne { margin-top: 2.6rem; }
.eksempel-vindu {
  width: min(920px, calc(100% - 2rem));
  max-height: calc(100vh - 3rem);
  border-radius: 16px;
  overflow: auto;
  padding: 3.4rem 2rem 2rem;
}
.eksempel-vindu[open] { animation: vindu-inn .22s ease-out; }
.eksempel-vindu .funnkort-bevis.nettleser { margin: 0; max-width: none; }

@media (prefers-reduced-motion: reduce) {
  .kapittel-nr.nytt::after { animation: none; }
  .eksempel-vindu[open] { animation: none; }
}
@media (max-width: 900px) {
  .nyhet-rad { grid-template-columns: 1fr; }
}

/* ---------- PRISVINDUET (29.09.2026) ----------
   Samme vindu som eksemplet og lovskuffen (.vindu), med to priskort side
   om side. Gratisdelen er framhevet med en rolig skiferlinje - ikke gult,
   gult er forbeholdt knapper. */
.priser-vindu {
  width: min(62rem, calc(100% - 2rem));
  max-height: calc(100vh - 3rem);
  border-radius: 16px;
  overflow: auto;
  padding: 3rem 3rem 2.4rem;
}
.priser-vindu[open] { animation: vindu-inn .22s ease-out; }
.priser-vindu h2 {
  margin: 0 0 1rem;
  font: 500 clamp(1.7rem, 2.6vw, 2.2rem)/1.2 var(--antikva);
  color: #2B323A;
}
.priser-vindu p { color: #3A424C; line-height: 1.7; }
.priser-ingress { max-width: 62ch; }
.priser-gratis {
  margin: 1.4rem 0 1.8rem;
  padding: .9rem 1.2rem;
  border-left: 3px solid #3E4A5E;
  background: #F4F5F7;
  border-radius: 0 8px 8px 0;
  font-weight: 600;
  color: #2B323A !important;
}
.priser-rad {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.4rem;
}
.priskort {
  border: 1px solid #E1E5EA;
  border-radius: 14px;
  padding: 1.6rem 1.7rem;
  background: #FFFFFF;
  box-shadow: 0 4px 14px rgba(43, 50, 58, .05);
}
.priskort h3 {
  margin: 0 0 .8rem;
  font: 500 1.2rem/1.3 var(--antikva);
  color: #2B323A;
}
.priskort ul { margin: 1rem 0 0; padding-left: 1.1rem; }
.priskort li { margin-bottom: .6rem; line-height: 1.6; color: #3A424C; }
.priskort li b { color: #2B323A; }
.priser-sammenlikning { margin-top: 1.6rem; font-size: .95rem; }
.priser-kontakt { margin-top: .6rem; }
.priser-kontakt a { color: #3E4A5E; font-weight: 600; }
@media (prefers-reduced-motion: reduce) { .priser-vindu[open] { animation: none; } }
@media (max-width: 900px) {
  .priser-rad { grid-template-columns: 1fr; }
  .priser-vindu { padding: 3rem 1.4rem 2rem; }
}

/* ---------- KONTAKTVINDUET (29.09.2026) ----------
   Samme vindu som prisene, men lite: bare e-postadressen, som en moerk
   pille. Den hvite pillen i bunnteksten er fjernet til fordel for dette. */
.kontakt-vindu {
  width: min(30rem, calc(100% - 2rem));
  border-radius: 16px;
  padding: 3rem 2.6rem 2.6rem;
  text-align: center;
}
.kontakt-vindu[open] { animation: vindu-inn .22s ease-out; }
.kontakt-vindu h2 {
  margin: 0 0 1.4rem;
  font: 500 clamp(1.7rem, 2.6vw, 2.2rem)/1.2 var(--antikva);
  color: #2B323A;
}
.kontakt-vindu .kapittel-nr { justify-content: center; }
.kontakt-epost { margin: 0; }
.kontakt-epost a {
  display: inline-block;
  padding: .9rem 1.8rem;
  border-radius: 999px;
  background: #2B323A;
  color: #FFFFFF;
  font-size: 1.1rem;
  font-weight: 600;
  text-decoration: none;
  transition: background .15s ease;
}
.kontakt-epost a:hover { background: #3E4A5E; }
.kontakt-epost a:focus-visible { outline: 3px solid #3E4A5E; outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) { .kontakt-vindu[open] { animation: none; } }


/* ==========================================================
   OKTOBERLAGET (03.10.2026, på ønske)
   ==========================================================
   1 større tekst i heroen   2 egenskapene i skiferbokser
   3 sladdeboksen med personvernsymbol   4 «les mer» på skifer
   5 regnestykket i tre adskilte ledd. Funnfargene røres ikke. */

/* 1. Heroen */
.hero .lovmerke { font-size: 15px; }
.hero h1 .merkeord { font-size: 28px; }
.hero h1 .slagord { font-size: clamp(2.2rem, 3.4vw, 3rem); line-height: 1.15; }
.hero .hero-innhold > p:not(.lovmerke) { font-size: 20px; line-height: 1.7; max-width: 40ch; }

/* 2. Egenskapene som skiferbokser */
.egenskap-rad { gap: 24px; }
.egenskap-rad .egenskap {
  background: #2B323A;
  color: #E2E8F0;
  border: 0;
  border-radius: 16px;
  padding: 28px 28px 30px;
  box-shadow: 0 14px 34px rgba(43, 50, 58, .18);
}
.egenskap-rad .egenskap p { font-size: 18px; line-height: 1.65; color: #D5DCE4; margin: 0; }
.egenskap-rad .egenskap p b { display: block; font-size: 21px; color: #FFFFFF; margin-bottom: 8px; }
.egenskap-rad .egenskap .egenskap-ikon { color: #7DD3FC; display: inline-block; margin-bottom: 14px; }
.egenskap-rad .egenskap .egenskap-ikon svg { width: 28px; height: 28px; }

/* 3. Sladdeboksen - .kapittel.lys foran: den gamle regelen
   «.kapittel.lys .sladding p» ga ellers mørk tekst på mørk bunn. */
.kapittel.lys .sladding {
  background: #2B323A;
  color: #E2E8F0;
  border-radius: 16px;
  padding: 32px 36px;
  box-shadow: 0 14px 34px rgba(43, 50, 58, .18);
}
.kapittel.lys .sladding .sladding-hode { display: flex; align-items: center; gap: 16px; margin-bottom: 14px; }
.kapittel.lys .sladding .sladding-ikon {
  flex: 0 0 auto; display: grid; place-items: center;
  width: 60px; height: 60px; border-radius: 50%;
  background: rgba(125, 211, 252, .12); color: #7DD3FC;
  border: 1px solid rgba(125, 211, 252, .45);
}
.kapittel.lys .sladding p.sladding-tittel { margin: 0; font: 500 26px/1.25 var(--antikva); color: #FFFFFF; }
.kapittel.lys .sladding > p { font-size: 19px; line-height: 1.7; color: #D5DCE4; }
.kapittel.lys .sladding > p b { color: #FFFFFF; }

/* 4. «Les mer» på skifer */
.kapittel.lys .sladding details.les-mer { margin-top: 18px; }
.kapittel.lys .sladding details.les-mer summary { color: #BAE6FD; font-size: 17px; cursor: pointer; }
.kapittel.lys .sladding details.les-mer summary:focus-visible { outline: 3px solid #F4F5F7; outline-offset: 3px; }
.kapittel.lys .sladding details.les-mer[open] {
  background: #343C45;
  border-radius: 12px;
  padding: 20px 24px 8px;
}
.kapittel.lys .sladding details.les-mer p,
.kapittel.lys .sladding details.les-mer li { color: #D5DCE4; font-size: 17px; line-height: 1.7; }
.kapittel.lys .sladding details.les-mer b { color: #FFFFFF; }
.kapittel.lys .sladding details.les-mer h3 { color: #FFFFFF; }

/* 5. Regnestykket */
.regnestykke { display: grid; gap: 14px; margin: 0; }
.regnestykke .ledd {
  display: grid; grid-template-columns: 1fr auto; column-gap: 24px; align-items: baseline;
  background: #FFFFFF; border: 1px solid #D9DEE4; border-radius: 14px; padding: 18px 22px;
}
.regnestykke dt { font-size: 15px; letter-spacing: .08em; text-transform: uppercase; color: #4A5560; font-weight: 600; }
.regnestykke dd { margin: 0; }
.regnestykke .belop { grid-column: 2; grid-row: 1 / span 2; font-size: 26px; font-weight: 700; color: #2B323A; text-align: right; white-space: nowrap; }
.regnestykke .belop span { display: block; font-size: 13px; font-weight: 500; color: #4A5560; letter-spacing: .04em; }
.regnestykke .forklaring { grid-column: 1; font-size: 16px; color: #3A424C; margin-top: 4px; }
.regnestykke .ledd.verdi { background: #2B323A; border-color: #2B323A; }
.regnestykke .ledd.verdi dt { color: #BAE6FD; }
.regnestykke .ledd.verdi .belop { color: #FFFFFF; font-size: 32px; }
.regnestykke .ledd.verdi .forklaring { color: #D5DCE4; }
@media (max-width: 700px) {
  .regnestykke .ledd { grid-template-columns: 1fr; }
  .regnestykke .belop { grid-column: 1; grid-row: auto; text-align: left; margin-top: 6px; }
}

/* ---------- Sikkerhetsvakten ved sladdeboksen (03.10.2026) ---------- */
.sladding-rad {
  display: grid;
  grid-template-columns: minmax(0, 640px) 340px;
  column-gap: 56px;
  align-items: center;
  justify-content: start;
}
.vakt { width: 340px; height: 560px; }
@media (max-width: 900px) {
  .sladding-rad { grid-template-columns: 1fr; }
  .vakt { display: none; }
}

/* Sikkerhetsvakten på heroens flate (03.10.2026, på ønske) */
.vakt {
  border-radius: 16px;
  overflow: hidden;
  background:
    repeating-linear-gradient(163deg, rgba(255,255,255,.03) 0 1px, transparent 1px 5px),
    repeating-linear-gradient(73deg, rgba(0,0,0,.02) 0 1px, transparent 1px 11px),
    linear-gradient(163deg, #3E4751 0%, #343C45 52%, #2B323A 100%);
  box-shadow: 0 14px 34px rgba(43, 50, 58, .18);
}

/* Hodet ved sladdeboksen (03.10.2026): ramme med sladde-hode.html, bredere
   enn figuren var - hodet og skjermen står side om side. */
.sladding-rad { grid-template-columns: minmax(0, 600px) minmax(0, 560px); }
.vakt { width: 100%; height: 420px; border: 0; display: block; }

/* ---------- PRISVINDUET I MØRK SKIFER (03.10.2026, på ønske) ----------
   Samme flate som heroen, lys tekst og større skrift. dialog.priser-vindu
   foran: vindusreglene over har samme spesifisitet. */
:is(dialog.vindu.priser-vindu, .priser-side) {
  background:
    repeating-linear-gradient(163deg, rgba(255,255,255,.03) 0 1px, transparent 1px 5px),
    linear-gradient(163deg, #3E4751 0%, #343C45 52%, #2B323A 100%);
  color: #E2E8F0;
}
:is(dialog.priser-vindu, .priser-side) .kapittel-nr { color: #BAE6FD; }
:is(dialog.priser-vindu, .priser-side) h2 { color: #FFFFFF; font-size: clamp(2rem, 3vw, 2.6rem); }
:is(dialog.priser-vindu, .priser-side) p, :is(dialog.priser-vindu, .priser-side) li { color: #D5DCE4; font-size: 18px; line-height: 1.7; }
:is(dialog.priser-vindu, .priser-side) .priser-ingress { max-width: 66ch; }
:is(dialog.priser-vindu, .priser-side) p.priser-gratis {
  background: rgba(255,255,255,.06);
  border-left-color: #7DD3FC;
  color: #FFFFFF !important;
}
:is(dialog.priser-vindu, .priser-side) .priskort {
  background: rgba(20, 25, 31, .45);
  border-color: rgba(148, 163, 184, .3);
  box-shadow: 0 10px 28px rgba(0, 0, 0, .25);
}
:is(dialog.priser-vindu, .priser-side) .priskort h3 { color: #FFFFFF; font-size: 1.45rem; }
:is(dialog.priser-vindu, .priser-side) .priskort li b { color: #FFFFFF; }
:is(dialog.priser-vindu, .priser-side) .priser-sammenlikning { font-size: 16px; }
:is(dialog.priser-vindu, .priser-side) .priser-kontakt a { color: #BAE6FD; }
:is(dialog.priser-vindu, .priser-side) .vindu-lukk { background: rgba(255,255,255,.08); color: #FFFFFF; border-color: rgba(255,255,255,.3); }
:is(dialog.priser-vindu, .priser-side) .vindu-lukk:hover { background: rgba(255,255,255,.16); }
:is(dialog.priser-vindu, .priser-side) .vindu-lukk:focus-visible { outline-color: #F4F5F7; }

/* ---------- LOGG INN-VINDUET (03.10.2026) ----------
   Samme mørke skifer som prisvinduet. */
dialog.vindu.logginn-vindu {
  width: min(32rem, calc(100% - 2rem));
  border-radius: 16px;
  padding: 3rem 2.6rem 2.4rem;
  background:
    repeating-linear-gradient(163deg, rgba(255,255,255,.03) 0 1px, transparent 1px 5px),
    linear-gradient(163deg, #3E4751 0%, #343C45 52%, #2B323A 100%);
  color: #E2E8F0;
}
dialog.logginn-vindu .kapittel-nr { color: #BAE6FD; }
dialog.logginn-vindu h2 { margin: 0 0 .8rem; font: 500 2.2rem/1.2 var(--antikva); color: #FFFFFF; }
dialog.logginn-vindu h3 { margin: 0 0 .4rem; font: 500 1.35rem/1.3 var(--antikva); color: #FFFFFF; }
dialog.logginn-vindu p { color: #D5DCE4; font-size: 18px; line-height: 1.65; }
dialog.logginn-vindu .logginn-handling { margin: 1.2rem 0 0; }
dialog.logginn-vindu .logginn-ga,
dialog.logginn-vindu .logginn-kunde {
  display: inline-block; padding: .85rem 1.6rem; border-radius: 10px;
  font-weight: 700; font-size: 1.05rem; text-decoration: none;
}
dialog.logginn-vindu .logginn-ga { background: #F4F5F7; color: #1C1F23; }
dialog.logginn-vindu .logginn-kunde { background: #CA8A04; color: #1C1F23; }
dialog.logginn-vindu .logginn-ga:focus-visible,
dialog.logginn-vindu .logginn-kunde:focus-visible { outline: 3px solid #F4F5F7; outline-offset: 3px; }
dialog.logginn-vindu .logginn-snart {
  margin: 1.2rem 0 0; padding: .8rem 1rem; border-left: 3px solid #7DD3FC;
  background: rgba(255,255,255,.06); color: #FFFFFF; font-weight: 600;
}
dialog.logginn-vindu .logginn-skille { height: 1px; background: rgba(255,255,255,.18); margin: 2rem 0 1.6rem; }
dialog.logginn-vindu .vindu-lukk { background: rgba(255,255,255,.08); color: #FFFFFF; border-color: rgba(255,255,255,.3); }

/* ---------- REVISA ART. 4 (03.10.2026) ---------- */
dialog.art4-vindu { width: min(36rem, calc(100% - 2rem)); }
dialog.art4-vindu ul { margin: .4rem 0 1rem; padding-left: 1.2rem; }
dialog.art4-vindu li { color: #D5DCE4; font-size: 18px; line-height: 1.6; margin-bottom: .4rem; }
dialog.art4-vindu li b { color: #FFFFFF; }
:is(dialog.priser-vindu, .priser-side) .art4-kort { margin-top: 1.4rem; border-style: dashed; }
:is(dialog.priser-vindu, .priser-side) .art4-merke {
  display: inline-block; margin: 0 0 .6rem; padding: .2rem .7rem; border-radius: 999px;
  font-size: 13px !important; letter-spacing: .08em; text-transform: uppercase;
  background: rgba(125, 211, 252, .14); color: #BAE6FD !important;
}

/* «Om Revisa»-boksene i bunnteksten: større tekst (03.10.2026, på ønske). Var 13,4 px. */
footer .bunn-om-spalter > div p { font-size: 17px !important; line-height: 1.7 !important; }

/* ---------- Heroen: overskriften på én linje (03.10.2026, etter eksempelbilde) ----------
   Lett, rett skrift (ikke serif), bredere tekstspalte og bredere ingress.
   Én linje fra 1200 px; smalere skjermer får bryte, ellers går den utenfor. */
.hero .hero-innhold { max-width: 680px; width: 100%; }
.hero h1 .slagord {
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  font-weight: 300;
  font-size: clamp(2rem, 2.7vw, 2.6rem);
  letter-spacing: -.005em;
  line-height: 1.2;
}
@media (min-width: 1200px) { .hero h1 .slagord { white-space: nowrap; } }
.hero .hero-innhold > p:not(.lovmerke) {
  max-width: 62ch;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.6;
}

/* ==========================================================
   SINNET OG VEDTAKSDOKUMENTET I HEROEN (03.10.2026)
   ========================================================== */
.hero-bilde.sinn {
  position: relative;
  max-width: none;
  flex: 1 1 0;
  align-self: stretch;
  min-height: 520px;
  display: block;
}
.sinn-lerret { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
.sinn-dok {
  position: absolute; left: 2%; top: 22%; width: 44%; max-width: 300px;
  padding: 18px 20px 16px;
  border: 1px solid rgba(34, 211, 238, .35);
  border-radius: 10px;
  background: rgba(20, 25, 31, .55);
  -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
  box-shadow: 0 0 0 1px rgba(255,255,255,.03), 0 18px 40px rgba(0,0,0,.35), 0 0 30px rgba(34,211,238,.08);
  transform: perspective(900px) rotateY(10deg);
  transform-origin: left center;
  color: #E2E8F0;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  pointer-events: none;
}
.sd-hode { display: flex; justify-content: space-between; align-items: baseline;
  padding-bottom: 10px; border-bottom: 1px solid rgba(34,211,238,.3); }
.sd-tittel { font: 600 15px/1 ui-monospace, Consolas, monospace; letter-spacing: .32em; color: #22D3EE; }
.sd-status { font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: #94A3B8; display: inline-flex; align-items: center; gap: 6px; }
.sd-status i { width: 6px; height: 6px; border-radius: 50%; background: #22D3EE; box-shadow: 0 0 8px #22D3EE; animation: sd-blink 1.4s ease-in-out infinite; }
.sd-meta { display: flex; justify-content: space-between; gap: 10px; margin: 10px 0 12px; font-size: 11px; color: #94A3B8; letter-spacing: .04em; }
.sd-sladd { display: inline-block; width: 64px; height: 8px; border-radius: 2px; background: rgba(226,232,240,.75); vertical-align: middle; margin-left: 4px; }
.sd-sladd.sd-kort { width: 40px; }
.sd-linjer { display: grid; gap: 8px; margin-bottom: 14px; }
.sd-linjer i { display: block; height: 4px; border-radius: 2px; width: var(--b);
  background: linear-gradient(90deg, rgba(226,232,240,.55), rgba(226,232,240,.25));
  transform-origin: left; transform: scaleX(0); animation: sd-tegn .7s cubic-bezier(.2,.7,.2,1) var(--f) forwards; }
.sd-sjekk { list-style: none; margin: 0; padding: 10px 0 0; border-top: 1px solid rgba(148,163,184,.2); display: grid; gap: 7px; }
.sd-sjekk li { display: flex; align-items: center; gap: 8px; font-size: 12.5px; color: #E2E8F0; opacity: 0;
  animation: sd-inn .5s ease var(--f) forwards; }
.sd-sjekk em { font-style: normal; color: #94A3B8; margin-left: auto; font-size: 11px; }
.sd-prikk { width: 7px; height: 7px; border-radius: 50%; background: #22D3EE; box-shadow: 0 0 8px rgba(34,211,238,.8); animation: sd-blink 1.1s ease-in-out infinite; }
.sd-sjekk li:nth-child(2) .sd-prikk { animation-delay: .35s; }
.sd-sjekk li:nth-child(3) .sd-prikk { animation-delay: .7s; }
@keyframes sd-tegn { to { transform: scaleX(1); } }
@keyframes sd-inn { to { opacity: 1; } }
@keyframes sd-blink { 0%, 100% { opacity: 1; } 50% { opacity: .25; } }
.sinn-knapp { position: absolute; right: 8px; bottom: 8px; }
/* Pause og «reduser bevegelse»: dokumentet står ferdig og stille. */
.sinn-pauset .sinn-dok *, .sinn-rolig .sinn-dok * { animation: none !important; transform: none !important; opacity: 1 !important; }
@media (prefers-reduced-motion: reduce) {
  .sinn-dok * { animation: none !important; transform: none !important; opacity: 1 !important; }
}
@media (max-width: 900px) {
  .hero-bilde.sinn { min-height: 380px; }
  .sinn-dok { width: 52%; top: 12%; }
}

/* ==========================================================
   MØRK SIDE (PRØVE 03.10.2026, etter brief)
   ==========================================================
   Hele siden i mørk skifer etter heroen: ingen hvite flater. Kortene i
   glass med uskarp bakgrunn og cyan kant ved hover, «Bli pilotkunde» som
   mørke knapper med cyan kant og kontrollert glød. Tallene 9 og 7 teller
   opp i side.js. Fjernes ved å slette dette laget.
   Fargene er nettsidens skifer (som heroen); aksent cyan #22D3EE. */
html body { background: #2B323A; color: #E2E8F0; }
body .fakta.lys,
body .kapittel.lys,
body footer.bunn {
  background:
    repeating-linear-gradient(163deg, rgba(255,255,255,.025) 0 1px, transparent 1px 5px),
    linear-gradient(180deg, #2B323A 0%, #262C33 100%) !important;
  color: #E2E8F0;
}
body .kapittel.lys h2, body .kapittel.lys h3, body .fakta.lys h2,
body footer.bunn h2, body footer.bunn h3 { color: #FFFFFF !important; }
body .kapittel.lys p, body .kapittel.lys li, body .kapittel.lys dd,
body .fakta.lys p, body footer.bunn p { color: #D5DCE4 !important; }
body .kapittel.lys p b, body .kapittel.lys li b { color: #FFFFFF !important; }
body .kapittel.lys .kapittel-nr, body footer.bunn .kapittel-nr { color: #BAE6FD !important; }
body .kapittel.lys .kapittel-nr::before { background: rgba(186,230,253,.5) !important; }
body .kapittel.lys a:not([class*="knapp"]):not(.vindu-apne),
body footer.bunn a { color: #BAE6FD !important; }
body .kapittel.lys hr, body .kapittel.lys .skille { border-color: rgba(148,163,184,.25) !important; }

/* Glasskort: faktaraden, egenskapene, sikkerhetsrutene, regnestykket */
body .fakta.lys .fakta-punkt,
body .egenskap-rad .egenskap,
body .kapittel.lys .sikkerhet-rutenett > div,
body .regnestykke .ledd {
  background: rgba(255, 255, 255, .045) !important;
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
  border: 1px solid rgba(148, 163, 184, .22) !important;
  border-radius: 16px;
  box-shadow: 0 14px 34px rgba(0, 0, 0, .22) !important;
  transition: border-color .2s ease, box-shadow .2s ease;
}
body .kapittel.lys .sikkerhet-rutenett > div { padding: 22px 24px; }
body .fakta.lys .fakta-punkt:hover,
body .egenskap-rad .egenskap:hover,
body .kapittel.lys .sikkerhet-rutenett > div:hover,
body .regnestykke .ledd:hover {
  border-color: rgba(34, 211, 238, .75) !important;
  box-shadow: 0 0 0 1px rgba(34,211,238,.35), 0 0 26px rgba(34,211,238,.18), 0 14px 34px rgba(0,0,0,.25) !important;
}
body .fakta.lys .fakta-tall { color: #FFFFFF !important; }
body .regnestykke dt { color: #BAE6FD !important; }
body .regnestykke .belop { color: #FFFFFF !important; }
body .regnestykke .belop span, body .regnestykke .forklaring { color: #CBD5E1 !important; }
body .regnestykke .ledd.verdi { background: rgba(34, 211, 238, .08) !important; border-color: rgba(34,211,238,.45) !important; }

/* Knapper: «Bli pilotkunde» (alle tre) og «Se eksempel» */
body .pilot-knapp, body .pilot-knapp-hero, body .banner-pilot, body .vindu-apne {
  background: rgba(20, 25, 31, .55) !important;
  color: #FFFFFF !important;
  border: 1px solid rgba(34, 211, 238, .7) !important;
  box-shadow: none !important;
  transition: box-shadow .25s ease, background .25s ease;
}
body .pilot-knapp:hover, body .pilot-knapp-hero:hover, body .banner-pilot:hover, body .vindu-apne:hover {
  background: rgba(20, 25, 31, .7) !important;
  color: #FFFFFF !important;
  box-shadow: 0 0 0 1px rgba(34,211,238,.5), 0 0 22px rgba(34,211,238,.35), inset 0 0 18px rgba(34,211,238,.12) !important;
}
body .pilot-knapp:focus-visible, body .pilot-knapp-hero:focus-visible,
body .banner-pilot:focus-visible, body .vindu-apne:focus-visible { outline: 3px solid #F4F5F7 !important; outline-offset: 3px; }

/* Kontaktvinduet i samme mørke som de andre vinduene */
dialog.vindu.kontakt-vindu {
  background: linear-gradient(163deg, #3E4751 0%, #343C45 52%, #2B323A 100%);
  color: #E2E8F0;
}
dialog.kontakt-vindu h2 { color: #FFFFFF; }
dialog.kontakt-vindu .kapittel-nr { color: #BAE6FD; }
dialog.kontakt-vindu .kontakt-epost a { background: transparent; border: 1px solid rgba(34,211,238,.7); }

/* Figuren ved sladdeboksen er fjernet (03.10.2026): boksen står alene. */
.sladding-rad { grid-template-columns: minmax(0, 1fr); }
.kapittel.lys .sladding-rad .sladding { max-width: none !important; }

/* ---------- Punktvinduene og «Se punktene» på faktakortene (03.10.2026) ---------- */
.fakta-punkt .fakta-lenke {
  display: inline-block; margin-top: 12px; padding: 6px 0;
  font-weight: 600; color: #BAE6FD !important; text-decoration: none;
  border-bottom: 1px solid rgba(186, 230, 253, .45);
}
.fakta-punkt .fakta-lenke:hover { color: #FFFFFF !important; border-bottom-color: #22D3EE; }
.fakta-punkt .fakta-lenke:focus-visible { outline: 3px solid #F4F5F7; outline-offset: 3px; }
dialog.punkt-vindu { width: min(40rem, calc(100% - 2rem)); max-height: calc(100vh - 3rem); overflow: auto; }
dialog.punkt-vindu h3 { margin-top: 1.6rem; }
dialog.punkt-vindu .punktliste { list-style: none; margin: .6rem 0 0; padding: 0; display: grid; gap: 6px; }
dialog.punkt-vindu .punktliste li {
  display: flex; align-items: baseline; gap: 12px; color: #E2E8F0; font-size: 17px; line-height: 1.5;
  padding: 8px 12px; border-radius: 8px; background: rgba(255,255,255,.04);
}
dialog.punkt-vindu .pl-n { flex: 0 0 1.8em; text-align: right; font-weight: 700; color: #22D3EE; }
dialog.punkt-vindu .punktliste.valgfri li { background: transparent; border: 1px dashed rgba(148,163,184,.3); }
dialog.punkt-vindu .punktliste.valgfri .pl-n { color: #94A3B8; }

/* ==========================================================
   PILOT I TO SPALTER (03.10.2026, etter brief)
   ========================================================== */
.seksjon .pilot-boks.pilot-ny {
  max-width: 1180px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  column-gap: 56px;
  align-items: center;
  text-align: left;
}
.pilot-ny .pilot-etikett { color: #06B6D4 !important; letter-spacing: .22em; text-align: left; }
.seksjon .pilot-ny h2 {
  color: #FFFFFF !important;
  font-size: clamp(2.4rem, 3.6vw, 3.2rem);
  margin: .3rem 0 1rem;
  text-align: left;
}
.pilot-ny .pilot-ingress { color: #94A3B8 !important; font-size: 19px; line-height: 1.7; max-width: 52ch; margin: 0; text-align: left; }
.pilot-ny .pilot-kort {
  list-style: none; margin: 1.6rem 0 2rem; padding: 0;
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px;
}
.pilot-ny .pilot-kort li {
  padding: 16px 16px 14px;
  border-radius: 14px;
  background: rgba(255, 255, 255, .03);
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
  border: 1px solid rgba(148, 163, 184, .2);
  display: flex; flex-direction: column; gap: 4px;
}
.pilot-ny .pilot-kort b { color: #FFFFFF; font-size: 19px; }
.pilot-ny .pilot-kort span { color: #94A3B8; font-size: 15px; line-height: 1.45; }
.pilot-ny .pilot-hode { width: 100%; height: 520px; border: 0; display: block; background: transparent; }

/* Knappen: kapsel med cyan kant; ved hover gløder kanten, og et svakt
   rutenett toner inn i bakgrunnen. */
body .pilot-ny .pilot-knapp-ny {
  position: relative; overflow: hidden; display: inline-block;
  border-radius: 999px !important; padding: 16px 34px !important;
  isolation: isolate;
}
body .pilot-ny .pilot-knapp-ny::before {
  content: ""; position: absolute; inset: 0; z-index: -1; opacity: 0;
  background-image:
    linear-gradient(rgba(34,211,238,.18) 1px, transparent 1px),
    linear-gradient(90deg, rgba(34,211,238,.18) 1px, transparent 1px);
  background-size: 12px 12px;
  transition: opacity .35s ease;
}
body .pilot-ny .pilot-knapp-ny:hover::before { opacity: 1; animation: pilot-rutenett 6s linear infinite; }
body .pilot-ny .pilot-knapp-ny:hover {
  border-color: #22D3EE !important;
  box-shadow: 0 0 0 1px rgba(34,211,238,.7), 0 0 28px rgba(34,211,238,.45), 0 0 60px rgba(34,211,238,.18) !important;
}
@keyframes pilot-rutenett { to { background-position: 0 24px, 24px 0; } }
@media (prefers-reduced-motion: reduce) { body .pilot-ny .pilot-knapp-ny:hover::before { animation: none; } }
@media (max-width: 900px) {
  .seksjon .pilot-boks.pilot-ny { grid-template-columns: 1fr; }
  .pilot-ny .pilot-kort { grid-template-columns: 1fr; }
  .pilot-ny .pilot-hode { height: 360px; }
}

/* Fiktivt saksnummer og dato i heroens vedtak, og det nye hodet i pilot-delen (03.10.2026) */
.sd-verdi { font: 600 11.5px/1 ui-monospace, Consolas, monospace; color: #E2E8F0; letter-spacing: .04em; margin-left: 4px; }
.pilot-ny .pilot-hode.sinn { position: relative; height: 520px; }

/* Tilbakemeldingen 05.10.2026: AAP-avgrensningen i heroen, og sladdeadvarselen i egen boks */
.hero-dekning { margin: .2rem 0 1.4rem; font-size: 15px; color: #94A3B8; letter-spacing: .02em; }
.hero-dekning::before { content: ""; display: inline-block; width: 6px; height: 6px; border-radius: 50%;
  background: #22D3EE; margin-right: 8px; vertical-align: middle; }
.sladding .sladding-varsel { margin: 1rem 0; padding: 12px 16px; border-radius: 10px;
  background: rgba(202, 138, 4, .12); border: 1px solid rgba(202, 138, 4, .55); color: #FDE68A !important; }
.sladding .sladding-varsel b { color: #FEF3C7; }

/* ==========================================================
   «KAOS SOM BLIR ORDEN» I HEROEN (05.10.2026)
   Erstatter hodet. Myke kanter mot bakgrunnen, ingen boks.
   ========================================================== */
.hero-bilde.orden { position: relative; max-width: none; flex: 1 1 0; align-self: stretch; min-height: 520px; display: block; }
.orden-lerret { position: absolute; inset: 0; width: 100%; height: 100%; display: block;
  -webkit-mask-image: radial-gradient(ellipse 75% 75% at 50% 50%, #000 82%, transparent 100%);
          mask-image: radial-gradient(ellipse 75% 75% at 50% 50%, #000 82%, transparent 100%); }
.orden-knapp { position: absolute; right: 8px; bottom: 8px; }
.orden-knapp[hidden] { display: none !important; }
@media (max-width: 900px) { .hero-bilde.orden { min-height: 380px; } }

/* Pilot-delen uten hode: én spalte. */
.seksjon .pilot-boks.pilot-ny.pilot-uten-hode { grid-template-columns: minmax(0, 1fr); max-width: 900px; }

/* PRISVINDUET (05.10.2026, etter tilbakemelding) */
.priser-pilot { margin: 0 0 1rem; padding: 12px 16px; border-radius: 10px;
  background: rgba(34,211,238,.1); border: 1px solid rgba(34,211,238,.45); color: #E2E8F0; }
.priskort-for { margin: -.2rem 0 .8rem; color: #94A3B8; font-size: 15px; }
:is(dialog, .priser-side) .priskort .pris-stor { margin: .2rem 0 .3rem !important; font-size: 2.6rem !important; font-weight: 600 !important; color: #FFFFFF !important; line-height: 1.1 !important; }
:is(dialog, .priser-side) .priskort .pris-stor span { font-size: 15px !important; font-weight: 400 !important; display: block; margin-top: .2rem; font-size: 15px; font-weight: 400; color: #94A3B8; }
.pris-detalj { color: #CBD5E1; font-size: 16px; line-height: 1.5; }
.priskort .pris-knapp { display: inline-block; margin-top: 1rem; }
.pris-velg { width: 100%; margin: 1.6rem 0 .4rem; border-collapse: collapse; font-size: 16px; color: #E2E8F0; }
.pris-velg caption { text-align: left; font-weight: 600; margin-bottom: .5rem; color: #FFFFFF; }
.pris-velg th, .pris-velg td { padding: 8px 10px; border-bottom: 1px solid rgba(148,163,184,.25); text-align: left; }
.pris-velg thead th { color: #94A3B8; font-weight: 500; font-size: 14px; }
.pris-velg b { color: #22D3EE; }
.pris-velg-tekst { color: #CBD5E1; font-size: 16px; margin: 0 0 1.2rem; }
.priser-sammenlikning { font-size: 16px !important; color: #E2E8F0 !important; }

/* RETTSKILDER (05.10.2026): lenkene var 15 px, smale og lysegrå. Mørkere,
   større og i vanlig bredde, med ↗ som viser at de åpnes i ny fane. */
.kildeliste a { font: 400 17px/1.55 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif !important;
  color: #1E293B !important; }
.kildeliste a::after { content: " ↗"; color: #64748B; font-size: .85em; }
.kildeliste a:hover { color: #0E7490 !important; }

/* ==========================================================
   HEROEN, BOLK D (05.10.2026, etter tilbakemelding)
   ========================================================== */
.hero .hero-maalgruppe { margin: 1.2rem 0 .6rem; font: 600 13px/1.2 system-ui, -apple-system, "Segoe UI", sans-serif;
  letter-spacing: .18em; text-transform: uppercase; color: #22D3EE; }
/* Overskriften: serif i medium vekt i stedet for den tynne skriften, og på
   flere linjer - den er for lang for én. */
.hero h1 .slagord { font: 500 clamp(2rem, 3.6vw, 3.1rem)/1.15 "Source Serif 4", Georgia, serif !important;
  white-space: normal !important; color: #FFFFFF; letter-spacing: 0 !important; max-width: 22ch; }
.hero .hero-underlinje { margin: .4rem 0 1rem; font-size: 19px; color: #E2E8F0; }
.hero .hero-dekning { font-size: 15px; color: #94A3B8; }
.hero .hero-dekning::before { display: none; }
.hero .hero-dekning span { display: inline-block; margin-right: 8px; padding: 3px 10px; border-radius: 999px;
  border: 1px solid rgba(34,211,238,.6); color: #E2E8F0; background: rgba(34,211,238,.08); }
.hero-knapper { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; margin-top: .4rem; }
/* Hovedknappen er den lyseste på siden. */
body .hero .pilot-knapp-hero { background: #22D3EE !important; color: #0B1220 !important;
  border-color: #22D3EE !important; }
body .hero .pilot-knapp-hero:hover { background: #67E8F9 !important; }
.hero .hero-demo { padding: 12px 20px; border-radius: 8px; border: 1px solid #CBD5E1; color: #E2E8F0;
  text-decoration: none; font-weight: 500; }
.hero .hero-demo:hover { border-color: #22D3EE; color: #FFFFFF; }
.hero .hero-tillit { margin-top: 1.2rem; font-size: 14px; color: #94A3B8; line-height: 1.6; max-width: 60ch; }
/* «Logg inn» er for kunder: bare kant, ikke den lyseste knappen. */
body .banner nav .logg-inn { background: transparent !important; color: #E2E8F0 !important;
  border: 1px solid #CBD5E1 !important; }
/* «Spill av igjen» rett under figuren, ikke nede i hjørnet. */
.hero .orden-knapp { right: auto; left: 50%; transform: translateX(-50%); bottom: 14%; }

/* Kortere overskrift (05.10.2026): «Etterprøvbar gjennomgang av Nav-vedtak»,
   og ca. 15 % mindre skrift, så den står på to linjer. */
.hero h1 .slagord { font-size: clamp(1.7rem, 2.6vw, 2.4rem) !important; max-width: none !important; }

/* PRISSIDEN (05.10.2026): samme innhold og mørke flate som prisvinduet,
   som en egen side med adresse (priser.html). */
.priser-side-ramme { padding: 3rem 16px 4rem; background: #2B323A; }
.priser-side { max-width: 64rem; margin: 0 auto; padding: 2.6rem 2.4rem 2.4rem; border-radius: 16px; }
.priser-side h1 { color: #FFFFFF; font: 500 clamp(2rem, 3vw, 2.6rem)/1.2 var(--antikva); margin: .2rem 0 1rem; }
@media (max-width: 700px) { .priser-side { padding: 1.6rem 1.1rem; } }

/* VANLIGE SPØRSMÅL (05.10.2026) */
.seksjon.faq { background: #2B323A; padding: 4rem 16px; }
.faq-indre { max-width: 52rem; margin: 0 auto; }
.faq .kapittel-nr { color: #22D3EE; }
.faq h2 { color: #FFFFFF; margin: .3rem 0 1.4rem; }
.faq-rad { border-bottom: 1px solid rgba(148,163,184,.25); }
.faq-rad summary { cursor: pointer; padding: 1rem 2rem 1rem 0; color: #FFFFFF; font-size: 18px;
  font-weight: 500; list-style: none; position: relative; }
.faq-rad summary::-webkit-details-marker { display: none; }
.faq-rad summary::after { content: "+"; position: absolute; right: 4px; top: .8rem; color: #22D3EE; font-size: 1.4rem; }
.faq-rad[open] summary::after { content: "–"; }
.faq-rad summary:focus-visible { outline: 3px solid #F4F5F7; outline-offset: 2px; }
.faq-rad p { margin: 0 0 1.1rem; color: #D5DCE4; font-size: 17px; line-height: 1.7; max-width: 70ch; }
.faq-rad a { color: #67E8F9; }

/* SPØRSMÅL I KOLONNER (05.10.2026, på ønske): tre på brede skjermer, to på
   nettbrett, én på mobil. Overskriften går over alle kolonnene. */
.faq-indre { max-width: 76rem; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr));
  column-gap: 2.4rem; align-items: start; }
.faq-indre > .kapittel-nr, .faq-indre > h2 { grid-column: 1 / -1; }
.faq-rad summary { font-size: 17px; }
@media (max-width: 1100px) { .faq-indre { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 700px)  { .faq-indre { grid-template-columns: minmax(0, 1fr); } }

/* ==========================================================
   DYBDE I HEROEN (06.10.2026, etter tilbakemelding)
   Bakgrunnslys, glassmodul rundt figuren, chips og glødende knapp.
   ========================================================== */
/* Store, svake lysflater bak tekst og figur gir romfølelse. */
.hero { position: relative; isolation: isolate; }
.hero::before { content: ""; position: absolute; inset: -80px -10vw -40px; z-index: -1; pointer-events: none;
  background:
    radial-gradient(ellipse 45% 55% at 78% 45%, rgba(34,211,238,.10), transparent 70%),
    radial-gradient(ellipse 40% 50% at 12% 30%, rgba(14,116,144,.14), transparent 70%),
    radial-gradient(ellipse 30% 35% at 60% 95%, rgba(251,146,60,.06), transparent 70%); }

/* Figuren i en «frostet glass»-modul. */
.hero .hero-bilde.orden { border-radius: 20px; overflow: hidden; margin: 12px 0;
  background: linear-gradient(160deg, rgba(30,41,59,.55), rgba(15,23,42,.40));
  -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
  border: 1px solid rgba(148,163,184,.18);
  box-shadow: 0 30px 60px -20px rgba(0,0,0,.65), 0 0 0 1px rgba(255,255,255,.03) inset,
              0 1px 0 rgba(255,255,255,.08) inset; }
.hero .orden-lerret { -webkit-mask-image: none; mask-image: none; }

/* «Spill av igjen»: fylt knapp som inviterer til klikk. */
.hero .orden-knapp { bottom: 18px; background: rgba(34,211,238,.14) !important; color: #E0F7FB !important;
  border: 1px solid rgba(34,211,238,.55) !important; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
  box-shadow: 0 8px 20px -8px rgba(0,0,0,.6); }
.hero .orden-knapp:hover { background: rgba(34,211,238,.26) !important; }

/* «Dekker i dag» som egen modul med chips. */
.hero-dekning-modul { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: .4rem 0 1.4rem;
  padding: 14px 16px; border-radius: 14px; max-width: 560px;
  background: rgba(30,41,59,.45); border: 1px solid rgba(148,163,184,.18);
  box-shadow: 0 12px 30px -16px rgba(0,0,0,.6); }
.dekning-tittel { font: 600 12px/1.2 system-ui, -apple-system, "Segoe UI", sans-serif; letter-spacing: .14em;
  text-transform: uppercase; color: #94A3B8; margin-right: 2px; }
.dekning-snart { margin-left: 10px; }
.hero-dekning-modul .chip { display: inline-block; padding: 4px 12px; border-radius: 999px; font: 500 14px/1.3 system-ui, -apple-system, "Segoe UI", sans-serif; letter-spacing: 0;
  color: #CBD5E1; background: rgba(148,163,184,.08); border: 1px dashed rgba(148,163,184,.4); }
.hero-dekning-modul .chip-aktiv { color: #ECFEFF; background: rgba(34,211,238,.14);
  border: 1px solid rgba(34,211,238,.7); box-shadow: 0 0 14px rgba(34,211,238,.25); }
@media (max-width: 600px) { .dekning-snart { margin-left: 0; flex-basis: 100%; margin-top: 4px; } }

/* Hovedknappen gløder svakt i egen farge. */
body .hero .pilot-knapp-hero { box-shadow: 0 10px 28px -6px rgba(34,211,238,.45), 0 0 0 1px rgba(34,211,238,.4) !important; }
body .hero .pilot-knapp-hero:hover { box-shadow: 0 14px 34px -6px rgba(34,211,238,.6) !important; }

/* ==========================================================
   LESBARHET (06.10.2026, etter tilbakemelding)
   Lysere brødtekst, tydeligere sekundærknapp og kapittelnumre.
   ========================================================== */
body .hero .hero-underlinje, body .hero .hero-innhold p { color: #F1F5F9 !important; }
body .hero .hero-tillit { color: #CBD5E1 !important; }
body .kapittel.lys p, body .kapittel.lys li, body .kapittel.lys dd,
body .fakta.lys p, body footer.bunn p,
body .kapittel.lys .sikkerhet-rutenett p { color: #EEF2F6 !important; }

/* «Be om demonstrasjon»: halvgjennomsiktig fyll og tydelig kant. */
body .hero .hero-demo { background: rgba(255,255,255,.08); border: 1.5px solid rgba(226,232,240,.75);
  color: #FFFFFF; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
body .hero .hero-demo:hover { background: rgba(34,211,238,.14); border-color: #22D3EE; }

/* Kapittelnumre («02 — Lovendringen 2027»): fetere og lysere. */
body .kapittel-nr, body .kapittel.lys .kapittel-nr, body footer.bunn .kapittel-nr {
  color: #67E8F9 !important; font-weight: 700 !important; font-size: 14px !important; letter-spacing: .16em !important; opacity: 1 !important; }
body .kapittel.lys .kapittel-nr::before, body .kapittel-nr::before { background: rgba(103,232,249,.8) !important; }

/* ==========================================================
   STILREN HERO (06.10.2026, etter tilbakemelding)
   Mindre tekst, mer luft, demo-knappen som ren tekstlenke.
   ========================================================== */
.hero { column-gap: 64px !important; gap: 64px; }
body .hero .hero-innhold .hero-kort { font-size: 19px !important; line-height: 1.7; color: #F1F5F9 !important;
  max-width: 46ch; margin: 1.2rem 0 0; }
.hero-kort .hero-dekker { display: block; margin-top: .8rem; font-size: 16px; color: #A5F3FC; }
.hero .hero-knapper { margin-top: 2.6rem !important; margin-bottom: 1rem; gap: 28px; }
body .hero .hero-demo { background: none !important; border: 0 !important; padding: 12px 2px !important;
  color: #FFFFFF !important; text-decoration: underline; text-decoration-color: rgba(255,255,255,.35);
  text-underline-offset: 6px; -webkit-backdrop-filter: none; backdrop-filter: none; }
body .hero .hero-demo:hover { text-decoration-color: #22D3EE; color: #FFFFFF !important; background: none !important; }
body .hero .hero-demo span { display: inline-block; transition: transform .2s; }
body .hero .hero-demo:hover span { transform: translateX(4px); }
@media (prefers-reduced-motion: reduce) { body .hero .hero-demo span { transition: none; } }
