/* ==========================================================================
   Unyti – designsystem
   Farver, skrifter og komponenter samlet ét sted. Ret en værdi her, så slår den igennem overalt.
   ========================================================================== */

:root {
	/* Farver (fra appen) */
	--u-primary: #209552;
	--u-primary-hover: #1B8047;
	--u-dark: #0A2F1A;
	--u-text: #1E2A22;
	--u-text-2: #45554A;
	--u-bg: #EAF3EC;
	--u-bg-3: #F3FAF4;
	--u-white: #FFFFFF;
	--u-border: #C5D9C9;
	--u-border-hover: #B0CAAD;
	--u-border-chosen: #B8DFC4;
	--u-hover: #F5F9F6;
	--u-chosen: #DDF2E4;
	--u-light-line: #E3EDE5;
	--u-muted-on-dark: #B0CAAD;
	--u-soft-on-dark: #C5D9C9;
	--u-dark-line: #1F4A31;

	/* Skrifter */
	--u-font: 'Figtree', system-ui, -apple-system, 'Segoe UI', sans-serif;
	--u-font-head: 'Schibsted Grotesk', 'Figtree', system-ui, sans-serif;
	--u-h1: clamp(36px, 3.4vw, 48px);
	--u-h2: clamp(28px, 2.8vw, 40px);

	/* Form */
	--u-radius: 10px;
	--u-line: 1.5px;
	--u-container: 1200px;
	--u-gutter: 24px;
	--u-header-h: 72px;

	/* Grøn gradient (kort, placeholder, video) */
	--u-gradient: radial-gradient(closest-side at 85% 0%, rgba(32, 149, 82, .35), rgba(32, 149, 82, 0)), linear-gradient(135deg, #0A2F1A 0%, #0F3D23 50%, #1B8047 130%);
}

/* ---------- Grundlag ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
body {
	margin: 0;
	font-family: var(--u-font);
	font-size: 16px;
	line-height: 1.6;
	color: var(--u-text);
	background: var(--u-white);
	-webkit-font-smoothing: antialiased;
	overflow-x: hidden;
}
h1, h2, h3, h4, h5, h6 { font-family: var(--u-font-head); color: inherit; text-wrap: balance; margin: 0; }
p { text-wrap: pretty; }
img, svg, video, iframe { max-width: 100%; }
img { height: auto; display: block; }
a { color: var(--u-primary); }
a:hover { color: var(--u-primary-hover); }
:focus-visible { outline: 2px solid var(--u-primary); outline-offset: 2px; }
.u-icon { flex: none; display: inline-block; vertical-align: middle; }
.u-check { flex: none; color: var(--u-primary); }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }
.skip-link:focus { position: fixed; top: 8px; left: 8px; z-index: 100; width: auto; height: auto; clip: auto; padding: 10px 16px; background: var(--u-white); border-radius: var(--u-radius); }

.u-container { width: 100%; max-width: calc(var(--u-container) + 2 * var(--u-gutter)); margin: 0 auto; padding: 0 var(--u-gutter); }
.u-section { padding: 104px 0 112px; }
.u-section--mint { background: var(--u-bg); }
@media (max-width: 640px) { .u-section { padding: 72px 0; } }

/* ---------- Typografi ---------- */
.u-h1 { font-size: var(--u-h1); line-height: 1.06; letter-spacing: -.035em; font-weight: 800; }
.u-h2 { font-size: var(--u-h2); line-height: 1.1; letter-spacing: -.03em; font-weight: 800; }
.u-eyebrow { font-size: 13px; letter-spacing: .1em; text-transform: uppercase; font-weight: 700; color: var(--u-primary); }
.u-lead { margin: 0; font-size: 18px; line-height: 1.6; color: var(--u-text-2); }
.u-section-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 24px; margin-bottom: 40px; }
.u-section-head__text { display: flex; flex-direction: column; gap: 16px; max-width: 680px; }

/* ---------- Knapper ---------- */
.u-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px;
	min-height: 52px; padding: 0 24px;
	border-radius: var(--u-radius); border: var(--u-line) solid transparent;
	font-family: var(--u-font); font-size: 16px; font-weight: 600; line-height: 1.2;
	text-decoration: none; cursor: pointer;
	transition: transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease, color .15s ease;
}
.u-btn--lg { min-height: 56px; padding: 0 28px; font-size: 17px; }
.u-btn--sm { min-height: 44px; padding: 0 20px; font-size: 15px; }
.u-btn:active { transform: translateY(1px); box-shadow: inset 0 2px 5px rgba(0, 0, 0, .22); }

/* Primær: kun en mørk skygge indeni for den svage 3D-effekt */
.u-btn--primary { background: var(--u-primary); color: var(--u-white); border-color: var(--u-primary); border-bottom-color: #1A7A43; box-shadow: inset 0 -2px 0 rgba(0, 0, 0, .18); }
.u-btn--primary:hover { background: var(--u-primary-hover); border-color: var(--u-primary-hover); border-bottom-color: #16693A; color: var(--u-white); transform: translateY(-1px); }

/* Sekundær (hvid) */
.u-btn--secondary { background: var(--u-white); color: var(--u-text); border-color: var(--u-border); box-shadow: inset 0 1px 0 #FFFFFF, inset 0 -2px 0 rgba(10, 47, 26, .07), 0 1px 2px rgba(10, 47, 26, .08), 0 6px 14px -8px rgba(10, 47, 26, .25); }
.u-btn--secondary:hover { background: var(--u-hover); border-color: var(--u-border-hover); color: var(--u-text); transform: translateY(-1px); }

/* På mørk baggrund: hvid kant */
.u-btn--ghost { background: rgba(255, 255, 255, .06); color: var(--u-white); border-color: var(--u-white); }
.u-btn--ghost:hover { background: rgba(255, 255, 255, .12); color: var(--u-white); }
@media (prefers-reduced-motion: reduce) { .u-btn { transition: none; } .u-btn:hover { transform: none; } }

/* ---------- Mærker ---------- */
.u-pill { display: inline-flex; align-items: center; align-self: flex-start; font-size: 12px; font-weight: 700; line-height: 1.3; padding: 4px 10px; border-radius: 999px; background: var(--u-bg); color: var(--u-primary-hover); border: var(--u-line) solid var(--u-border-chosen); text-decoration: none; }
a.u-pill:hover { background: var(--u-chosen); color: var(--u-primary-hover); }
.u-checks { display: flex; flex-wrap: wrap; gap: 8px 22px; font-size: 14px; color: var(--u-bg); margin: 0; padding: 0; list-style: none; }
.u-checks li { display: inline-flex; align-items: center; gap: 7px; }
.u-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 20px; font-size: 14px; color: var(--u-muted-on-dark); }
.u-meta span { display: inline-flex; align-items: center; gap: 7px; }

/* ==========================================================================
   Header
   ========================================================================== */
.site-header {
	position: fixed; top: 0; left: 0; right: 0; z-index: 50;
	background: transparent; border-bottom: var(--u-line) solid transparent;
	transition: background .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.admin-bar .site-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .site-header { top: 46px; } }
.site-header__inner { height: var(--u-header-h); display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.site-header__logo { display: flex; align-items: center; text-decoration: none; }
.site-header__logo img { height: 34px; width: auto; }
.site-header .logo-dark { display: none; }
.site-header .navlink { color: var(--u-white); text-decoration: none; font-size: 15px; font-weight: 500; transition: color .2s ease; }
.site-header .navlink:hover { color: var(--u-primary) !important; }
.site-header.is-solid, .site-header:hover, .site-header:focus-within { background: var(--u-white); border-bottom-color: var(--u-border); box-shadow: 0 12px 30px -22px rgba(10, 47, 26, .45); }
.site-header.is-solid .navlink, .site-header:hover .navlink, .site-header:focus-within .navlink { color: var(--u-text); }
.site-header.is-solid .logo-light, .site-header:hover .logo-light, .site-header:focus-within .logo-light { display: none; }
.site-header.is-solid .logo-dark, .site-header:hover .logo-dark, .site-header:focus-within .logo-dark { display: block; }
.site-nav { display: flex; align-items: center; gap: 30px; }
.site-nav__item { position: static; height: var(--u-header-h); display: flex; align-items: center; }
.site-nav__item > .navlink { display: inline-flex; align-items: center; gap: 6px; height: 100%; }
.site-nav__chev { transition: transform .2s ease; }
.site-nav__item:hover .site-nav__chev, .site-nav__item:focus-within .site-nav__chev { transform: rotate(180deg); }
.site-header__actions { display: flex; align-items: center; gap: 12px; }
.site-header__login { padding: 12px 8px; }

/* Mega-menu (Foreningstype) og almindelig undermenu */
.u-mega, .u-dropdown { opacity: 0; visibility: hidden; transform: translateY(-8px); transition: opacity .2s ease, transform .2s ease, visibility .2s; }
.site-nav__item:hover .u-mega, .site-nav__item:focus-within .u-mega,
.site-nav__item:hover .u-dropdown, .site-nav__item:focus-within .u-dropdown { opacity: 1; visibility: visible; transform: none; }
.u-mega { position: absolute; left: 0; right: 0; top: 100%; background: var(--u-white); border-top: var(--u-line) solid var(--u-border); border-bottom: var(--u-line) solid var(--u-border); box-shadow: 0 40px 60px -30px rgba(10, 47, 26, .35); }
.u-mega__grid { padding-top: 28px; padding-bottom: 32px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)) 250px; gap: 16px; }
.u-mega__card { display: flex; flex-direction: column; gap: 12px; padding: 10px 10px 16px; border-radius: var(--u-radius); border: var(--u-line) solid var(--u-border); background: var(--u-bg-3); color: var(--u-text); text-decoration: none; transition: border-color .15s ease, background .15s ease, transform .15s ease; }
.u-mega__card:hover { border-color: var(--u-border-hover); background: var(--u-white); color: var(--u-text); transform: translateY(-2px); }
.u-mega__card img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--u-radius); }
.u-mega__card span { padding: 0 6px; display: flex; flex-direction: column; gap: 6px; }
.u-mega__card strong { font-family: var(--u-font-head); font-size: 17px; font-weight: 700; }
.u-mega__card small { font-size: 13.5px; line-height: 1.5; color: var(--u-text-2); }
.u-mega__more { border-radius: var(--u-radius); background: var(--u-dark); color: var(--u-white); padding: 22px; display: flex; flex-direction: column; gap: 14px; }
.u-mega__more .u-eyebrow { color: var(--u-muted-on-dark); font-size: 12px; }
.u-mega__more a:not(.u-btn) { color: var(--u-white); text-decoration: none; font-family: var(--u-font-head); font-size: 17px; font-weight: 700; padding: 6px 0; border-bottom: var(--u-line) solid var(--u-dark-line); }
.u-mega__more .u-btn { margin-top: auto; min-height: 46px; padding: 0 14px; white-space: nowrap; font-size: 14px; font-weight: 700; background: var(--u-white); color: var(--u-dark); border-color: var(--u-border); }
.site-nav__item--drop { position: relative; }
.u-dropdown { position: absolute; top: 100%; left: -16px; min-width: 240px; padding: 8px; background: var(--u-white); border: var(--u-line) solid var(--u-border); border-radius: var(--u-radius); box-shadow: 0 30px 50px -30px rgba(10, 47, 26, .4); display: flex; flex-direction: column; }
.u-dropdown a { padding: 10px 12px; border-radius: var(--u-radius); color: var(--u-text); text-decoration: none; font-size: 15px; font-weight: 600; }
.u-dropdown a:hover { background: var(--u-hover); }

/* Mobilmenu */
.site-header__menu-btn { display: none; width: 44px; height: 44px; border-radius: var(--u-radius); border: var(--u-line) solid var(--u-border); background: var(--u-white); color: var(--u-text); align-items: center; justify-content: center; cursor: pointer; }
.u-mobile-nav { display: none; }
@media (max-width: 920px) {
	.site-nav, .site-header__login { display: none; }
	.site-header__menu-btn { display: inline-flex; }
	.site-header__actions .u-btn { display: none; }
	.u-mobile-nav.is-open { display: flex; position: fixed; inset: var(--u-header-h) 0 0 0; z-index: 49; background: var(--u-white); flex-direction: column; padding: 16px var(--u-gutter) 32px; gap: 4px; overflow-y: auto; }
	.u-mobile-nav a { padding: 14px 4px; color: var(--u-text); text-decoration: none; font-size: 18px; font-weight: 600; border-bottom: var(--u-line) solid var(--u-light-line); }
	.u-mobile-nav a.u-mobile-nav__sub { padding-left: 20px; font-size: 16px; font-weight: 500; color: var(--u-text-2); }
	.u-mobile-nav .u-btn { margin-top: 20px; border-bottom-width: var(--u-line); color: var(--u-white); }
	.menu-open .site-header { background: var(--u-white); }
	.menu-open .site-header .logo-light { display: none; }
	.menu-open .site-header .logo-dark { display: block; }
}

/* ==========================================================================
   Mørkegrøn topsektion (hero)
   ========================================================================== */
.u-hero { position: relative; overflow: hidden; background: var(--u-dark); color: var(--u-white); padding-top: var(--u-header-h); border-bottom: var(--u-line) solid var(--u-border); }
.u-hero__photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 45%; opacity: .22; }
.u-hero__shade { position: absolute; inset: 0; background: linear-gradient(90deg, var(--u-dark) 0%, rgba(10, 47, 26, .74) 40%, rgba(10, 47, 26, .7) 100%); }
.u-hero__glow { position: absolute; right: -10%; top: -20%; width: 70%; height: 120%; background: radial-gradient(closest-side, rgba(32, 149, 82, .32), rgba(32, 149, 82, 0)); }
.u-hero__inner { position: relative; z-index: 1; padding-top: 56px; padding-bottom: 64px; display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.u-hero__lead { margin: 0; font-size: 19px; line-height: 1.6; color: var(--u-soft-on-dark); max-width: 760px; }
.u-hero .u-eyebrow { color: var(--u-border-chosen); }
.u-hero--video { border-bottom: 0; }
.u-hero--video .u-hero__inner { max-width: calc(1000px + 2 * var(--u-gutter)); padding-top: 64px; padding-bottom: 236px; }

/* ==========================================================================
   Faner (bloggens kategorier og juridiske dokumenter)
   ========================================================================== */
.u-tabs { display: inline-flex; flex-wrap: wrap; gap: 6px; padding: 6px; border-radius: var(--u-radius); background: var(--u-bg-3); border: var(--u-line) solid var(--u-border); max-width: 100%; }
.u-tab { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 16px; border-radius: var(--u-radius); border: var(--u-line) solid transparent; color: var(--u-text); text-decoration: none; font-size: 15px; font-weight: 700; transition: background .15s ease, border-color .15s ease; }
.u-tab:hover { background: var(--u-white); border-color: var(--u-border-hover); color: var(--u-text); }
.u-tab__count { font-size: 12px; font-weight: 700; padding: 2px 8px; border-radius: 999px; background: var(--u-white); color: var(--u-text-2); }
.u-tab[aria-current="page"] { background: var(--u-dark); border-color: var(--u-dark); color: var(--u-white); }
.u-tab[aria-current="page"] .u-tab__count { background: rgba(255, 255, 255, .16); color: var(--u-white); }

.u-doc-tabs { display: flex; flex-wrap: wrap; gap: 8px; padding-top: 8px; }
.u-doc-tab { display: inline-flex; align-items: center; min-height: 40px; padding: 0 16px; border-radius: var(--u-radius); border: var(--u-line) solid rgba(255, 255, 255, .24); background: rgba(255, 255, 255, .06); color: var(--u-white); text-decoration: none; font-size: 14.5px; font-weight: 700; transition: background .15s ease, border-color .15s ease; }
.u-doc-tab:hover { background: rgba(255, 255, 255, .12); border-color: rgba(255, 255, 255, .5); color: var(--u-white); }
.u-doc-tab[aria-current="page"] { background: var(--u-white); border-color: var(--u-white); color: var(--u-dark); }

/* ==========================================================================
   Blogkort
   ========================================================================== */
.u-grid-3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
@media (max-width: 960px) { .u-grid-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .u-grid-3 { grid-template-columns: 1fr; } }

.u-card { position: relative; display: flex; flex-direction: column; border-radius: var(--u-radius); overflow: hidden; border: var(--u-line) solid var(--u-border); background: var(--u-white); color: var(--u-text); transition: border-color .15s ease, transform .15s ease; }
.u-card:hover { border-color: var(--u-border-hover); transform: translateY(-2px); }
.u-card__link::after { content: ''; position: absolute; inset: 0; } /* hele kortet er klikbart */
.u-card__link { color: inherit; text-decoration: none; }
.u-card__media { aspect-ratio: 3 / 2; overflow: hidden; }
.u-card__media--photo { background: var(--u-bg); border-bottom: var(--u-line) solid var(--u-border); }
.u-card__media--photo img { width: 100%; height: 100%; object-fit: cover; }
.u-card__media--shot { background: var(--u-gradient); border-bottom: var(--u-line) solid var(--u-dark); padding: 22px 0 0 22px; }
.u-card__media--shot img { width: 100%; height: 100%; object-fit: cover; object-position: 0 0; transform: scale(1.12); transform-origin: 0 0; }
.u-card__media--ph { border-bottom: var(--u-line) solid var(--u-dark); }
.u-card__body { flex: 1; padding: 22px 22px 24px; display: flex; flex-direction: column; gap: 10px; }
.u-card__title { font-size: 19px; line-height: 1.3; font-weight: 700; letter-spacing: -.01em; }
.u-card__excerpt { margin: 0; font-size: 15px; line-height: 1.6; color: var(--u-text-2); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.u-card__foot { margin-top: auto; padding-top: 8px; display: flex; justify-content: space-between; align-items: center; gap: 12px; font-size: 14px; }
.u-card__date { color: var(--u-text-2); }
.u-card__more { display: inline-flex; align-items: center; gap: 6px; font-weight: 700; color: var(--u-primary); }
.u-card .u-pill { position: relative; z-index: 1; }

/* Placeholder-billede (indlæg uden foto) */
.u-ph { position: relative; width: 100%; height: 100%; min-height: 100%; aspect-ratio: 3 / 2; background: var(--u-gradient); overflow: hidden; }
.u-ph__icon { position: absolute; right: -34px; bottom: -44px; color: rgba(255, 255, 255, .07); line-height: 0; }
.u-ph__logo { position: absolute; left: 18px; top: 18px; height: 18px !important; width: auto !important; opacity: .85; }

/* ==========================================================================
   Bloggen (oversigt)
   ========================================================================== */
.u-blog { padding: 96px 0 112px; min-height: 1500px; }
.u-blog__tabs { margin-bottom: 36px; }
.u-blog__more { display: flex; flex-direction: column; align-items: center; gap: 12px; padding-top: 44px; }
.u-blog__count { font-size: 14px; color: var(--u-text-2); }
.u-pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.u-pagination .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 0 14px; border-radius: var(--u-radius); border: var(--u-line) solid var(--u-border); background: var(--u-white); color: var(--u-text); text-decoration: none; font-weight: 700; }
.u-pagination .page-numbers:hover { background: var(--u-hover); border-color: var(--u-border-hover); }
.u-pagination .page-numbers.current { background: var(--u-dark); border-color: var(--u-dark); color: var(--u-white); }
.u-empty { padding: 48px; border-radius: var(--u-radius); border: var(--u-line) dashed var(--u-border); text-align: center; color: var(--u-text-2); }

/* ==========================================================================
   Indholdsfortegnelse + tekstspalte (blogindlæg og tekstsider)
   ========================================================================== */
.u-article-wrap { padding: 72px 0 112px; }
.u-article-grid { display: grid; grid-template-columns: 280px minmax(0, 760px); justify-content: space-between; gap: 64px; align-items: start; }
.u-article-grid--legal { grid-template-columns: 300px minmax(0, 760px); }
.u-article-grid--single { grid-template-columns: minmax(0, 760px); justify-content: center; }
.u-aside { position: sticky; top: calc(var(--u-header-h) + 24px); display: flex; flex-direction: column; gap: 16px; }
.admin-bar .u-aside { top: calc(var(--u-header-h) + 56px); }
@media (max-width: 1100px) { .u-article-grid { grid-template-columns: minmax(0, 1fr); } .u-aside { display: none; } }

.u-toc { display: flex; flex-direction: column; gap: 2px; padding: 16px; border-radius: var(--u-radius); border: var(--u-line) solid var(--u-border); background: var(--u-white); max-height: calc(100vh - 140px); overflow-y: auto; }
.u-toc__title { padding: 4px 12px 10px; font-size: 13px; letter-spacing: .1em; text-transform: uppercase; font-weight: 700; color: var(--u-primary); }
.u-toc a { display: flex; gap: 10px; padding: 7px 12px; border-radius: var(--u-radius); border: var(--u-line) solid transparent; font-size: 14.5px; line-height: 1.4; font-weight: 600; color: var(--u-text-2); text-decoration: none; transition: color .15s ease, background .15s ease, border-color .15s ease; }
.u-toc a:hover { color: var(--u-text); background: var(--u-hover); }
.u-toc a[aria-current="true"] { color: var(--u-primary-hover); background: var(--u-chosen); border-color: var(--u-primary); }
.u-toc__num { flex: none; width: 22px; color: var(--u-primary); font-weight: 800; }
.u-help { padding: 20px; border-radius: var(--u-radius); background: var(--u-bg-3); border: var(--u-line) solid var(--u-border); display: flex; flex-direction: column; gap: 10px; }
.u-help strong { font-family: var(--u-font-head); font-size: 17px; }
.u-help span { font-size: 14.5px; line-height: 1.55; color: var(--u-text-2); }
.u-help a { display: inline-flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 700; text-decoration: none; }

/* Tekst i indlæg og sider */
.u-prose { min-width: 0; font-size: 17px; line-height: 1.7; color: var(--u-text); }
.u-prose > * { margin: 0 0 20px; }
.u-prose > *:last-child { margin-bottom: 0; }
.u-prose h2 { font-size: 24px; line-height: 1.25; font-weight: 700; letter-spacing: -.015em; margin: 56px 0 18px; scroll-margin-top: 110px; }
.u-prose h3 { font-size: 21px; line-height: 1.3; font-weight: 700; letter-spacing: -.01em; margin: 44px 0 16px; scroll-margin-top: 110px; }
.u-prose h4 { font-size: 18px; line-height: 1.35; font-weight: 700; margin: 36px 0 12px; scroll-margin-top: 110px; }
.u-prose > h2:first-child, .u-prose > h3:first-child, .u-prose > h4:first-child { margin-top: 0; }
.u-step-heading { display: flex; align-items: center; gap: 14px; }
.u-step { flex: none; width: 40px; height: 40px; border-radius: 50%; background: var(--u-dark); color: var(--u-white); display: grid; place-items: center; font-family: var(--u-font-head); font-weight: 800; font-size: 16px; letter-spacing: 0; }
.u-prose ul, .u-prose ol { padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; }
.u-prose ul ul, .u-prose ol ol, .u-prose ul ol, .u-prose ol ul { margin-top: 10px; padding-left: 4px; }
.u-prose li { position: relative; padding-left: 22px; }
.u-prose ul > li::before { content: ''; position: absolute; left: 4px; top: .72em; width: 7px; height: 7px; border-radius: 50%; background: var(--u-primary); }
.u-prose ul ul > li { font-size: 16px; color: var(--u-text-2); }
.u-prose ul ul > li::before { background: var(--u-border-hover); }
.u-prose ol { counter-reset: u-ol; }
.u-prose ol > li { counter-increment: u-ol; padding-left: 30px; }
.u-prose ol > li::before { content: counter(u-ol) '.'; position: absolute; left: 0; top: 0; font-weight: 800; color: var(--u-primary); }
.u-prose img, .u-prose figure img { border-radius: var(--u-radius); border: var(--u-line) solid var(--u-border); background: var(--u-bg); box-shadow: 0 24px 40px -32px rgba(10, 47, 26, .45); }
.u-prose figure { margin: 0 0 24px; }
.u-prose p > img:only-child, .u-prose figure img { width: 100%; }
.u-prose figcaption { margin-top: 10px; font-size: 14px; color: var(--u-text-2); text-align: left; }
.u-prose blockquote { margin: 0 0 24px; padding: 4px 0 4px 20px; border-left: 3px solid var(--u-primary); font-size: 19px; color: var(--u-text); }
.u-prose a { font-weight: 600; }
.u-prose strong { font-weight: 700; }
.u-prose hr { border: 0; border-top: var(--u-line) solid var(--u-light-line); margin: 40px 0; }
.u-prose iframe { width: 100%; border: 0; border-radius: var(--u-radius); }
.u-prose .wp-block-embed__wrapper { position: relative; }
.u-prose table { width: 100%; border-collapse: separate; border-spacing: 0; border: var(--u-line) solid var(--u-border); border-radius: var(--u-radius); overflow: hidden; font-size: 15.5px; line-height: 1.55; }
.u-prose th { text-align: left; background: var(--u-bg-3); font-weight: 700; padding: 12px 16px; border-bottom: var(--u-line) solid var(--u-border); }
.u-prose td { padding: 12px 16px; vertical-align: top; border-bottom: var(--u-line) solid var(--u-light-line); }
.u-prose tr:last-child td { border-bottom: 0; }
.u-prose .wp-block-table { margin: 0 0 24px; overflow-x: auto; }
.u-prose .wp-block-table thead { border: 0; }
.u-prose .wp-block-table td, .u-prose .wp-block-table th { border-left: 0; border-right: 0; border-top: 0; }

/* Tip- og "Godt at vide"-bokse (vælges som blok-stil i editoren) */
.is-style-unyti-tip, .is-style-unyti-info { position: relative; padding: 18px 20px 18px 70px !important; border-radius: var(--u-radius); background: var(--u-bg); border: var(--u-line) solid var(--u-border-chosen); font-size: 16px; line-height: 1.6; }
.is-style-unyti-tip::before, .is-style-unyti-info::before { content: ''; position: absolute; left: 20px; top: 18px; width: 36px; height: 36px; border-radius: var(--u-radius); background-color: var(--u-primary); background-repeat: no-repeat; background-position: center; background-size: 20px; }
.is-style-unyti-tip::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18h6M10 21h4M12 3a6 6 0 0 0-3.6 10.8c.6.5 1 1.2 1 2V16h5.2v-.2c0-.8.4-1.5 1-2A6 6 0 0 0 12 3z'/%3E%3C/svg%3E"); }
.is-style-unyti-info::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 16v-5M12 8h.01'/%3E%3C/svg%3E"); }
.is-style-unyti-tip > *:first-child, .is-style-unyti-info > *:first-child { margin-top: 0; }
.is-style-unyti-tip > *:last-child, .is-style-unyti-info > *:last-child { margin-bottom: 0; }

/* Artikelfod */
.u-article-foot { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 16px; margin-top: 56px; padding-top: 28px; border-top: var(--u-line) solid var(--u-border); font-size: 14px; color: var(--u-text-2); }
.u-contact-box { display: flex; gap: 16px; align-items: center; margin-top: 48px; padding: 20px 22px; border-radius: var(--u-radius); background: var(--u-bg); border: var(--u-line) solid var(--u-border-chosen); }
.u-contact-box__icon { flex: none; width: 40px; height: 40px; border-radius: var(--u-radius); background: var(--u-primary); color: var(--u-white); display: grid; place-items: center; }
.u-contact-box strong { display: block; font-size: 16px; }
.u-contact-box span { font-size: 15.5px; color: var(--u-text-2); }

/* Tekstsider: luft mellem afsnit */
.u-prose--doc h2, .u-prose--doc h3, .u-prose--doc h4 { font-size: 22px; line-height: 1.3; letter-spacing: -.015em; margin: 36px 0 16px; padding-top: 36px; border-top: var(--u-line) solid var(--u-light-line); }
.u-prose--doc > h2:first-child, .u-prose--doc > h3:first-child, .u-prose--doc > h4:first-child { padding-top: 0; border-top: 0; }
.u-prose--doc p, .u-prose--doc li { font-size: 16.5px; line-height: 1.75; }
.u-prose--doc td:first-child { font-weight: 600; }
.u-doc-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5px; border-radius: var(--u-radius); overflow: hidden; border: var(--u-line) solid var(--u-border); background: var(--u-border); margin-bottom: 32px; }
.u-doc-facts > div { background: var(--u-bg-3); padding: 14px 16px; display: flex; flex-direction: column; gap: 2px; }
.u-doc-facts span { font-size: 12px; letter-spacing: .08em; text-transform: uppercase; font-weight: 700; color: var(--u-text-2); }
.u-doc-facts strong { font-size: 15px; }
@media (max-width: 640px) { .u-doc-facts { grid-template-columns: 1fr; } }

/* ==========================================================================
   Loom-video
   ========================================================================== */
.u-video-wrap { position: relative; z-index: 2; margin-top: -200px; }
.u-video-wrap .u-container { max-width: calc(1000px + 2 * var(--u-gutter)); display: flex; flex-direction: column; gap: 12px; }
.u-video-wrap__note { margin: 0; font-size: 14px; color: var(--u-text-2); }
.u-video { position: relative; aspect-ratio: 16 / 9; border-radius: var(--u-radius); overflow: hidden; border: var(--u-line) solid var(--u-border); background: var(--u-dark); box-shadow: 0 40px 70px -40px rgba(10, 47, 26, .6); }
.u-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.u-video__facade { position: absolute; inset: 0; width: 100%; height: 100%; padding: 0; border: 0; background: none; color: var(--u-white); cursor: pointer; text-align: left; font: inherit; }
.u-video__poster { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.u-video__poster--empty { background: var(--u-gradient); }
.u-video__shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10, 47, 26, .15) 0%, rgba(10, 47, 26, .35) 55%, rgba(10, 47, 26, .85) 100%); }
.u-video__play { position: absolute; left: 50%; top: 50%; width: 92px; height: 92px; margin: -46px 0 0 -46px; border-radius: 50%; background: var(--u-white); border: var(--u-line) solid var(--u-border); color: var(--u-primary); display: grid; place-items: center; box-shadow: 0 16px 36px -10px rgba(10, 47, 26, .5); transition: transform .2s ease; }
.u-video__facade:hover .u-video__play { transform: scale(1.06); }
.u-video__bar { position: absolute; left: 24px; right: 24px; bottom: 22px; display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; }
.u-video__label { display: flex; flex-direction: column; gap: 4px; }
.u-video__eyebrow { font-size: 13px; letter-spacing: .1em; text-transform: uppercase; font-weight: 700; color: var(--u-border-chosen); }
.u-video__label strong { font-family: var(--u-font-head); font-size: 22px; font-weight: 700; }
.u-video__badge { flex: none; display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: 999px; background: rgba(255, 255, 255, .14); border: var(--u-line) solid rgba(255, 255, 255, .3); font-size: 13px; font-weight: 700; }
@media (max-width: 640px) { .u-video__label strong { font-size: 17px; } .u-video__play { width: 68px; height: 68px; margin: -34px 0 0 -34px; } .u-video-wrap { margin-top: -140px; } .u-hero--video .u-hero__inner { padding-bottom: 170px; } }

/* Udvalgt billede øverst i et indlæg uden video */
.u-feature-img { border-radius: var(--u-radius); overflow: hidden; border: var(--u-line) solid var(--u-border); aspect-ratio: 16 / 9; background: var(--u-bg); box-shadow: 0 40px 70px -40px rgba(10, 47, 26, .6); }
.u-feature-img img { width: 100%; height: 100%; object-fit: cover; }
.u-feature-img .u-ph { aspect-ratio: auto; height: 100%; }

/* ==========================================================================
   Afsluttende CTA og footer
   ========================================================================== */
.u-cta { position: relative; overflow: hidden; background: var(--u-dark); color: var(--u-white); min-height: 620px; display: flex; align-items: flex-end; }
.u-cta__photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 40%; }
.u-cta__shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10, 47, 26, .1) 0%, rgba(10, 47, 26, .45) 40%, rgba(10, 47, 26, .9) 75%, var(--u-dark) 100%); }
.u-cta__inner { position: relative; padding-top: 160px; padding-bottom: 96px; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 22px; }
.u-cta__text { margin: 0; font-size: 18px; line-height: 1.6; color: var(--u-bg); max-width: 600px; }
.u-cta__text a { color: var(--u-white); font-weight: 700; }
.u-cta__small { font-size: 14px; color: var(--u-muted-on-dark); }

.site-footer { background: var(--u-dark); color: var(--u-soft-on-dark); padding: 72px 0 32px; }
.site-footer a { color: var(--u-soft-on-dark); text-decoration: none; }
.site-footer a:hover { color: var(--u-white); }
.site-footer__cols { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(180px, 100%), 1fr)); gap: 40px; }
.site-footer__brand { display: flex; flex-direction: column; gap: 16px; }
.site-footer__brand img { height: 34px; width: auto; align-self: flex-start; }
.site-footer__brand p { margin: 0; font-size: 14px; line-height: 1.6; }
.site-footer__col { display: flex; flex-direction: column; gap: 12px; font-size: 15px; }
.site-footer__col ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.site-footer__title { font-size: 13px; letter-spacing: .08em; text-transform: uppercase; font-weight: 700; color: var(--u-white); }
.site-footer__bottom { margin-top: 56px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; padding-top: 24px; border-top: var(--u-line) solid var(--u-dark-line); font-size: 13px; }
.site-footer__badges { display: flex; flex-wrap: wrap; gap: 10px; }
.site-footer__badges span { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: 999px; border: var(--u-line) solid var(--u-dark-line); }
.site-footer__badges .u-icon { color: #61CE70; }

/* ==========================================================================
   Relaterede indlæg, 404, søgning
   ========================================================================== */
.u-related { background: var(--u-bg); }
.u-404 { padding: 96px 0 120px; text-align: center; }
.u-404 .u-container { display: flex; flex-direction: column; align-items: center; gap: 20px; }

/* Indhold bygget med blok-editoren på almindelige sider */
.alignwide { max-width: 1200px; }
.alignfull { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); }

/* Sider uden mørk top (fx sider bygget med Elementor): plads til den faste header */
body:not(.u-has-hero) .site-main { padding-top: var(--u-header-h); }

/* Udskrift / gem som PDF */
@media print {
	.site-header, .u-mobile-nav, .site-footer, .u-cta, .u-aside, .u-related, .u-contact-box, .u-doc-tabs, .u-article-foot .u-btn { display: none !important; }
	.u-hero { background: none; color: #000; padding-top: 0; border: 0; }
	.u-hero__photo, .u-hero__shade, .u-hero__glow { display: none; }
	.u-hero .u-meta, .u-hero__lead, .u-hero .u-eyebrow { color: #333; }
	.u-article-grid { display: block; }
	.u-article-wrap { padding: 24px 0; }
}
