@font-face{font-family:"Rubik";src:url(/assets/fonts/rubik-800.woff2) format("woff2");font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:"Rubik";src:url(/assets/fonts/rubik-800i.woff2) format("woff2");font-weight:800;font-style:italic;font-display:swap}
@font-face{font-family:"Jost";src:url(/assets/fonts/jost-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Jost";src:url(/assets/fonts/jost-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Jost";src:url(/assets/fonts/jost-400i.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url(/assets/fonts/ibm-plex-mono-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}
/* sci-fi.dk – "stjernekort": rumsort petrol, turkis spor, solgul signal, lys turkis baggrund.
   BEM med præfikset uk-. Mobil først; brødtekst altid på hvide flader. */
:root {
  --uk-rum: #0A1E24;
  --uk-rum-2: #12303A;
  --uk-rum-3: #1B4250;
  --uk-turkis: #00B5A5;
  --uk-turkis-dyb: #006B62;
  --uk-sol: #FFB000;
  --uk-is: #E6F5F2;
  --uk-is-2: #F3FAF8;
  --uk-hvid: #FFFFFF;
  --uk-lys: #F2FAF9;
  --uk-blaek: #0E2329;
  --uk-skifer: #44606A;
  --uk-maane: #D7ECE9;
  --uk-taage: #9FC3C0;
  --uk-linje: #BFDCD7;
  --uk-r: 6px;
  --uk-max: 1080px;
  --uk-pad: 1.125rem;
  --uk-h: "Rubik", "Trebuchet MS", Arial, sans-serif;
  --uk-t: "Jost", "Century Gothic", "Segoe UI", Arial, sans-serif;
  --uk-m: "IBM Plex Mono", Consolas, ui-monospace, monospace;
}

*, *::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(--uk-is);
  color: var(--uk-blaek);
  font: 400 1.125rem/1.65 var(--uk-t);
  overflow-wrap: break-word;
}
img { display: block; max-width: 100%; height: auto; }
a { color: var(--uk-turkis-dyb); text-decoration-thickness: .08em; text-underline-offset: .2em; }
a:hover { color: var(--uk-blaek); text-decoration-thickness: .15em; }
:focus-visible { outline: 3px solid var(--uk-blaek); outline-offset: 3px; }
.uk-header :focus-visible, .uk-hero :focus-visible, .uk-map :focus-visible, .uk-article__header :focus-visible,
.uk-footer :focus-visible, .uk-sources :focus-visible, .uk-pager__link--next:focus-visible { outline-color: var(--uk-sol); }
h1, h2, h3, h4 { font-family: var(--uk-h); font-weight: 800; line-height: 1.15; letter-spacing: -.01em; }
p { margin: 0 0 1em; }
.uk-accent { font-style: italic; }

.uk-vh { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.uk-skip {
  position: absolute; left: -10000px; top: .75rem; z-index: 30;
  padding: .7rem 1.1rem; border-radius: var(--uk-r);
  background: var(--uk-sol); color: var(--uk-rum); font: 800 1rem/1.2 var(--uk-h); text-decoration: none;
}
.uk-skip:focus { left: .75rem; }

.uk-kicker {
  margin: 0 0 .5rem;
  font: 500 .8125rem/1.35 var(--uk-m);
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--uk-turkis-dyb);
}
.uk-kicker--dark { color: var(--uk-turkis); }

/* ---------- Knapper ---------- */
.uk-button {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 2.75rem; padding: .65rem 1.1rem;
  border: 2px solid var(--uk-sol); border-radius: var(--uk-r);
  background: var(--uk-sol); color: var(--uk-rum);
  font: 800 1rem/1.15 var(--uk-h); text-decoration: none; cursor: pointer;
}
.uk-button:hover { background: var(--uk-turkis); border-color: var(--uk-turkis); color: var(--uk-rum); }
.uk-button--ghost { background: transparent; border-color: var(--uk-turkis); color: var(--uk-lys); }
.uk-button--ghost:hover { background: var(--uk-turkis); color: var(--uk-rum); }

/* ---------- Sidehoved: logo til venstre, menu til højre ---------- */
.uk-header { background: var(--uk-rum); border-bottom: 4px solid var(--uk-sol); }
.uk-header__inner {
  max-width: var(--uk-max); margin: 0 auto; padding: .85rem var(--uk-pad);
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .75rem 1.5rem;
}
.uk-header__logo { display: inline-flex; padding: .3rem 0; border-radius: var(--uk-r); }
.uk-header__logo svg { display: block; width: auto; height: 1.35rem; }
.uk-nav { width: 100%; }
.uk-nav__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .35rem; }
.uk-nav__link {
  display: block; padding: .55rem .35rem; border-radius: var(--uk-r);
  background: var(--uk-rum-2); color: var(--uk-maane);
  font: 600 .9375rem/1.2 var(--uk-t); text-align: center; text-decoration: none;
}
.uk-nav__link:hover { background: var(--uk-turkis); color: var(--uk-rum); }
.uk-nav__link--active, .uk-nav__link--active:hover { background: var(--uk-sol); color: var(--uk-rum); }
@media (min-width: 40em) {
  .uk-nav__list { grid-template-columns: repeat(6, minmax(0, 1fr)); }
}
@media (min-width: 62em) {
  .uk-header__inner { flex-wrap: nowrap; padding-top: 1rem; padding-bottom: 1rem; }
  .uk-header__logo svg { height: 1.5rem; }
  .uk-nav { width: auto; }
  .uk-nav__list { display: flex; gap: .2rem; }
  .uk-nav__link { background: transparent; padding: .5rem .75rem; }
}

/* ---------- Figurer (altid med AI-mærkning) ---------- */
.uk-figure { margin: 0; }
.uk-figure__frame { overflow: hidden; border-radius: var(--uk-r); background: var(--uk-rum-2); }
.uk-figure__img { width: 100%; height: auto; }
.uk-figure__caption { margin-top: .45rem; font: 500 .75rem/1.3 var(--uk-m); letter-spacing: .04em; color: var(--uk-skifer); }
.uk-figure--hero .uk-figure__frame { box-shadow: .55rem .55rem 0 var(--uk-turkis); }
.uk-figure--hero .uk-figure__caption { margin-top: .9rem; color: var(--uk-taage); }
.uk-figure--article { margin-bottom: 1.75rem; }
.uk-figure--article .uk-figure__frame { border-bottom: 5px solid var(--uk-sol); }

/* ---------- Forsidens hero ---------- */
.uk-hero { position: relative; overflow: hidden; background: var(--uk-rum); color: var(--uk-maane); }
.uk-hero::before {
  content: ""; position: absolute; pointer-events: none;
  width: 62rem; height: 62rem; right: -34rem; top: -26rem; border-radius: 50%;
  background: repeating-radial-gradient(circle, transparent 0 5.85rem, rgba(0, 181, 165, .22) 5.85rem 6rem);
}
.uk-hero::after {
  content: ""; position: absolute; pointer-events: none;
  width: 1rem; height: 1rem; right: 2.2rem; top: 5.2rem; border-radius: 50%;
  background: var(--uk-sol); box-shadow: 0 0 0 .4rem rgba(255, 176, 0, .18);
}
.uk-hero__inner {
  position: relative; z-index: 1;
  max-width: var(--uk-max); margin: 0 auto; padding: 2.25rem var(--uk-pad) 2.25rem;
  display: grid; gap: 2rem;
}
.uk-hero__title {
  margin: .2rem 0 1rem;
  font-size: clamp(2.25rem, 1.35rem + 4.4vw, 4rem); line-height: 1.03;
  color: var(--uk-lys);
}
.uk-hero__title .uk-accent { display: block; color: var(--uk-sol); }
.uk-hero__lead { max-width: 38ch; margin: 0; font-size: 1.1875rem; line-height: 1.55; color: var(--uk-maane); }
.uk-hero__jump { list-style: none; margin: 1.6rem 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: .55rem; }
.uk-hero__letters { position: relative; z-index: 1; background: var(--uk-rum-2); border-top: 1px solid var(--uk-rum-3); }
@media (min-width: 60em) {
  .uk-hero__inner { padding-top: 3.5rem; padding-bottom: 3.25rem; }
  .uk-hero__inner--media { grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr); align-items: center; gap: 3rem; }
}

/* ---------- A–Å-bjælken ---------- */
.uk-letters { max-width: var(--uk-max); margin: 0 auto; padding: 1rem var(--uk-pad) 1.15rem; display: grid; gap: .6rem; }
.uk-letters__label { margin: 0; font: 500 .8125rem/1.35 var(--uk-m); letter-spacing: .08em; text-transform: uppercase; color: var(--uk-taage); }
.uk-letters__more { color: var(--uk-lys); }
.uk-letters__list { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .3rem; }
.uk-letters__link {
  display: grid; place-items: center; width: 2.25rem; height: 2.25rem; border-radius: var(--uk-r);
  background: var(--uk-sol); color: var(--uk-rum);
  font: 800 1rem/1 var(--uk-h); text-decoration: none;
}
a.uk-letters__link:hover { background: var(--uk-turkis); color: var(--uk-rum); }
.uk-letters__link--empty { background: transparent; border: 1px solid var(--uk-rum-3); color: var(--uk-taage); font-weight: 800; }
.uk-letters--page {
  margin: 0 0 1.25rem; padding: .9rem 1rem 1rem;
  background: var(--uk-rum); border-radius: var(--uk-r);
}
@media (min-width: 60em) {
  .uk-letters__list { gap: .2rem; }
  .uk-letters__link { width: 1.95rem; height: 2.1rem; }
  .uk-letters--page { position: sticky; top: 0; z-index: 3; border-radius: 0 0 var(--uk-r) var(--uk-r); }
  .uk-letters--page .uk-letters__link { width: 1.7rem; }
  .uk-prose [id^="bogstav-"] { scroll-margin-top: 6.5rem; }
}

/* ---------- Tidslinjen ---------- */
.uk-timeline { padding: 3rem 0 3.25rem; }
.uk-timeline__inner { max-width: var(--uk-max); margin: 0 auto; padding: 0 var(--uk-pad); }
.uk-timeline__title { margin: 0 0 .6rem; font-size: clamp(1.75rem, 1.2rem + 2.4vw, 2.6rem); }
.uk-timeline__title .uk-accent { color: var(--uk-turkis-dyb); }
.uk-timeline__intro { max-width: 60ch; margin: 0 0 2rem; color: var(--uk-skifer); }
.uk-timeline__list { position: relative; list-style: none; margin: 0; padding: 0 0 0 1.85rem; display: grid; gap: .9rem; }
.uk-timeline__list::before {
  content: ""; position: absolute; left: .55rem; top: .4rem; bottom: .4rem; width: 4px; border-radius: 2px;
  background: repeating-linear-gradient(180deg, var(--uk-rum) 0 1.1rem, var(--uk-turkis) 1.1rem 1.5rem);
}
.uk-timeline__item {
  position: relative; padding: .85rem 1rem 1rem;
  background: var(--uk-hvid); border: 1px solid var(--uk-linje); border-radius: var(--uk-r);
}
.uk-timeline__item::before {
  content: ""; position: absolute; left: -1.72rem; top: 1rem;
  width: 1.05rem; height: 1.05rem; border-radius: 50%;
  background: var(--uk-sol); border: 3px solid var(--uk-rum);
}
.uk-timeline__year { margin: 0 0 .3rem; display: flex; flex-wrap: wrap; align-items: center; gap: .3rem .6rem; font: 500 1.5rem/1.1 var(--uk-m); color: var(--uk-rum); }
.uk-timeline__tag {
  padding: .3rem .45rem .28rem; border-radius: 3px;
  background: var(--uk-turkis); color: var(--uk-rum);
  font: 500 .6875rem/1 var(--uk-m); letter-spacing: .08em; text-transform: uppercase;
}
.uk-timeline__tag--dansk { background: var(--uk-sol); }
.uk-timeline__tag--fandom { background: var(--uk-rum); color: var(--uk-turkis); }
.uk-timeline__work { margin: 0 0 .3rem; font-size: 1.2rem; font-style: italic; line-height: 1.2; overflow-wrap: anywhere; hyphens: auto; }
.uk-timeline__link { color: var(--uk-blaek); text-decoration-color: var(--uk-turkis); text-decoration-thickness: .12em; }
.uk-timeline__link:hover { color: var(--uk-turkis-dyb); }
.uk-timeline__text { margin: 0; font-size: 1rem; line-height: 1.5; color: var(--uk-skifer); }
@media (min-width: 40em) and (max-width: 63.99em) {
  .uk-timeline__list { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 1.25rem; }
  .uk-timeline__list::before { display: none; }
  .uk-timeline__list { padding-left: 0; }
  .uk-timeline__item { border-left: 5px solid var(--uk-rum); }
  .uk-timeline__item::before { display: none; }
}
@media (min-width: 64em) {
  /* Zigzag langs ét vandret spor: ulige nedslag over sporet, lige under. */
  .uk-timeline__list {
    padding: 0; column-gap: .7rem; row-gap: 0;
    grid-template-columns: repeat(13, minmax(0, 1fr));
    grid-template-rows: auto 3rem auto;
  }
  .uk-timeline__list::before {
    position: static; grid-column: 1 / -1; grid-row: 2; align-self: center;
    width: auto; height: 4px;
    background: repeating-linear-gradient(90deg, var(--uk-rum) 0 1.6rem, var(--uk-turkis) 1.6rem 2.1rem);
  }
  .uk-timeline__item { grid-column: var(--uk-c) / span 2; padding: .7rem .75rem .8rem; }
  .uk-timeline__item:nth-child(odd) { grid-row: 1; align-self: end; }
  .uk-timeline__item:nth-child(even) { grid-row: 3; align-self: start; }
  .uk-timeline__item::before { left: .55rem; top: calc(100% + 1rem); width: 1rem; height: 1rem; }
  .uk-timeline__item:nth-child(even)::before { top: auto; bottom: calc(100% + 1rem); }
  .uk-timeline__item::after {
    content: ""; position: absolute; left: calc(.55rem + .5rem - 1px); top: 100%;
    width: 2px; height: 1rem; background: var(--uk-rum);
  }
  .uk-timeline__item:nth-child(even)::after { top: auto; bottom: 100%; }
  .uk-timeline__year { font-size: 1.2rem; }
  .uk-timeline__work { font-size: 1rem; }
  .uk-timeline__text { font-size: .875rem; line-height: 1.45; }
}

/* ---------- Undergenrekortet ---------- */
.uk-map {
  padding: 3rem 0 3.25rem; color: var(--uk-maane);
  background-color: var(--uk-rum);
  background-image:
    linear-gradient(rgba(0, 181, 165, .08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0, 181, 165, .08) 1px, transparent 1px);
  background-size: 2.5rem 2.5rem;
}
.uk-map__inner { max-width: var(--uk-max); margin: 0 auto; padding: 0 var(--uk-pad); }
.uk-map__title { margin: 0 0 .6rem; font-size: clamp(1.75rem, 1.2rem + 2.4vw, 2.6rem); color: var(--uk-lys); }
.uk-map__title .uk-accent { color: var(--uk-sol); }
.uk-map__intro { max-width: 62ch; margin: 0 0 2rem; color: var(--uk-maane); }
.uk-map__grid { display: grid; gap: 1rem; }
.uk-map__axis, .uk-map__arrow { display: none; }
.uk-map__era {
  display: grid; gap: .7rem; padding: 1rem;
  border: 1px solid var(--uk-rum-3); border-radius: var(--uk-r); background: rgba(10, 30, 36, .75);
}
.uk-map__era-title { margin: 0; font-size: 1.3rem; font-style: italic; color: var(--uk-sol); }
.uk-map__cell { padding: .85rem .9rem .95rem; border-radius: var(--uk-r); background: var(--uk-rum-2); border-left: 4px solid var(--uk-turkis); }
.uk-map__cell--mennesker { border-left-color: var(--uk-sol); }
.uk-map__cell-label { margin: 0 0 .55rem; font: 500 .75rem/1.35 var(--uk-m); letter-spacing: .08em; text-transform: uppercase; color: var(--uk-taage); }
.uk-map__list { list-style: none; margin: 0; padding: 0; display: grid; gap: .7rem; }
.uk-map__name { display: block; font: 800 1.05rem/1.2 var(--uk-h); color: var(--uk-lys); }
.uk-map__desc { display: block; margin-top: .15rem; font-size: .9375rem; line-height: 1.45; color: var(--uk-maane); }
.uk-map__links { display: flex; flex-wrap: wrap; gap: .6rem; margin: 1.75rem 0 0; }
@media (min-width: 40em) and (max-width: 59.99em) {
  .uk-map__era { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .uk-map__era-title { grid-column: 1 / -1; }
}
@media (min-width: 60em) {
  .uk-map__grid { grid-template-columns: 8.5rem repeat(3, minmax(0, 1fr)); grid-template-rows: auto auto auto auto; gap: .75rem; }
  .uk-map__axis {
    display: flex; align-items: center; margin: 0; padding: .75rem .75rem .75rem 0; grid-column: 1;
    border-right: 2px solid var(--uk-rum-3);
    font: 500 .75rem/1.4 var(--uk-m); letter-spacing: .08em; text-transform: uppercase; color: var(--uk-taage);
  }
  .uk-map__axis--teknik { grid-row: 2; border-right-color: var(--uk-turkis); }
  .uk-map__axis--mennesker { grid-row: 3; border-right-color: var(--uk-sol); }
  .uk-map__era { grid-row: 1 / span 3; grid-template-rows: subgrid; gap: .75rem; padding: 0; border: 0; background: none; }
  .uk-map__era--fortid { grid-column: 2; }
  .uk-map__era--naer { grid-column: 3; }
  .uk-map__era--fjern { grid-column: 4; }
  .uk-map__era-title { padding: 0 .25rem .2rem; border-bottom: 2px solid var(--uk-rum-3); }
  .uk-map__cell-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
  .uk-map__arrow {
    position: relative; display: flex; justify-content: space-between; grid-column: 2 / -1; grid-row: 4;
    margin: .2rem 0 0; padding-top: .45rem; border-top: 2px solid var(--uk-turkis);
    font: 500 .75rem/1.3 var(--uk-m); letter-spacing: .08em; text-transform: uppercase; color: var(--uk-taage);
  }
  .uk-map__arrow::after {
    content: ""; position: absolute; right: -2px; top: -8px;
    border-top: 7px solid transparent; border-bottom: 7px solid transparent; border-left: 12px solid var(--uk-turkis);
  }
}

/* ---------- Sidelayout: brødtekst + register ---------- */
.uk-layout { max-width: var(--uk-max); margin: 0 auto; padding: 2.25rem var(--uk-pad) 3.5rem; display: grid; gap: 2rem; }
.uk-layout__main, .uk-layout__aside { min-width: 0; }
@media (min-width: 60em) {
  .uk-layout { grid-template-columns: minmax(0, 1fr) 16.5rem; column-gap: 2.5rem; align-items: start; padding-top: 2.75rem; }
  .uk-layout--home .uk-layout__aside { grid-column: 2; grid-row: 1; }
  .uk-layout--home .uk-layout__main { grid-column: 1; grid-row: 1; }
  .uk-layout__aside { position: sticky; top: 1rem; max-height: calc(100vh - 2rem); overflow-y: auto; }
  .uk-layout--single, .uk-layout--list { grid-template-columns: minmax(0, 48rem); }
  .uk-layout--contact { grid-template-columns: minmax(0, 1fr) minmax(0, 25rem); }
  .uk-layout--contact .uk-layout__aside { position: static; max-height: none; overflow: visible; }
}

/* ---------- Brødtekst ---------- */
.uk-prose {
  padding: 1.5rem 1.15rem 1.6rem;
  background: var(--uk-hvid); border: 1px solid var(--uk-linje); border-radius: var(--uk-r);
  overflow-wrap: anywhere; counter-reset: uk-afsnit;
}
@media (min-width: 40em) { .uk-prose { padding: 2.25rem 2.5rem 2.4rem; } }
.uk-prose > :first-child { margin-top: 0; }
.uk-prose > :last-child { margin-bottom: 0; }
.uk-prose p, .uk-prose ul, .uk-prose ol, .uk-prose blockquote { max-width: 68ch; }
.uk-prose ul, .uk-prose ol { margin: 0 0 1.1em; padding-left: 1.35em; }
.uk-prose li { margin: .3em 0; }
.uk-prose li > ul, .uk-prose li > ol { margin: .3em 0 .2em; }
.uk-prose li::marker { color: var(--uk-turkis-dyb); font-weight: 600; }
.uk-prose h2 { margin: 2.1em 0 .6em; font-size: clamp(1.45rem, 1.2rem + 1vw, 1.85rem); color: var(--uk-blaek); }
.uk-prose h2::before {
  counter-increment: uk-afsnit; content: counter(uk-afsnit, decimal-leading-zero);
  display: block; width: max-content; margin-bottom: .55rem; padding: .25rem .45rem;
  border-radius: 3px; background: var(--uk-rum); color: var(--uk-turkis);
  font: 500 .75rem/1 var(--uk-m); letter-spacing: .1em;
}
.uk-prose h3 { margin: 1.8em 0 .45em; font-size: 1.25rem; font-style: italic; line-height: 1.25; color: var(--uk-turkis-dyb); }
.uk-prose h2 + h3 { margin-top: .9em; }
.uk-prose h4 { margin: 1.5em 0 .4em; font-size: 1.05rem; line-height: 1.3; color: var(--uk-blaek); }
.uk-prose strong { font-weight: 600; }
.uk-prose blockquote {
  margin: 1.6em 0; padding: 1rem 1.25rem;
  border-left: 6px solid var(--uk-sol); border-radius: 0 var(--uk-r) var(--uk-r) 0;
  background: var(--uk-is); font-style: italic;
}
.uk-prose blockquote p:last-child { margin-bottom: 0; }
.uk-prose hr { height: 4px; margin: 2.2em 0; border: 0; border-radius: 2px; background: linear-gradient(90deg, var(--uk-turkis) 0 34%, var(--uk-sol) 34% 67%, var(--uk-rum) 67%); }
.uk-prose code { font: 500 .9em var(--uk-m); background: var(--uk-is); padding: .05em .3em; border-radius: 3px; }
/* Tabeller: kz.js pakker dem i .uk-table, der kan rulles vandret. Uden JS ruller tabellen selv. */
.uk-prose table { width: 100%; margin: 1.5em 0; border-collapse: collapse; font-size: .9375rem; line-height: 1.45; overflow-wrap: normal; }
.uk-prose > table { display: block; overflow-x: auto; }
.uk-table { margin: 1.5em 0; overflow-x: auto; border: 1px solid var(--uk-linje); border-radius: var(--uk-r); }
.uk-table table { margin: 0; }
.uk-prose th, .uk-prose td { min-width: 7.5rem; padding: .55rem .75rem; text-align: left; vertical-align: top; border-bottom: 1px solid var(--uk-linje); overflow-wrap: break-word; }
.uk-prose thead th { background: var(--uk-rum); color: var(--uk-lys); font: 600 .875rem/1.3 var(--uk-t); border-bottom: 0; }
.uk-prose tbody tr:nth-child(even) { background: var(--uk-is-2); }
.uk-prose tbody tr:last-child td { border-bottom: 0; }

/* ---------- Spørgsmål og svar ---------- */
.uk-faq { margin-top: 2.25rem; }
.uk-faq__title { margin: 0 0 1rem; font-size: clamp(1.45rem, 1.2rem + 1vw, 1.85rem); }
.uk-faq__title .uk-accent { color: var(--uk-turkis-dyb); }
.uk-faq__list { display: grid; gap: .75rem; }
.uk-faq__item { padding: 1rem 1.15rem 1.05rem; background: var(--uk-hvid); border: 1px solid var(--uk-linje); border-left: 6px solid var(--uk-turkis); border-radius: var(--uk-r); }
.uk-faq__item:nth-child(even) { border-left-color: var(--uk-sol); }
.uk-faq__q { margin: 0 0 .4rem; font-size: 1.1rem; line-height: 1.3; }
.uk-faq__a { margin: 0; max-width: 68ch; }

/* ---------- Kilder ---------- */
.uk-sources { margin-top: 2rem; padding: 1.15rem 1.25rem 1.2rem; border-radius: var(--uk-r); background: var(--uk-rum); color: var(--uk-maane); }
.uk-sources__title { margin: 0 0 .6rem; font: 500 .8125rem/1.3 var(--uk-m); letter-spacing: .1em; text-transform: uppercase; color: var(--uk-turkis); }
.uk-sources__list { margin: 0; padding-left: 1.1rem; font-size: 1rem; }
.uk-sources__item { margin: .3rem 0; overflow-wrap: anywhere; }
.uk-sources__item::marker { color: var(--uk-turkis); }
.uk-sources__link { color: var(--uk-lys); }
.uk-sources__link:hover { color: var(--uk-sol); }
.uk-sources__host { font: 500 .8125rem/1.3 var(--uk-m); color: var(--uk-taage); }

/* ---------- Register ---------- */
.uk-register { padding: 1.1rem 1.1rem 1.2rem; background: var(--uk-hvid); border: 1px solid var(--uk-linje); border-top: 5px solid var(--uk-turkis); border-radius: var(--uk-r); }
.uk-register__title { margin: 0 0 .9rem; font: 500 .8125rem/1.3 var(--uk-m); letter-spacing: .1em; text-transform: uppercase; color: var(--uk-turkis-dyb); }
.uk-register__group + .uk-register__group { margin-top: .9rem; padding-top: .85rem; border-top: 1px dashed var(--uk-linje); }
.uk-register__group-title { margin: 0 0 .4rem; font-size: 1.05rem; font-style: italic; color: var(--uk-blaek); }
.uk-register__group-text { margin: 0 0 .7rem; font-size: .9375rem; line-height: 1.45; color: var(--uk-skifer); }
.uk-register__list { list-style: none; margin: 0; padding: 0; display: grid; gap: .1rem; }
.uk-register__item { display: grid; grid-template-columns: 2rem minmax(0, 1fr); align-items: baseline; }
.uk-register__num { font: 500 .75rem/1 var(--uk-m); color: var(--uk-skifer); }
.uk-register__link {
  justify-self: start; padding: .2rem 0; border-radius: 3px;
  color: var(--uk-blaek); font-weight: 600; font-size: 1rem; line-height: 1.35;
  text-decoration: underline; text-decoration-color: var(--uk-turkis); text-decoration-thickness: 2px; text-underline-offset: .22em;
}
.uk-register__link:hover { color: var(--uk-turkis-dyb); text-decoration-color: var(--uk-turkis-dyb); }
.uk-register__link[aria-current="page"] { margin-left: -.4rem; padding: .2rem .4rem; background: var(--uk-sol); color: var(--uk-rum); text-decoration: none; }
.uk-register__desc { grid-column: 2; margin: .05rem 0 .6rem; font-size: .9375rem; line-height: 1.45; color: var(--uk-skifer); }
.uk-register--full { margin-top: 2rem; padding: 1.4rem 1.4rem 1.5rem; }
.uk-register--full .uk-register__link { font-size: 1.1rem; }

/* ---------- Artikelhoved (mørk flade) ---------- */
.uk-article__header { position: relative; overflow: hidden; background: var(--uk-rum); color: var(--uk-maane); }
.uk-article__header::before {
  content: ""; position: absolute; pointer-events: none;
  width: 34rem; height: 34rem; right: -17rem; top: -12rem; border-radius: 50%;
  background: repeating-radial-gradient(circle, transparent 0 4.4rem, rgba(0, 181, 165, .2) 4.4rem 4.55rem);
}
.uk-article__inner { position: relative; max-width: var(--uk-max); margin: 0 auto; padding: 1.1rem var(--uk-pad) 2.25rem; }
.uk-article__title { max-width: 26ch; margin: .2rem 0 .9rem; font-size: clamp(1.9rem, 1.3rem + 3vw, 3.1rem); line-height: 1.07; color: var(--uk-lys); }
.uk-article__title .uk-accent { color: var(--uk-sol); }
.uk-article__lead { max-width: 60ch; margin: 0 0 1rem; font-size: 1.15rem; line-height: 1.55; color: var(--uk-maane); }
.uk-article__meta { margin: 0; font: 500 .8125rem/1.4 var(--uk-m); color: var(--uk-taage); }
.uk-article__actions { margin: 1.4rem 0 0; }
@media (min-width: 60em) { .uk-article__inner { padding-top: 1.4rem; padding-bottom: 3rem; } }

.uk-crumbs__list { list-style: none; margin: 0 0 1.6rem; padding: 0; display: flex; flex-wrap: wrap; gap: .2rem .5rem; font: 500 .8125rem/1.45 var(--uk-m); }
.uk-crumbs__item + .uk-crumbs__item::before { content: "/"; margin-right: .5rem; color: var(--uk-turkis); }
.uk-crumbs__link { color: var(--uk-lys); }
.uk-crumbs__current { color: var(--uk-taage); }

/* ---------- Forrige og næste opslag ---------- */
.uk-pager { display: grid; gap: .75rem; margin-top: 2.25rem; }
.uk-pager__link { display: block; padding: 1rem 1.15rem 1.05rem; border: 1px solid var(--uk-linje); border-radius: var(--uk-r); background: var(--uk-hvid); color: var(--uk-blaek); text-decoration: none; }
.uk-pager__link--next { background: var(--uk-rum); border-color: var(--uk-rum); color: var(--uk-lys); }
.uk-pager__label { display: block; font: 500 .75rem/1.3 var(--uk-m); letter-spacing: .08em; text-transform: uppercase; color: var(--uk-turkis-dyb); }
.uk-pager__link--next .uk-pager__label { color: var(--uk-turkis); }
.uk-pager__title { display: block; margin-top: .25rem; font: italic 800 1.15rem/1.25 var(--uk-h); }
.uk-pager__link:hover .uk-pager__title { text-decoration: underline; text-decoration-thickness: .1em; }
@media (min-width: 40em) {
  .uk-pager { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .uk-pager__link--next { grid-column: 2; text-align: right; }
}

/* ---------- Kontaktformular ---------- */
.uk-form { position: relative; display: grid; gap: 1rem; padding: 1.25rem 1.2rem 1.35rem; background: var(--uk-hvid); border: 1px solid var(--uk-linje); border-top: 6px solid var(--uk-sol); border-radius: var(--uk-r); }
.uk-form__field { display: grid; gap: .35rem; }
.uk-form label { font-weight: 600; font-size: 1rem; line-height: 1.35; }
.uk-form input[type="text"], .uk-form input[type="email"], .uk-form textarea {
  width: 100%; padding: .7rem .8rem;
  border: 2px solid var(--uk-skifer); border-radius: var(--uk-r);
  background: var(--uk-hvid); color: var(--uk-blaek); font: 400 1rem/1.4 var(--uk-t);
}
.uk-form textarea { resize: vertical; min-height: 9rem; }
.uk-form input:focus-visible, .uk-form textarea:focus-visible { outline: 3px solid var(--uk-turkis-dyb); outline-offset: 1px; border-color: var(--uk-blaek); }
.uk-form__trap { position: absolute; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden; }
.uk-form__button { justify-self: start; }
.uk-form__note { margin: 0; font-size: .9375rem; line-height: 1.5; color: var(--uk-skifer); }
.uk-layout--contact [role="status"] { margin: 0 0 1rem; padding: .85rem 1rem; border-radius: var(--uk-r); background: var(--uk-rum); color: var(--uk-lys); font-weight: 600; }

/* ---------- Footer på én linje ---------- */
.uk-footer { background: var(--uk-rum); color: var(--uk-maane); border-top: 4px solid var(--uk-turkis); }
.uk-footer__inner { max-width: var(--uk-max); margin: 0 auto; padding: 1.1rem var(--uk-pad) 1.2rem; }
.uk-footer__line { margin: 0; display: flex; flex-wrap: wrap; align-items: baseline; gap: .15rem .6rem; font: 500 .8125rem/1.7 var(--uk-m); }
.uk-footer__item { color: var(--uk-taage); }
.uk-footer__item--name { color: var(--uk-lys); }
.uk-footer__sep { color: var(--uk-turkis); }
.uk-footer__link { color: var(--uk-lys); }
.uk-footer__link:hover { color: var(--uk-sol); }
.uk-footer__link[aria-current="page"] { color: var(--uk-sol); }
