/* Bli anbefalt – designsystem
   Konsept: «svaret turisten får». Snøhvit flate, polarnatt-blått blekk, og kobber (lyset i et rorbuvindu)
   brukt bare der en bedrift blir anbefalt. Monospace for alt som er målt. */
/* Skrifttyper ligger på vår egen side (hentes med hent_skrifter.ps1). */
@font-face{font-family:"Bricolage Grotesque";font-style:normal;font-weight:500;font-display:swap;src:url("fonts/bricolage-grotesque-latin-500-normal.woff2") format("woff2")}
@font-face{font-family:"Bricolage Grotesque";font-style:normal;font-weight:700;font-display:swap;src:url("fonts/bricolage-grotesque-latin-700-normal.woff2") format("woff2")}
@font-face{font-family:"Bricolage Grotesque";font-style:normal;font-weight:800;font-display:swap;src:url("fonts/bricolage-grotesque-latin-800-normal.woff2") format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/ibm-plex-sans-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:500;font-display:swap;src:url("fonts/ibm-plex-sans-latin-500-normal.woff2") format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:600;font-display:swap;src:url("fonts/ibm-plex-sans-latin-600-normal.woff2") format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/ibm-plex-mono-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:500;font-display:swap;src:url("fonts/ibm-plex-mono-latin-500-normal.woff2") format("woff2")}
:root{
  --bg:#f3f5f8; --surface:#ffffff; --sunk:#e9edf2; --ink:#0d1a2a; --ink-2:#2a3a4d; --muted:#5d6c7e; --line:#d6dde6;
  --fjord:#1c4a82; --fjord-2:#2c63a8; --fjord-soft:#e2eaf5;
  --copper:#b05a22; --copper-soft:#f6e6d9; --copper-ink:#7a3a10;
  --up:#1a7448; --down:#b03e2c;
  --chat-bg:#0f1c2d; --chat-ink:#e8eef6; --chat-muted:#8fa2b8; --chat-user:#1c4a82; --chat-line:#22344a;
  --f-display:"Bricolage Grotesque",ui-sans-serif,system-ui,sans-serif;
  --f-body:"IBM Plex Sans",ui-sans-serif,system-ui,sans-serif;
  --f-mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;
  --r:14px; --r-sm:8px;
  --shadow:0 1px 2px rgba(13,26,42,.06),0 12px 32px -12px rgba(13,26,42,.18);
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#09121d; --surface:#101c2b; --sunk:#0c1724; --ink:#e9eff6; --ink-2:#c3cfdc; --muted:#8c9cb0; --line:#22324a;
  --fjord:#86b4ec; --fjord-2:#a9caf3; --fjord-soft:#16263b;
  --copper:#e79a5f; --copper-soft:#3a2416; --copper-ink:#f3c39c;
  --up:#5cc98f; --down:#ef8a76;
  --chat-bg:#0d1828; --chat-ink:#e8eef6; --chat-muted:#8fa2b8; --chat-user:#244f86; --chat-line:#1f3048;
  --shadow:0 1px 2px rgba(0,0,0,.3),0 16px 40px -16px rgba(0,0,0,.6); color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#09121d; --surface:#101c2b; --sunk:#0c1724; --ink:#e9eff6; --ink-2:#c3cfdc; --muted:#8c9cb0; --line:#22324a;
  --fjord:#86b4ec; --fjord-2:#a9caf3; --fjord-soft:#16263b;
  --copper:#e79a5f; --copper-soft:#3a2416; --copper-ink:#f3c39c;
  --up:#5cc98f; --down:#ef8a76;
  --chat-bg:#0d1828; --chat-ink:#e8eef6; --chat-muted:#8fa2b8; --chat-user:#244f86; --chat-line:#1f3048;
  --shadow:0 1px 2px rgba(0,0,0,.3),0 16px 40px -16px rgba(0,0,0,.6); color-scheme:dark}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:var(--fjord)}
img{max-width:100%}
[hidden]{display:none!important}
:focus-visible{outline:2px solid var(--fjord-2);outline-offset:3px;border-radius:4px}

/* ---------- ramme */
.side{max-width:1120px;margin:0 auto;padding-inline:clamp(16px,4vw,40px)}
.smal{max-width:760px}
.topp{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:22px}
.merke{display:inline-flex;align-items:center;gap:10px;font-family:var(--f-display);font-weight:800;font-size:21px;letter-spacing:-.02em;color:var(--ink);text-decoration:none}
.merke i{width:22px;height:22px;border-radius:50% 50% 50% 4px;background:var(--copper);display:block;position:relative}
.merke i::after{content:"";position:absolute;inset:6px;border-radius:50%;background:var(--bg)}
.meny{display:flex;flex-wrap:wrap;gap:4px 20px;font-size:14px}
.meny a{color:var(--muted);text-decoration:none}
.meny a:hover{color:var(--ink)}
@media (max-width:640px){.meny{display:none}}
.blokk{padding-block:clamp(56px,9vw,104px);display:grid;grid-template-columns:minmax(0,1fr);gap:28px}
.blokk+.blokk{border-top:1px solid var(--line)}

/* ---------- typografi */
.etikett{font-family:var(--f-mono);font-size:12px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);display:flex;flex-wrap:wrap;gap:6px 14px;margin:0}
.etikett b{color:var(--copper);font-weight:500}
h1,h2,h3{font-family:var(--f-display);letter-spacing:-.025em;text-wrap:balance;margin:0;color:var(--ink)}
h1{font-size:clamp(38px,5.4vw,64px);line-height:.98;font-weight:800}
h2{font-size:clamp(30px,4vw,46px);line-height:1.04;font-weight:700}
h3{font-size:20px;line-height:1.2;font-weight:700;letter-spacing:-.01em}
.ingress{font-size:clamp(17px,1.6vw,20px);color:var(--ink-2);max-width:56ch;margin:0}
.liten{font-size:14px;color:var(--muted);margin:0}
.hode{display:grid;gap:14px;max-width:760px}
mark.nevnt{background:var(--copper-soft);color:var(--copper-ink);padding:0 .22em;border-radius:4px;font-weight:600}

/* ---------- knapper */
.knapper{display:flex;flex-wrap:wrap;gap:10px}
.knapp{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-weight:600;font-size:15px;padding:12px 20px;border-radius:999px;border:1px solid transparent;cursor:pointer;text-decoration:none;transition:transform .15s ease,background .15s ease}
.knapp.hoved{background:var(--ink);color:var(--bg)}
.knapp.hoved:hover{transform:translateY(-1px)}
.knapp.rolig{background:transparent;color:var(--ink);border-color:var(--line)}
.knapp.rolig:hover{border-color:var(--ink)}
.knapp[disabled],.knapp.av{background:var(--sunk);color:var(--muted);border-color:transparent;cursor:not-allowed;transform:none}

/* ---------- hero med AI-samtale */
.hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:center;padding-block:clamp(28px,6vw,72px) clamp(56px,8vw,96px)}
.hero .tekst{display:grid;gap:22px}
@media (max-width:880px){.hero{grid-template-columns:1fr}}
.chat{border:1px solid var(--chat-line);background:var(--chat-bg);color:var(--chat-ink);border-radius:20px;box-shadow:var(--shadow);overflow:hidden;min-width:0}
.chat-topp{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-bottom:1px solid var(--chat-line);font-family:var(--f-mono);font-size:11.5px;color:var(--chat-muted);letter-spacing:.04em}
.chat-topp .prikker{display:flex;gap:6px}.chat-topp .prikker i{width:8px;height:8px;border-radius:50%;background:var(--chat-line);display:block}
.chat-kropp{padding:20px;display:grid;gap:14px;min-height:300px;align-content:start}
.boble{max-width:88%;padding:11px 14px;border-radius:14px;font-size:15px;line-height:1.5}
.boble.bruker{justify-self:end;background:var(--chat-user);color:#fff;border-bottom-right-radius:4px}
.boble.ai{justify-self:start;background:transparent;padding-inline:0;max-width:100%;color:var(--chat-ink)}
.boble.ai ol{margin:6px 0 0;padding-left:1.3em;display:grid;gap:4px}
.boble.ai .navn{background:rgba(231,154,95,.16);color:#f3c39c;padding:0 .25em;border-radius:4px;font-weight:600}
.boble.ai .navn.du{outline:1px dashed #f3c39c;background:transparent;color:#f3c39c}
.chat-bunn{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;justify-content:space-between;padding:12px 16px;border-top:1px solid var(--chat-line);font-family:var(--f-mono);font-size:11.5px;color:var(--chat-muted)}
.chat-bunn button{font:inherit;background:none;border:1px solid var(--chat-line);color:var(--chat-ink);border-radius:999px;padding:4px 10px;cursor:pointer}
.chat-bunn button:hover{border-color:var(--chat-muted)}
.skriver::after{content:"▍";animation:blink 1s steps(1) infinite;color:var(--chat-muted);margin-left:2px}
@keyframes blink{50%{opacity:0}}

/* ---------- tall */
.tall{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--ink)}
.tall div{padding:20px 20px 0 0;display:grid;gap:4px;align-content:start}
.tall div+div{padding-left:20px;border-left:1px solid var(--line)}
.tall strong{font-family:var(--f-display);font-weight:800;font-size:clamp(44px,6vw,72px);line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.tall span{color:var(--ink-2);max-width:28ch}
@media (max-width:640px){.tall{grid-template-columns:1fr}.tall div+div{padding-left:0;border-left:0;border-top:1px solid var(--line)}}

/* ---------- kort og rutenett */
.rutenett{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px}
.kort{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:22px;display:grid;gap:10px;align-content:start;min-width:0}
a.kort{color:var(--ink);text-decoration:none;transition:border-color .15s ease,transform .15s ease}
div.kort.snart{background:transparent;border-style:dashed}
div.kort.snart h3{color:var(--muted)}
a.kort:hover{border-color:var(--ink);transform:translateY(-2px)}
.kort .rad{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.kort .pil{font-family:var(--f-mono);color:var(--muted)}
.steg{counter-reset:steg;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;list-style:none;margin:0;padding:0}
.steg li{counter-increment:steg;display:grid;gap:8px;align-content:start;padding-top:16px;border-top:2px solid var(--ink)}
.steg li::before{content:counter(steg,decimal-leading-zero);font-family:var(--f-mono);font-size:13px;color:var(--copper)}
.steg p{margin:0;color:var(--ink-2)}
@media (max-width:760px){.steg{grid-template-columns:1fr}}

/* ---------- toppliste */
.faner{display:flex;flex-wrap:wrap;gap:8px}
.fane{font:inherit;font-size:14px;padding:8px 14px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer}
.fane:hover{border-color:var(--ink)}
.fane[aria-selected="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.liste{list-style:none;margin:0;padding:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.liste li{display:grid;grid-template-columns:3ch minmax(0,1fr) auto;gap:6px 16px;align-items:center;padding:16px 20px;border-top:1px solid var(--line)}
.liste li:first-child{border-top:0}
.liste .pos{font-family:var(--f-mono);font-size:15px;color:var(--muted);font-variant-numeric:tabular-nums}
.liste li:first-child .pos{color:var(--copper);font-weight:500}
.liste .navn{font-weight:600;font-size:17px;min-width:0;overflow-wrap:anywhere;display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}
.liste .andel{font-family:var(--f-mono);font-size:14px;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}
.liste .detalj{grid-column:2/4;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center}
.liste .under{grid-column:2/4;font-size:13px;color:var(--muted)}
.merkelapp{font-family:var(--f-mono);font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase;padding:2px 8px;border-radius:999px;background:var(--copper-soft);color:var(--copper-ink)}
.stolpe{height:6px;border-radius:3px;background:var(--sunk);overflow:hidden}
.stolpe i{display:block;height:100%;background:var(--fjord);border-radius:3px}
.sprak{display:flex;gap:4px;flex-wrap:wrap}
.sprak span{font-family:var(--f-mono);font-size:10.5px;padding:1px 6px;border-radius:4px;border:1px solid var(--line);color:var(--muted)}
.sprak span.pa{background:var(--fjord-soft);border-color:transparent;color:var(--fjord);font-weight:500}
@media (prefers-reduced-motion:no-preference){.stolpe i{transition:width .6s cubic-bezier(.2,.7,.2,1)}}

/* ---------- gratissjekk */
.sjekk{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:clamp(20px,4vw,36px);display:grid;gap:20px;box-shadow:var(--shadow)}
.felt{display:flex;flex-wrap:wrap;gap:10px}
.felt label{flex-basis:100%;font-size:14px;color:var(--muted)}
.felt input{flex:1 1 260px;min-width:0;font:inherit;font-size:17px;padding:13px 16px;border-radius:999px;border:1px solid var(--line);background:var(--bg);color:var(--ink)}
.resultat{display:grid;gap:18px}
.nokkel{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.nokkel div{background:var(--bg);border-radius:var(--r-sm);padding:14px;display:grid;gap:2px}
.nokkel b{font-family:var(--f-display);font-size:28px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.1}
.nokkel span{font-size:13px;color:var(--muted)}
.resultat ul{margin:0;padding-left:1.1em}
.cta{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px}
.cta p{margin:0;flex:1 1 280px;color:var(--ink-2)}

/* ---------- priser */
.priser{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:880px}
@media (max-width:720px){.priser{grid-template-columns:1fr}}
.pris{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:28px;display:grid;gap:16px;align-content:start}
.pris.fremhevet{border-color:var(--ink);box-shadow:var(--shadow)}
.pris .belop{font-family:var(--f-display);font-weight:800;font-size:48px;letter-spacing:-.03em;line-height:1}
.pris .belop small{font-family:var(--f-body);font-size:15px;font-weight:400;color:var(--muted);letter-spacing:0}
.pris ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.pris li{padding-left:24px;position:relative}
.pris li::before{content:"";position:absolute;left:2px;top:.55em;width:10px;height:6px;border-left:2px solid var(--fjord);border-bottom:2px solid var(--fjord);transform:rotate(-45deg)}

/* ---------- rapport-forhåndsvisning */
.rapport{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:24px;display:grid;gap:16px;box-shadow:var(--shadow);max-width:520px;justify-self:end;width:100%}
.rapport .linje{display:flex;justify-content:space-between;gap:10px;font-size:14px;padding-block:8px;border-top:1px solid var(--line)}
.rapport .opp{color:var(--up);font-weight:600}
.to{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:center}
@media (max-width:880px){.to{grid-template-columns:1fr}.rapport{justify-self:stretch}}

/* ---------- FAQ */
.faq{display:grid;gap:0;max-width:820px;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line);padding-block:4px}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px;padding-block:16px;font-weight:600;font-size:17px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--f-mono);color:var(--muted);font-weight:400}
.faq details[open] summary::after{content:"–"}
.faq p{margin:0 0 18px;color:var(--ink-2);max-width:64ch}

/* ---------- bunn */
.bunn{border-top:1px solid var(--line);padding-block:32px 48px;display:flex;flex-wrap:wrap;gap:12px 32px;justify-content:space-between;font-size:13px;color:var(--muted)}
.bunn p{margin:0;max-width:70ch}

/* ---------- tekstsider */
.artikkel{display:grid;gap:14px;max-width:68ch;padding-block:24px 64px}
.artikkel h2{font-size:24px;margin-top:18px}
.artikkel p,.artikkel ul{margin:0}
.scroll{overflow-x:auto}

@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ---------- tillegg: tilgjengelighet, hurtigsjekk, ferdige topplister */
.hopp{position:absolute;left:-9999px;top:8px;background:var(--ink);color:var(--bg);padding:8px 14px;border-radius:8px;z-index:20}
.hopp:focus{left:12px}
.meny{align-items:center}
.liten-knapp{padding:8px 16px;font-size:14px}
.meny a.knapp.hoved{color:var(--bg)}
.smuler{font-size:13px;color:var(--muted);padding-bottom:8px}
.smuler a{color:var(--muted)}
.hurtigsjekk{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto;gap:8px;align-items:end;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:10px;box-shadow:var(--shadow)}
.hs-felt{display:grid;gap:4px;min-width:0}
.hs-felt label{font-size:12px;color:var(--muted);padding-left:8px}
.hs-felt input,.hs-felt select{font:inherit;font-size:16px;padding:11px 12px;border-radius:10px;border:1px solid var(--line);background:var(--bg);color:var(--ink);min-width:0;width:100%}
.hurtigsjekk .knapp{height:46px}
@media (max-width:560px){.hurtigsjekk{grid-template-columns:1fr}}
.tillit{margin:0;font-size:13px;color:var(--muted);font-family:var(--f-mono);letter-spacing:.02em}
.sjekk-resultat{padding-bottom:clamp(40px,6vw,72px);scroll-margin-top:16px}
.sjekk-resultat .sjekk{max-width:820px}
.kilde{font-family:var(--f-mono);font-size:12px}
.mono{font-family:var(--f-mono);font-size:13px;font-weight:500}
.rapport .forslag{background:var(--copper-soft);color:var(--copper-ink);border-radius:var(--r-sm);padding:12px 14px;display:grid;gap:4px;font-size:14px}
.rapport .forslag p{margin:0}
.rapport small{color:var(--muted);font-size:12px}
.pris .rad{display:flex;justify-content:space-between;align-items:center;gap:10px}
.chat-knapper{display:flex;gap:6px}
.kategorier{display:grid;gap:28px}
.kat{display:grid;gap:12px;scroll-margin-top:16px}
.kat h3{font-size:18px}
.kat .liten{margin-top:-4px}
.med-faner .kategorier{gap:0}
.med-faner .kat h3{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.mobil-cta{display:none}
@media (max-width:640px){
  .mobil-cta{display:flex;position:fixed;left:16px;right:16px;bottom:calc(14px + env(safe-area-inset-bottom,0px));z-index:10;box-shadow:var(--shadow)}
  body{padding-bottom:84px}
}

/* ---------- søk med forslag */
.skjult{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.sok{position:relative;max-width:560px}
.sok-boks{display:flex;align-items:center;gap:6px;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:6px 6px 6px 18px;box-shadow:var(--shadow);transition:border-color .15s ease}
.sok-boks:focus-within{border-color:var(--ink)}
.sok-ikon{width:20px;height:20px;flex:none;fill:none;stroke:var(--muted);stroke-width:2;stroke-linecap:round}
.sok-boks input{flex:1;min-width:0;width:100%;border:0;background:transparent;font:inherit;font-size:17px;color:var(--ink);padding:10px 4px;outline:none}
.sok-boks input::placeholder{color:var(--muted)}
.sok-boks .knapp{flex:none}
.sok-liste{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:15;list-style:none;margin:0;padding:6px;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);max-height:360px;overflow:auto}
.sok-liste li{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 12px;border-radius:10px;cursor:pointer}
.sok-liste li:hover,.sok-liste li[aria-selected="true"]{background:var(--fjord-soft)}
.v-navn{font-weight:600;min-width:0;overflow-wrap:anywhere}
.v-info{font-size:13px;color:var(--muted);white-space:nowrap}

/* ---------- resultatkort */
.sjekk-resultat{max-width:720px}
.resultat-kort{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:clamp(20px,4vw,32px);display:grid;gap:14px;box-shadow:var(--shadow)}
.resultat-kort h3{font-size:clamp(24px,3vw,30px)}
.resultat-kort ul{margin:0;padding-left:1.1em}
.score-rad{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px}
.score-rad b{font-family:var(--f-display);font-weight:800;font-size:clamp(52px,7vw,72px);line-height:.9;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.score-rad span{color:var(--muted);font-size:15px}
.score-rad em{font-style:normal;font-family:var(--f-mono);font-size:12px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;padding:3px 10px;border-radius:999px;margin-left:auto}
em.hoy{background:color-mix(in srgb,var(--up) 14%,transparent);color:var(--up)}
em.middels{background:var(--fjord-soft);color:var(--fjord)}
em.lav{background:color-mix(in srgb,var(--down) 12%,transparent);color:var(--down)}
.maler{display:block;height:8px;border-radius:4px;background:var(--sunk);overflow:hidden}
.maler.stor{height:12px;border-radius:6px}
.maler i{display:block;height:100%;border-radius:inherit;background:var(--fjord)}
.maler i.hoy{background:var(--up)}.maler i.lav{background:var(--down)}
.setning{margin:0;font-size:18px;line-height:1.5}
.kat-rader{list-style:none;margin:6px 0 0;padding:0!important;display:grid;gap:0}
.kat-rader li{display:grid;grid-template-columns:minmax(0,1.2fr) auto minmax(60px,1fr) 3ch;gap:12px;align-items:center;padding:10px 0;border-top:1px solid var(--line);font-size:15px}
.r-plass{color:var(--muted);font-size:14px;white-space:nowrap}
.r-score{font-family:var(--f-mono);font-weight:500;text-align:right}
@media (max-width:520px){.kat-rader li{grid-template-columns:minmax(0,1fr) 3ch}.r-plass,.r-maler{display:none}}
.sjekk-boks{display:grid;gap:20px;max-width:720px}
.sjekk-boks .cta{border-top:0;padding-top:0}

/* ---------- toppliste med score */
.liste .score{display:flex;align-items:baseline;gap:2px;font-family:var(--f-display);white-space:nowrap}
.liste .score b{font-size:22px;font-weight:700;font-variant-numeric:tabular-nums}
.liste .score small{font-family:var(--f-mono);font-size:11px;color:var(--muted)}
.liste .detalj{grid-template-columns:1fr}
.score-rad.liten-rad b{font-size:44px}
.rapport .score-rad b{font-size:48px}

/* ---------- bedriftssider */
.b-hero{align-items:start}
.b-hero h1{overflow-wrap:anywhere}
.b-score{align-self:center}
.b-tabell{max-width:820px}
.b-kat li{grid-template-columns:minmax(0,1.2fr) auto minmax(60px,1fr) 3ch}
.b-kat .r-kat{font-weight:600}
.b-kat .r-under{grid-column:1/-1;font-size:13px;color:var(--muted);margin-top:-6px}
.b-to{align-items:start}
.b-boks{display:grid;gap:12px;align-content:start;min-width:0}
.b-sprak{list-style:none;margin:6px 0 0;padding:0;display:grid}
.b-sprak li{display:grid;grid-template-columns:12ch minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}
.b-mini li{grid-template-columns:3ch minmax(0,1fr) auto;padding:12px 18px}
.b-mini li.meg{background:var(--copper-soft)}
.b-mini li.meg .navn{color:var(--copper-ink)}
.b-mini li.meg .pos{color:var(--copper-ink)}
.liste .navn a{color:inherit;text-decoration:none;background-image:linear-gradient(currentColor,currentColor);background-size:0 1px;background-position:0 100%;background-repeat:no-repeat;transition:background-size .2s ease}
.liste .navn a:hover{background-size:100% 1px}
.boble.ai .navn.meg{background:#e79a5f;color:#0f1c2d}
@media (max-width:520px){.b-sprak li{grid-template-columns:10ch minmax(0,1fr) auto}}
.b-hero{padding-bottom:clamp(32px,5vw,56px)}
@media (max-width:520px){
  .b-kat li{grid-template-columns:minmax(0,1fr) auto 3ch}
  .b-kat .r-plass{display:block}
  .b-kat .r-maler{display:block;grid-column:1/-1;grid-row:2}
  .b-kat .r-under{grid-row:3;margin-top:0}
}
