@font-face{font-family:"Spectral";src:url(/filer/fonts/spectral-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Spectral";src:url(/filer/fonts/spectral-400i.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Public Sans";src:url(/filer/fonts/public-sans-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Public Sans";src:url(/filer/fonts/public-sans-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Public Sans";src:url(/filer/fonts/public-sans-400i.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url(/filer/fonts/jetbrains-mono-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
/* Inflammation.dk – tema "farvesnit".
   Monokrom grafit på lærebogspapir med eosin (fra hæmatoxylin-eosin-farvningen) som eneste accent.
   Mobil først. BEM med præfikset db-. */

:root {
  --papir: #F5F3EE;
  --ark: #FBFAF7;
  --blaek: #1D1C21;
  --grafit: #55535C;
  --taage: #6B6872;
  --streg: #CFCBC3;
  --dis: #EAE7E0;
  --eosin: #9E2560;
  --eosin-moerk: #7A1B49;
  --eosin-lys: #F4E3EB;
  --rosa: #F0A9C6;
  --fod-tekst: #CFCBC3;
  --fod-daempet: #A9A6AF;
  --fod-streg: #3A3940;

  --skrift-overskrift: "Spectral", "Iowan Old Style", "Palatino Linotype", Georgia, serif;
  --skrift-broed: "Public Sans", "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  --skrift-mono: "JetBrains Mono", Consolas, "Liberation Mono", monospace;

  --bredde: 1080px;
  --radius: 6px;
  --margen: 12.5rem;
  --spalte: 42rem;
  --luft: clamp(2.5rem, 6vw, 4.5rem);
}

/* ---------- Grundlag ---------- */
*, *::before, *::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
@media (prefers-reduced-motion: no-preference) { html { scroll-behavior: smooth; } }

body {
  margin: 0;
  background: var(--papir);
  color: var(--blaek);
  font-family: var(--skrift-broed);
  font-size: 1.0625rem;
  line-height: 1.65;
  overflow-wrap: break-word;
  text-rendering: optimizeLegibility;
}

img { display: block; max-width: 100%; height: auto; }

a {
  color: var(--eosin);
  text-decoration-line: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .2em;
}
a:hover { color: var(--eosin-moerk); text-decoration-thickness: 2px; }

:focus-visible { outline: 3px solid var(--eosin); outline-offset: 3px; border-radius: 2px; }

.db-skjult {
  position: absolute !important;
  width: 1px; height: 1px;
  margin: -1px; padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.db-springlink {
  position: absolute;
  left: 1rem; top: -5rem;
  z-index: 20;
  padding: .6rem 1rem;
  background: var(--blaek);
  color: var(--papir);
  border-radius: var(--radius);
  font-weight: 600;
  text-decoration: none;
}
.db-springlink:focus { top: 1rem; color: var(--papir); }

.db-ramme {
  width: 100%;
  max-width: var(--bredde);
  margin-inline: auto;
  padding-inline: clamp(1.1rem, 4vw, 2rem);
}

/* ---------- Etiketter og overskrifter ---------- */
.db-etiket {
  margin: 0 0 .9rem;
  font-family: var(--skrift-mono);
  font-size: .74rem;
  line-height: 1.5;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--grafit);
}
.db-etiket__skille { color: var(--eosin); margin-inline: .2rem; }

.db-titel {
  margin: 0;
  font-family: var(--skrift-overskrift);
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: -.012em;
  color: var(--blaek);
  text-wrap: balance;
  overflow-wrap: break-word;
  hyphens: manual;
}
.db-titel__hoved--linje { display: block; }
.db-titel__kursiv { font-style: italic; font-weight: 400; color: var(--eosin); letter-spacing: 0; }
.db-titel--forside { font-size: clamp(2.45rem, 1.5rem + 4.4vw, 4.4rem); }
.db-titel--side { font-size: clamp(2rem, 1.45rem + 2.5vw, 3.15rem); }
.db-titel--sektion { font-size: clamp(1.65rem, 1.3rem + 1.4vw, 2.3rem); }

/* ---------- Sidehoved med minimal, inline menu ---------- */
.db-hoved {
  background: var(--papir);
  border-bottom: 3px double var(--blaek);
}
.db-hoved__indre {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: .9rem 2.2rem;
  padding-block: 1rem .85rem;
}
.db-hoved__logo { display: inline-block; line-height: 0; border-radius: var(--radius); }
.db-hoved__logo svg { display: block; width: auto; height: 3.1rem; }

.db-menu { flex: 1 1 100%; }
.db-menu__liste {
  display: flex;
  flex-wrap: wrap;
  gap: .15rem 1.2rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.db-menu__link {
  display: inline-block;
  padding-block: .3rem .2rem;
  border-bottom: 2px solid transparent;
  color: var(--blaek);
  font-size: .9rem;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
}
.db-menu__link:hover { color: var(--eosin); border-bottom-color: currentColor; }
.db-menu__link--aktiv { color: var(--eosin); border-bottom-color: var(--eosin); }

@media (min-width: 900px) {
  .db-hoved__indre { flex-wrap: nowrap; padding-block: 1.2rem 1rem; }
  .db-hoved__logo svg { height: 3.7rem; }
  .db-menu { flex: 0 1 auto; }
  .db-menu__liste { justify-content: flex-end; gap: .2rem 1.6rem; }
  .db-menu__link { font-size: .95rem; }
}

/* ---------- Bogens raster: margen + spalte ---------- */
.db-bog { display: grid; gap: .9rem 2.5rem; grid-template-columns: minmax(0, 1fr); }
.db-bog__margin, .db-bog__spalte { min-width: 0; }
.db-margin { display: none; }

@media (min-width: 900px) {
  .db-bog { grid-template-columns: var(--margen) minmax(0, 1fr); }
  .db-bog > .db-bog__margin { grid-column: 1; grid-row: 1; }
  .db-bog > .db-bog__spalte { grid-column: 2; grid-row: 1; }
}

/* ---------- Forside: titelblad ---------- */
.db-titelblad { padding-block: clamp(2rem, 5vw, 4rem) var(--luft); }
.db-titelblad__gitter { display: grid; gap: 2.5rem; }
.db-titelblad__ingress {
  max-width: 34em;
  margin: 1.3rem 0 2rem;
  font-size: clamp(1.1rem, 1rem + .45vw, 1.3rem);
  line-height: 1.55;
  color: var(--grafit);
}
@media (min-width: 860px) {
  .db-titelblad__gitter { grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); align-items: center; gap: 3.5rem; }
  .db-titelblad__tekst:only-child { grid-column: 1 / -1; max-width: 46rem; }
}

/* A–Å-linjen */
.db-abc { padding-top: .9rem; border-top: 1px solid var(--blaek); }
.db-abc__titel {
  margin: 0 0 .6rem;
  font-family: var(--skrift-mono);
  font-size: .72rem;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--grafit);
}
.db-abc__liste { display: flex; flex-wrap: wrap; gap: .3rem; margin: 0; padding: 0; list-style: none; }
.db-abc__link, .db-abc__tom {
  display: grid;
  place-items: center;
  width: 2.15rem;
  height: 2.35rem;
  font-family: var(--skrift-overskrift);
  font-size: 1.15rem;
  line-height: 1;
}
.db-abc__link {
  background: var(--ark);
  border: 1px solid var(--streg);
  border-radius: var(--radius);
  color: var(--eosin);
  font-weight: 500;
  text-decoration: none;
}
.db-abc__link:hover { background: var(--eosin); border-color: var(--eosin); color: var(--ark); }
.db-abc__tom { color: var(--taage); font-style: italic; }

/* Figurer i papirklip-stil: et forskudt papirlag bag billedet */
.db-figur { margin: 0; padding: 0 .7rem .7rem 0; }
.db-figur__ramme { position: relative; }
.db-figur__ramme::before {
  content: "";
  position: absolute;
  inset: .7rem -.7rem -.7rem .7rem;
  background: var(--eosin-lys);
  border: 1px solid var(--streg);
  border-radius: var(--radius);
}
.db-figur__billede {
  position: relative;
  width: 100%;
  background: var(--dis);
  border: 1px solid var(--blaek);
  border-radius: var(--radius);
}
.db-figur__nr {
  display: block;
  margin-top: 1.15rem;
  font-family: var(--skrift-mono);
  font-size: .72rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  text-align: right;
  color: var(--grafit);
}

/* ---------- Indholdsfortegnelse ---------- */
.db-oversigt { padding-block: var(--luft); border-top: 1px solid var(--streg); }
.db-oversigt--liste, .db-oversigt--fejl { border-top: 0; padding-top: 1rem; }
.db-sektionshoved { max-width: 40rem; margin-bottom: 2rem; }
.db-sektionshoved__tekst { margin: .9rem 0 0; color: var(--grafit); }

.db-toc { border-bottom: 1px solid var(--blaek); }
.db-toc__del {
  display: grid;
  gap: .7rem 2.5rem;
  padding-block: 1.3rem 1.1rem;
  border-top: 1px solid var(--blaek);
}
.db-toc__deltitel {
  margin: 0;
  font-family: var(--skrift-overskrift);
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.25;
}
.db-toc__delnr {
  display: block;
  margin-bottom: .25rem;
  font-family: var(--skrift-mono);
  font-size: .72rem;
  font-weight: 400;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--eosin);
}
.db-toc__liste { display: grid; margin: 0; padding: 0; list-style: none; }
.db-toc__punkt { padding-block: .55rem .85rem; border-top: 1px dotted var(--streg); }
.db-toc__punkt:first-child { border-top: 0; padding-top: .1rem; }
.db-toc__link {
  display: flex;
  align-items: baseline;
  gap: .75rem;
  color: var(--blaek);
  font-family: var(--skrift-overskrift);
  font-size: 1.22rem;
  font-weight: 500;
  line-height: 1.3;
  text-decoration: none;
}
.db-toc__navn { text-decoration: underline; text-decoration-color: var(--streg); text-decoration-thickness: 1px; text-underline-offset: .22em; }
.db-toc__link:hover .db-toc__navn, .db-toc__link[aria-current="page"] .db-toc__navn { color: var(--eosin); text-decoration-color: currentColor; }
.db-toc__nr { flex: none; min-width: 1.9rem; font-family: var(--skrift-mono); font-size: .8rem; font-weight: 400; color: var(--eosin); }
.db-toc__tekst { margin: .3rem 0 0 2.65rem; font-size: .95rem; line-height: 1.55; color: var(--grafit); }

@media (min-width: 760px) {
  .db-toc__del { grid-template-columns: var(--margen) minmax(0, 1fr); }
}
@media (min-width: 1000px) {
  .db-toc__liste { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 2.5rem; }
  .db-toc__punkt:nth-child(2) { border-top: 0; padding-top: .1rem; }
}

/* ---------- Indledning på forsiden ---------- */
.db-indledning { padding-block: var(--luft); border-top: 1px solid var(--streg); }
@media (min-width: 900px) {
  .db-indledning__etiket { position: sticky; top: 1.5rem; padding-top: .7rem; border-top: 3px solid var(--eosin); }
}

/* ---------- Stikordsregister ---------- */
.db-stikord {
  padding-block: var(--luft);
  background: var(--ark);
  border-top: 1px solid var(--streg);
  border-bottom: 1px solid var(--streg);
  scroll-margin-top: 1rem;
}
.db-register { column-gap: 2.5rem; }
.db-register__gruppe { break-inside: avoid; margin-bottom: 1.7rem; scroll-margin-top: 1.5rem; }
.db-register__bogstav {
  margin: 0 0 .35rem;
  padding-bottom: .3rem;
  border-bottom: 1px solid var(--blaek);
  font-family: var(--skrift-overskrift);
  font-size: 2rem;
  font-style: italic;
  font-weight: 400;
  line-height: 1;
  color: var(--eosin);
}
.db-register__liste { margin: 0; padding: 0; list-style: none; }
.db-register__punkt {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: .75rem;
  padding-block: .3rem;
  border-bottom: 1px dotted var(--streg);
}
.db-register__link { color: var(--blaek); text-decoration-color: var(--streg); }
.db-register__link:hover { color: var(--eosin); text-decoration-color: currentColor; }
.db-register__kap { flex: none; font-family: var(--skrift-mono); font-size: .72rem; color: var(--grafit); white-space: nowrap; }
.db-register__gruppe:target .db-register__bogstav { background: var(--eosin-lys); }

@media (min-width: 600px) { .db-register { columns: 2; } }
@media (min-width: 900px) { .db-register { columns: 3; column-rule: 1px solid var(--dis); } }

/* ---------- Kapitelsider ---------- */
.db-kapitel__hoved { padding-block: clamp(1.8rem, 5vw, 3.4rem) 1.6rem; }
.db-kapitel__nummer {
  display: flex;
  align-items: baseline;
  gap: .6rem;
  margin: 0;
  padding-top: .55rem;
  border-top: 3px solid var(--eosin);
  max-width: 10rem;
}
.db-kapitel__nummer-tekst {
  font-family: var(--skrift-mono);
  font-size: .72rem;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--grafit);
}
.db-kapitel__nummer-tal {
  font-family: var(--skrift-overskrift);
  font-size: 2rem;
  font-style: italic;
  font-weight: 400;
  line-height: 1;
  color: var(--eosin);
}
@media (min-width: 900px) {
  .db-kapitel__nummer { flex-direction: column; gap: .35rem; }
  .db-kapitel__nummer-tal { font-size: 3.6rem; }
}

.db-spor__liste {
  display: flex;
  flex-wrap: wrap;
  gap: .2rem .5rem;
  margin: 0 0 1.1rem;
  padding: 0;
  list-style: none;
  font-family: var(--skrift-mono);
  font-size: .74rem;
  letter-spacing: .03em;
  color: var(--grafit);
}
.db-spor__punkt + .db-spor__punkt::before { content: "/"; margin-right: .5rem; color: var(--eosin); }
.db-spor__link { color: var(--grafit); }
.db-spor__link:hover { color: var(--eosin); }

.db-kapitel__ingress {
  max-width: var(--spalte);
  margin: 1.1rem 0 .8rem;
  font-size: clamp(1.1rem, 1rem + .4vw, 1.27rem);
  line-height: 1.55;
  color: var(--grafit);
}
.db-kapitel__meta {
  margin: 0;
  font-family: var(--skrift-mono);
  font-size: .74rem;
  letter-spacing: .03em;
  color: var(--grafit);
}
.db-kapitel__figur { margin-bottom: 2.2rem; }
.db-kapitel__figur .db-figur { max-width: calc(var(--spalte) + 6rem); }
.db-kapitel__krop { padding-bottom: var(--luft); }

/* Kapitellisten i margenen */
@media (min-width: 900px) {
  .db-margin {
    display: block;
    position: sticky;
    top: 1.5rem;
    align-self: start;
    font-size: .88rem;
  }
}
.db-margin__titel {
  margin: 0 0 .6rem;
  font-family: var(--skrift-mono);
  font-size: .72rem;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--grafit);
}
.db-margin__liste { margin: 0; padding: 0; list-style: none; border-left: 1px solid var(--streg); }
.db-margin__link {
  display: flex;
  gap: .55rem;
  margin-left: -1px;
  padding: .3rem 0 .3rem .75rem;
  border-left: 2px solid transparent;
  color: var(--grafit);
  line-height: 1.35;
  text-decoration: none;
}
.db-margin__link:hover { color: var(--eosin); }
.db-margin__link:hover .db-margin__navn { text-decoration: underline; }
.db-margin__link[aria-current="page"] { color: var(--eosin); border-left-color: var(--eosin); font-weight: 600; }
.db-margin__nr { flex: none; padding-top: .12rem; font-family: var(--skrift-mono); font-size: .7rem; font-weight: 400; }

/* ---------- Brødtekst ---------- */
.db-tekst { max-width: var(--spalte); overflow-wrap: anywhere; hyphens: auto; }
.db-tekst > :first-child { margin-top: 0; }
.db-tekst > :last-child { margin-bottom: 0; }
.db-tekst p, .db-tekst ul, .db-tekst ol, .db-tekst blockquote, .db-tekst table { margin: 0 0 1.15em; }

.db-tekst h2 {
  position: relative;
  margin: 2.3em 0 .7em;
  padding-top: .85rem;
  border-top: 1px solid var(--streg);
  font-family: var(--skrift-overskrift);
  font-size: clamp(1.5rem, 1.25rem + 1vw, 1.95rem);
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -.01em;
  hyphens: manual;
}
.db-tekst h2::before {
  content: "";
  position: absolute;
  top: -2px; left: 0;
  width: 2.75rem; height: 3px;
  background: var(--eosin);
}
.db-tekst h3 {
  margin: 1.8em 0 .45em;
  font-family: var(--skrift-overskrift);
  font-size: 1.35rem;
  font-style: italic;
  font-weight: 400;
  line-height: 1.3;
  color: var(--eosin);
  hyphens: manual;
}
.db-tekst h4 {
  margin: 1.6em 0 .45em;
  font-family: var(--skrift-mono);
  font-size: .8rem;
  font-weight: 400;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--blaek);
}
.db-tekst h2 em, .db-tekst h3 em { color: var(--eosin); }
.db-tekst strong { font-weight: 600; }

.db-tekst ul, .db-tekst ol { padding-left: 1.35rem; }
.db-tekst li { margin-bottom: .35em; padding-left: .2rem; }
.db-tekst li > ul, .db-tekst li > ol { margin: .35em 0 .2em; }
.db-tekst ul { list-style: square; }
.db-tekst ul ul { list-style: "– "; }
.db-tekst ul > li::marker { color: var(--eosin); }
.db-tekst ol > li::marker { color: var(--eosin); font-family: var(--skrift-mono); font-size: .85em; }

.db-tekst blockquote {
  margin: 1.8em 0;
  padding: .15rem 0 .15rem 1.3rem;
  border-left: 3px solid var(--eosin);
  font-family: var(--skrift-overskrift);
  font-size: 1.25rem;
  font-style: italic;
  line-height: 1.5;
}
.db-tekst blockquote p { margin-bottom: .6em; }

/* Tabeller: vandret rulning som sikkerhed, men cellerne må bryde, så tabellen normalt passer */
.db-tekst table {
  display: block;
  max-width: 100%;
  overflow-x: auto;
  border-collapse: collapse;
  font-size: .9rem;
  line-height: 1.45;
}
.db-tekst th, .db-tekst td {
  padding: .55rem .8rem .55rem 0;
  border-bottom: 1px solid var(--streg);
  text-align: left;
  vertical-align: top;
}
.db-tekst th:last-child, .db-tekst td:last-child { padding-right: 0; }
.db-tekst thead th {
  border-bottom: 2px solid var(--blaek);
  font-family: var(--skrift-mono);
  font-size: .7rem;
  font-weight: 400;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--grafit);
}
@media (min-width: 700px) {
  .db-tekst table { font-size: .95rem; }
  .db-tekst th, .db-tekst td { overflow-wrap: normal; padding-right: 1.1rem; }
}

/* Ordbogen: kapitlets h2 er bogstavhoveder eller grupper */
.db-side--ordbog .db-tekst h2 { font-style: italic; font-weight: 400; color: var(--eosin); }
.db-side--ordbog .db-tekst h3 { font-style: normal; font-weight: 500; color: var(--blaek); font-size: 1.2rem; }

/* ---------- Spørgsmål og svar ---------- */
.db-spoergsmaal {
  max-width: var(--spalte);
  margin-top: 3rem;
  padding: 1.4rem clamp(1rem, 3vw, 1.75rem) .6rem;
  background: var(--ark);
  border: 1px solid var(--streg);
  border-radius: var(--radius);
}
.db-spoergsmaal__titel {
  margin: 0 0 .5rem;
  font-family: var(--skrift-overskrift);
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.2;
}
.db-spoergsmaal__par { padding-block: .9rem; border-top: 1px solid var(--dis); }
.db-spoergsmaal__q {
  margin: 0 0 .3rem;
  font-family: var(--skrift-overskrift);
  font-size: 1.15rem;
  font-weight: 500;
  line-height: 1.35;
}
.db-spoergsmaal__a { margin: 0; overflow-wrap: anywhere; }

/* ---------- Kilder ---------- */
.db-kilder {
  max-width: var(--spalte);
  margin-top: 2.6rem;
  padding-top: 1rem;
  border-top: 1px solid var(--blaek);
}
.db-kilder__titel {
  margin: 0 0 .8rem;
  font-family: var(--skrift-mono);
  font-size: .76rem;
  font-weight: 400;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--grafit);
}
.db-kilder__liste { margin: 0; padding: 0; list-style: none; counter-reset: kilde; font-size: .95rem; }
.db-kilder__punkt {
  position: relative;
  margin-bottom: .55rem;
  padding-left: 2.5rem;
  counter-increment: kilde;
  overflow-wrap: anywhere;
}
.db-kilder__punkt::before {
  content: "[" counter(kilde) "]";
  position: absolute;
  left: 0; top: .2rem;
  font-family: var(--skrift-mono);
  font-size: .78rem;
  color: var(--eosin);
}
.db-kilder__vaert { display: block; font-family: var(--skrift-mono); font-size: .72rem; color: var(--grafit); }

/* ---------- Forrige og næste kapitel ---------- */
.db-bladre { display: grid; gap: .9rem; max-width: var(--spalte); margin-top: 3rem; }
.db-bladre__link {
  display: flex;
  flex-direction: column;
  gap: .3rem;
  padding: .95rem 1.1rem;
  background: var(--ark);
  border: 1px solid var(--blaek);
  border-radius: var(--radius);
  color: var(--blaek);
  text-decoration: none;
}
.db-bladre__link:hover { color: var(--blaek); border-color: var(--eosin); box-shadow: 5px 5px 0 var(--eosin-lys); }
.db-bladre__link:hover .db-bladre__navn { text-decoration: underline; text-decoration-color: var(--eosin); }
.db-bladre__retning {
  font-family: var(--skrift-mono);
  font-size: .72rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--eosin);
}
.db-bladre__navn { font-family: var(--skrift-overskrift); font-size: 1.15rem; font-weight: 500; line-height: 1.3; }
.db-bladre__nr { font-family: var(--skrift-mono); font-size: .78rem; font-weight: 400; color: var(--grafit); margin-right: .25rem; }
@media (min-width: 620px) {
  .db-bladre { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .db-bladre__link--naeste { grid-column: 2; text-align: right; }
}

/* ---------- Kontakt ---------- */
.db-formular {
  position: relative;
  display: grid;
  gap: 1.1rem;
  max-width: 36rem;
  margin-top: 2rem;
  padding: clamp(1.1rem, 3vw, 1.75rem);
  background: var(--ark);
  border: 1px solid var(--blaek);
  border-radius: var(--radius);
}
.db-formular__felt { display: grid; gap: .35rem; }
.db-formular label { font-size: .95rem; font-weight: 600; }
.db-formular input, .db-formular textarea {
  width: 100%;
  padding: .65rem .75rem;
  background: #FFFFFF;
  border: 1px solid var(--grafit);
  border-radius: var(--radius);
  color: var(--blaek);
  font: inherit;
  line-height: 1.4;
}
.db-formular textarea { min-height: 9rem; resize: vertical; }
.db-formular input:focus-visible, .db-formular textarea:focus-visible {
  outline: 3px solid var(--eosin);
  outline-offset: 1px;
  border-color: var(--eosin);
}
.db-formular__faelde {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.db-knap {
  justify-self: start;
  padding: .85rem 1.4rem;
  background: var(--eosin);
  border: 1px solid var(--eosin);
  border-radius: var(--radius);
  color: var(--ark);
  font: 600 1rem/1.1 var(--skrift-broed);
  cursor: pointer;
}
.db-knap:hover { background: var(--eosin-moerk); border-color: var(--eosin-moerk); }
.db-kontakt [role="status"] {
  max-width: 36rem;
  margin: 1.5rem 0 0;
  padding: .9rem 1.1rem;
  background: var(--eosin-lys);
  border-left: 4px solid var(--eosin);
  border-radius: var(--radius);
  font-weight: 600;
}

/* ---------- 404 ---------- */
.db-fejl__tekst { margin: 0 0 1.4rem; }
.db-fejl .db-abc { max-width: 34rem; }

/* ---------- Forbehold (sundhed) over footeren ---------- */
.db-note { padding-block: .5rem var(--luft); }
.db-side--home .db-note { padding-top: var(--luft); }
.db-note__boks {
  display: grid;
  gap: .35rem 1.4rem;
  padding: 1.05rem 1.25rem;
  background: var(--eosin-lys);
  border: 1px solid var(--blaek);
  border-left: 6px solid var(--eosin);
  border-radius: var(--radius);
}
.db-note__maerke {
  margin: 0;
  font-family: var(--skrift-mono);
  font-size: .74rem;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--eosin);
}
.db-note__tekst { margin: 0; font-size: 1rem; line-height: 1.55; }
@media (min-width: 700px) {
  .db-note__boks { grid-template-columns: auto minmax(0, 1fr); align-items: baseline; }
}
@media (min-width: 900px) {
  .db-note__boks { max-width: calc(var(--spalte) + 2rem); margin-left: calc(var(--margen) + 2.5rem); }
}

/* ---------- Footer i kolonner ---------- */
.db-fod {
  padding-block: 3rem 1.5rem;
  background: var(--blaek);
  color: var(--papir);
  font-size: .95rem;
}
.db-fod a { color: var(--papir); text-decoration-color: var(--fod-daempet); }
.db-fod a:hover, .db-fod a[aria-current="page"] { color: var(--rosa); text-decoration-color: currentColor; }
.db-fod :focus-visible { outline-color: var(--rosa); }
.db-fod__gitter { display: grid; gap: 2.2rem 3rem; }
.db-fod__navn {
  margin: 0 0 .5rem;
  font-family: var(--skrift-overskrift);
  font-size: 1.65rem;
  font-weight: 500;
  line-height: 1.1;
}
.db-fod__navn-kursiv { font-style: italic; font-weight: 400; color: var(--rosa); }
.db-fod__tagline { max-width: 22rem; margin: 0; color: var(--fod-tekst); line-height: 1.55; }
.db-fod__titel {
  margin: 0 0 .9rem;
  font-family: var(--skrift-mono);
  font-size: .72rem;
  font-weight: 400;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--rosa);
}
.db-fod__liste { display: grid; gap: .5rem; margin: 0; padding: 0; list-style: none; }
.db-fod__liste--kapitler .db-fod__link { text-decoration: none; }
.db-fod__kapnavn { text-decoration: underline; text-decoration-color: var(--fod-daempet); text-decoration-thickness: 1px; text-underline-offset: .2em; }
.db-fod__link:hover .db-fod__kapnavn, .db-fod__link[aria-current="page"] .db-fod__kapnavn { text-decoration-color: currentColor; }
.db-fod__nr { margin-right: .2rem; font-family: var(--skrift-mono); font-size: .72rem; color: var(--fod-daempet); }
.db-fod__bund {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: .4rem 2rem;
  margin-top: 2.6rem;
  padding-top: 1.2rem;
  border-top: 1px solid var(--fod-streg);
  font-family: var(--skrift-mono);
  font-size: .72rem;
  letter-spacing: .03em;
  color: var(--fod-tekst);
}
.db-fod__bund p { margin: 0; }

@media (min-width: 560px) {
  .db-fod__liste--kapitler { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 1.5rem; }
}
@media (min-width: 700px) {
  .db-fod__gitter { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .db-fod__kolonne--navn { grid-column: 1 / -1; }
}
@media (min-width: 1000px) {
  .db-fod__gitter { grid-template-columns: minmax(0, 1fr) minmax(0, 2fr) minmax(0, .9fr); }
  .db-fod__kolonne--navn { grid-column: auto; }
}

@media print {
  .db-hoved, .db-margin, .db-bladre, .db-fod, .db-springlink { display: none; }
  body { background: #FFFFFF; }
}


