@font-face{font-family:"Red Hat Display";src:url(/a/fonts/red-hat-display-300.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:"Red Hat Display";src:url(/a/fonts/red-hat-display-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Spectral";src:url(/a/fonts/spectral-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Spectral";src:url(/a/fonts/spectral-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Spectral";src:url(/a/fonts/spectral-400i.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url(/a/fonts/ibm-plex-mono-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}
/* Søborg Bydelsguide – tema "tagrygge".
   Kølig lysegrå bund, tomatrød signalfarve, mosepetrol som dyb kontrast.
   Red Hat Display (stor og tynd) til overskrifter, Spectral til brødtekst, IBM Plex Mono til årstal og tal. */

:root {
  --tf-bund: #eef2f5;
  --tf-flade: #ffffff;
  --tf-blaek: #14232b;
  --tf-graa: #4b5b66;
  --tf-tomat: #cc3519;
  --tf-tomat-moerk: #a92b13;
  --tf-petrol: #0c4a50;
  --tf-nat: #0a3d42;
  --tf-koral: #ffb4a2;
  --tf-tone: #d7e9ea;
  --tf-linje: #cfd8de;
  --tf-ramme: #6b7b86;
  --tf-r: 6px;
  --tf-max: 960px;
  --tf-sans: "Red Hat Display", "Segoe UI", system-ui, sans-serif;
  --tf-serif: "Spectral", Georgia, "Times New Roman", serif;
  --tf-mono: "IBM Plex Mono", ui-monospace, "Cascadia Mono", monospace;
}

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

html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }

body {
  margin: 0;
  background: var(--tf-bund);
  color: var(--tf-blaek);
  font: 400 1.0625rem/1.6 var(--tf-serif);
  overflow-wrap: break-word;
}

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

a { color: var(--tf-petrol); }

:focus-visible { outline: 3px solid var(--tf-tomat); outline-offset: 2px; }

.tf-spring {
  position: absolute;
  left: 1rem;
  top: 0;
  z-index: 10;
  padding: .55rem .9rem;
  background: var(--tf-nat);
  color: #fff;
  font: 500 1rem/1.2 var(--tf-sans);
  border-radius: 0 0 var(--tf-r) var(--tf-r);
  transform: translateY(-120%);
}
.tf-spring:focus { transform: none; outline-color: var(--tf-koral); }

/* ---------- Top: logo og menu på én linje ---------- */

.tf-top {
  background: var(--tf-flade);
  border-top: 5px solid var(--tf-tomat);
  border-bottom: 1px solid var(--tf-linje);
}
.tf-top-indre {
  max-width: var(--tf-max);
  margin: 0 auto;
  padding: .7rem 1rem .55rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: .45rem 1.5rem;
}
.tf-logo { display: block; flex: none; max-width: 100%; border-radius: 2px; }
.tf-logo svg { display: block; height: 1.95rem; width: auto; max-width: 100%; }

.tf-menu-liste {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0 1rem;
}
.tf-menu-link {
  display: inline-block;
  padding: .3rem 0 .25rem;
  color: var(--tf-blaek);
  font: 500 .95rem/1.3 var(--tf-sans);
  text-decoration: none;
  box-shadow: inset 0 -2px 0 transparent;
}
.tf-menu-link:hover { color: var(--tf-tomat); box-shadow: inset 0 -2px 0 var(--tf-tomat); }
.tf-menu-link[aria-current="page"] { color: var(--tf-tomat); box-shadow: inset 0 -3px 0 var(--tf-tomat); }

@media (min-width: 900px) {
  .tf-top-indre { padding-top: .85rem; padding-bottom: .7rem; }
  .tf-logo svg { height: 2.15rem; }
}

/* ---------- Fælles byggesten ---------- */

.tf-overline {
  margin: 1.1rem 0 .35rem;
  color: var(--tf-tomat);
  font: 500 .78rem/1.3 var(--tf-mono);
  letter-spacing: .08em;
  text-transform: uppercase;
}

.tf-sektionshoved { margin: 0 0 1rem; }
.tf-sektionstitel {
  margin: 0 0 .4rem;
  color: var(--tf-petrol);
  font: 300 clamp(1.9rem, 6vw, 2.75rem)/1.05 var(--tf-sans);
  letter-spacing: -.025em;
}
.tf-sektionstekst { margin: 0; max-width: 40rem; color: var(--tf-graa); }

.tf-kildelinje {
  margin: .55rem 0 0;
  color: var(--tf-graa);
  font: 400 .82rem/1.4 var(--tf-sans);
}
.tf-kildelinje a { text-decoration-color: var(--tf-tomat); text-underline-offset: .15em; }

.tf-knap {
  display: inline-block;
  padding: .65rem 1.05rem;
  border: 2px solid #fff;
  border-radius: var(--tf-r);
  background: #fff;
  color: var(--tf-tomat);
  font: 500 1rem/1.2 var(--tf-sans);
  text-decoration: none;
  cursor: pointer;
}
.tf-knap:hover { background: #ffe9e3; border-color: #ffe9e3; }
.tf-knap-kontur { background: transparent; color: #fff; }
.tf-knap-kontur:hover { background: rgba(255, 255, 255, .14); border-color: #fff; }
.tf-knap-tomat { background: var(--tf-tomat); border-color: var(--tf-tomat); color: #fff; }
.tf-knap-tomat:hover { background: var(--tf-tomat-moerk); border-color: var(--tf-tomat-moerk); }

.tf-pil {
  color: var(--tf-petrol);
  font: 500 1rem/1.3 var(--tf-sans);
  text-decoration: underline;
  text-decoration-color: var(--tf-tomat);
  text-decoration-thickness: 2px;
  text-underline-offset: .2em;
}
.tf-pil::after { content: " \2192"; }

/* Billeder med synlig AI-mærkning */
.tf-foto { position: relative; margin: 0; overflow: hidden; background: var(--tf-tone); }
.tf-foto-billede { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.tf-maerke {
  position: absolute;
  left: .5rem;
  bottom: .5rem;
  margin: 0;
  padding: .18rem .5rem;
  border-radius: 4px;
  background: var(--tf-nat);
  color: #fff;
  font: 500 .7rem/1.35 var(--tf-mono);
  letter-spacing: .02em;
}

/* ---------- Forside: åbning ---------- */

.tf-aabning {
  max-width: var(--tf-max);
  margin: 1rem auto 0;
  padding: 0 1rem;
  display: grid;
}
.tf-aabning-felt {
  position: relative;
  padding: 1.15rem 1.2rem 1.4rem;
  border-radius: var(--tf-r) var(--tf-r) 0 0;
  background: var(--tf-tomat);
  color: #fff;
}
.tf-aabning-felt :focus-visible { outline-color: #fff; }
.tf-aabning-uden-foto .tf-aabning-felt { border-radius: var(--tf-r); }
.tf-aabning-tag { position: absolute; top: 1rem; right: 1.1rem; width: 4.25rem; height: auto; }
.tf-aabning-overline { margin: 0; padding-right: 5.5rem; color: #fff; }
.tf-forside-titel {
  margin: 1.6rem 0 .65rem;
  font: 300 clamp(3.6rem, 16vw, 6.6rem)/.92 var(--tf-sans);
  letter-spacing: -.04em;
}
.tf-forside-navn { display: block; }
.tf-forside-under {
  display: block;
  margin-top: .55rem;
  max-width: 22rem;
  font-size: clamp(1.45rem, 4.6vw, 1.75rem);
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: -.01em;
}
.tf-forside-ingress { margin: 0 0 1.15rem; max-width: 30rem; font-size: 1.15rem; line-height: 1.45; }
.tf-aabning-knapper { margin: 0; display: flex; flex-wrap: wrap; gap: .6rem; }
.tf-aabning-foto { border-radius: 0 0 var(--tf-r) var(--tf-r); }

@media (min-width: 760px) {
  .tf-aabning { margin-top: 1.5rem; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); }
  .tf-aabning-uden-foto { grid-template-columns: 1fr; }
  .tf-aabning-felt {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 27rem;
    padding: 1.6rem 1.9rem 1.9rem;
    border-radius: var(--tf-r) 0 0 var(--tf-r);
  }
  .tf-aabning-overline { position: absolute; top: 1.6rem; left: 1.9rem; }
  .tf-aabning-tag { top: 1.4rem; right: 1.6rem; width: 5.5rem; }
  .tf-aabning-foto { border-radius: 0 var(--tf-r) var(--tf-r) 0; }
  .tf-aabning-foto .tf-foto-billede { height: 100%; aspect-ratio: auto; }
}

/* ---------- Forside: nøgletal ---------- */

.tf-tal { max-width: var(--tf-max); margin: 1.4rem auto 0; padding: 0 1rem; }
.tf-tal-titel {
  margin: 0 0 .5rem;
  color: var(--tf-tomat);
  font: 500 .78rem/1.3 var(--tf-mono);
  letter-spacing: .08em;
  text-transform: uppercase;
}
.tf-tal-liste {
  margin: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  background: var(--tf-flade);
  border-radius: var(--tf-r);
  overflow: hidden;
}
.tf-tal-punkt {
  display: flex;
  flex-direction: column-reverse;
  justify-content: flex-end;
  padding: .85rem 1rem .95rem;
  border-top: 1px solid var(--tf-linje);
}
.tf-tal-punkt:nth-child(-n+2) { border-top: 0; }
.tf-tal-punkt:nth-child(even) { border-left: 1px solid var(--tf-linje); }
.tf-tal-vaerdi {
  margin: 0;
  color: var(--tf-tomat);
  font: 300 clamp(2.1rem, 8vw, 2.9rem)/1 var(--tf-sans);
  letter-spacing: -.03em;
}
.tf-tal-tekst { margin-top: .35rem; color: var(--tf-graa); font: 500 .88rem/1.35 var(--tf-sans); }

@media (min-width: 760px) {
  .tf-tal-liste { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .tf-tal-punkt { border-top: 0; padding: 1.1rem 1.2rem 1.2rem; }
  .tf-tal-punkt + .tf-tal-punkt { border-left: 1px solid var(--tf-linje); }
}

/* ---------- Forside: kapitler ---------- */

.tf-kapitler, .tf-aarstal, .tf-forside-tekst {
  max-width: var(--tf-max);
  margin: 2.4rem auto 0;
  padding: 0 1rem;
}

.tf-kapitel {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--tf-r);
  overflow: hidden;
  background: var(--tf-flade);
}
.tf-kapitel:focus-within { outline: 3px solid var(--tf-tomat); outline-offset: 2px; }
.tf-kapitel-krop { padding: 1rem 1.1rem 1.2rem; }
.tf-kapitel-nr {
  margin: 0 0 .35rem;
  color: var(--tf-tomat);
  font: 500 .75rem/1.3 var(--tf-mono);
  letter-spacing: .08em;
  text-transform: uppercase;
}
.tf-kapitel-titel { margin: 0 0 .45rem; font: 400 1.45rem/1.15 var(--tf-sans); letter-spacing: -.01em; }
.tf-kapitel-link { color: var(--tf-blaek); text-decoration: none; }
.tf-kapitel-link::after { content: ""; position: absolute; inset: 0; }
.tf-kapitel-link:focus-visible { outline: none; }
.tf-kapitel:hover .tf-kapitel-link { text-decoration: underline; text-decoration-color: var(--tf-tomat); text-decoration-thickness: 2px; text-underline-offset: .15em; }
.tf-kapitel-tekst { margin: 0; color: var(--tf-graa); font-size: 1rem; line-height: 1.5; }

.tf-kapitel-stor .tf-kapitel-krop { border-top: 5px solid var(--tf-tomat); }
.tf-kapitel-stor .tf-kapitel-titel { font-weight: 300; font-size: clamp(1.65rem, 5.5vw, 2.3rem); line-height: 1.08; letter-spacing: -.025em; }

.tf-kapitel-par { display: grid; gap: 1rem; margin-top: 1rem; }

.tf-kapitel-blok { background: var(--tf-tone); }
.tf-kapitel-blok .tf-kapitel-nr { color: var(--tf-petrol); }
.tf-kapitel-blok .tf-kapitel-titel { color: var(--tf-petrol); }
.tf-kapitel-blok .tf-kapitel-link { color: var(--tf-petrol); }
.tf-kapitel-blok .tf-kapitel-tekst { color: var(--tf-blaek); }

@media (min-width: 760px) {
  .tf-kapitel-stor { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); }
  .tf-kapitel-stor.tf-kapitel-uden-foto { grid-template-columns: 1fr; }
  .tf-kapitel-stor .tf-kapitel-foto .tf-foto-billede { height: 100%; min-height: 19rem; aspect-ratio: auto; }
  .tf-kapitel-stor .tf-kapitel-krop {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 1.6rem 1.7rem;
    border-top: 0;
    border-left: 5px solid var(--tf-tomat);
  }
  .tf-kapitel-par { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); }
  .tf-kapitel-blok .tf-kapitel-foto { order: 2; }
  .tf-kapitel-blok .tf-kapitel-foto .tf-foto-billede { aspect-ratio: 4 / 3; }
}

/* Nummereret register */
.tf-register {
  list-style: none;
  margin: 1rem 0 0;
  padding: 0 1rem;
  background: var(--tf-flade);
  border-radius: var(--tf-r);
}
.tf-register-punkt {
  display: grid;
  grid-template-columns: 2.4rem minmax(0, 1fr);
  gap: .5rem;
  padding: .85rem 0;
  border-top: 1px solid var(--tf-linje);
}
.tf-register-punkt:first-child { border-top: 0; }
.tf-register-nr { padding-top: .2rem; color: var(--tf-tomat); font: 500 .95rem/1.3 var(--tf-mono); }
.tf-register-titel {
  color: var(--tf-petrol);
  font: 500 1.08rem/1.3 var(--tf-sans);
  text-decoration: none;
}
.tf-register-titel:hover { text-decoration: underline; text-decoration-color: var(--tf-tomat); text-decoration-thickness: 2px; }
.tf-register-tekst { margin: .2rem 0 0; color: var(--tf-graa); font-size: .97rem; line-height: 1.45; }

@media (min-width: 760px) {
  .tf-register { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 2rem; padding: 0 1.25rem; }
  .tf-register-punkt:nth-child(2) { border-top: 0; }
}

/* ---------- Forside: årstal ---------- */

.tf-aarstal {
  max-width: calc(var(--tf-max) - 2rem);
  padding: 1.5rem 0 1.4rem;
  background: var(--tf-petrol);
  color: #fff;
}
.tf-aarstal > * { margin-left: 1rem; margin-right: 1rem; }
.tf-aarstal :focus-visible { outline-color: var(--tf-koral); }
.tf-aarstal .tf-sektionstitel { color: #fff; }
.tf-aarstal-hoved { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: .4rem 1.25rem; }
.tf-aarstal .tf-pil { color: #fff; text-decoration-color: var(--tf-koral); }
.tf-aarstal-liste {
  list-style: none;
  padding: 0 0 0 1.4rem;
  margin-top: .4rem;
  margin-bottom: 0;
  border-left: 3px solid #2f7279;
}
.tf-aarstal-punkt { position: relative; padding: 0 0 1.05rem; }
.tf-aarstal-punkt::before {
  content: "";
  position: absolute;
  left: calc(-1.4rem - 9.5px);
  top: .3rem;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: var(--tf-koral);
  box-shadow: 0 0 0 4px var(--tf-petrol);
}
.tf-aarstal-aar { display: block; color: var(--tf-koral); font: 500 1.1rem/1.3 var(--tf-mono); }
.tf-aarstal-tekst { margin: .15rem 0 0; font-size: 1rem; line-height: 1.5; }
.tf-aarstal .tf-kildelinje { color: var(--tf-tone); }
.tf-aarstal .tf-kildelinje a { color: #fff; text-decoration-color: var(--tf-koral); }

@media (min-width: 600px) {
  .tf-aarstal { border-radius: var(--tf-r); margin-left: 1rem; margin-right: 1rem; }
}
@media (min-width: 760px) {
  .tf-aarstal { padding: 1.75rem 0 1.6rem; }
  .tf-aarstal > * { margin-left: 1.75rem; margin-right: 1.75rem; }
  .tf-aarstal-liste {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.4rem 1.5rem;
    padding: 0;
    margin-top: 1.1rem;
    border-left: 0;
  }
  .tf-aarstal-punkt { padding: 1.2rem 0 0; border-top: 3px solid #2f7279; }
  .tf-aarstal-punkt::before { left: 0; top: -9.5px; }
}
@media (min-width: 960px) {
  .tf-aarstal { margin-left: auto; margin-right: auto; }
}

/* ---------- Brødtekst ---------- */

.tf-brodtekst { overflow-wrap: anywhere; }
.tf-brodtekst > :first-child { margin-top: 0; }
.tf-brodtekst > :last-child { margin-bottom: 0; }
.tf-brodtekst p { margin: 0 0 .95rem; }
.tf-brodtekst h2 {
  margin: 2rem 0 .55rem;
  color: var(--tf-petrol);
  font: 300 clamp(1.6rem, 5vw, 2.1rem)/1.12 var(--tf-sans);
  letter-spacing: -.02em;
}
.tf-brodtekst h3 { margin: 1.5rem 0 .4rem; font: 500 1.22rem/1.25 var(--tf-sans); }
.tf-brodtekst h4 {
  margin: 1.3rem 0 .3rem;
  color: var(--tf-tomat);
  font: 500 .82rem/1.3 var(--tf-mono);
  letter-spacing: .07em;
  text-transform: uppercase;
}
.tf-brodtekst a {
  color: var(--tf-petrol);
  text-decoration-color: var(--tf-tomat);
  text-decoration-thickness: 2px;
  text-underline-offset: .18em;
}
.tf-brodtekst a:hover { color: var(--tf-tomat); }
.tf-brodtekst strong { font-weight: 600; }
.tf-brodtekst ul, .tf-brodtekst ol { margin: 0 0 1rem; padding-left: 1.35rem; }
.tf-brodtekst li { margin: .25rem 0; }
.tf-brodtekst li > ul, .tf-brodtekst li > ol { margin: .25rem 0 .35rem; }
.tf-brodtekst ul > li::marker { color: var(--tf-tomat); }
.tf-brodtekst ol > li::marker { color: var(--tf-tomat); font-family: var(--tf-mono); font-size: .9em; }
.tf-brodtekst blockquote {
  margin: 1.3rem 0;
  padding: .8rem 1rem .8rem 1.1rem;
  border-left: 5px solid var(--tf-tomat);
  border-radius: 0 var(--tf-r) var(--tf-r) 0;
  background: var(--tf-bund);
  font-size: 1.12rem;
  font-style: italic;
}
.tf-brodtekst blockquote p:last-child { margin-bottom: 0; }

/* Tabeller ruller vandret i deres egen ramme */
.tf-brodtekst > table { display: block; max-width: 100%; overflow-x: auto; }
.tf-tabel { max-width: 100%; margin: 1.1rem 0 1.2rem; overflow-x: auto; border-radius: var(--tf-r); border: 1px solid var(--tf-linje); }
.tf-tabel > table { display: table; }
.tf-brodtekst table {
  width: 100%;
  border-collapse: collapse;
  font: 400 .93rem/1.4 var(--tf-sans);
  overflow-wrap: normal;
}
.tf-brodtekst th, .tf-brodtekst td { padding: .55rem .7rem; text-align: left; vertical-align: top; }
.tf-brodtekst th { background: var(--tf-petrol); color: #fff; font-weight: 500; white-space: nowrap; }
.tf-brodtekst td { border-top: 1px solid var(--tf-linje); min-width: 6rem; }
.tf-side-tidslinje .tf-brodtekst td:first-child { min-width: 0; white-space: nowrap; color: var(--tf-tomat); font: 500 .95rem/1.4 var(--tf-mono); }
.tf-brodtekst tbody tr:nth-child(even) td { background: #f5f8fa; }

/* Tidslinjesiden: lister vises som en lodret tidslinje */
.tf-side-tidslinje .tf-brodtekst > ul,
.tf-side-tidslinje .tf-brodtekst > ol {
  list-style: none;
  margin-left: .4rem;
  padding-left: 1.4rem;
  border-left: 3px solid var(--tf-linje);
}
.tf-side-tidslinje .tf-brodtekst > ul > li,
.tf-side-tidslinje .tf-brodtekst > ol > li { position: relative; margin: 0; padding: 0 0 .9rem; }
.tf-side-tidslinje .tf-brodtekst > ul > li::before,
.tf-side-tidslinje .tf-brodtekst > ol > li::before {
  content: "";
  position: absolute;
  left: calc(-1.4rem - 8.5px);
  top: .45rem;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--tf-tomat);
  box-shadow: 0 0 0 3px var(--tf-flade);
}
.tf-side-tidslinje .tf-brodtekst > ul > li > strong:first-child,
.tf-side-tidslinje .tf-brodtekst > ol > li > strong:first-child { color: var(--tf-tomat); font: 500 1rem/1.4 var(--tf-mono); }

/* ---------- Forside: brødtekst ---------- */

.tf-forside-tekst {
  max-width: calc(var(--tf-max) - 2rem);
  padding: 1.4rem 1rem 1.5rem;
  background: var(--tf-flade);
}
.tf-forside-tekst .tf-brodtekst { max-width: 42rem; }
.tf-forside-tekst > * { max-width: 42rem; }
@media (min-width: 600px) {
  .tf-forside-tekst { border-radius: var(--tf-r); margin-left: 1rem; margin-right: 1rem; padding: 1.75rem 2rem 1.9rem; }
}
@media (min-width: 960px) {
  .tf-forside-tekst { margin-left: auto; margin-right: auto; padding: 2.25rem 3rem 2.4rem; }
}

/* ---------- Spørgsmål, kilder og dato ---------- */

.tf-spoergsmaal { margin-top: 2.2rem; padding-top: 1.1rem; border-top: 3px solid var(--tf-tomat); }
.tf-spoergsmaal .tf-sektionstitel { font-size: clamp(1.6rem, 5vw, 2.1rem); margin-bottom: .3rem; }
.tf-spoergsmaal-par { padding: .8rem 0; border-top: 1px solid var(--tf-linje); }
.tf-spoergsmaal-par:first-of-type { border-top: 0; }
.tf-spoergsmaal-q { margin: 0; font: 500 1.12rem/1.3 var(--tf-sans); }
.tf-spoergsmaal-a { margin: .3rem 0 0; }

.tf-kilder { margin-top: 1.8rem; padding-top: .9rem; border-top: 1px solid var(--tf-linje); }
.tf-kilder-titel {
  margin: 0 0 .45rem;
  color: var(--tf-graa);
  font: 500 .78rem/1.3 var(--tf-mono);
  letter-spacing: .08em;
  text-transform: uppercase;
}
.tf-kilder-liste { margin: 0; padding-left: 1.3rem; font: 400 .92rem/1.45 var(--tf-sans); overflow-wrap: anywhere; }
.tf-kilder-liste li { margin: .25rem 0; }
.tf-kilder-liste a { text-decoration-color: var(--tf-tomat); text-underline-offset: .15em; }

.tf-opdateret { margin: .9rem 0 0; color: var(--tf-graa); font: 400 .85rem/1.4 var(--tf-sans); }

/* ---------- Artikler ---------- */

.tf-artikel, .tf-oversigt, .tf-kontakt {
  max-width: var(--tf-max);
  margin: 0 auto;
  padding: .9rem 1rem 0;
}
.tf-sti { font: 400 .85rem/1.4 var(--tf-sans); }
.tf-sti-liste { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .15rem .45rem; }
.tf-sti-liste li + li::before { content: "/"; margin-right: .45rem; color: var(--tf-ramme); }
.tf-sti a { color: var(--tf-petrol); }
.tf-sti [aria-current] { color: var(--tf-graa); }

.tf-artikel-titel {
  margin: 0 0 .7rem;
  max-width: 22ch;
  font: 300 clamp(2.3rem, 8.5vw, 3.9rem)/1.02 var(--tf-sans);
  letter-spacing: -.035em;
  overflow-wrap: anywhere;
}
.tf-artikel-ingress { margin: 0; max-width: 40rem; font-size: 1.2rem; line-height: 1.45; }
.tf-artikel-hoved .tf-opdateret { margin-top: .6rem; }
.tf-artikel-hoved .tf-overline {
  display: inline-block;
  margin: 1rem 0 .55rem;
  padding: .28rem .55rem .24rem;
  border-radius: 4px;
  background: var(--tf-tomat);
  color: #fff;
}

.tf-artikel-foto { margin-top: 1.1rem; border-radius: var(--tf-r); }
@media (min-width: 760px) {
  .tf-artikel-foto .tf-foto-billede { aspect-ratio: 2 / 1; }
}

.tf-artikel-gitter { display: grid; gap: 1.25rem; margin-top: 1.1rem; }
.tf-artikel-tekst { min-width: 0; padding: 1.2rem 1.1rem 1.3rem; background: var(--tf-flade); border-radius: var(--tf-r); }
.tf-smal .tf-brodtekst { max-width: 42rem; padding: 1.2rem 1.1rem 1.3rem; margin-top: 1.1rem; background: var(--tf-flade); border-radius: var(--tf-r); }

.tf-sidekolonne { font: 400 .93rem/1.35 var(--tf-sans); }
.tf-sidekolonne-titel {
  margin: 0 0 .4rem;
  color: var(--tf-tomat);
  font: 500 .78rem/1.3 var(--tf-mono);
  letter-spacing: .08em;
  text-transform: uppercase;
}
.tf-sidekolonne-liste { list-style: none; margin: 0; padding: 0; }
.tf-sidekolonne-liste a {
  display: flex;
  gap: .55rem;
  padding: .42rem 0 .42rem .65rem;
  border-left: 3px solid var(--tf-linje);
  color: var(--tf-blaek);
  text-decoration: none;
}
.tf-sidekolonne-liste a:hover { border-left-color: var(--tf-petrol); color: var(--tf-petrol); }
.tf-sidekolonne-liste a[aria-current="page"] { border-left-color: var(--tf-tomat); color: var(--tf-tomat); font-weight: 500; }
.tf-liste-nr { flex: none; color: var(--tf-graa); font: 500 .78rem/1.7 var(--tf-mono); }
.tf-sidekolonne-liste a[aria-current="page"] .tf-liste-nr { color: var(--tf-tomat); }

@media (min-width: 600px) {
  .tf-artikel-tekst, .tf-smal .tf-brodtekst { padding: 1.6rem 1.9rem 1.7rem; }
}
@media (min-width: 880px) {
  .tf-artikel-gitter { grid-template-columns: minmax(0, 1fr) 14.5rem; gap: 1.75rem; align-items: start; }
  .tf-sidekolonne { position: sticky; top: 1rem; }
}

.tf-blad { display: grid; gap: .75rem; margin-top: 1.4rem; }
.tf-blad-link {
  display: block;
  padding: .85rem 1rem .95rem;
  border-radius: var(--tf-r);
  background: var(--tf-flade);
  color: var(--tf-blaek);
  text-decoration: none;
  border-left: 5px solid var(--tf-petrol);
}
.tf-blad-link:hover .tf-blad-titel { text-decoration: underline; }
.tf-blad-naeste { background: var(--tf-tomat); color: #fff; border-left: 0; text-align: right; }
.tf-blad-retning { display: block; font: 500 .74rem/1.3 var(--tf-mono); letter-spacing: .08em; text-transform: uppercase; }
.tf-blad-titel { display: block; margin-top: .2rem; font: 500 1.12rem/1.3 var(--tf-sans); }
.tf-blad-forrige .tf-blad-retning::before { content: "\2190  "; }
.tf-blad-naeste .tf-blad-retning::after { content: "  \2192"; }
@media (min-width: 600px) {
  .tf-blad { grid-template-columns: 1fr 1fr; }
  .tf-blad-naeste { grid-column: 2; }
}

/* Oversigt og 404 */
.tf-oversigt-tekst { margin-top: 1.1rem; padding: 1.2rem 1.1rem; background: var(--tf-flade); border-radius: var(--tf-r); }
.tf-oversigt-kapitler { margin-top: 2rem; }
.tf-register-fuld { margin-top: .6rem; }

.tf-vildfaren { max-width: var(--tf-max); margin: 0 auto; padding: 1.5rem 1rem 0; }
.tf-vildfaren-kode {
  margin: 0;
  color: var(--tf-tomat);
  font: 300 clamp(5rem, 26vw, 9.5rem)/.9 var(--tf-sans);
  letter-spacing: -.05em;
}
.tf-vildfaren-hoved .tf-artikel-ingress { margin-bottom: 1.1rem; }

/* ---------- Kontakt ---------- */

.tf-kontakt-gitter { display: grid; gap: 1.25rem; margin-top: 1.1rem; }
.tf-kontakt-tekst { min-width: 0; }
.tf-kontakt-note {
  margin: 1rem 0 0;
  padding: .85rem 1rem;
  border-left: 5px solid var(--tf-petrol);
  border-radius: var(--tf-r);
  background: var(--tf-tone);
  font-size: 1rem;
}
.tf-kontakt-tekst > .tf-kontakt-note:first-child { margin-top: 0; }
.tf-kontakt-skema { min-width: 0; }
.tf-kontakt-skema > [role="status"] {
  margin: 0 0 .9rem;
  padding: .8rem 1rem;
  border-radius: var(--tf-r);
  background: var(--tf-tone);
  color: var(--tf-blaek);
  font: 500 1rem/1.4 var(--tf-sans);
}
.tf-formular {
  position: relative;
  padding: 1.2rem 1.1rem 1.3rem;
  border-top: 6px solid var(--tf-tomat);
  border-radius: var(--tf-r);
  background: var(--tf-flade);
}
.tf-felt { margin: 0 0 1rem; }
.tf-felt label, .tf-etiket { display: block; margin: 0 0 .3rem; font: 500 .97rem/1.3 var(--tf-sans); }
.tf-felt input, .tf-input {
  display: block;
  width: 100%;
  padding: .6rem .7rem;
  border: 2px solid var(--tf-ramme);
  border-radius: var(--tf-r);
  background: #fff;
  color: var(--tf-blaek);
  font: 400 1rem/1.4 var(--tf-sans);
}
.tf-felt input:focus, .tf-input:focus { border-color: var(--tf-petrol); outline: 3px solid var(--tf-tomat); outline-offset: 1px; }
.tf-input-besked { min-height: 9rem; resize: vertical; }
.tf-honning { position: absolute; left: -9999px; top: auto; width: 1px; height: 1px; overflow: hidden; }
.tf-formular-bund { margin-top: .3rem; }
.tf-formular-note { margin: 1rem 0 0; color: var(--tf-graa); font: 400 .88rem/1.45 var(--tf-sans); }

@media (min-width: 600px) {
  .tf-formular { padding: 1.5rem 1.6rem 1.6rem; }
}
@media (min-width: 760px) {
  .tf-kontakt-gitter { grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: 1.75rem; align-items: start; }
}

/* ---------- Stor, mørk footer ---------- */

.tf-fod { margin-top: 3rem; color: #fff; }
.tf-fod-tage { display: block; width: 100%; height: 60px; margin-bottom: -1px; }
.tf-fod-indre {
  padding: 1.6rem max(1rem, calc((100% - var(--tf-max)) / 2 + 1rem)) 1.6rem;
  background: var(--tf-nat);
}
.tf-fod :focus-visible { outline-color: var(--tf-koral); }
.tf-fod-navn {
  margin: 0 0 .5rem;
  font: 300 clamp(2.2rem, 9vw, 3.9rem)/1 var(--tf-sans);
  letter-spacing: -.035em;
}
.tf-fod-slogan { margin: 0; max-width: 36rem; color: #cfe3e5; font-size: 1.05rem; line-height: 1.5; }
.tf-fod-kolonner { display: grid; gap: 1.6rem; margin-top: 2rem; }
.tf-fod-overskrift {
  margin: 0 0 .6rem;
  color: var(--tf-koral);
  font: 500 .78rem/1.3 var(--tf-mono);
  letter-spacing: .08em;
  text-transform: uppercase;
}
.tf-fod-liste { list-style: none; margin: 0; padding: 0; font: 400 .97rem/1.35 var(--tf-sans); }
.tf-fod-liste li { margin: 0 0 .1rem; break-inside: avoid; }
.tf-fod-liste a { display: inline-flex; gap: .5rem; padding: .25rem 0; color: #fff; text-decoration: none; }
.tf-fod-liste a:hover { text-decoration: underline; text-decoration-color: var(--tf-koral); }
.tf-fod-liste a[aria-current="page"] { color: var(--tf-koral); }
.tf-fod-liste .tf-liste-nr { color: #9fc7cb; }
.tf-uafhaengig-tekst { margin: 0 0 .7rem; color: #cfe3e5; font: 400 .97rem/1.5 var(--tf-sans); }
.tf-uafhaengig-tekst:first-of-type { color: #fff; font-weight: 500; }
.tf-fod-bund {
  margin: 2rem 0 0;
  padding-top: 1rem;
  border-top: 1px solid #2f6a70;
  color: #cfe3e5;
  font: 400 .85rem/1.5 var(--tf-sans);
}

@media (min-width: 480px) {
  .tf-fod-liste-to { columns: 2; column-gap: 1.5rem; }
}
@media (min-width: 760px) {
  .tf-fod-indre { padding-top: 2rem; padding-bottom: 2rem; }
  .tf-fod-kolonner { grid-template-columns: minmax(0, 2.1fr) minmax(0, 1fr) minmax(0, 1.5fr); gap: 2rem; }
}

@media (prefers-reduced-motion: no-preference) {
  .tf-menu-link, .tf-knap, .tf-sidekolonne-liste a { transition: color .15s, background-color .15s, box-shadow .15s, border-color .15s; }
}
