/* =========================================================================
   spillarkivet.org — stilark
   -------------------------------------------------------------------------
   Arkivet dokumenterer BORDET FØR FØRSTE TREKK. Formspraket følger av det:
   siden skal lese som et oppstillingskort fra et utlan — et ark som ligger
   oppa esken og forteller hva som skal vaere i den.

   Derfor:
     · materiell-manifestet er sidens visuelle tyngdepunkt, satt som et
       regnskap med høyrestilte, tabulaere tall
     · sidespalten star til VENSTRE pa store skjermer, som en registerkant
     · petrol og terrakotta, ikke rødt: rødt betyr «tap» i spill, og arkivet
       handler ikke om a vinne eller tape
     · Archivo til alt som skal telles og merkes, Spectral til alt som skal
       leses
   ========================================================================= */

/* --- skrifter (generert av _fonts.mjs — ikke rediger) --- */
@font-face{font-family:'Archivo';font-style:normal;font-weight:500 700;font-display:swap;src:url(/assets/fonts/archivo-65449f16.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}
@font-face{font-family:'Spectral';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/spectral-d4877aef.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}
@font-face{font-family:'Spectral';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/spectral-041903c5.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}
/* --- slutt skrifter --- */

:root, html body {
  --sa-ink: #12232a;
  --sa-ink-svak: #4a5c64;
  --sa-ink-svakest: #71838b;
  --sa-brand-900: #0b3b45;
  --sa-brand-800: #0e4f5c;
  --sa-brand: #12707f;
  --sa-brand-lys: #d7e7e9;
  --sa-terra: #b0532a;
  --sa-terra-lys: #f6e6dd;
  --sa-papir: #f4f2ec;
  --sa-papir-mork: #e8e4da;
  --sa-kort: #ffffff;
  --sa-kant: #ddd8cc;
  --sa-kant-sterk: #c3bcab;
  --sa-serif: Spectral, Georgia, 'Times New Roman', serif;
  --sa-sans: Archivo, 'Segoe UI', system-ui, -apple-system, sans-serif;
  --sa-radius: 3px;
  --sa-skygge: 0 1px 2px rgba(18, 35, 42, .05), 0 6px 18px -10px rgba(18, 35, 42, .18);
}

*, *::before, *::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

body {
  margin: 0;
  background: var(--sa-papir);
  color: var(--sa-ink);
  font-family: var(--sa-serif);
  font-size: 17px;
  line-height: 1.65;
  font-variant-numeric: tabular-nums;
  -webkit-font-smoothing: antialiased;
}

a { color: var(--sa-brand-800); text-decoration-thickness: 1px; text-underline-offset: 2px; }
a:hover { color: var(--sa-terra); }
a:focus-visible, button:focus-visible, summary:focus-visible, input:focus-visible {
  outline: 2px solid var(--sa-brand); outline-offset: 2px; border-radius: 2px;
}

img { max-width: 100%; height: auto; }

/* Skiplenken ma ikke ligge pa -9999px: den utvider dokumentet pa mobil og gir
   en vannrett rullefelt ingen ser arsaken til. */
.sa-hopp {
  position: absolute; width: 1px; height: 1px; overflow: hidden;
  clip-path: inset(50%); white-space: nowrap;
}
.sa-hopp:focus {
  position: fixed; top: 8px; left: 8px; z-index: 100;
  width: auto; height: auto; clip-path: none;
  background: var(--sa-brand-900); color: #fff;
  padding: 10px 16px; border-radius: var(--sa-radius);
  font-family: var(--sa-sans); font-weight: 600;
}

/* --- topp --------------------------------------------------------------- */

.sa-topp {
  background: var(--sa-brand-900);
  border-bottom: 3px solid var(--sa-terra);
}
.sa-topp-inn {
  max-width: 1180px; margin: 0 auto; padding: 0 20px;
  display: flex; flex-wrap: wrap; align-items: center; gap: 8px 28px;
  min-height: 62px;
}
.sa-merkevare {
  font-family: var(--sa-sans); font-weight: 700; font-size: 20px;
  letter-spacing: -.02em; color: #fff; text-decoration: none;
  display: inline-flex; align-items: baseline; gap: 12px; padding: 12px 0;
  /* Ett ord — aldri midtordsvekt eller midtordsfarge. Det leses som særskriving. */
}
.sa-merkevare span {
  font-size: 11px; font-weight: 500; letter-spacing: .13em; text-transform: uppercase;
  color: #9dc0c6; border-left: 1px solid rgba(255,255,255,.28); padding-left: 12px;
}
.sa-merkevare:hover { color: #fff; }
.sa-merkevare:hover span { color: #cfe1e4; }

.sa-nav { display: flex; flex-wrap: wrap; gap: 2px; margin-left: auto; }
.sa-nav a {
  font-family: var(--sa-sans); font-size: 13.5px; font-weight: 500;
  color: #cfe1e4; text-decoration: none;
  padding: 8px 12px; border-radius: var(--sa-radius);
  border-bottom: 2px solid transparent;
}
.sa-nav a:hover { color: #fff; border-bottom-color: rgba(255,255,255,.45); }
.sa-nav a[aria-current="page"] { color: #fff; border-bottom-color: var(--sa-terra); }

/* --- ramme -------------------------------------------------------------- */

.sa-ramme { max-width: 1180px; margin: 0 auto; padding: 26px 20px 60px; min-width: 0; }

.sa-sti {
  font-family: var(--sa-sans); font-size: 12.5px; color: var(--sa-ink-svak);
  margin-bottom: 16px; display: flex; flex-wrap: wrap; gap: 7px; align-items: center;
}
.sa-sti a { color: var(--sa-ink-svak); text-decoration: none; }
.sa-sti a:hover { color: var(--sa-brand-800); text-decoration: underline; }
.sa-sti span { color: var(--sa-kant-sterk); }

/* Registerkanten star til venstre. Det er den ene strukturelle avgjørelsen som
   gjør arkivet gjenkjennelig pa et halvt sekund. */
.sa-kolonner {
  display: grid;
  grid-template-columns: minmax(0, 230px) minmax(0, 1fr);
  gap: 44px;
  align-items: start;
}
@media (max-width: 950px) { .sa-kolonner { grid-template-columns: 1fr; gap: 22px; } }

.sa-kort {
  background: var(--sa-kort);
  border: 1px solid var(--sa-kant);
  border-radius: var(--sa-radius);
  box-shadow: var(--sa-skygge);
  padding: 30px 34px 26px;
  min-width: 0;
}
@media (max-width: 620px) { .sa-kort { padding: 22px 18px 20px; } }

/* --- overskrifter ------------------------------------------------------- */

.sa-stempel {
  font-family: var(--sa-sans); font-size: 11px; font-weight: 700;
  letter-spacing: .14em; text-transform: uppercase;
  color: var(--sa-brand); margin: 0 0 10px;
  display: flex; align-items: center; gap: 8px;
}
.sa-stempel::before {
  content: ""; width: 9px; height: 9px; background: var(--sa-terra); flex: none;
}

.sa-kort h1 {
  font-family: var(--sa-sans); font-weight: 700; font-size: clamp(26px, 3.6vw, 35px);
  line-height: 1.16; letter-spacing: -.02em; margin: 0 0 18px; color: var(--sa-ink);
}

.sa-kort h2 {
  font-family: var(--sa-sans); font-weight: 700; font-size: 17px;
  letter-spacing: .01em; margin: 34px 0 12px; color: var(--sa-brand-900);
  padding-bottom: 7px; border-bottom: 2px solid var(--sa-papir-mork);
  display: flex; align-items: baseline; gap: 9px;
}
.sa-kort h2::before {
  content: ""; width: 7px; height: 7px; background: var(--sa-brand); flex: none;
  transform: translateY(-1px);
}
.sa-kort h3 {
  font-family: var(--sa-sans); font-weight: 600; font-size: 15px;
  margin: 22px 0 8px; color: var(--sa-ink);
}

/* --- klarstilling: sidens svar ------------------------------------------ */

.sa-klar {
  font-size: 19.5px; line-height: 1.55; margin: 0 0 22px;
  padding: 16px 20px; background: var(--sa-brand-lys);
  border-left: 4px solid var(--sa-brand-800);
  border-radius: 0 var(--sa-radius) var(--sa-radius) 0;
  color: var(--sa-ink);
}
.sa-klar a { color: var(--sa-brand-900); }

/* --- materiell-manifestet: sidens tyngdepunkt --------------------------- */

.sa-manifest { margin: 0 0 4px; }
.sa-manifest table { width: 100%; border-collapse: collapse; font-size: 15.5px; }
.sa-manifest caption {
  font-family: var(--sa-sans); font-size: 11px; font-weight: 700;
  letter-spacing: .14em; text-transform: uppercase; color: var(--sa-ink-svak);
  text-align: left; padding-bottom: 8px;
}
.sa-manifest th {
  font-family: var(--sa-sans); font-size: 11px; font-weight: 600;
  letter-spacing: .09em; text-transform: uppercase; color: var(--sa-ink-svakest);
  text-align: left; padding: 0 10px 6px 0; border-bottom: 2px solid var(--sa-ink);
}
.sa-manifest th:nth-child(2) { text-align: right; width: 5.5em; padding-right: 14px; }
.sa-manifest td {
  padding: 9px 10px 9px 0; border-bottom: 1px solid var(--sa-kant);
  vertical-align: baseline;
}
.sa-manifest td:first-child { font-family: var(--sa-sans); font-weight: 600; font-size: 15px; }
.sa-manifest td:nth-child(2) {
  text-align: right; padding-right: 14px; white-space: nowrap;
  font-family: var(--sa-sans); font-weight: 700; font-size: 17px;
  color: var(--sa-brand-800); font-variant-numeric: tabular-nums;
}
.sa-manifest td:last-child { color: var(--sa-ink-svak); font-size: 15px; }
.sa-manifest tr:last-child td { border-bottom: 2px solid var(--sa-ink); }

/* --- faktastripe -------------------------------------------------------- */

.sa-fakta {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 1px; background: var(--sa-kant); border: 1px solid var(--sa-kant);
  margin: 22px 0 6px; border-radius: var(--sa-radius); overflow: hidden;
}
.sa-fakta > div { background: var(--sa-papir); padding: 11px 14px; }
.sa-fakta dt {
  font-family: var(--sa-sans); font-size: 10.5px; font-weight: 600;
  letter-spacing: .11em; text-transform: uppercase; color: var(--sa-ink-svakest);
  margin-bottom: 3px;
}
.sa-fakta dd { margin: 0; font-family: var(--sa-sans); font-weight: 600; font-size: 15.5px; }

/* --- stigen ------------------------------------------------------------- */

.sa-stige { list-style: none; counter-reset: steg; margin: 0; padding: 0; }
.sa-stige li {
  counter-increment: steg; position: relative;
  padding: 0 0 16px 46px; margin: 0;
}
.sa-stige li::before {
  content: counter(steg);
  position: absolute; left: 0; top: -1px;
  width: 30px; height: 30px; border: 2px solid var(--sa-brand-800);
  color: var(--sa-brand-800); background: var(--sa-kort);
  font-family: var(--sa-sans); font-weight: 700; font-size: 14px;
  display: grid; place-items: center; border-radius: 50%;
}
/* Loddrett linje mellom trinnene, sa stigen leses som én bevegelse. */
.sa-stige li::after {
  content: ""; position: absolute; left: 14px; top: 32px; bottom: 4px;
  width: 2px; background: var(--sa-papir-mork);
}
.sa-stige li:last-child { padding-bottom: 0; }
.sa-stige li:last-child::after { display: none; }

/* --- plassering --------------------------------------------------------- */

.sa-plassering {
  margin: 4px 0 0; padding: 16px 20px;
  background: var(--sa-papir); border: 1px solid var(--sa-kant);
  border-radius: var(--sa-radius);
}
.sa-plassering p { margin: 0; }

/* --- vanlige feil ------------------------------------------------------- */

.sa-feil { list-style: none; margin: 0; padding: 0; }
.sa-feil li {
  position: relative; padding: 10px 0 10px 34px;
  border-bottom: 1px solid var(--sa-papir-mork);
}
.sa-feil li:last-child { border-bottom: 0; }
.sa-feil li::before {
  content: "\00d7";
  position: absolute; left: 0; top: 9px;
  width: 21px; height: 21px; border-radius: 50%;
  background: var(--sa-terra-lys); color: var(--sa-terra);
  font-family: var(--sa-sans); font-weight: 700; font-size: 14px;
  display: grid; place-items: center;
}

/* --- varianter ---------------------------------------------------------- */

.sa-varianter { list-style: none; margin: 0; padding: 0; }
.sa-varianter li {
  padding: 11px 0 11px 16px; border-left: 3px solid var(--sa-brand-lys);
  margin-bottom: 8px;
}
.sa-varianter b { font-family: var(--sa-sans); font-weight: 700; }

/* --- punkter ------------------------------------------------------------ */

.sa-punkter { margin: 0; padding: 0 0 0 20px; }
.sa-punkter li { margin-bottom: 8px; padding-left: 4px; }
.sa-punkter li::marker { color: var(--sa-brand); }

/* --- videre (nettverkslenker i løpetekst) -------------------------------- */

.sa-videre {
  margin: 22px 0 0; padding: 13px 16px;
  background: var(--sa-papir); border-left: 3px solid var(--sa-kant-sterk);
  font-size: 15.5px; color: var(--sa-ink-svak);
}

/* --- FAQ ---------------------------------------------------------------- */

.sa-faq details {
  border: 1px solid var(--sa-kant); border-radius: var(--sa-radius);
  margin-bottom: 8px; background: var(--sa-kort);
}
.sa-faq summary {
  cursor: pointer; list-style: none; padding: 13px 46px 13px 16px;
  font-family: var(--sa-sans); font-weight: 600; font-size: 15.5px;
  position: relative;
}
.sa-faq summary::-webkit-details-marker { display: none; }
.sa-faq summary::after {
  content: "+"; position: absolute; right: 14px; top: 50%; transform: translateY(-50%);
  width: 22px; height: 22px; border-radius: 50%;
  background: var(--sa-brand-lys); color: var(--sa-brand-900);
  display: grid; place-items: center; font-weight: 700; font-size: 15px;
}
.sa-faq details[open] summary::after { content: "\2212"; }
.sa-faq details[open] summary { border-bottom: 1px solid var(--sa-kant); }
.sa-faq details > p,
.sa-faq div { padding: 13px 16px; }
.sa-faq details > p,
.sa-faq div p { margin: 0; }

.sa-guidekort { margin: 0 0 22px; }
.sa-guidekort h2 { margin-top: 0; }
.sa-guidekort h2 a { color: inherit; text-decoration: none; }
.sa-guidekort h2 a:hover { text-decoration: underline; }

.sa-callout {
  background: var(--sa-papir-mork);
  border-left: 4px solid var(--sa-brand);
  border-radius: 0 var(--sa-radius) var(--sa-radius) 0;
  padding: 14px 16px; margin: 0 0 18px;
  font-size: 16px; line-height: 1.5;
}
.sa-callout p { margin: 0; }
.sa-callout strong { color: var(--sa-brand-900); }

.sa-guidenote {
  margin: 22px 0 0; padding: 12px 14px;
  background: var(--sa-papir-mork);
  border-radius: var(--sa-radius);
  font-size: 15px; line-height: 1.45; color: var(--sa-ink-svak);
}
.sa-guidenote a { font-weight: 600; }

/* --- kilder ------------------------------------------------------------- */

.sa-kilder { margin-top: 34px; }
.sa-kilder ol { margin: 0; padding: 0 0 0 22px; font-size: 15px; }
.sa-kilder li { margin-bottom: 7px; }
.sa-kilder li::marker { font-family: var(--sa-sans); color: var(--sa-ink-svakest); }
.sa-utgiver {
  font-family: var(--sa-sans); font-size: 11.5px; color: var(--sa-ink-svakest);
  display: block;
}
.sa-ref { font-size: 11px; line-height: 0; }
.sa-ref a {
  text-decoration: none; color: var(--sa-brand); font-family: var(--sa-sans);
  font-weight: 700; padding: 0 1px;
}
.sa-ref a::before { content: "["; }
.sa-ref a::after { content: "]"; }
.sa-fotnote { font-size: 14px; color: var(--sa-ink-svak); margin: 10px 0 0; }

.sa-sjekket {
  margin: 30px 0 0; padding-top: 15px; border-top: 1px solid var(--sa-kant);
  font-family: var(--sa-sans); font-size: 12.5px; color: var(--sa-ink-svak);
  display: flex; flex-wrap: wrap; gap: 6px 20px;
}

/* --- sidespalten -------------------------------------------------------- */

.sa-spalte {
  display: grid; gap: 16px; position: sticky; top: 16px;
  min-width: 0; max-width: 100%;
  /* Hold widgetene inne i spalten — aldri inn i page-blocket. */
  overflow: hidden;
}
@media (max-width: 950px) { .sa-spalte { position: static; overflow: visible; } }

.sa-boks {
  background: var(--sa-kort); border: 1px solid var(--sa-kant);
  border-radius: var(--sa-radius); padding: 14px 15px;
  max-width: 100%; min-width: 0; box-sizing: border-box;
  overflow: hidden;
}
.sa-boks h2 {
  font-family: var(--sa-sans); font-size: 11px; font-weight: 700;
  letter-spacing: .13em; text-transform: uppercase; color: var(--sa-ink-svak);
  margin: 0 0 11px; padding-bottom: 8px; border-bottom: 2px solid var(--sa-papir-mork);
}
.sa-boks ul { list-style: none; margin: 0; padding: 0; }
.sa-boks li { margin-bottom: 10px; font-size: 15px; line-height: 1.4; }
.sa-boks li:last-child { margin-bottom: 0; }
.sa-boks a { text-decoration: none; }
.sa-boks a:hover { text-decoration: underline; }
.sa-rolle {
  display: block; font-family: var(--sa-sans); font-size: 10.5px;
  letter-spacing: .09em; text-transform: uppercase; color: var(--sa-ink-svakest);
  margin-top: 1px;
}

.sa-sok { display: flex; gap: 6px; }
.sa-sok input {
  flex: 1 1 auto; min-width: 0; font: inherit; font-size: 15px;
  padding: 8px 10px; border: 1px solid var(--sa-kant-sterk);
  border-radius: var(--sa-radius); background: var(--sa-papir);
}
.sa-sok button {
  font-family: var(--sa-sans); font-weight: 600; font-size: 14px;
  padding: 8px 13px; border: 0; border-radius: var(--sa-radius);
  background: var(--sa-brand-800); color: #fff; cursor: pointer;
}
.sa-sok button:hover { background: var(--sa-brand-900); }

.sa-utlan {
  background: var(--sa-brand-900); border-color: var(--sa-brand-900); color: #dceaec;
}
.sa-utlan h2 { color: #9dc0c6; border-bottom-color: rgba(255,255,255,.16); }
.sa-utlan p { margin: 0 0 8px; font-size: 15px; }
.sa-utlan p:last-child { margin-bottom: 0; }
.sa-utlan a { color: #fff; }
.sa-utlan b { color: #fff; }

/* --- forsiden ----------------------------------------------------------- */

.sa-innledning {
  background: var(--sa-kort); border: 1px solid var(--sa-kant);
  border-radius: var(--sa-radius); box-shadow: var(--sa-skygge);
  padding: 34px 34px 28px; margin-bottom: 22px;
}
.sa-innledning h1 {
  font-family: var(--sa-sans); font-weight: 700; font-size: clamp(28px, 4.4vw, 40px);
  line-height: 1.12; letter-spacing: -.022em; margin: 0 0 14px;
}
.sa-innledning p { margin: 0 0 12px; font-size: 18px; max-width: 62ch; }
.sa-innledning p:last-child { margin-bottom: 0; }
.sa-tall {
  font-family: var(--sa-sans); font-size: 12px; letter-spacing: .1em;
  text-transform: uppercase; color: var(--sa-ink-svakest); margin-top: 18px;
  display: flex; flex-wrap: wrap; gap: 8px 26px;
}
.sa-tall b { color: var(--sa-brand-800); font-size: 15px; }

.sa-rutenett {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 16px;
}
.sa-seksjonskort {
  background: var(--sa-kort); border: 1px solid var(--sa-kant);
  border-top: 3px solid var(--sa-brand-800);
  border-radius: var(--sa-radius); padding: 18px 20px 16px;
  display: flex; flex-direction: column;
}
.sa-seksjonskort h2 { font-family: var(--sa-sans); font-size: 19px; font-weight: 700; margin: 0 0 6px; }
.sa-seksjonskort h2 a { text-decoration: none; color: var(--sa-ink); }
.sa-seksjonskort h2 a:hover { color: var(--sa-brand-800); }
.sa-seksjonskort > p { margin: 0 0 12px; font-size: 15.5px; color: var(--sa-ink-svak); }
.sa-seksjonskort ul { list-style: none; margin: 0 0 12px; padding: 0; }
.sa-seksjonskort li {
  font-size: 15px; padding: 5px 0; border-bottom: 1px solid var(--sa-papir-mork);
}
.sa-seksjonskort li:last-child { border-bottom: 0; }
.sa-seksjonskort a { text-decoration: none; }
.sa-seksjonskort a:hover { text-decoration: underline; }
.sa-antall {
  margin-top: auto; font-family: var(--sa-sans); font-size: 11px; font-weight: 600;
  letter-spacing: .11em; text-transform: uppercase; color: var(--sa-ink-svakest);
}

.sa-baand {
  background: var(--sa-kort); border: 1px solid var(--sa-kant);
  border-radius: var(--sa-radius); padding: 20px 22px; margin: 22px 0;
}
.sa-baand h2 {
  font-family: var(--sa-sans); font-size: 12px; font-weight: 700;
  letter-spacing: .13em; text-transform: uppercase; color: var(--sa-ink-svak);
  margin: 0 0 12px;
}
.sa-flis { display: flex; flex-wrap: wrap; gap: 7px; }
.sa-flis a {
  font-family: var(--sa-sans); font-size: 14px; text-decoration: none;
  padding: 5px 11px; border: 1px solid var(--sa-kant);
  border-radius: 100px; background: var(--sa-papir); color: var(--sa-ink);
}
.sa-flis a:hover { border-color: var(--sa-brand); color: var(--sa-brand-900); background: #fff; }

/* --- seksjonssiden ------------------------------------------------------ */

.sa-liste { list-style: none; margin: 0; padding: 0; }
.sa-liste li {
  display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px;
  padding: 11px 0; border-bottom: 1px solid var(--sa-papir-mork);
}
.sa-liste a { font-family: var(--sa-sans); font-weight: 600; font-size: 16px; text-decoration: none; }
.sa-liste a:hover { text-decoration: underline; }
.sa-liste span { font-size: 14.5px; color: var(--sa-ink-svak); }

/* --- prosasider --------------------------------------------------------- */

.sa-prosa { max-width: 74ch; }
.sa-prosa h2 { margin-top: 32px; }
.sa-prosa p { margin: 0 0 15px; }
.sa-prosa ul, .sa-prosa ol { margin: 0 0 16px; padding-left: 22px; }
.sa-prosa li { margin-bottom: 7px; }
.sa-prosa li::marker { color: var(--sa-brand); }
.sa-prosa table { width: 100%; border-collapse: collapse; margin: 0 0 18px; font-size: 15.5px; }
.sa-prosa th, .sa-prosa td { text-align: left; padding: 9px 12px 9px 0; border-bottom: 1px solid var(--sa-kant); }
.sa-prosa th { font-family: var(--sa-sans); font-size: 12px; text-transform: uppercase; letter-spacing: .09em; color: var(--sa-ink-svakest); border-bottom: 2px solid var(--sa-ink); }
.sa-tabellramme { overflow-x: auto; }

/* --- bunn --------------------------------------------------------------- */

.sa-bunn {
  background: var(--sa-brand-900); color: #b9d2d6;
  margin-top: 46px; padding: 36px 20px 22px;
  font-size: 15px;
}
.sa-bunn-inn {
  max-width: 1180px; margin: 0 auto;
  display: grid; grid-template-columns: 1.6fr 1fr 1fr 1fr; gap: 26px;
}
@media (max-width: 820px) { .sa-bunn-inn { grid-template-columns: 1fr 1fr; } }
@media (max-width: 520px) { .sa-bunn-inn { grid-template-columns: 1fr; } }
.sa-bunn h2 {
  font-family: var(--sa-sans); font-size: 11px; font-weight: 700;
  letter-spacing: .13em; text-transform: uppercase; color: #7fa9b1;
  margin: 0 0 11px;
}
.sa-bunn p { margin: 0 0 10px; color: #b9d2d6; }
.sa-bunn ul { list-style: none; margin: 0; padding: 0; }
.sa-bunn li { margin-bottom: 8px; }
.sa-bunn a { color: #e2eff1; text-decoration: none; }
.sa-bunn a:hover { color: #fff; text-decoration: underline; }
.sa-kolofon {
  max-width: 1180px; margin: 26px auto 0; padding: 16px 20px 0;
  border-top: 1px solid rgba(255,255,255,.14);
  font-family: var(--sa-sans); font-size: 12.5px; color: #8fb4bb;
  text-align: center;
}
.sa-kolofon a { color: #cfe4e7; }

/* --- søk ---------------------------------------------------------------- */

.sa-finn-felt { display: flex; gap: 8px; margin: 0 0 20px; }
.sa-finn-felt input {
  flex: 1 1 auto; min-width: 0; font: inherit; font-size: 17px; padding: 11px 14px;
  border: 1px solid var(--sa-kant-sterk); border-radius: var(--sa-radius); background: #fff;
}
.sa-finn-felt button {
  font-family: var(--sa-sans); font-weight: 600; font-size: 15px; padding: 11px 20px;
  border: 0; border-radius: var(--sa-radius); background: var(--sa-brand-800);
  color: #fff; cursor: pointer;
}
#sa-treff { list-style: none; margin: 0; padding: 0; }
#sa-treff li { padding: 10px 0; border-bottom: 1px solid var(--sa-papir-mork); }
#sa-treff a { font-family: var(--sa-sans); font-weight: 600; text-decoration: none; }
#sa-treff span { display: block; font-size: 13px; color: var(--sa-ink-svakest); }

/* --- mobilvern ---------------------------------------------------------- */

@media (max-width: 620px) {
  body { font-size: 16.5px; }
  .sa-ramme { padding: 18px 14px 44px; }
  .sa-innledning { padding: 22px 18px 20px; }
  .sa-manifest table { font-size: 15px; }
  .sa-manifest td, .sa-manifest th { padding-right: 8px; }
  .sa-manifest th:nth-child(2) { width: 4.6em; }
}
