/* Firmasett designsystem v1 (design/DESIGN.md + tokens.json): terminaluttrykk med iTerm-fargene, dybde fra moltsets,
   ro fra State of JS. Én aksent (gull), cyan for lenker/overlinjer/kode, grønn og magenta bare som signal.
   Rette hjørner, stiplede hårlinjer, JetBrains Mono. Variabelnavnene er de gamle så malene virker uendret. */
:root {
  --bg: #12161b; --bg2: #1a2027; --bg3: #222a33; --konsoll: #1f1b12;
  --linje: #2c3540; --linje-aksent: rgba(251, 171, 25, .45); --kant: var(--linje);
  --tekst: #efe9dc; --dempet: #a8adb3; --svak: #7d8894;
  --gull: #fbab19; --gul: #ffc24d; --paa-gull: #12161b;
  --bla: #98e1fc; --cyan: #98e1fc; --gronn: #5cc77a; --rod: #ff4f86; --magenta: #ff4f86; --markering: #d4125a;
  --aksent: var(--gull);
  --mono: "JetBrains Mono", "Meslo LG L DZ for Powerline", Menlo, Consolas, monospace;
  --bredde: 1120px;
  color-scheme: dark;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 80px; }
body { margin: 0; background: var(--bg); color: var(--tekst); font: 400 15px/1.7 var(--mono); -webkit-font-smoothing: antialiased;
  background-image: radial-gradient(var(--linje) 1px, transparent 1px); background-size: 24px 24px; background-position: -12px -12px; }
::selection { background: var(--markering); color: #fff; }
a { color: var(--cyan); text-decoration: none; }
a:hover { color: var(--tekst); text-decoration: none; }
:focus-visible { outline: 2px solid var(--gull); outline-offset: 3px; }
code, pre, kbd { font-family: var(--mono); }
code { color: var(--cyan); font-size: .95em; }
pre { background: var(--bg2); border: 1px dashed var(--linje); padding: 18px 22px; margin: 24px 0; overflow-x: auto; font-size: 13px; line-height: 1.65; color: var(--tekst); }
pre code { color: inherit; font-size: inherit; }
strong, b { color: var(--tekst); font-weight: 700; }
em { font-style: normal; color: var(--gull); }
h1, h2, h3, h4 { text-wrap: balance; margin: 0 0 16px; color: var(--tekst); }
h1 { font: 800 clamp(30px, 5.2vw, 52px)/1.04 var(--mono); letter-spacing: -.02em; text-transform: uppercase; max-width: 26ch; }
h2 { font: 800 24px/1.2 var(--mono); letter-spacing: -.01em; text-transform: uppercase; max-width: 40ch; }
h2::before { content: ""; display: inline-block; width: 10px; height: 10px; background: var(--gull); margin-right: 14px; vertical-align: .12em; }
h3 { font: 700 15px/1.4 var(--mono); }
h4 { font: 700 13px/1.4 var(--mono); }
p { margin: 0 0 16px; }
ul, ol { padding-left: 0; margin: 0 0 20px; list-style: none; }
ul li { padding-left: 20px; position: relative; margin-bottom: 6px; }
ul li::before { content: "-"; position: absolute; left: 4px; color: var(--svak); }
ol { counter-reset: p; }
ol li { padding-left: 28px; position: relative; margin-bottom: 6px; }
ol li::before { counter-increment: p; content: counter(p) "."; position: absolute; left: 0; color: var(--svak); }
hr { border: 0; border-top: 1px dashed var(--linje); margin: 32px 0; }
.liten, .fot { font-size: 13px; color: var(--svak); }
.fot { max-width: 80ch; margin: 24px 0 0; }
.ok { color: var(--gronn); }
.feil { color: var(--magenta); }
.overlinje, .over { font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--cyan); margin: 0 0 10px; }
.overlinje span, .over span, .overlinje .md-lenke, .overlinje .md-lenke a { color: var(--svak); font-weight: 700; }
.ingress { color: var(--dempet); max-width: 68ch; margin: 0 0 16px; }
.hode { margin-bottom: 40px; }
.hode .ingress { margin: 0; }
main { max-width: calc(var(--bredde) + 96px); margin: 0 auto; padding-left: max(16px, env(safe-area-inset-left, 0px)); padding-right: max(16px, env(safe-area-inset-right, 0px)); }
.wrap { max-width: calc(var(--bredde) + 96px); margin: 0 auto; padding-left: max(16px, env(safe-area-inset-left, 0px)); padding-right: max(16px, env(safe-area-inset-right, 0px)); }
@media (min-width: 720px) { main, .wrap { padding-left: max(48px, env(safe-area-inset-left, 0px)); padding-right: max(48px, env(safe-area-inset-right, 0px)); } }
section { padding-block: 96px; border-top: 1px dashed var(--linje); }
section:first-child, .helt { border-top: 0; }

/* Toppmeny */
.topp { position: sticky; top: 0; z-index: 9; background: rgba(18, 22, 27, .92); backdrop-filter: blur(8px); border-bottom: 1px dashed var(--linje); }
.topp .wrap { display: flex; align-items: center; justify-content: space-between; gap: 24px; height: 60px; }
.logo { font-weight: 700; font-size: 15px; color: var(--tekst); white-space: nowrap; }
.logo b, .logo .prompt { color: var(--gull); margin-right: 6px; }
.logo:hover { color: var(--tekst); }
.meny { display: flex; gap: 28px; align-items: center; }
.meny > a, .meny summary { font-size: 13px; font-weight: 500; color: var(--dempet); }
.meny > a:hover, .meny summary:hover { color: var(--tekst); }
.meny details { position: relative; }
.meny summary { list-style: none; cursor: pointer; }
.meny summary::-webkit-details-marker { display: none; }
.meny summary::after { content: " ▾"; color: var(--svak); font-size: 10px; position: static; }
.meny .nedtrekk { position: absolute; top: calc(100% + 14px); left: -12px; z-index: 10; background: var(--bg2); border: 1px solid var(--linje); padding: 6px 0; min-width: 240px; display: flex; flex-direction: column; }
.meny .nedtrekk a { padding: 7px 14px; font-size: 13px; color: var(--dempet); }
.meny .nedtrekk a:hover { background: var(--bg3); color: var(--tekst); }
.hoyre { display: flex; gap: 20px; align-items: center; }
.hoyre .logg { font-size: 13px; font-weight: 500; color: var(--dempet); }
.hoyre .logg:hover { color: var(--tekst); }
@media (max-width: 900px) { .meny, .hoyre .logg { display: none; } }

/* Knapper */
.knapp { display: inline-flex; align-items: center; gap: 8px; font: 700 13px/1 var(--mono); letter-spacing: .06em; text-transform: uppercase; padding: 15px 20px;
  background: var(--gull); color: var(--paa-gull); border: 1px solid var(--gull); border-radius: 0; cursor: pointer; white-space: nowrap; }
.knapp::after { content: "\203A"; font-size: 16px; line-height: 0; }
.knapp:hover { background: var(--gul); border-color: var(--gul); color: var(--paa-gull); }
.knapp.liten { padding: 10px 14px; font-size: 12px; }
.knapp.sekundaer, .knapp.sek { background: transparent; color: var(--gull); border: 1px dashed var(--linje-aksent); }
.knapp.sekundaer::after, .knapp.sek::after { content: none; }
.knapp.sekundaer:hover, .knapp.sek:hover { border-style: solid; border-color: var(--gull); color: var(--gull); background: transparent; }
.lenke { font-size: 13px; font-weight: 500; color: var(--cyan); background: none; border: 0; cursor: pointer; font-family: var(--mono); padding: 0; }
.lenke::before { content: "[ "; color: var(--svak); }
.lenke::after { content: " ]"; color: var(--svak); }
.pil::after { content: " \2192"; }
.handling, .knapperad { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; margin: 36px 0 12px; }
.merknad { font-size: 12px; color: var(--svak); margin: 0; }
.lenkerad { display: flex; flex-wrap: wrap; gap: 12px 24px; margin-top: 28px; }
.kopier { font: 500 11px/1 var(--mono); letter-spacing: .06em; text-transform: uppercase; color: var(--svak); background: none; border: 1px solid var(--linje); padding: 6px 8px; cursor: pointer; flex: none; }
.kopier:hover { color: var(--tekst); border-color: var(--svak); }
.promptboks { position: relative; }
.promptboks .kopier { position: absolute; top: 10px; right: 10px; }

/* Hero */
.helt { padding-block: 88px 96px; }
.helt h1 em { color: var(--gull); }
.helt .ingress { font-size: 16px; }

/* Konsollvindu */
.konsoll, .konsollboks { margin-top: 56px; background: var(--konsoll); border: 1px dashed var(--linje-aksent); min-width: 0; }
.k-topp, .konsoll-topp { display: flex; align-items: center; gap: 8px; padding: 10px 12px 10px 16px; border-bottom: 1px dashed var(--linje-aksent); min-width: 0; font-size: 12px; color: var(--dempet); }
.prikk, .konsoll-topp span { width: 10px; height: 10px; border-radius: 999px; flex: none; display: inline-block; }
.p1, .konsoll-topp span:first-child { background: var(--magenta); } .p2, .konsoll-topp span:nth-child(2) { background: var(--gull); } .p3, .konsoll-topp span:nth-child(3) { background: var(--gronn); margin-right: 6px; }
.faner { display: flex; gap: 2px; margin-left: 12px; flex: none; }
.fane { font: 500 12px/1 var(--mono); color: var(--svak); background: none; border: 1px solid transparent; padding: 6px 10px; cursor: pointer; }
.fane[aria-selected="true"] { color: var(--gull); border-color: var(--linje-aksent); }
.fane:hover { color: var(--tekst); }
.kmd { flex: 1; min-width: 0; font-size: 12px; color: var(--dempet); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; margin-left: 8px; }
.k-kropp { padding: 24px; font-size: 13px; line-height: 1.75; }
.k-kropp p { margin: 0 0 16px; }
.konsollboks pre { border: 0; margin: 0; background: transparent; }
.prompt { color: var(--tekst); }
.prompt b { color: var(--gull); margin-right: 8px; }
.sys { color: var(--svak); }
.sys code { color: var(--cyan); }
.rull { overflow-x: auto; margin: 0 0 16px; }
.ktab { border-collapse: collapse; width: 100%; min-width: 640px; font-size: 13px; }
.ktab th { text-align: left; font-weight: 700; color: var(--dempet); padding: 6px 16px 6px 0; border-bottom: 1px dashed var(--linje-aksent); white-space: nowrap; }
.ktab td { padding: 6px 16px 6px 0; white-space: nowrap; }
.tall-h { text-align: right; font-variant-numeric: tabular-nums; }
.grad { display: inline-block; min-width: 20px; text-align: center; font-size: 11px; font-weight: 700; padding: 0 5px; border: 1px solid currentColor; border-radius: 2px; margin-left: 8px; }
.ga { color: var(--gronn); } .gb { color: var(--gull); } .gc { color: var(--svak); }
.svar { color: var(--tekst); }
.markor { display: inline-block; width: 8px; height: 15px; background: var(--gull); vertical-align: -2px; margin-left: 4px; animation: blink 1.1s steps(1) infinite; }
@keyframes blink { 50% { opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .markor { animation: none; } html { scroll-behavior: auto; } }

/* Dekning */
.dekning, .tall { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px dashed var(--linje); border-left: 1px dashed var(--linje); gap: 0; }
.tall-kort, .tall > div { padding: 28px 24px; border-right: 1px dashed var(--linje); border-bottom: 1px dashed var(--linje); display: flex; flex-direction: column; gap: 6px; min-width: 0; background: none; }
.tall-kort .n, .tall b { font: 800 34px/1 var(--mono); letter-spacing: -.02em; color: var(--gull); font-variant-numeric: tabular-nums; }
.tall-kort .l, .tall span { font-size: 13px; color: var(--dempet); }
.maal { height: 6px; background: var(--bg3); margin-top: 10px; position: relative; }
.maal i { position: absolute; inset: 0 auto 0 0; background: var(--gull); }
.andel { font-size: 11px; color: var(--svak); font-variant-numeric: tabular-nums; }
@media (max-width: 820px) { .dekning, .tall { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px) { .dekning, .tall { grid-template-columns: 1fr; } }

/* Planer */
.planer, .plankort { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin: 0; }
.plan { background: var(--bg2); border: 1px solid var(--linje); padding: 24px; display: flex; flex-direction: column; gap: 12px; position: relative; min-width: 0; }
.plan .navn, .plan h3 { font-weight: 700; color: var(--gull); font-size: 15px; margin: 0; }
.plan .pris { font: 800 34px/1 var(--mono); letter-spacing: -.02em; font-variant-numeric: tabular-nums; color: var(--tekst); margin: 0; }
.plan .pris small, .plan .pris span { font: 400 13px var(--mono); color: var(--svak); letter-spacing: 0; }
.plan .etikett { font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--svak); margin-top: 8px; }
.plan .vol { font: 800 20px/1 var(--mono); color: var(--gull); font-variant-numeric: tabular-nums; }
.plan .vol small { font: 400 12px var(--mono); color: var(--svak); }
.plan .besk, .plan p, .plan ul { font-size: 13px; line-height: 1.6; color: var(--dempet); flex: 1; margin: 4px 0 8px; }
.plan ul li { margin-bottom: 4px; }
.plan .knapp { justify-content: center; }
.plan.fram, .plan.uthevet { background: var(--gull); border-color: var(--gull); }
.plan.fram *, .plan.uthevet * { color: var(--paa-gull); }
.plan.fram ul li::before, .plan.uthevet ul li::before { color: var(--paa-gull); }
.plan.fram .knapp, .plan.uthevet .knapp { background: var(--paa-gull); color: var(--gull); border-color: var(--paa-gull); }
.plan.fram .knapp:hover, .plan.uthevet .knapp:hover { background: var(--bg3); border-color: var(--bg3); }
.chip, .plan .merke { position: absolute; top: 24px; right: 24px; font: 700 10px/1 var(--mono); letter-spacing: .1em; text-transform: uppercase; background: var(--paa-gull); color: var(--gull); padding: 5px 7px; border-radius: 2px; }
@media (max-width: 1000px) { .planer, .plankort { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 520px) { .planer, .plankort { grid-template-columns: 1fr; } }

/* Rutenett (bruksområder, kort-lister) */
.rutenett, .rute3 { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px dashed var(--linje); border-left: 1px dashed var(--linje); gap: 0; margin: 0; }
.rute2 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.rute, .rute3 > div { padding: 28px 24px; border-right: 1px dashed var(--linje); border-bottom: 1px dashed var(--linje); display: flex; flex-direction: column; gap: 10px; min-width: 0; background: none; }
.rute h3, .rute3 h3 { margin: 0; color: var(--tekst); }
.rute p, .rute3 p { font-size: 13px; line-height: 1.65; color: var(--dempet); margin: 0; flex: 1; }
.rute a, .rute3 a { font-size: 13px; font-weight: 500; }
.rute:hover, .rute3 > div:hover { background: var(--bg2); }
@media (max-width: 900px) { .rutenett, .rute3 { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .rutenett, .rute3, .rute2 { grid-template-columns: 1fr; } }
.kort { background: var(--bg2); border: 1px solid var(--linje); padding: 24px; margin-bottom: 16px; }
.kort h3 { margin-bottom: 10px; }
.kort-liste, .ferd { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; margin: 32px 0; }
.kort-liste .kort, .ferd article { display: flex; flex-direction: column; gap: 10px; min-width: 0; margin: 0; color: var(--tekst); }
.kort-liste .kort:hover { border-color: var(--linje-aksent); color: var(--tekst); }
.kort-liste .kort h3, .ferd h3 { margin: 0; }
.kort-liste .kort p, .ferd p { font-size: 13px; line-height: 1.65; color: var(--dempet); margin: 0; flex: 1; }
.kort-liste .kort small { font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--svak); }
.merker { display: flex; gap: 8px; flex-wrap: wrap; }
.merke { font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; padding: 2px 7px; border: 1px solid var(--linje); color: var(--dempet); border-radius: 2px; }
.merke.niv { border-color: currentColor; }
.enkel { color: var(--gronn); } .middels { color: var(--gull); } .avansert { color: var(--magenta); }
@media (max-width: 720px) { .kort-liste, .ferd { grid-template-columns: 1fr; } }
.install { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin: 0 0 32px; }
.install code { background: var(--bg2); border: 1px dashed var(--linje); padding: 10px 14px; font-size: 13px; color: var(--tekst); }
.install code b { color: var(--gull); font-weight: 400; }

/* Datatabell */
.tabell-rull { overflow-x: auto; border-top: 1px dashed var(--linje); }
.tabell, .sammenlign, .innhold table, .side table { border-collapse: collapse; width: 100%; font-size: 13px; line-height: 1.6; margin: 0; }
.innhold table, .side table { margin: 24px 0 32px; display: block; overflow-x: auto; border-top: 1px dashed var(--linje); }
.tabell th, .sammenlign th, .innhold th, .side th { text-align: left; font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--svak); padding: 14px 20px 14px 0; border-bottom: 1px dashed var(--linje); white-space: nowrap; }
.tabell td, .sammenlign td, .innhold td, .side td { padding: 14px 20px 14px 0; border-bottom: 1px solid var(--linje); vertical-align: top; color: var(--dempet); }
.tabell td:first-child, .sammenlign td:first-child, .innhold td:first-child, .side td:first-child { color: var(--tekst); }
.tabell tr:hover td, .sammenlign tr:hover td, .innhold tr:hover td { background: var(--bg2); }
.tabell .koster, .tabell td.ja { white-space: nowrap; color: var(--tekst); }
.tabell .vaar, .sammenlign .vi, .sammenlign th.vaar { color: var(--gull); font-weight: 700; }
.innhold td strong { color: var(--tekst); }

/* FAQ */
.faq { border-top: 1px dashed var(--linje); }
.faq details { border: 0; border-bottom: 1px dashed var(--linje); background: none; padding: 0; margin: 0; }
.faq summary { list-style: none; cursor: pointer; padding: 20px 40px 20px 0; font-weight: 700; position: relative; color: var(--tekst); }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: "+"; position: absolute; right: 4px; top: 18px; color: var(--gull); font-size: 18px; font-weight: 400; }
.faq details[open] summary::after { content: "\2212"; }
.faq summary:hover { color: var(--gull); }
.faq details p { margin: 0 0 24px; color: var(--dempet); max-width: 72ch; }

/* Bunn-CTA og bunn */
.cta { border-top: 1px dashed var(--linje); max-width: calc(var(--bredde) + 96px); margin: 0 auto; padding: 96px max(16px, env(safe-area-inset-left, 0px)); }
@media (min-width: 720px) { .cta { padding-left: 48px; padding-right: 48px; } }
.cta-boks { background: var(--konsoll); border: 1px dashed var(--linje-aksent); padding: 48px clamp(20px, 5vw, 56px); display: grid; grid-template-columns: 1.3fr 1fr; gap: 32px; align-items: center; }
.cta-boks h2 { margin-bottom: 12px; }
.cta-boks .ingress { margin: 0; }
.cta-boks .handling { margin: 0; justify-content: flex-end; }
@media (max-width: 820px) { .cta-boks { grid-template-columns: 1fr; } .cta-boks .handling { justify-content: flex-start; } }
.bunn { border-top: 1px dashed var(--linje); padding-block: 40px 56px; font-size: 13px; color: var(--svak); }
.bunn .wrap { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 24px; }
.bunn nav { display: flex; flex-wrap: wrap; gap: 12px 24px; }
.bunn nav a { color: var(--dempet); }
.bunn nav a:hover { color: var(--tekst); }
.bunn .linje { width: 100%; border-top: 1px dashed var(--linje); padding-top: 16px; }
.status { display: inline-flex; align-items: center; gap: 8px; }
.status i { width: 8px; height: 8px; border-radius: 999px; background: var(--gronn); }

/* Skjema og konsoll */
label { display: block; font-size: 13px; color: var(--dempet); margin-bottom: 14px; }
input { display: block; width: 100%; margin-top: 6px; padding: 10px 12px; background: var(--bg); color: var(--tekst); border: 1px solid var(--linje); border-radius: 0; font-size: 14px; font-family: var(--mono); }
input:focus { outline: 0; border-color: var(--gull); }
.nokkel code { display: block; font-size: 14px; padding: 12px 14px; word-break: break-all; margin: 6px 0; color: var(--gull); background: var(--bg); border: 1px dashed var(--linje-aksent); }
.nokkel .knapperad { margin: 12px 0 0; }
.konsoll-side .bruk { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin: 24px 0; }
.konsoll-side .bruk .kort { gap: 2px; }
.konsoll-side .bruk b { font: 800 26px/1 var(--mono); color: var(--gull); }
.konsoll-side .bruk span { font-size: 13px; color: var(--dempet); }
.konsoll-side pre { margin: 12px 0 0; }
@media (max-width: 720px) { .konsoll-side .bruk { grid-template-columns: 1fr; } }

/* Innholdssider: tittel til venstre, innhold til høyre */
.side, article.side { padding-block: 72px 96px; border-top: 0; }
.to-kolonner { display: grid; grid-template-columns: minmax(260px, 400px) minmax(0, 1fr); gap: 48px 96px; align-items: start; }
.to-kolonner .venstre { position: sticky; top: 92px; }
.to-kolonner .venstre h1 { font-size: clamp(28px, 3.6vw, 40px); max-width: none; }
.to-kolonner .innhold { max-width: 72ch; }
.innhold h2 { font-size: 20px; margin: 56px 0 18px; }
.innhold > h2:first-child { margin-top: 0; }
.innhold h3 { margin: 32px 0 10px; }
.innhold h3::before { content: "└ "; color: var(--svak); font-weight: 400; }
.innhold p, .innhold li { color: var(--dempet); }
.innhold strong { color: var(--tekst); }
.innhold blockquote { border-left: 2px solid var(--linje-aksent); margin: 24px 0; padding: 12px 20px; background: var(--bg2); color: var(--dempet); }
.innhold blockquote p { margin-bottom: 8px; }
.innhold img { max-width: 100%; }
.innhold .nummerert { counter-reset: steg; }
.innhold .nummerert > div { position: relative; padding-left: 44px; margin-bottom: 10px; }
.innhold .nummerert > div::before { counter-increment: steg; content: "0" counter(steg); position: absolute; left: 0; top: 0; color: var(--gull); font-weight: 700; }
.innhold .samtale { background: var(--konsoll); border: 1px dashed var(--linje-aksent); padding: 20px 24px; margin: 24px 0; font-size: 13px; }
.installer { background: var(--bg2); border: 1px dashed var(--linje); padding: 20px 24px; margin: 28px 0; }
.installer h3 { margin: 0 0 10px; }
.installer h3::before { content: ""; }
.installer ul { margin: 0; font-size: 13px; }
.installer li { color: var(--dempet); }
.eksempler li { color: var(--dempet); }
.skilltekst { border-top: 1px dashed var(--linje); margin-top: 24px; padding-top: 8px; }
.metadata { display: flex; flex-wrap: wrap; gap: 8px 24px; font-size: 13px; margin: 16px 0 28px; color: var(--svak); }
.metadata strong { color: var(--svak); margin-right: 6px; font-weight: 400; }
.fasetter { display: flex; flex-direction: column; gap: 8px; margin: 32px 0 40px; font-size: 13px; }
.fasetter strong { color: var(--svak); margin-right: 8px; font-weight: 400; display: inline-block; min-width: 120px; }
.fasetter a { display: inline-block; margin: 2px 4px 2px 0; }
.fasetter a::before { content: "["; color: var(--svak); } .fasetter a::after { content: "]"; color: var(--svak); }
.fasetter a.valgt { color: var(--gull); }
@media (max-width: 1000px) {
  .to-kolonner { grid-template-columns: 1fr; gap: 24px; }
  .to-kolonner .venstre { position: static; }
}
@media (max-width: 760px) { section { padding-block: 56px; } .helt { padding-block: 40px 56px; } }
