@font-face{font-family:"Crimson Pro";src:url(/filer/fonts/crimson-pro-300.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:"Crimson Pro";src:url(/filer/fonts/crimson-pro-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Crimson Pro";src:url(/filer/fonts/crimson-pro-300i.woff2) format("woff2");font-weight:300;font-style:italic;font-display:swap}
@font-face{font-family:"Mulish";src:url(/filer/fonts/mulish-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Mulish";src:url(/filer/fonts/mulish-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Mulish";src:url(/filer/fonts/mulish-400i.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url(/filer/fonts/ibm-plex-mono-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}
/* Forretningsplan.dk – "planmappen": lyst papir, tre pastelfaser (salvie, dueblå, abrikos), store tynde overskrifter. */

:root {
  --wt-papir: #FAF7F1;
  --wt-hvid: #FFFFFF;
  --wt-mint: #DCEDE3;
  --wt-himmel: #DDE7F1;
  --wt-abrikos: #F7E0CF;
  --wt-blaek: #1F2A30;
  --wt-skov: #2B5D52;
  --wt-tegl: #9A4A2C;
  --wt-grafit: #56616A;
  --wt-streg: #7A8590;
  --wt-linje: #D5DDD8;

  --wt-serif: "Crimson Pro", Georgia, "Times New Roman", serif;
  --wt-sans: "Mulish", "Segoe UI", Arial, sans-serif;
  --wt-mono: "IBM Plex Mono", Consolas, "Courier New", monospace;

  --wt-radius: 2px;
  --wt-s1: .25rem;
  --wt-s2: .5rem;
  --wt-s3: .75rem;
  --wt-s4: 1rem;
  --wt-s5: 1.5rem;
  --wt-s6: 2.25rem;
  --wt-s7: 3.25rem;
  --wt-gutter: clamp(1rem, 3.5vw, 3.5rem);
  --wt-measure: 42rem;
}

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

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

body {
  margin: 0;
  background: var(--wt-papir);
  color: var(--wt-blaek);
  font-family: var(--wt-sans);
  font-size: 1rem;
  line-height: 1.55;
  overflow-wrap: break-word;
}

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

a { color: var(--wt-skov); text-decoration-thickness: 1px; text-underline-offset: .18em; }
a:hover { color: var(--wt-blaek); text-decoration-thickness: 2px; }

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

h1, h2, h3, h4 {
  font-family: var(--wt-serif);
  font-weight: 300;
  line-height: 1.08;
  letter-spacing: -.012em;
  margin: 0 0 var(--wt-s3);
  overflow-wrap: break-word;
  hyphens: auto;
}
h3, h4 { font-weight: 500; letter-spacing: 0; }

p { margin: 0 0 var(--wt-s3); }

/* Fluid ramme: fylder skærmen med en luft-margen, tekstspalter begrænses separat. */
.wt-shell { width: 100%; padding-inline: var(--wt-gutter); margin-inline: auto; }

.wt-skip-link {
  position: absolute; left: var(--wt-s3); top: -4rem; z-index: 50;
  background: var(--wt-blaek); color: var(--wt-papir); padding: var(--wt-s2) var(--wt-s4);
  border-radius: var(--wt-radius); text-decoration: none;
}
.wt-skip-link:focus { top: var(--wt-s3); }

/* ---------- Masthead og burgermenu (på alle skærmbredder) ---------- */
.wt-masthead {
  position: relative;
  background: var(--wt-papir);
  border-top: 4px solid var(--wt-skov);
  border-bottom: 1px solid var(--wt-linje);
  z-index: 20;
}
.wt-masthead-bar { display: flex; align-items: center; justify-content: space-between; gap: var(--wt-s4); min-height: 3.75rem; }
.wt-brand { display: inline-flex; align-items: center; padding-block: var(--wt-s2); }
.wt-brand svg { display: block; height: 1.9rem; width: auto; max-width: 62vw; }

.wt-menu-toggle {
  list-style: none;
  display: inline-flex; align-items: center; gap: var(--wt-s2);
  cursor: pointer;
  padding: var(--wt-s2) var(--wt-s3);
  border: 1px solid var(--wt-skov);
  border-radius: var(--wt-radius);
  font-family: var(--wt-mono); font-weight: 500; font-size: .8125rem; letter-spacing: .06em; text-transform: uppercase;
  color: var(--wt-skov); background: var(--wt-hvid);
  user-select: none;
}
.wt-menu-toggle::-webkit-details-marker { display: none; }
.wt-menu-toggle:hover, .wt-menu[open] .wt-menu-toggle { background: var(--wt-skov); color: var(--wt-papir); }
.wt-menu-icon, .wt-menu-icon::before, .wt-menu-icon::after {
  display: block; width: 1.05rem; height: 2px; background: currentColor; border-radius: 1px; transition: transform .15s ease;
}
.wt-menu-icon { position: relative; }
.wt-menu-icon::before, .wt-menu-icon::after { content: ""; position: absolute; left: 0; }
.wt-menu-icon::before { top: -5px; }
.wt-menu-icon::after { top: 5px; }
.wt-menu[open] .wt-menu-icon { background: transparent; }
.wt-menu[open] .wt-menu-icon::before { transform: translateY(5px) rotate(45deg); }
.wt-menu[open] .wt-menu-icon::after { transform: translateY(-5px) rotate(-45deg); }

.wt-menu-panel {
  position: absolute; left: 0; right: 0; top: 100%;
  background: var(--wt-hvid);
  border-bottom: 1px solid var(--wt-linje);
  box-shadow: 0 10px 24px rgba(31, 42, 48, .10);
  padding-block: var(--wt-s4) var(--wt-s5);
}
.wt-menu-columns { display: grid; gap: var(--wt-s4); }
.wt-menu-list, .wt-menu-extra { list-style: none; margin: 0; padding: 0; }
.wt-menu-item + .wt-menu-item { border-top: 1px solid var(--wt-linje); }
.wt-menu-link {
  display: flex; align-items: baseline; gap: var(--wt-s3);
  padding: var(--wt-s3) 0;
  text-decoration: none; color: var(--wt-blaek);
  font-family: var(--wt-serif); font-size: 1.375rem; font-weight: 300; line-height: 1.2;
}
.wt-menu-link:hover .wt-menu-text { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .18em; }
.wt-menu-number { font-family: var(--wt-mono); font-size: .75rem; color: var(--wt-tegl); min-width: 1.6rem; }
.wt-menu-link[aria-current="page"] { color: var(--wt-skov); }
.wt-menu-link[aria-current="page"] .wt-menu-text { font-weight: 500; box-shadow: inset 0 -.35em 0 var(--wt-mint); }
.wt-menu-extra { display: flex; flex-wrap: wrap; gap: var(--wt-s2) var(--wt-s4); font-size: .9375rem; padding-top: var(--wt-s2); border-top: 1px solid var(--wt-linje); }
.wt-menu-extra a { display: inline-block; padding-block: var(--wt-s1); }
.wt-menu-extra a[aria-current="page"] { font-weight: 700; color: var(--wt-blaek); }

/* ---------- Disclaimer ---------- */
.wt-disclaimer { background: var(--wt-abrikos); border-bottom: 1px solid #EBCBB3; }
.wt-disclaimer-text {
  margin: 0; padding-block: var(--wt-s2);
  font-size: .875rem; line-height: 1.4;
  display: flex; gap: var(--wt-s2); align-items: baseline;
}
.wt-disclaimer-text::before {
  content: ""; flex: none; width: .55rem; height: .55rem; border-radius: 50%;
  background: var(--wt-tegl); transform: translateY(-.05rem);
}

/* ---------- Fælles småelementer ---------- */
.wt-kicker {
  font-family: var(--wt-mono); font-weight: 500; font-size: .75rem; letter-spacing: .08em; text-transform: uppercase;
  color: var(--wt-tegl); margin-bottom: var(--wt-s3);
  display: flex; flex-wrap: wrap; gap: var(--wt-s1) var(--wt-s3);
}
.wt-kicker-step { color: var(--wt-grafit); }
.wt-lead { font-size: 1.125rem; line-height: 1.5; color: var(--wt-blaek); max-width: 40rem; }
.wt-meta { font-size: .8125rem; color: var(--wt-grafit); margin: 0; }
.wt-button {
  display: inline-block; cursor: pointer;
  background: var(--wt-skov); color: var(--wt-papir);
  border: 1px solid var(--wt-skov); border-radius: var(--wt-radius);
  padding: var(--wt-s2) var(--wt-s4);
  font: 700 .9375rem/1.4 var(--wt-sans); text-decoration: none;
}
.wt-button:hover { background: var(--wt-blaek); border-color: var(--wt-blaek); color: var(--wt-papir); }

.wt-breadcrumbs { padding-block: var(--wt-s3) 0; font-size: .8125rem; }
.wt-breadcrumbs-list { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: var(--wt-s1) var(--wt-s2); color: var(--wt-grafit); }
.wt-breadcrumbs-list li + li::before { content: "/"; margin-right: var(--wt-s2); color: var(--wt-streg); }

/* ---------- Forside ---------- */
.wt-intro { background: linear-gradient(180deg, var(--wt-papir) 0%, var(--wt-papir) 55%, var(--wt-mint) 55%, var(--wt-mint) 100%); }
.wt-intro-grid { display: grid; gap: var(--wt-s5); padding-block: var(--wt-s5) var(--wt-s5); }
.wt-intro-title { font-size: clamp(2.6rem, 1rem + 5vw, 5.75rem); line-height: .98; letter-spacing: -.025em; margin-bottom: var(--wt-s4); hyphens: manual; }
.wt-intro-start { margin: var(--wt-s4) 0 0; }
.wt-intro-media .wt-figure { margin: 0; }
.wt-intro-media .wt-figure-image { border: 6px solid var(--wt-hvid); box-shadow: 0 1px 0 var(--wt-linje); }

.wt-roadmap { background: var(--wt-mint); padding-block: var(--wt-s4) var(--wt-s6); }
.wt-roadmap-title { font-size: clamp(1.9rem, 1.4rem + 2vw, 2.9rem); margin-bottom: var(--wt-s4); }
.wt-roadmap-phases { display: grid; gap: var(--wt-s3); }
.wt-phase {
  background: var(--wt-hvid);
  border-radius: var(--wt-radius);
  border-top: 6px solid var(--wt-fase, var(--wt-mint));
  padding: var(--wt-s4);
  position: relative;
}
.wt-phase--mint { --wt-fase: #9CC7AF; }
.wt-phase--himmel { --wt-fase: #9DB8D3; }
.wt-phase--abrikos { --wt-fase: #E5AF8A; }
.wt-phase-header { margin-bottom: var(--wt-s3); }
.wt-phase-label { font-family: var(--wt-mono); font-size: .75rem; letter-spacing: .08em; text-transform: uppercase; color: var(--wt-grafit); margin: 0 0 var(--wt-s1); }
.wt-phase-title { font-size: 1.75rem; font-weight: 300; margin: 0 0 var(--wt-s1); }
.wt-phase-summary { font-size: .875rem; color: var(--wt-grafit); margin: 0; }
.wt-steps { list-style: none; margin: 0; padding: 0; counter-reset: none; }
.wt-step { border-top: 1px solid var(--wt-linje); padding-block: var(--wt-s3); }
.wt-step:last-child { padding-bottom: 0; }
.wt-step-link { display: grid; grid-template-columns: 2.1rem 1fr; gap: var(--wt-s2); align-items: baseline; text-decoration: none; color: var(--wt-blaek); }
.wt-step-number { font-family: var(--wt-mono); font-weight: 500; font-size: .8125rem; color: var(--wt-tegl); }
.wt-step-title { font-weight: 700; color: var(--wt-skov); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .18em; }
.wt-step-link:hover .wt-step-title { color: var(--wt-blaek); text-decoration-thickness: 2px; }
.wt-step-text { display: none; margin: var(--wt-s1) 0 0 2.6rem; font-size: .875rem; color: var(--wt-grafit); }

.wt-home-body { display: grid; gap: var(--wt-s6); padding-block: var(--wt-s6); }
.wt-home-article { min-width: 0; max-width: var(--wt-measure); }
.wt-home-glossary {
  align-self: start;
  background: var(--wt-himmel);
  border-radius: var(--wt-radius);
  padding: var(--wt-s4);
}
.wt-home-glossary-title { font-size: 2rem; margin-bottom: var(--wt-s2); }
.wt-home-glossary-text { font-size: .9375rem; }
.wt-home-glossary-more { margin: var(--wt-s3) 0 0; font-weight: 700; }

/* A–Å */
.wt-alphabet-list {
  list-style: none; margin: 0; padding: 0;
  display: grid; grid-template-columns: repeat(auto-fill, minmax(2.25rem, 1fr)); gap: 3px;
}
.wt-alphabet-letter {
  display: flex; align-items: center; justify-content: center;
  min-height: 2.5rem;
  font-family: var(--wt-serif); font-size: 1.25rem; font-weight: 500; line-height: 1;
  background: var(--wt-hvid); color: var(--wt-skov);
  border: 1px solid var(--wt-linje); border-radius: var(--wt-radius);
  text-decoration: none;
}
a.wt-alphabet-letter:hover { background: var(--wt-skov); color: var(--wt-papir); border-color: var(--wt-skov); }
.wt-alphabet-letter--empty { background: transparent; color: var(--wt-grafit); border-style: dashed; font-weight: 300; }

/* ---------- Artikler ---------- */
.wt-article-layout { display: grid; gap: var(--wt-s6); padding-block: var(--wt-s4) var(--wt-s7); }
.wt-article { min-width: 0; }
.wt-article-header { max-width: 50rem; padding-bottom: var(--wt-s4); margin-bottom: var(--wt-s4); border-bottom: 1px solid var(--wt-linje); }
.wt-article-title { font-size: clamp(2.35rem, 1.5rem + 3.6vw, 4.5rem); line-height: 1; letter-spacing: -.02em; margin-bottom: var(--wt-s4); }
.wt-article--mint .wt-article-header { border-bottom: 4px solid #9CC7AF; }
.wt-article--himmel .wt-article-header { border-bottom: 4px solid #9DB8D3; }
.wt-article--abrikos .wt-article-header { border-bottom: 4px solid #E5AF8A; }

.wt-figure { margin: 0 0 var(--wt-s5); max-width: 62rem; }
.wt-figure-image { width: 100%; border-radius: var(--wt-radius); background: var(--wt-mint); }

/* Brødtekst */
.wt-prose { max-width: var(--wt-measure); overflow-wrap: anywhere; font-size: 1.0625rem; line-height: 1.65; }
.wt-prose > :first-child { margin-top: 0; }
.wt-prose p, .wt-prose ul, .wt-prose ol, .wt-prose blockquote, .wt-prose table { margin: 0 0 var(--wt-s4); }
.wt-prose h2 { font-size: clamp(1.75rem, 1.4rem + 1.4vw, 2.4rem); margin: var(--wt-s6) 0 var(--wt-s3); }
.wt-prose h3 { font-size: 1.4rem; margin: var(--wt-s5) 0 var(--wt-s2); }
.wt-prose h4 { font-family: var(--wt-sans); font-size: 1rem; font-weight: 700; letter-spacing: 0; margin: var(--wt-s4) 0 var(--wt-s2); }
.wt-prose ul, .wt-prose ol { padding-left: 1.35rem; }
.wt-prose li { margin-bottom: var(--wt-s1); }
.wt-prose li > ul, .wt-prose li > ol { margin: var(--wt-s1) 0 0; }
.wt-prose ul li::marker { color: var(--wt-tegl); }
.wt-prose ol li::marker { font-family: var(--wt-mono); font-size: .875em; color: var(--wt-tegl); }
.wt-prose strong { font-weight: 700; }
.wt-prose blockquote {
  padding: var(--wt-s3) var(--wt-s4);
  background: var(--wt-mint);
  border-left: 4px solid var(--wt-skov);
  border-radius: 0 var(--wt-radius) var(--wt-radius) 0;
  font-family: var(--wt-serif); font-size: 1.3rem; line-height: 1.4;
}
.wt-prose blockquote p:last-child { margin-bottom: 0; }
.wt-prose hr { border: 0; border-top: 1px solid var(--wt-linje); margin: var(--wt-s5) 0; }
.wt-prose code { font-family: var(--wt-mono); font-size: .875em; background: var(--wt-himmel); padding: 0 .25em; border-radius: var(--wt-radius); }

/* Tabeller: må aldrig give vandret scroll på siden; cellerne brydes i stedet. */
.wt-prose table {
  display: block; width: 100%; max-width: 100%; overflow-x: auto;
  border-collapse: collapse; font-size: .875rem; line-height: 1.4;
  background: var(--wt-hvid);
}
.wt-prose th, .wt-prose td { padding: var(--wt-s2) .4rem; hyphens: auto; border-bottom: 1px solid var(--wt-linje); text-align: left; vertical-align: top; overflow-wrap: break-word; word-break: normal; }
@media (max-width: 39.99rem) { .wt-prose table { font-size: .8125rem; } .wt-prose th, .wt-prose td { padding: .4rem .25rem; } }
.wt-prose th { background: var(--wt-himmel); font-weight: 700; border-bottom: 2px solid var(--wt-skov); }
.wt-prose tbody tr:nth-child(even) td { background: #F6F9F7; }

/* Spørgsmål og svar */
.wt-faq, .wt-glossary, .wt-sources { max-width: var(--wt-measure); margin-top: var(--wt-s6); }
.wt-faq-title, .wt-glossary-title, .wt-sources-title { font-size: clamp(1.75rem, 1.4rem + 1.4vw, 2.4rem); }
.wt-faq-list { border-top: 1px solid var(--wt-linje); }
.wt-faq-item { border-bottom: 1px solid var(--wt-linje); }
.wt-faq-question {
  cursor: pointer; list-style: none;
  display: flex; justify-content: space-between; gap: var(--wt-s3);
  padding: var(--wt-s3) 0;
  font-weight: 700;
}
.wt-faq-question::-webkit-details-marker { display: none; }
.wt-faq-question::after { content: "+"; font-family: var(--wt-mono); color: var(--wt-tegl); flex: none; }
.wt-faq-item[open] > .wt-faq-question::after { content: "–"; }
.wt-faq-answer { padding: 0 0 var(--wt-s3); overflow-wrap: anywhere; }
.wt-faq-answer p { margin: 0; }

/* Ordliste */
.wt-glossary .wt-alphabet { position: sticky; top: 0; z-index: 5; background: var(--wt-papir); padding-block: var(--wt-s2); margin-bottom: var(--wt-s4); }
.wt-glossary-group { scroll-margin-top: 6.5rem; border-top: 1px solid var(--wt-linje); padding-top: var(--wt-s3); margin-bottom: var(--wt-s4); display: grid; grid-template-columns: 2.75rem 1fr; gap: var(--wt-s3); }
.wt-glossary-letter { font-size: 2.6rem; font-weight: 300; color: var(--wt-tegl); line-height: 1; margin: 0; }
.wt-glossary-list { margin: 0; min-width: 0; }
.wt-glossary-entry + .wt-glossary-entry { margin-top: var(--wt-s3); }
.wt-glossary-term { font-weight: 700; }
.wt-glossary-definition { margin: var(--wt-s1) 0 0; overflow-wrap: anywhere; }

/* Kilder */
.wt-sources-list { margin: 0; padding-left: 1.2rem; font-size: .9375rem; overflow-wrap: anywhere; }
.wt-sources-list li { margin-bottom: var(--wt-s1); }

/* Forrige og næste */
.wt-pager { max-width: var(--wt-measure); margin-top: var(--wt-s6); display: grid; gap: var(--wt-s2); }
.wt-pager-link {
  display: grid; gap: var(--wt-s1);
  padding: var(--wt-s3) var(--wt-s4);
  background: var(--wt-hvid); border: 1px solid var(--wt-linje); border-radius: var(--wt-radius);
  text-decoration: none; color: var(--wt-blaek);
}
.wt-pager-link:hover { border-color: var(--wt-skov); }
.wt-pager-link--next { text-align: right; }
.wt-pager-label { font-family: var(--wt-mono); font-size: .75rem; letter-spacing: .06em; text-transform: uppercase; color: var(--wt-tegl); }
.wt-pager-title { font-family: var(--wt-serif); font-size: 1.3rem; line-height: 1.2; color: var(--wt-skov); }

/* Guidens afsnit (sidekolonne) */
.wt-guide-index { background: var(--wt-hvid); border: 1px solid var(--wt-linje); border-radius: var(--wt-radius); padding: var(--wt-s4); align-self: start; }
.wt-guide-index-title { font-size: 1.6rem; margin-bottom: var(--wt-s2); }
.wt-guide-index-list { list-style: none; margin: 0; padding: 0; font-size: .9375rem; }
.wt-guide-index-item a {
  display: grid; grid-template-columns: 1.9rem 1fr; gap: var(--wt-s1);
  padding: var(--wt-s2) var(--wt-s2) var(--wt-s2) var(--wt-s2);
  border-left: 3px solid transparent;
  text-decoration: none; color: var(--wt-blaek); line-height: 1.35;
}
.wt-guide-index-item a:hover { color: var(--wt-skov); text-decoration: underline; }
.wt-guide-index-item--mint a { border-left-color: #9CC7AF; }
.wt-guide-index-item--himmel a { border-left-color: #9DB8D3; }
.wt-guide-index-item--abrikos a { border-left-color: #E5AF8A; }
.wt-guide-index-item a[aria-current="page"] { background: var(--wt-mint); font-weight: 700; border-left-color: var(--wt-skov); }
.wt-guide-index-number { font-family: var(--wt-mono); font-size: .75rem; color: var(--wt-tegl); padding-top: .15rem; }
.wt-guide-index-more { margin: var(--wt-s3) 0 0; font-weight: 700; }

/* ---------- Oversigt ---------- */
.wt-list-header { padding-block: var(--wt-s4); max-width: 50rem; }
.wt-list-intro { margin-bottom: var(--wt-s5); }
.wt-catalogue { list-style: none; margin: 0 0 var(--wt-s7); padding: 0; display: grid; gap: 0; border-top: 1px solid var(--wt-linje); }
.wt-catalogue-item { display: grid; grid-template-columns: 3rem 1fr; gap: var(--wt-s3); padding: var(--wt-s4) 0; border-bottom: 1px solid var(--wt-linje); }
.wt-catalogue-number { font-family: var(--wt-mono); font-weight: 500; font-size: .875rem; color: var(--wt-tegl); padding: var(--wt-s1) 0; text-align: center; border-radius: var(--wt-radius); align-self: start; }
.wt-catalogue-item--mint .wt-catalogue-number { background: var(--wt-mint); }
.wt-catalogue-item--himmel .wt-catalogue-number { background: var(--wt-himmel); }
.wt-catalogue-item--abrikos .wt-catalogue-number { background: var(--wt-abrikos); }
.wt-catalogue-body { min-width: 0; max-width: 46rem; }
.wt-catalogue-phase { font-family: var(--wt-mono); font-size: .75rem; letter-spacing: .06em; text-transform: uppercase; color: var(--wt-grafit); margin-bottom: var(--wt-s1); }
.wt-catalogue-title { font-size: 1.6rem; margin-bottom: var(--wt-s2); }
.wt-catalogue-title a { text-decoration-thickness: 1px; }
.wt-catalogue-text { font-size: .9375rem; margin-bottom: var(--wt-s1); }

/* ---------- Kontakt ---------- */
.wt-contact-layout { display: grid; gap: var(--wt-s5); padding-block: var(--wt-s4) var(--wt-s7); }
.wt-contact-header { max-width: var(--wt-measure); }
.wt-contact-panel { background: var(--wt-hvid); border: 1px solid var(--wt-linje); border-top: 6px solid #9DB8D3; border-radius: var(--wt-radius); padding: var(--wt-s4); align-self: start; max-width: 36rem; }
.wt-form { position: relative; }
.wt-form-field { display: grid; gap: var(--wt-s1); margin-bottom: var(--wt-s3); }
.wt-form-label, .wt-form label { font-weight: 700; font-size: .9375rem; }
.wt-form-input, .wt-form input[type="text"], .wt-form input[type="email"], .wt-form textarea {
  width: 100%; min-width: 0;
  font: 400 1rem/1.4 var(--wt-sans); color: var(--wt-blaek);
  background: var(--wt-hvid);
  border: 1px solid var(--wt-streg); border-radius: var(--wt-radius);
  padding: var(--wt-s2) var(--wt-s3);
}
.wt-form-input:focus-visible, .wt-form input:focus-visible, .wt-form textarea:focus-visible { outline: 3px solid var(--wt-tegl); outline-offset: 1px; border-color: var(--wt-skov); }
.wt-form-textarea { resize: vertical; min-height: 9rem; }
.wt-form-trap { position: absolute; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden; }
.wt-form-note { font-size: .8125rem; color: var(--wt-grafit); margin: var(--wt-s3) 0 0; }
.wt-form > p:not(.wt-form-note), .wt-contact-panel > p, .wt-contact-panel [role="status"] {
  background: var(--wt-mint); padding: var(--wt-s2) var(--wt-s3); border-radius: var(--wt-radius);
}

/* ---------- 404 ---------- */
.wt-notfound { display: grid; gap: var(--wt-s5); padding-block: var(--wt-s6) var(--wt-s7); align-items: center; }
.wt-notfound-mark { display: flex; align-items: flex-end; gap: 6px; height: 7rem; }
.wt-notfound-mark span { display: block; width: 3rem; border-radius: var(--wt-radius); }
.wt-notfound-mark span:nth-child(1) { height: 40%; background: #9CC7AF; }
.wt-notfound-mark span:nth-child(2) { height: 70%; background: #9DB8D3; }
.wt-notfound-mark span:nth-child(3) { height: 25%; background: #E5AF8A; }
.wt-notfound-links { padding-left: 1.2rem; }
.wt-notfound-links li { margin-bottom: var(--wt-s1); }

/* ---------- Footer (én linje) ---------- */
.wt-footer { border-top: 1px solid var(--wt-linje); background: var(--wt-papir); font-size: .8125rem; color: var(--wt-grafit); }
.wt-footer-line { display: flex; flex-wrap: wrap; align-items: center; gap: var(--wt-s2) var(--wt-s4); padding-block: var(--wt-s4); }
.wt-footer-name { margin: 0; }
.wt-footer-links { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: var(--wt-s1) var(--wt-s3); }

.wt-footer-links a { color: var(--wt-skov); display: inline-block; padding-block: .2rem; }
.wt-footer-links a[aria-current="page"] { color: var(--wt-blaek); font-weight: 700; }

/* ---------- Større skærme ---------- */
@media (min-width: 40rem) {
  .wt-brand svg { height: 2.2rem; }
  .wt-step-text { display: block; }
  .wt-menu-columns { grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); align-items: start; }
  .wt-menu-list { columns: 2; column-gap: var(--wt-s6); }
  .wt-menu-item { break-inside: avoid; }
  .wt-menu-item + .wt-menu-item { border-top: 0; }
  .wt-menu-item { border-bottom: 1px solid var(--wt-linje); }
  .wt-menu-extra { display: grid; gap: var(--wt-s2); border-top: 0; padding-top: var(--wt-s3); }
  .wt-pager { grid-template-columns: 1fr 1fr; }
  .wt-pager-link--next { grid-column: 2; }
  .wt-glossary-group { grid-template-columns: 4rem 1fr; }
  .wt-glossary-letter { font-size: 3.2rem; }
  .wt-footer-line { flex-wrap: nowrap; justify-content: space-between; }
  .wt-footer-links li + li::before { content: "·"; margin-right: var(--wt-s3); color: var(--wt-streg); }
  .wt-prose table { display: table; }
  .wt-prose th, .wt-prose td { padding: var(--wt-s2) var(--wt-s3); }
}

@media (min-width: 60rem) {
  .wt-intro { background: linear-gradient(90deg, var(--wt-papir) 0%, var(--wt-papir) 58%, var(--wt-mint) 58%, var(--wt-mint) 100%); }
  .wt-intro-grid { grid-template-columns: minmax(0, 7fr) minmax(0, 6fr); align-items: center; gap: var(--wt-s6); padding-block: var(--wt-s6); }
  .wt-roadmap { padding-top: var(--wt-s5); }
  .wt-roadmap-phases { grid-template-columns: repeat(auto-fit, minmax(17rem, 1fr)); gap: var(--wt-s4); align-items: start; }
  .wt-home-body { grid-template-columns: minmax(0, var(--wt-measure)) minmax(16rem, 22rem); justify-content: start; column-gap: clamp(2rem, 6vw, 7rem); }
  .wt-home-glossary { position: sticky; top: var(--wt-s4); }
  .wt-article-layout { grid-template-columns: minmax(15rem, 18rem) minmax(0, 1fr); column-gap: clamp(2rem, 4vw, 5rem); }
  .wt-guide-index { order: -1; position: sticky; top: var(--wt-s4); }
  .wt-contact-layout { grid-template-columns: minmax(0, 1fr) minmax(20rem, 34rem); column-gap: clamp(2rem, 5vw, 6rem); }
  .wt-notfound { grid-template-columns: auto minmax(0, 1fr); gap: var(--wt-s6); }
  .wt-notfound-mark { height: 11rem; }
  .wt-notfound-mark span { width: 4rem; }
}

@media (min-width: 90rem) {
  .wt-article-layout { grid-template-columns: 19rem minmax(0, 1fr); }
  .wt-prose { font-size: 1.125rem; }
}

@media (prefers-reduced-motion: reduce) {
  * { transition: none !important; scroll-behavior: auto !important; }
}

@media print {
  .wt-masthead, .wt-footer, .wt-guide-index, .wt-pager, .wt-skip-link { display: none; }
  body { background: #fff; }
}
