/*
Theme Name: ExtraFokus (Hello Elementor child)
Template: hello-elementor
Description: Child theme til ExtraFokus. Design tokens, dark mode og små hjælpefunktioner. Ingen plugins nødvendige.
Version: 0.1.0
Text Domain: hello-extrafokus
*/

/* ---------- Design tokens ---------- */
:root {
  --ef-accent: #EA6728;
  --ef-highlight: #ffad21;
  --ef-bookmark: #DB8813;
  --ef-search: #CF7110;
  --ef-bg: #faf8f4; --ef-box-bg: #F3EDE0; --ef-box-grad: linear-gradient(135deg, #F9F5EB 0%, #F3EDE0 48%, #ECE3D1 100%); --ef-box-border: #D9CDB2;
  --ef-text: #323232;
  --ef-muted: #555555;
  --ef-heading: #000000;
  --ef-border: #e6e6e6;
  --ef-card: #ffffff;
  --ef-font-body: 'DM Sans', sans-serif;
  --ef-font-mono: 'IBM Plex Mono', monospace;
  --ef-wide: 1400px;
  --ef-content: 760px;
}
html[data-theme="dark"] {
  --ef-bg: #141210; --ef-box-bg: #211812; --ef-box-grad: linear-gradient(135deg, #2B2119 0%, #211812 48%, #1A130D 100%); --ef-box-border: #ffffff26;
  --ef-text: #dddddd;
  --ef-muted: #eeeeee;
  --ef-heading: #ffffff;
  --ef-border: #262626;
  --ef-card: #101010;
  color-scheme: dark;
}

body { background: var(--ef-bg); color: var(--ef-text); font-family: var(--ef-font-body); }

/* ---------- Dark mode: globale overskrivninger ---------- */
html[data-theme="dark"] body,
html[data-theme="dark"] .site-main,
html[data-theme="dark"] .elementor { background-color: var(--ef-bg); }
html[data-theme="dark"] h1, html[data-theme="dark"] h2, html[data-theme="dark"] h3,
html[data-theme="dark"] h4, html[data-theme="dark"] h5, html[data-theme="dark"] h6,
html[data-theme="dark"] .elementor-heading-title,
html[data-theme="dark"] .elementor-widget-heading .elementor-heading-title,
html[data-theme="dark"] .elementor-post__title a { color: var(--ef-heading) !important; }
html[data-theme="dark"] .elementor-widget-text-editor,
html[data-theme="dark"] .elementor-widget-text-editor p,
html[data-theme="dark"] .elementor-widget-theme-post-content,
html[data-theme="dark"] .elementor-widget-theme-post-content p { color: var(--ef-text) !important; }
html[data-theme="dark"] a { color: inherit; }
html[data-theme="dark"] hr, html[data-theme="dark"] .elementor-divider-separator { border-color: var(--ef-border) !important; }
html[data-theme="dark"] input, html[data-theme="dark"] textarea, html[data-theme="dark"] select {
  background: #151515; color: var(--ef-text); border-color: var(--ef-border);
}
html[data-theme="dark"] img { opacity: 1; }

/* ---------- Logo: lyst / mørkt ---------- */
.ef-logo-dark { display: none !important; }
html[data-theme="dark"] .ef-logo-light { display: none !important; }
html[data-theme="dark"] .ef-logo-dark { display: block !important; }

/* ---------- Dark mode-knap ---------- */
.ef-dark-toggle {
  display: inline-flex; align-items: center; gap: 6px; padding: 0; margin: 0;
  background: transparent; border: 0; cursor: pointer; line-height: 1; color: inherit;
}
.ef-dark-toggle:focus-visible { outline: 2px solid var(--ef-accent); outline-offset: 3px; border-radius: 999px; }
.ef-dark-toggle__icon { display: inline-flex; width: 16px; height: 16px; }
.ef-dark-toggle__icon svg { width: 16px; height: 16px; fill: currentColor; }
.ef-dark-toggle__moon { display: none; }
html[data-theme="dark"] .ef-dark-toggle__sun { display: none; }
html[data-theme="dark"] .ef-dark-toggle__moon { display: inline-flex; }
.ef-dark-toggle__track {
  position: relative; width: 34px; height: 16px; border-radius: 999px;
  background: #dcdcdc; transition: background .2s;
}
.ef-dark-toggle__thumb {
  position: absolute; top: 2px; left: 2px; width: 12px; height: 12px; border-radius: 50%;
  background: #ffffff; box-shadow: 0 1px 2px rgba(0,0,0,.35); transition: transform .2s;
}
html[data-theme="dark"] .ef-dark-toggle__track { background: var(--ef-accent); }
html[data-theme="dark"] .ef-dark-toggle__thumb { transform: translateX(18px); }

/* ---------- Sticky header: logo skrumper ved scroll ---------- */
.ef-header .ef-logo-light img, .ef-header .ef-logo-dark img { transition: width .2s ease; }
body.ef-scrolled .ef-header .ef-logo-light img,
body.ef-scrolled .ef-header .ef-logo-dark img { width: 180px; }

/* ==========================================================
   Basis: links og sidetitler
   ========================================================== */
a { color: inherit; text-decoration: none; }
/* Sidetitel på sider uden Elementor (Login, Min side ...): som Foxiz */
.page-header { max-width: 1400px; margin: 0 auto; padding: 30px 20px 0; }
.page-header .entry-title { margin: 0; font-family: var(--ef-font-mono); font-size: 45px; font-weight: 400; line-height: 54px; letter-spacing: -3.5px; color: #54595F; }
html[data-theme="dark"] .page-header .entry-title { color: #fff; }


/* ==========================================================
   Header
   ========================================================== */
.ef-header {
  background: var(--ef-bg);
  transition: box-shadow .2s ease, padding .2s ease;
}
body.ef-scrolled .ef-header { box-shadow: 0 2px 14px rgba(0,0,0,.08); padding-top: 6px !important; padding-bottom: 4px !important; }
html[data-theme="dark"] body.ef-scrolled .ef-header { box-shadow: 0 2px 14px rgba(0,0,0,.6); }
body.ef-scrolled .ef-header .ef-social { display: block; }
.ef-header .elementor-nav-menu--main .elementor-item { white-space: nowrap; }
.ef-header .elementor-nav-menu--dropdown { border-radius: 4px; box-shadow: 0 8px 24px rgba(0,0,0,.12); }
.ef-header .elementor-nav-menu--dropdown .elementor-item { padding: 9px 18px; }
.ef-header .elementor-menu-toggle { background: transparent; }

/* Søgning: ikon uden baggrundsboks */
.ef-search { --e-search-form-toggle-background-color: transparent; --e-search-form-toggle-size: 28px; }
.ef-search .elementor-search-form__toggle { width: auto; height: auto; background: transparent; border-radius: 0; font-size: 19px; }
.ef-search .elementor-search-form__toggle i:before { font-size: 19px; }
.ef-search .elementor-search-form__toggle svg { width: 19px; height: 19px; }

/* Ikonerne til højre */
.ef-header .ef-icon-bookmark .elementor-icon, .ef-header .ef-icon-user .elementor-icon { line-height: 1; }
.ef-header .elementor-widget { margin-bottom: 0; }

/* Dark mode: header og menu */
html[data-theme="dark"] .ef-header .elementor-nav-menu--main .elementor-item,
html[data-theme="dark"] .ef-header .elementor-menu-toggle { color: #ffffff !important; fill: #ffffff; }
html[data-theme="dark"] .ef-header .elementor-nav-menu--main .elementor-item:hover { color: var(--ef-accent) !important; }
html[data-theme="dark"] .ef-header .elementor-nav-menu--dropdown { background: #101010; }
html[data-theme="dark"] .ef-header .elementor-nav-menu--dropdown .elementor-item { color: #ffffff !important; background: #101010 !important; }
html[data-theme="dark"] .ef-header .elementor-nav-menu--dropdown .elementor-item:hover { color: var(--ef-accent) !important; }
html[data-theme="dark"] .ef-header .elementor-search-form--skin-full_screen .elementor-search-form__container { background: rgba(0,0,0,.92); }
html[data-theme="dark"] .ef-social .elementor-social-icon,
html[data-theme="dark"] .ef-social .elementor-social-icon i,
html[data-theme="dark"] .ef-social .elementor-social-icon svg { color: #ffffff !important; fill: #ffffff !important; background-color: transparent !important; }
html[data-theme="dark"] .ef-darktoggle { color: #ffffff; }

/* ==========================================================
   Footer
   ========================================================== */
.ef-footer { background: var(--ef-bg); color: var(--ef-text); }
html[data-theme="dark"] .ef-footer { background: #000000; }
.ef-footer .ef-footer-heading .elementor-heading-title {
  font-family: var(--ef-font-body); font-size: 15px; font-weight: 700; letter-spacing: .02em;
  text-transform: uppercase; color: var(--ef-heading) !important; margin: 0;
}
.ef-footer .ef-footer-newsletter-title .elementor-heading-title {
  font-family: 'Covered By Your Grace', cursive; font-size: 22px; font-weight: 400; text-transform: none; letter-spacing: 0;
}
.ef-footer .ef-footer-text, .ef-footer .ef-footer-text p { color: var(--ef-muted); }
.ef-footer .ef-footer-bottom a { color: var(--ef-accent); }
.ef-footer .ef-footer-nav .elementor-nav-menu--main .elementor-item { color: var(--ef-text); padding-left: 0; }
.ef-footer .ef-footer-nav .elementor-nav-menu--main .elementor-item:hover { color: var(--ef-accent); }
html[data-theme="dark"] .ef-footer .ef-footer-nav .elementor-nav-menu--main .elementor-item { color: #dddddd !important; }
html[data-theme="dark"] .ef-footer .ef-footer-nav .elementor-nav-menu--main .elementor-item:hover { color: var(--ef-accent) !important; }
html[data-theme="dark"] .ef-footer .ef-footer-text, html[data-theme="dark"] .ef-footer .ef-footer-text p, html[data-theme="dark"] .ef-footer .ef-footer-bottom p { color: #cccccc !important; }
.ef-footer .ef-social a { padding: .2em; }

/* ==========================================================
   Overført fra den gamle "Ekstra CSS" (Foxiz-specifikt fjernet)
   ========================================================== */
.updated-date { display: none !important; }
.wp-caption-text, .wp-block-image figcaption { display: none !important; }
.subscribe-center { text-align: center; }
h1, h2, h3, h4, h5, h6 { line-height: 1.2; }
.elementor-widget-theme-post-content .elementor-widget-text-editor p:first-child::first-letter {
  font-size: 200%; color: #ea6728; float: left; line-height: .85; padding-bottom: 5px; font-weight: bold; margin: .1em .15em 0 0;
}
[class*="wp-image-"] { width: 100%; max-width: 1000px; height: 563px; object-fit: cover; object-position: center top; }
@media (max-width: 768px) { [class*="wp-image-"] { height: 250px; } }
:root { --ef-offset: 8.33%; --ef-arm: 7.5%; --ef-color: #dc7101; --ef-thick: 3px; --ef-glow: rgba(220,113,1,.45); }
.s-feat-outer { position: relative; overflow: hidden; }
.s-feat { position: relative; overflow: hidden; }
.s-feat::before, .s-feat::after { content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 5; }
.s-feat::before, .s-feat::after {
  background:
    linear-gradient(var(--ef-color), var(--ef-color)) left var(--ef-offset) top var(--ef-offset) / var(--ef-arm) var(--ef-thick) no-repeat,
    linear-gradient(var(--ef-color), var(--ef-color)) left var(--ef-offset) top var(--ef-offset) / var(--ef-thick) var(--ef-arm) no-repeat,
    linear-gradient(var(--ef-color), var(--ef-color)) right var(--ef-offset) top var(--ef-offset) / var(--ef-arm) var(--ef-thick) no-repeat,
    linear-gradient(var(--ef-color), var(--ef-color)) right var(--ef-offset) top var(--ef-offset) / var(--ef-thick) var(--ef-arm) no-repeat,
    linear-gradient(var(--ef-color), var(--ef-color)) left var(--ef-offset) bottom var(--ef-offset) / var(--ef-arm) var(--ef-thick) no-repeat,
    linear-gradient(var(--ef-color), var(--ef-color)) left var(--ef-offset) bottom var(--ef-offset) / var(--ef-thick) var(--ef-arm) no-repeat,
    linear-gradient(var(--ef-color), var(--ef-color)) right var(--ef-offset) bottom var(--ef-offset) / var(--ef-arm) var(--ef-thick) no-repeat,
    linear-gradient(var(--ef-color), var(--ef-color)) right var(--ef-offset) bottom var(--ef-offset) / var(--ef-thick) var(--ef-arm) no-repeat;
}
.s-feat::before { filter: drop-shadow(0 0 6px var(--ef-glow)) drop-shadow(0 0 12px rgba(220,113,1,.22)); opacity: .85; }
.s-feat img { display: block; width: 100%; height: auto; }
.elementor-widget-text-editor h2 { margin-bottom: .6em; }
.elementor-widget-theme-post-content p:not(:last-child) { margin-block-end: 1.5rem; }
.elementor-widget-theme-post-content details:not(.ef-toc):not(.e-n-accordion-item) > summary svg { width: 1em; height: 1em; vertical-align: middle; flex-shrink: 0; }
.elementor-widget-theme-post-content details:not(.ef-toc):not(.e-n-accordion-item) { border-top: 1px solid #e0e0e0; margin-top: 2.5rem; padding-top: 1rem; }
.elementor-widget-theme-post-content details:not(.ef-toc):not(.e-n-accordion-item) summary { cursor: pointer; font-weight: 600; font-size: .9rem; list-style: none; padding: .3em 0; }
.elementor-element-site-h1-strapline .elementor-heading-title { display: flex; align-items: center; justify-content: center; }
.elementor-element-site-h1-strapline .elementor-heading-title::before, .elementor-element-site-h1-strapline .elementor-heading-title::after { content: ""; flex: 1 1 auto; max-width: 120px; height: 1px; background-color: #D1D5DB; }
.elementor-element-site-h1-strapline .elementor-heading-title::before { margin-right: 15px; }
.elementor-element-site-h1-strapline .elementor-heading-title::after { margin-left: 15px; }
html[data-theme="dark"] .elementor-widget-theme-post-content details:not(.ef-toc):not(.e-n-accordion-item) { border-color: #333; }
html[data-theme="dark"] .e-n-accordion-item-title { color: #ffffff !important; }

/* Substack-ikon: uploadet logo i stedet for tom glyph */
.elementor-social-icon-substack { background-image: url('/wp-content/uploads/2026/08/substack.webp') !important; background-size: 62% !important; background-repeat: no-repeat !important; background-position: center !important; }
.elementor-social-icon-substack i, .elementor-social-icon-substack svg { opacity: 0; }
html[data-theme="dark"] .elementor-social-icon-substack { background-image: url('/wp-content/uploads/2026/09/substack-black.jpg') !important; }

/* ==========================================================
   Artikel: overskrift og metalinje
   ========================================================== */
.ef-post-title .elementor-heading-title { text-align: center; }
.ef-post-meta { display: flex; flex-direction: column; align-items: center; gap: 10px; font-size: 13px; color: var(--ef-muted); }
.ef-post-meta a { color: var(--ef-heading); font-weight: 600; }
.ef-post-meta__read { display: inline-flex; align-items: center; gap: 6px; }
.ef-post-meta__read svg { width: 14px; height: 14px; fill: currentColor; }
.ef-dot { display: inline-block; width: 4px; height: 4px; border-radius: 50%; background: #b5b5b5; margin: 0 10px; vertical-align: middle; }

/* ==========================================================
   Artikellister ([ef_posts])
   ========================================================== */
.ef-posts { display: grid; gap: 22px; }
.ef-posts .ef-card__title { margin: 0; font-family: var(--ef-font-body); }
.ef-posts .ef-card__title a { color: var(--ef-heading); }
.ef-posts .ef-card__title a:hover { color: var(--ef-accent); }
.ef-posts .ef-card__cats { font-size: 12px; font-weight: 600; color: var(--ef-heading); margin-bottom: 6px; }
.ef-posts .ef-card__cats a:hover { color: var(--ef-accent); }
.ef-posts .ef-sep { color: #b5b5b5; margin: 0 5px; font-weight: 400; }
.ef-posts .ef-card__date { font-size: 12px; color: var(--ef-muted); margin-top: 8px; }
.ef-posts .ef-card__thumb { display: block; overflow: hidden; background: #e9e9e9; }
.ef-posts .ef-card__thumb img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; max-width: none; }
.ef-posts .ef-card:hover .ef-card__thumb img { transform: scale(1.04); }
.ef-posts--list { gap: 16px; }
.ef-card--list { display: grid; grid-template-columns: 90px 1fr; gap: 15px; align-items: center; }
.ef-card--list .ef-card__thumb { width: 90px; height: 90px; }
.ef-card--list .ef-card__title { font-size: 13px; line-height: 1.4; font-weight: 600; margin-bottom: 6px; }
.ef-card--list .ef-card__cats { margin: 0; }
.ef-posts--grid { grid-template-columns: repeat(var(--ef-cols, 4), minmax(0, 1fr)); gap: 26px 24px; }
.ef-card--grid .ef-card__thumb { aspect-ratio: 4 / 3; margin-bottom: 14px; }
.ef-card--grid .ef-card__title { font-size: 17px; line-height: 1.35; font-weight: 700; }
.ef-posts--overlay { grid-template-columns: repeat(var(--ef-cols, 3), minmax(0, 1fr)); gap: 20px; }
.ef-card--overlay { position: relative; overflow: hidden; }
.ef-card--overlay .ef-card__thumb { aspect-ratio: 3 / 4; }
.ef-card--overlay .ef-card__body { position: absolute; inset: auto 0 0 0; padding: 60px 20px 20px; background: linear-gradient(to top, rgba(0,0,0,.85), rgba(0,0,0,0)); }
.ef-card--overlay .ef-card__cats, .ef-card--overlay .ef-card__cats a, .ef-card--overlay .ef-card__title a { color: #ffffff; }
.ef-card--overlay .ef-card__title { font-size: 20px; line-height: 1.3; font-weight: 700; }
@media (max-width: 1024px) { .ef-posts--grid, .ef-posts--overlay { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .ef-posts--grid, .ef-posts--overlay { grid-template-columns: 1fr; } }
html[data-theme="dark"] .ef-posts .ef-card__thumb { background: #1a1a1a; }
html[data-theme="dark"] .ef-dot { background: #666; }

/* ==========================================================
   Indholdsfortegnelse og sektionstitler
   ========================================================== */
.ef-toc { border: 1px solid var(--ef-border); padding: 4px 24px 8px; margin: 28px 0; background: var(--ef-bg); }
.ef-toc summary { cursor: pointer; font-weight: 700; font-size: 18px; padding: 16px 0; list-style: none; display: flex; align-items: center; justify-content: space-between; color: var(--ef-heading); }
.ef-toc summary::-webkit-details-marker { display: none; }
.ef-toc summary::after { content: ''; width: 9px; height: 9px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(225deg); transition: transform .2s; margin-right: 4px; }
.ef-toc:not([open]) summary::after { transform: rotate(45deg); }
.ef-toc ol { list-style: none; counter-reset: eftoc; margin: 0; padding: 0; columns: 2; column-gap: 40px; }
.ef-toc li { counter-increment: eftoc; break-inside: avoid; border-bottom: 1px solid var(--ef-border); padding: 9px 0; display: flex; gap: 10px; }
.ef-toc li::before { content: counter(eftoc); background: #111; color: #fff; font-size: 11px; font-weight: 700; min-width: 18px; height: 18px; display: inline-flex; align-items: center; justify-content: center; margin-top: 2px; }
.ef-toc a { font-weight: 600; font-size: 15px; line-height: 1.4; color: var(--ef-text); }
.ef-toc a:hover { color: var(--ef-accent); }
@media (max-width: 700px) { .ef-toc ol { columns: 1; } }
html[data-theme="dark"] .ef-toc li::before { background: #fff; color: #000; }

.ef-section-title { position: relative; margin: 0 0 18px; padding: 10px; font-family: var(--ef-font-body); line-height: 1; }
.ef-section-title__tag { position: absolute; left: 10px; top: -4px; font-size: 36px; font-weight: 700; text-transform: uppercase; color: rgba(0,0,0,.10); letter-spacing: .01em; pointer-events: none; }
.ef-section-title__text { position: relative; font-size: 16px; font-weight: 800; text-transform: uppercase; letter-spacing: .02em; color: var(--ef-heading); display: inline-block; padding-top: 24px; }
.ef-section-title__text a { color: inherit; }
html[data-theme="dark"] .ef-section-title__tag { color: rgba(255,255,255,.14); }

/* ==========================================================
   Støtteboks og nyhedsbrev (sidebar og artikel-CTA)
   ========================================================== */
.ef-newsbox { border: 2px dashed var(--ef-box-border); background: var(--ef-box-grad); }
.ef-newsbox-title .elementor-heading-title { font-weight: 500; }
.ef-newsbox-text { color: #666; }
.ef-sw { border: 2px dashed var(--ef-box-border); padding: 1rem 1.25rem; background: var(--ef-box-grad); }
.ef-sw-accent { width: 28px; height: 3px; background: #EA6728; border-radius: 2px; margin: 0 auto .75rem; }
.ef-sw-title { font-size: 14px; font-weight: 500; color: #1a1a1a; margin: 0 0 .4rem; text-align: center; }
.ef-sw-text { font-size: 13px; color: #666; line-height: 1.6; margin: 0 0 .9rem; }
.ef-sw-counter { font-size: 12px; color: #999; margin-bottom: .5rem; }
.ef-sw-counter strong { color: #EA6728; }
.ef-sw-bar-bg { background: #e0e0e0; border-radius: 4px; height: 3px; margin-bottom: .9rem; }
.ef-sw-bar-fill { background: #EA6728; border-radius: 4px; height: 3px; width: 6.7%; }
.ef-sw-btn { display: block; width: 50%; min-width: 150px; padding: 0; height: 45px; line-height: 45px; border-radius: 3px; background: #EA6728; color: #fff !important; font-size: 14px; font-weight: 700; text-align: center; margin: 0 auto .5rem; box-sizing: border-box; }
.ef-sw-link { display: block; text-align: center; font-size: 12px; color: #999; }
.ef-fcta { border: 2px dashed var(--ef-box-border); border-left: 3px solid #EA6728; padding: 1rem 1.5rem; display: grid; grid-template-columns: 1fr auto; gap: 1.5rem; align-items: center; background: var(--ef-box-grad); margin: 2rem 0 0; }
.ef-fcta p { margin: 0; }
.ef-fcta-tag { font-size: 11px; font-weight: 600; color: #EA6728; letter-spacing: .08em; text-transform: uppercase; margin: 0 0 .3rem !important; }
.ef-fcta-title { font-size: 15px; font-weight: 500; color: #1a1a1a; margin: 0 0 .25rem !important; }
.ef-fcta-sub { font-size: 13px; color: #666; }
.ef-fcta-right { display: flex; flex-direction: column; align-items: flex-end; gap: .5rem; flex-shrink: 0; }
.ef-fcta-counter { font-size: 12px; color: #999; white-space: nowrap; }
.ef-fcta-counter strong { color: #EA6728; font-size: 15px; }
.ef-fcta-btn { display: inline-block; background: #EA6728; color: #fff !important; font-size: 13px; font-weight: 500; padding: .5rem 1.1rem; white-space: nowrap; }
@media (max-width: 600px) { .ef-fcta { grid-template-columns: 1fr; } .ef-fcta-right { align-items: flex-start; } }
.ef-gps-badge { display: block; line-height: 0; text-align: center; }
.ef-gps-badge img { width: 100%; max-width: 338px; height: auto; margin: 0 auto; }
.ef-gps-dark { display: none !important; }
html[data-theme="dark"] .ef-gps-light { display: none !important; }
html[data-theme="dark"] .ef-gps-dark { display: block !important; }
html[data-theme="dark"] .ef-newsbox, html[data-theme="dark"] .ef-sw { background: var(--ef-box-grad); border-color: #ffffff26; }
html[data-theme="dark"] .ef-sw-title { color: #fff; }
html[data-theme="dark"] .ef-sw-text, html[data-theme="dark"] .ef-newsbox-text { color: #bbb !important; }
html[data-theme="dark"] .ef-sw-bar-bg { background: #444; }
html[data-theme="dark"] .ef-fcta { background: var(--ef-box-grad); border-color: #ffffff26; }
html[data-theme="dark"] .ef-fcta-title { color: #fff; }
html[data-theme="dark"] .ef-fcta-sub { color: #bbb; }

/* Søgeikon (fuld skærm) */
.ef-header .ef-search { --e-search-form-toggle-size: 30px !important; --e-search-form-toggle-icon-size: .62 !important; --e-search-form-toggle-background-color: transparent !important; }
.ef-header .ef-search .elementor-search-form__toggle { width: 30px !important; height: 30px !important; font-size: 30px !important; display: flex; align-items: center; justify-content: center; background: transparent !important; }
.ef-header .ef-search .elementor-search-form__toggle .e-font-icon-svg-container { width: 18px; height: 18px; display: block; }
.ef-header .ef-search .elementor-search-form__toggle svg { width: 18px !important; height: 18px !important; fill: #CF7110 !important; }
.ef-header .ef-search .elementor-search-form__toggle:hover svg { fill: #EA6728 !important; }

/* ==========================================================
   Artikellister: hero, liste med dato, uddrag + små rettelser
   ========================================================== */
.ef-posts .ef-card__excerpt { font-size: 14px; line-height: 1.55; color: var(--ef-muted); margin: 10px 0 0; }
.ef-posts--list2 { gap: 20px; }
.ef-card--list2 { display: grid; grid-template-columns: 125px 1fr; gap: 16px; align-items: center; }
.ef-card--list2 .ef-card__thumb { width: 125px; height: 100px; }
.ef-card--list2 .ef-card__title { font-size: 15px; line-height: 1.35; font-weight: 600; }
.ef-card--list2 .ef-card__cats { margin-bottom: 5px; }
.ef-posts--feature { grid-template-columns: 1fr; }
.ef-card--feature { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr); gap: 32px; align-items: center; }
.ef-card--feature .ef-card__thumb { order: 2; aspect-ratio: 4 / 3; }
.ef-card--feature .ef-card__title { font-size: 36px; line-height: 1.15; font-weight: 600; }
.ef-card--feature .ef-card__cats { font-size: 12px; margin-bottom: 14px; }
.ef-card--feature .ef-card__excerpt { font-size: 15px; margin-top: 14px; }
@media (max-width: 800px) { .ef-card--feature { grid-template-columns: 1fr; } .ef-card--feature .ef-card__thumb { order: 0; } .ef-card--feature .ef-card__title { font-size: 28px; } }
html[data-theme="dark"] .ef-header .sub-arrow, html[data-theme="dark"] .ef-header .sub-arrow svg { color: #ffffff !important; fill: #ffffff !important; }
html[data-theme="dark"] .ef-posts .ef-card__cats a { color: #ffffff; }

/* Forside: CTA og nyhedsbrev */
.ef-cta { background: var(--ef-box-grad); padding: 30px 26px; }
.ef-cta__title { font-size: 30px; line-height: 1.2; font-weight: 400; color: var(--ef-accent); margin: 0 0 16px; }
.ef-cta__text { font-size: 15px; line-height: 1.6; color: #333; margin: 0; }
html[data-theme="dark"] .ef-cta { background: var(--ef-box-grad); }
html[data-theme="dark"] .ef-cta__text { color: #ddd; }
.ef-nl { border: 2px dashed var(--ef-box-border); padding: 30px; text-align: center; background: var(--ef-box-grad); }
.ef-nl__title { font-family: 'Covered By Your Grace', cursive; font-size: 28px; font-weight: 500; margin: 0 0 8px; color: var(--ef-heading); }
.ef-nl__text { font-size: 15px; color: var(--ef-muted); margin: 0 0 16px; }
html[data-theme="dark"] .ef-nl { background: var(--ef-box-grad); border-color: #ffffff26; }

/* ==========================================================
   Arkiver, søgning og 404
   ========================================================== */
.ef-archive-title { font-family: var(--ef-font-mono); font-weight: 400; font-size: 45px; letter-spacing: -3px; margin: 0; color: var(--ef-heading); }
.ef-archive-desc { color: var(--ef-muted); margin-top: 8px; max-width: 760px; }
.ef-archive__top { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr); gap: 32px; margin-bottom: 40px; align-items: start; }
.ef-archive__list { align-content: start; }
.ef-card--overlay-l { position: relative; overflow: hidden; background: #0a0a0a; }
.ef-card--overlay-l .ef-card__thumb { aspect-ratio: 16 / 10; }
.ef-card--overlay-l .ef-card__thumb img { opacity: .82; }
.ef-card--overlay-l .ef-card__body { position: absolute; inset: auto 0 0 0; padding: 70px 28px 24px; background: linear-gradient(to top, rgba(0,0,0,.92), rgba(0,0,0,0)); }
.ef-card--overlay-l .ef-card__cats, .ef-card--overlay-l .ef-card__cats a, .ef-card--overlay-l .ef-card__title a, .ef-card--overlay-l .ef-card__date { color: #fff; }
.ef-card--overlay-l .ef-card__title { font-size: 28px; line-height: 1.25; font-weight: 700; }
.ef-pagination ul { list-style: none; display: flex; gap: 8px; justify-content: center; padding: 0; margin: 44px 0 10px; flex-wrap: wrap; }
.ef-pagination a, .ef-pagination span { display: inline-flex; min-width: 38px; height: 38px; align-items: center; justify-content: center; border: 1px solid var(--ef-border); font-weight: 600; font-size: 14px; color: var(--ef-text); padding: 0 10px; }
.ef-pagination .current { background: var(--ef-accent); border-color: var(--ef-accent); color: #fff; }
.ef-pagination a:hover { border-color: var(--ef-accent); color: var(--ef-accent); }
.ef-empty { color: var(--ef-muted); padding: 30px 0; }
.ef-404 { text-align: center; }
.ef-404__code { font-family: var(--ef-font-mono); font-size: 120px; line-height: 1; letter-spacing: -8px; color: var(--ef-accent); margin: 0; }
@media (max-width: 900px) { .ef-archive__top { grid-template-columns: 1fr; } .ef-archive-title { font-size: 34px; } }

.ef-archive__top { grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr) minmax(0, .85fr); }
.ef-archive__news { padding: 22px; text-align: center; align-self: start; }
.ef-newsbox__title { font-family: 'Covered By Your Grace', cursive; font-size: 22px; font-weight: 500; margin: 0 0 8px; color: var(--ef-heading); }
.ef-newsbox__text { font-size: 14px; color: var(--ef-muted); margin: 0 0 12px; }
@media (max-width: 1100px) { .ef-archive__top { grid-template-columns: 1fr; } }

.ef-posts--overlay[style*="--ef-cols:1"] { grid-template-columns: 1fr; }
.ef-posts--overlay[style*="--ef-cols:1"] .ef-card__thumb { aspect-ratio: 16 / 9; }
.ef-card--overlay .ef-card__excerpt { color: #eee; }
.ef-card--overlay .ef-card__date { color: #ddd; }
.ef-note { padding: 40px 20px; text-align: center; color: var(--ef-muted); }

/* Læseindikator i toppen af headeren */
.ef-header { position: sticky; }
.ef-header .ef-progress { position: absolute; top: 0; left: 0; right: 0; margin: 0 !important; z-index: 2; }
.ef-header .ef-progress .elementor-scroll-progress { height: 3px; }

.elementor .ef-cta .ef-cta__title { font-size: 30px; font-weight: 400; line-height: 1.2; }

/* ==========================================================
   Knapper: neutralisér Hellos standardhover/fokus (orange baggrund)
   ========================================================== */
button:hover, button:focus, button:active,
[type="button"]:hover, [type="button"]:focus, [type="button"]:active,
[type="submit"]:focus { background-color: transparent; color: inherit; text-decoration: none; }
.ef-dark-toggle, .ef-dark-toggle:hover, .ef-dark-toggle:focus, .ef-dark-toggle:active { background: transparent !important; color: inherit !important; box-shadow: none; }
.ef-dark-toggle:hover .ef-dark-toggle__track, .ef-dark-toggle:focus-visible .ef-dark-toggle__track { background: var(--ef-accent); }
.ef-dark-toggle:hover .ef-dark-toggle__icon { color: var(--ef-accent); }
.ef-dark-toggle__track { box-shadow: none; }
.ef-header .elementor-menu-toggle:hover, .ef-header .elementor-menu-toggle:focus { background: transparent; }
.ef-header .elementor-search-form__toggle:hover, .ef-header .elementor-search-form__toggle:focus { background: transparent !important; }
/* Formularknapper (nyhedsbrev, søg) beholder egen stil */
.elementor-button:hover, .elementor-button:focus { color: #fff; }

/* ==========================================================
   Links i artikler: understreget med orange streg (som før)
   ========================================================== */
.elementor-widget-theme-post-content a:not(.elementor-button):not(.ef-sw-btn):not(.ef-fcta-btn):not(.ef-toc a) {
  text-decoration: underline; text-decoration-color: var(--ef-accent); text-decoration-thickness: 2px; text-underline-offset: 3px;
}
.elementor-widget-theme-post-content a:not(.elementor-button):not(.ef-sw-btn):not(.ef-fcta-btn):hover { color: var(--ef-accent); }
.ef-toc a, .ef-toc a:hover { text-decoration: none; }

/* Linkvægt (som før): fed i artikler og footer */
.elementor-widget-theme-post-content a:not(.elementor-button):not(.ef-sw-btn):not(.ef-fcta-btn) { font-weight: 600; }
.ef-footer .ef-footer-bottom a { font-weight: 600; text-decoration: underline; text-decoration-color: var(--ef-accent); text-underline-offset: 3px; }

/* ==========================================================
   Menu: orange hover-pille og dropdown (som på produktionen)
   ========================================================== */
.ef-header .elementor-nav-menu--main .elementor-item { border-radius: 3px; transition: background-color .15s ease, color .15s ease; }
.ef-header .elementor-nav-menu--main .elementor-item:hover,
.ef-header .elementor-nav-menu--main .elementor-item.highlighted,
.ef-header .elementor-nav-menu--main .menu-item-has-children:hover > .elementor-item,
.ef-header .elementor-nav-menu--main .elementor-item.elementor-item-active { background-color: var(--ef-accent); color: #ffffff !important; }
.ef-header .elementor-nav-menu--main .menu-item-has-children:hover > .elementor-item .sub-arrow svg,
.ef-header .elementor-nav-menu--main .menu-item-has-children:hover > .elementor-item .sub-arrow i { transform: rotate(180deg); fill: #fff; color: #fff; }
.ef-header .elementor-nav-menu--main .sub-arrow { transition: transform .15s ease; }
.ef-header .elementor-nav-menu--dropdown.elementor-nav-menu__container,
.ef-header .elementor-nav-menu--main .elementor-nav-menu--dropdown { background: #ffffff; border-radius: 0 0 4px 4px; box-shadow: 0 10px 28px rgba(0,0,0,.12); min-width: 150px; padding: 6px 0; }
.ef-header .elementor-nav-menu--main .elementor-nav-menu--dropdown .elementor-sub-item { font-size: 13px; font-weight: 400; padding: 8px 20px; color: #333; background: transparent; }
.ef-header .elementor-nav-menu--main .elementor-nav-menu--dropdown .elementor-sub-item:hover { color: var(--ef-accent); background: transparent; }
html[data-theme="dark"] .ef-header .elementor-nav-menu--main .elementor-item:hover,
html[data-theme="dark"] .ef-header .elementor-nav-menu--main .menu-item-has-children:hover > .elementor-item { background-color: var(--ef-accent); color: #ffffff !important; }
html[data-theme="dark"] .ef-header .elementor-nav-menu--main .elementor-nav-menu--dropdown { background: #101010; }
html[data-theme="dark"] .ef-header .elementor-nav-menu--main .elementor-nav-menu--dropdown .elementor-sub-item { color: #dddddd !important; background: transparent !important; }
html[data-theme="dark"] .ef-header .elementor-nav-menu--main .elementor-nav-menu--dropdown .elementor-sub-item:hover { color: var(--ef-accent) !important; }

/* ==========================================================
   Dropdown: hele rækken orange ved hover (lys og mørk)
   ========================================================== */
.ef-header .elementor-nav-menu--main .elementor-nav-menu--dropdown { padding: 0; }
.ef-header .elementor-nav-menu--main .elementor-nav-menu--dropdown li { display: block; width: 100%; }
.ef-header .elementor-nav-menu--main .elementor-nav-menu--dropdown .elementor-sub-item { display: block; width: 100%; padding: 10px 20px; transition: background-color .15s ease, color .15s ease; }
.ef-header .elementor-nav-menu--main .elementor-nav-menu--dropdown .elementor-sub-item:hover,
.ef-header .elementor-nav-menu--main .elementor-nav-menu--dropdown .elementor-sub-item:focus,
.ef-header .elementor-nav-menu--main .elementor-nav-menu--dropdown .elementor-sub-item.highlighted {
  background-color: var(--ef-accent) !important; color: #ffffff !important;
}
html[data-theme="dark"] .ef-header .elementor-nav-menu--main .elementor-nav-menu--dropdown .elementor-sub-item:hover,
html[data-theme="dark"] .ef-header .elementor-nav-menu--main .elementor-nav-menu--dropdown .elementor-sub-item:focus,
html[data-theme="dark"] .ef-header .elementor-nav-menu--main .elementor-nav-menu--dropdown .elementor-sub-item.highlighted {
  background-color: var(--ef-accent) !important; color: #ffffff !important;
}

/* ==========================================================
   Forside-feature: mål fra produktionen
   ========================================================== */
.ef-card--feature { grid-template-columns: 37.5% 62.5%; gap: 0; align-items: stretch; }
.ef-card--feature .ef-card__thumb { aspect-ratio: 10 / 7; }
.ef-card--feature .ef-card__body { padding-right: 30px; align-self: center; }
.ef-card--feature .ef-card__title { font-size: 40px; line-height: 1.2; font-weight: 600; }
.ef-card--feature .ef-card__cats a:first-child { display: inline-flex; align-items: center; gap: 7px; }
.ef-card--feature .ef-card__cats a:first-child::before { content: ''; width: 9px; height: 9px; border-radius: 50%; background: var(--ef-accent); display: inline-block; }
@media (max-width: 800px) { .ef-card--feature { grid-template-columns: 1fr; } .ef-card--feature .ef-card__body { padding-right: 0; } .ef-card--feature .ef-card__title { font-size: 30px; } }

/* Listekort (list og list2): 125x94-billede, 14px titel og tynd streg mellem kortene */
.ef-card--list, .ef-card--list2 { position: relative; padding-bottom: 20px; }
.ef-card--list::before, .ef-card--list2::before { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 1px; border-bottom: 1px solid rgba(136,136,136,.15); }
.ef-posts--list > .ef-card--list:last-child, .ef-posts--list2 > .ef-card--list2:last-child { padding-bottom: 0; }
.ef-posts--list > .ef-card--list:last-child::before, .ef-posts--list2 > .ef-card--list2:last-child::before { display: none; }
.ef-card--list2 { grid-template-columns: 125px 1fr; }
.ef-card--list2 .ef-card__thumb { width: 125px; height: 94px; }
.ef-card--list2 .ef-card__title { font-size: 14px; line-height: 1.4; font-weight: 700; }
html[data-theme="dark"] .ef-card--list::before, html[data-theme="dark"] .ef-card--list2::before { border-bottom-color: rgba(255,255,255,.14); }

/* Listekort: stram afstand så kortet højde = billedet (94px) */
.ef-card--list2 { gap: 20px; align-items: center; }
.ef-card--list2 .ef-card__cats { margin-bottom: 4px; line-height: 1.3; }
.ef-card--list2 .ef-card__date { margin-top: 4px; line-height: 1.3; }
.ef-card--list2 .ef-card__title { line-height: 1.35; }

/* ==========================================================
   Sektionstitel: kompakt (som Foxiz layout 11): højde = selve teksten,
   tagline hænger ovenover. Luften kommer fra beholderen, ikke fra titlen.
   ========================================================== */
.ef-section-title { margin: 0; padding: 0; line-height: 17px; height: 17px; }
.ef-section-title__tag { left: 0; top: -35px; font-size: 48px; line-height: 48px; }
.ef-section-title__text { padding-top: 0; line-height: 17px; }

/* ==========================================================
   Forside: analyse-sektion, mål fra produktionen
   ========================================================== */
.ef-posts .ef-card__cats { font-weight: 500; line-height: 22px; margin-bottom: 7px; }
.ef-posts .ef-card__date { font-size: 12px; line-height: 20px; color: #777; margin-top: 0; }
html[data-theme="dark"] .ef-posts .ef-card__date { color: #aaaaaa; }

/* Gitter: 5:3-billede, ingen uddrag i tallene, kortets bund-polstring 20px */
.ef-posts--grid { gap: 20px var(--ef-gap, 40px); }
.ef-card--grid { padding-bottom: 20px; }
.ef-card--grid .ef-card__thumb { aspect-ratio: 5 / 3; margin-bottom: 6px; }
.ef-card--grid .ef-card__title { font-size: 17px; line-height: 1.4; font-weight: 700; margin-bottom: 7px; }

/* Bredt vandret kort (analyse-feature): billede 420x252 til venstre, tekst til højre */
.ef-posts--wide { grid-template-columns: 1fr; }
.ef-card--wide { display: grid; grid-template-columns: 420px minmax(0, 1fr); gap: 30px; align-items: center; }
.ef-card--wide .ef-card__thumb { aspect-ratio: 5 / 3; }
.ef-card--wide .ef-card__cats { font-size: 14px; line-height: 21px; margin-bottom: 12px; }
.ef-card--wide .ef-card__title { font-size: 40px; line-height: 48px; font-weight: 700; margin-bottom: 12px; }
.ef-card--wide .ef-card__excerpt { font-size: 14px; line-height: 1.7; color: var(--ef-text); margin: 0 0 8px; }
@media (max-width: 900px) { .ef-card--wide { grid-template-columns: 1fr; gap: 16px; } .ef-card--wide .ef-card__title { font-size: 28px; line-height: 1.25; } }

/* CTA-boks ("Analysen starter...") */
.elementor .ef-cta { background: var(--ef-box-grad); padding: 60px 20px 40px; }
.elementor .ef-cta .ef-cta__title { font-size: 31px; line-height: 37.2px; font-weight: 400; color: var(--ef-accent); margin: 0 0 20px; }
.elementor .ef-cta .ef-cta__text { font-size: 14px; line-height: 23.8px; color: #232323; margin: 0 0 24px; }
.ef-cta__btn { display: inline-block; border: 1px solid #232323; border-radius: 2px; padding: 5px 20px; font-size: 13px; font-weight: 600; line-height: 22.1px; color: #232323 !important; text-decoration: none !important; transition: all .2s; }
.ef-cta__btn:hover { background: #232323; color: #fff !important; }
html[data-theme="dark"] .ef-cta__btn { border-color: #ddd; color: #ddd !important; }
html[data-theme="dark"] .ef-cta__btn:hover { background: #ddd; color: #111 !important; }

/* Analyse-sektion: finjustering efter måling */
.ef-posts--grid[style*="--ef-gap"] .ef-card--grid { padding-bottom: 0; }
.ef-posts--wide { padding-bottom: 10px; }
.elementor .ef-cta .ef-cta__title { margin-bottom: 15px; }
.elementor .ef-cta .ef-cta__text { margin-bottom: 90px; }

/* Linjehøjde: enhedsløs 1.7 (arves som forhold, ikke som fast pixelværdi) */
body { line-height: 1.7; }

/* Menupil: stram polstring så menupunkterne har produktionens bredde */
.ef-header .elementor-nav-menu--main .sub-arrow { padding: 0 0 0 3px; }

/* Menupil: lille pil som på produktionen */
.ef-header .elementor-nav-menu--main .sub-arrow svg, .ef-header .elementor-nav-menu--main .sub-arrow i { width: 9px; height: 9px; font-size: 9px; }

/* Artikeltitel: linjehøjde 1 (som produktionen) */
.ef-post-title .elementor-heading-title { line-height: 1; }

/* Metalinje: mål fra produktionen (2 rækker à 23,5px, 13,8px tekst) */
.ef-post-meta { gap: 24px; font-size: 13.8px; line-height: 1.7; color: #777; }
.ef-post-meta a { color: #232323; }
html[data-theme="dark"] .ef-post-meta { color: #aaa; }
html[data-theme="dark"] .ef-post-meta a { color: #fff; }

/* ==========================================================
   Sidebar-lister: mål fra produktionen (ingen streger)
   ========================================================== */
.ef-card--list::before, .ef-card--list3::before { display: none !important; }
.ef-card--list, .ef-card--list3 { padding-bottom: 0; }
.ef-posts--list, .ef-posts--list3 { gap: 30px; }
.ef-card--list { grid-template-columns: 90px 1fr; gap: 10px; padding: 0 15px; }
.ef-card--list .ef-card__thumb { width: 90px; height: 90px; }
.ef-card--list .ef-card__title { font-size: 13px; line-height: 1.2; font-weight: 600; margin-bottom: 4px; }
.ef-card--list3 { display: grid; grid-template-columns: 100px 1fr; gap: 15px; align-items: center; }
.ef-card--list3 .ef-card__thumb { width: 100px; height: 75px; }
.ef-card--list3 .ef-card__title { font-size: 14px; line-height: 1.2; font-weight: 600; margin-bottom: 4px; }
.ef-latest .ef-posts--list { margin-left: -15px; margin-right: -15px; }
.ef-sidebar { padding-left: 20px; padding-right: 20px; }
.ef-newsbox-title .elementor-heading-title { font-size: 20px; }

/* ==========================================================
   Indholdsfortegnelse: mål fra produktionen (720x214)
   ========================================================== */
.ef-toc { border: 1px solid rgba(136,136,136,.15); padding: 25px 25px 18px; margin: 28px 0; }
.ef-toc summary { padding: 0; height: 28px; font-size: 20px; font-weight: 500; line-height: 28px; gap: 10px; justify-content: flex-start; color: var(--ef-text); }
.ef-toc summary::before { content: ''; width: 20px; height: 20px; flex: 0 0 20px; background: var(--ef-accent); -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M4 4h7a3 3 0 013 3v13a2 2 0 00-2-2H4V4zm16 0h-7a3 3 0 00-3 3v13a2 2 0 012-2h8V4z' fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round'/></svg>") center / contain no-repeat; mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M4 4h7a3 3 0 013 3v13a2 2 0 00-2-2H4V4zm16 0h-7a3 3 0 00-3 3v13a2 2 0 012-2h8V4z' fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round'/></svg>") center / contain no-repeat; }
.ef-toc summary::after { margin-left: auto; }
.ef-toc ol { column-gap: 30px; }
.ef-toc li { padding: 5.5px 0; }
.ef-toc a { font-size: 16px; font-weight: 700; line-height: 23px; color: #7a7a7a; }
html[data-theme="dark"] .ef-toc a { color: #bbbbbb; }

/* Sidebar: beholdere uden polstring, så indholdet er 320px bredt som på produktionen */
.ef-sidebar .ef-section-title { box-sizing: content-box; padding: 10px; }
.ef-sidebar .ef-section-title__tag { left: 10px; top: -25px; }

/* TOC-liste: bundmargin så boksen bliver 214px som på produktionen */
.ef-toc ol { padding-bottom: 13px; }

/* ==========================================================
   Kategoriside: mål fra produktionen
   ========================================================== */
.ef-archive-title { color: #54595F; line-height: 54px; }
html[data-theme="dark"] .ef-archive-title { color: #ffffff; }
.ef-archive__top { grid-template-columns: minmax(0, 688fr) minmax(0, 353fr) minmax(0, 250fr); column-gap: 10px; margin-bottom: 50px; align-items: start; }
.ef-archive__side { display: grid; gap: 19px; padding: 0 20px; }
.ef-card--grid2 .ef-card__thumb { aspect-ratio: 5 / 3; margin-bottom: 5px; }
.ef-card--grid2 .ef-card__title { font-size: 18px; line-height: 1.3; font-weight: 700; margin-bottom: 7px; }
.ef-archive__newscol { padding: 10px; }
.ef-archive__news { padding: 22px; }
.ef-card--overlay-l .ef-card__thumb { aspect-ratio: 688 / 537; }
.ef-card--overlay-l .ef-card__body { padding: 60px 25px 30px; }
.ef-card--overlay-l .ef-card__title { margin-bottom: 14px; }
.ef-archive > .ef-posts--grid { gap: 20px 40px; }

/* Arkiv-kort: grundstil (kortene ligger uden for .ef-posts) */
.ef-archive .ef-card__thumb { display: block; overflow: hidden; background: #e9e9e9; }
.ef-archive .ef-card__thumb img { display: block; width: 100%; height: 100%; object-fit: cover; max-width: none; transition: transform .35s ease; }
.ef-archive .ef-card:hover .ef-card__thumb img { transform: scale(1.04); }
.ef-archive .ef-card__title { margin: 0; font-family: var(--ef-font-body); }
.ef-archive .ef-card__title a { color: var(--ef-heading); }
.ef-archive .ef-card__title a:hover { color: var(--ef-accent); }
.ef-archive .ef-card__cats { font-size: 12px; font-weight: 500; line-height: 22px; margin-bottom: 7px; color: var(--ef-heading); }
.ef-archive .ef-sep { color: #b5b5b5; margin: 0 5px; font-weight: 400; }
.ef-archive .ef-card__date { font-size: 12px; line-height: 20px; color: #777; }
.ef-archive .ef-card--overlay-l .ef-card__cats, .ef-archive .ef-card--overlay-l .ef-card__cats a, .ef-archive .ef-card--overlay-l .ef-card__title a, .ef-archive .ef-card--overlay-l .ef-card__date { color: #fff; }
.ef-archive .ef-card--overlay-l .ef-card__title { font-size: 40px; line-height: 48px; font-weight: 700; }
.ef-archive .ef-card--overlay-l .ef-card__cats { font-size: 14px; line-height: 21px; }
html[data-theme="dark"] .ef-archive .ef-card__date { color: #aaa; }

/* Arkivbeskrivelse: dropcap som på produktionen */
.ef-archive-desc-block { color: #7a7a7a; font-size: 16px; line-height: 27.2px; }
.ef-archive-desc-block p { margin: 0 0 24px; }
.ef-archive-desc-block p:last-child { margin-bottom: 0; }
.ef-archive-desc-block p:first-child::first-letter { float: left; font-size: 50px; line-height: 50px; margin: 0 8px 0 0; color: #323232; }
html[data-theme="dark"] .ef-archive-desc-block { color: #bbb; }
html[data-theme="dark"] .ef-archive-desc-block p:first-child::first-letter { color: #fff; }
.ef-desc-wrap:not(:has(.ef-archive-desc-block)) { display: none; }

/* Kategoriside: lodrette afstande og hero (mål fra produktionen) */
.ef-archive .ef-card__title { margin: 0 0 7px; }
.ef-archive .ef-card--grid2 .ef-card__title { margin-bottom: 6px; }
.ef-archive .ef-card--overlay-l .ef-card__body { padding: 100px 25px 25px; }
.ef-archive .ef-card--overlay-l .ef-card__cats { font-size: 15.6px; line-height: 23.4px; margin-bottom: 7px; }
.ef-archive .ef-card--overlay-l .ef-card__title { margin-bottom: 7px; }
.ef-archive .ef-card--overlay-l .ef-card__excerpt { font-size: 14px; line-height: 23.8px; color: #eee; margin: 0 0 7px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.ef-archive .ef-card--overlay-l .ef-card__date { color: #ddd; }

/* Sidetal: mål fra produktionen (14px under gitteret, 44px høj zone) */
.ef-pagination ul { margin: 14px 0 0; min-height: 44px; align-items: flex-start; }

/* ==========================================================
   Søgeside: mål fra produktionen
   ========================================================== */
.ef-sh { position: relative; height: 249px; text-align: center; }
.ef-sh::before { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 222px; background: var(--ef-box-grad); }
html[data-theme="dark"] .ef-sh::before { background: var(--ef-box-grad); }
.ef-sh > * { position: relative; z-index: 1; }
.ef-sh__title { margin: 0; padding: 50px 20px 0; font-family: var(--ef-font-mono); font-weight: 400; font-size: 45px; line-height: 54px; letter-spacing: -3.5px; color: #54595F; }
html[data-theme="dark"] .ef-sh__title { color: #ffffff; }
.ef-sh__sub { margin: 10px 0 0; font-size: 16px; line-height: 27px; color: #eeeeee; }
html[data-theme="dark"] .ef-sh__sub { color: #3a3a3a; }
.ef-sh__form { position: absolute; z-index: 2; top: 181px; left: 50%; margin-left: -310px; width: 620px; height: 68px; box-sizing: border-box; display: flex; align-items: center; background: #080808; border: 2px solid #ffffff; padding: 0 15px; }
.ef-sh__icon { width: 20px; height: 20px; flex: 0 0 20px; display: inline-flex; }
.ef-sh__icon svg { width: 20px; height: 20px; fill: #fff; }
.ef-sh__form input[type="search"] { flex: 1; min-width: 0; height: 64px; background: transparent; border: 0; outline: 0; color: #fff; font-size: 14px; padding: 0 16px; }
.ef-sh__form input[type="search"]::placeholder { color: #bbb; }
.ef-sh__sep { width: 2px; height: 16px; background: var(--ef-accent); flex: 0 0 2px; }
.ef-sh__form button[type="submit"] { background: transparent !important; border: 0; color: #fff !important; font-size: 13px; font-weight: 600; padding: 5px 20px; line-height: 40px; cursor: pointer; }
.ef-sh__form button[type="submit"]:hover { color: var(--ef-accent) !important; }
@media (max-width: 700px) { .ef-sh__form { width: calc(100% - 40px); margin-left: 0; left: 20px; } .ef-sh__title { font-size: 30px; line-height: 38px; letter-spacing: -2px; } }
.ef-qlinks { display: flex; flex-wrap: wrap; justify-content: center; gap: 5px; margin: 0 0 40px; }
.ef-qlinks a { display: inline-flex; align-items: center; height: 28px; box-sizing: border-box; padding: 0 20px; border: 1px solid #232323; border-radius: 20px; font-size: 12px; font-weight: 700; line-height: 12px; color: #232323; transition: all .2s; }
.ef-qlinks a:hover { background: #232323; color: #fff; }
html[data-theme="dark"] .ef-qlinks a { border-color: #ddd; color: #ddd; }
html[data-theme="dark"] .ef-qlinks a:hover { background: #ddd; color: #111; }
.ef-archive > .ef-posts--search { gap: 20px 30px; }

/* Søgefelt: knap helt til højre, 64px høj */
.ef-sh__form { padding: 0 0 0 15px; }
.ef-sh__form button[type="submit"] { height: 64px; padding: 0 20px; }

/* Menupil: tynd vinkel (som på produktionen) i stedet for udfyldt trekant */
.ef-header .elementor-nav-menu--main .sub-arrow { display: inline-flex; align-items: center; justify-content: flex-end; width: 12px; padding: 0; }
.ef-header .elementor-nav-menu--main .sub-arrow svg, .ef-header .elementor-nav-menu--main .sub-arrow i { display: none; }
.ef-header .elementor-nav-menu--main .sub-arrow::before { content: ''; width: 5px; height: 5px; margin: -3px 2px 0 0; border-right: 1.6px solid currentColor; border-bottom: 1.6px solid currentColor; transform: rotate(45deg); transition: transform .15s ease; }
.ef-header .elementor-nav-menu--main .menu-item-has-children:hover > .elementor-item .sub-arrow::before { transform: rotate(225deg); margin-top: 3px; }

/* ==========================================================
   Footer: mål fra produktionen
   ========================================================== */
.ef-footer .ef-footer-heading .elementor-heading-title { font-size: 18px; font-weight: 600; line-height: 27px; text-transform: none; letter-spacing: 0; color: var(--ef-heading) !important; }
.ef-footer .ef-footer-newsletter-title .elementor-heading-title { font-size: 22px; line-height: 22px; font-weight: 400; }
.ef-footer .ef-footer-text, .ef-footer .ef-footer-text p { font-size: 16px; line-height: 27.2px; color: #232323; }
html[data-theme="dark"] .ef-footer .ef-footer-text, html[data-theme="dark"] .ef-footer .ef-footer-text p { color: #cccccc !important; }
.ef-footer .ef-footer-nav .elementor-nav-menu--main .elementor-item { font-size: 13px; line-height: 16.25px; color: #232323; }
.ef-footer .ef-footer-bottom a { font-size: 16px; font-weight: 700; color: #7a7a7a; text-decoration: underline; text-decoration-color: var(--ef-accent); text-underline-offset: 3px; }
.ef-footer .ef-footer-bottom em, .ef-footer .ef-footer-bottom em a { font-size: 16px; }
.elementor-element-eff00021 { padding-bottom: 14px; }
.elementor-element-eff00030, .elementor-element-eff00031 { padding-bottom: 10px; }
.ef-footer .elementor-element-eff00032 p, .ef-footer .elementor-element-eff00032 { font-size: 12px; line-height: 20.4px; color: #232323; }
html[data-theme="dark"] .ef-footer .elementor-element-eff00032, html[data-theme="dark"] .ef-footer .elementor-element-eff00032 p { color: #cccccc !important; }

/* Footerlinks: rytme som på produktionen (min. 27px pr. punkt, +6px ved flere linjer) */
.ef-footer .ef-footer-nav .elementor-nav-menu--main > ul > li { min-height: 27px; display: flex; align-items: center; }

/* ==========================================================
   404-side: mål fra produktionen
   ========================================================== */
.ef-404b { max-width: 700px; margin: 0 auto; text-align: center; }
.ef-404b__title { margin: 0 0 25px; font-size: 45px; line-height: 54px; font-weight: 400; color: #54595F; }
html[data-theme="dark"] .ef-404b__title { color: #fff; }
.ef-404b__text { margin: 0 0 25px; font-size: 16px; line-height: 27.2px; color: #777; }
.ef-sf { display: flex; align-items: center; width: 550px; max-width: 100%; height: 67px; margin: 0 auto 41px; box-sizing: border-box; background: rgba(136,136,136,.07); padding: 0 0 0 35px; }
.ef-sf input[type="search"] { flex: 1; min-width: 0; height: 67px; background: transparent; border: 0; outline: 0; font-size: 16px; color: var(--ef-text); padding: 0; }
.ef-sf input[type="search"]::placeholder { color: #777; }
.ef-sf__sep { width: 2px; height: 16px; background: var(--ef-accent); flex: 0 0 2px; }
.ef-sf button[type="submit"] { background: transparent !important; border: 0; color: var(--ef-text) !important; font-size: 13px; font-weight: 600; height: 67px; padding: 0 20px; line-height: 40px; cursor: pointer; }
.ef-sf button[type="submit"]:hover { color: var(--ef-accent) !important; }
.ef-404b__btn { display: inline-block; height: 40px; padding: 0 37px; background: rgba(136,136,136,.07); color: var(--ef-text); font-size: 13px; font-weight: 600; line-height: 40px; transition: all .2s; }
.ef-404b__btn:hover { background: var(--ef-accent); color: #fff; }
@media (max-width: 700px) { .ef-404b__title { font-size: 30px; line-height: 38px; } }

/* ==========================================================
   Klassiske sider: mål fra produktionen (titel + indhold + sidebar)
   ========================================================== */
.page-header { padding: 40px 20px 0; }
.page-content.ef-classic { display: grid; grid-template-columns: minmax(0, 928px) minmax(0, 403px); max-width: 1400px; margin: 40px auto 0; padding: 0 0 60px; }
.ef-classic__main { padding: 32px 20px 0; }
.ef-classic__content { max-width: 760px; margin: 0 auto; }
.ef-classic__side { padding: 0 22px 0 0; }
.ef-classic__side .ef-sidebar { padding-left: 30px; padding-right: 0; }
@media (max-width: 1024px) { .page-content.ef-classic { grid-template-columns: 1fr; } .ef-classic__side { padding: 0 20px; } }
.ef-classic__content form label { display: block; font-size: 14.4px; line-height: 24.5px; color: #555; margin: 0 0 6px; }
.ef-classic__content input[type="text"], .ef-classic__content input[type="password"], .ef-classic__content input[type="email"] { width: 100%; height: 50px; box-sizing: border-box; padding: 0 15px; background: rgba(136,136,136,.07); border: 1px solid rgba(136,136,136,.15); border-radius: 0; margin-bottom: 16px; }
.ef-classic__content form { max-width: 360px; margin: 0 auto; }
.ef-classic__content button[type="submit"], .ef-classic__content input[type="submit"] { display: block; width: 100%; height: 64px; background: var(--ef-accent); color: #fff; border: 0; border-radius: 0; font-size: 16px; font-weight: 600; }
.ef-classic__content button[type="submit"]:hover, .ef-classic__content input[type="submit"]:hover { background: #191c20; color: #fff; }

/* Klassiske sider: fuld bredde (Hello begrænser .site-main til 1140px) */
.site-main:not(.elementor-page) { max-width: none; width: 100%; }
.site-main:not(.elementor-page) .page-header { max-width: 1400px; width: 100%; margin: 0 auto; box-sizing: border-box; }
.page-content.ef-classic { width: 100%; }

/* Klassiske sider: finjustering (Hellos 1140-begrænsning fjernes; mål fra produktionen) */
body:not([class*="elementor-page-"]) .site-main { max-width: none; }
body .page-header .entry-title { max-width: none; margin: 0; }
.page-content.ef-classic { grid-template-columns: minmax(0, 948px) minmax(0, 403px); }
.ef-classic__main { padding: 32px 30px 0 20px; }
.ef-classic__side { padding: 0; }
.ef-classic__side .ef-sidebar { padding: 10px 32px 0 40px; }

/* ==========================================================
   Artikler: hero og gitter (mål fra produktionen)
   ========================================================== */
.ef-posts--hero { grid-template-columns: 1fr; }
.ef-posts--hero .ef-card--overlay-l .ef-card__thumb { aspect-ratio: 641 / 564; }
.ef-posts--hero .ef-card--overlay-l .ef-card__body { padding: 100px 25px 25px; }
.ef-posts--hero .ef-card--overlay-l .ef-card__cats, .ef-posts--hero .ef-card--overlay-l .ef-card__cats a, .ef-posts--hero .ef-card--overlay-l .ef-card__title a, .ef-posts--hero .ef-card--overlay-l .ef-card__date { color: #fff; }
.ef-posts--hero .ef-card--overlay-l .ef-card__cats { font-size: 15.6px; line-height: 23.4px; margin-bottom: 7px; }
.ef-posts--hero .ef-card--overlay-l .ef-card__title { font-size: 40px; line-height: 48px; font-weight: 700; margin: 0 0 7px; }
.ef-posts--hero .ef-card--overlay-l .ef-card__excerpt { font-size: 14px; line-height: 23.8px; color: #eee; margin: 0 0 7px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.ef-posts--hero .ef-card--overlay-l .ef-card__date { color: #ddd; }
.ef-posts--grid[style*="--ef-cols:2"] .ef-card__title { font-size: 18px; line-height: 1.3; }
@media (max-width: 800px) { .ef-posts--hero .ef-card--overlay-l .ef-card__title { font-size: 28px; line-height: 1.25; } }

/* Mørk tilstand: kontrastrettelser (fundet ved automatisk kontrastkontrol) */
html[data-theme="dark"] .ef-bnr-btn, html[data-theme="dark"] .elementor-element-7bec02f .elementor-button-text { color: #ffffff !important; }
html[data-theme="dark"] .elementor .ef-cta .ef-cta__text { color: #dddddd; }

/* Tagside: pille-links med de mest brugte tags (mål fra produktionen) */
.ef-tagpills { display: flex; flex-wrap: wrap; gap: 8px 5px; list-style: none; margin: 40px 0 39px; padding: 0; }
.ef-tagpills li { margin: 0; padding: 0; }
.ef-tagpills__hash { width: 20px; font-size: 25px; line-height: 36px; color: #CE490A; margin-top: -2px !important; }
.ef-tagpills a { display: block; box-sizing: border-box; height: 30px; padding: 7px 20px; border: 1px solid #232323; border-radius: 20px; font-size: 14px; font-weight: 700; line-height: 14px; color: #232323; transition: all .2s; }
.ef-tagpills a:hover { background: #232323; color: #fff; }
html[data-theme="dark"] .ef-tagpills a { border-color: #ddd; color: #ddd; }
html[data-theme="dark"] .ef-tagpills a:hover { background: #ddd; color: #111; }

/* Tagside: pillehoejde (li = pillen, ingen ekstra luft) */
.ef-tagpills li { display: flex; align-items: flex-start; }
.ef-tagpills { margin-bottom: 40px; }

/* ==========================================================
   Forfatterside: profil og artikelliste (mål fra produktionen)
   ========================================================== */
body { overflow-x: clip; }
.ef-ah { position: relative; width: 100vw; margin: -30px calc(50% - 50vw) 0; height: 291px; background: var(--ef-box-grad); }
html[data-theme="dark"] .ef-ah { background: var(--ef-box-grad); }
.ef-ah__in { position: relative; max-width: 1351px; height: 100%; margin: 0 auto; }
.ef-ah__avatar { position: absolute; left: 24px; top: 100px; width: 92px; height: 92px; border-radius: 50%; object-fit: cover; }
.ef-ah__main { position: absolute; left: 140px; top: 40px; width: 720px; }
.ef-ah__name { margin: 0 0 20px; font-family: var(--ef-font-body); font-size: 20px; font-weight: 700; line-height: 34px; letter-spacing: 0; color: var(--ef-heading); text-decoration: underline dotted var(--ef-accent); text-decoration-thickness: 2px; text-underline-offset: 5px; display: inline-block; }
.ef-ah__bio, .ef-ah__bio p { font-size: 14.72px; line-height: 25px; color: #232323; margin: 0; }
html[data-theme="dark"] .ef-ah__bio, html[data-theme="dark"] .ef-ah__bio p { color: #ddd; }
.ef-ah__social { display: flex; gap: 12px; margin-top: 14px; }
.ef-ah__social a { color: #232323; font-size: 16px; line-height: 16px; }
html[data-theme="dark"] .ef-ah__social a { color: #ddd; }
.ef-ah__social a:hover { color: var(--ef-accent); }
.ef-ah__count { position: absolute; right: 19px; top: 108px; text-align: right; }
.ef-ah__n { display: block; font-size: 45px; line-height: 54px; color: var(--ef-heading); }
.ef-ah__l { display: block; font-size: 12px; line-height: 20.4px; color: #777; }
.ef-al__head { max-width: 1000px; margin: 11px auto 71px; }
.ef-al { max-width: 1040px; margin: 0 auto; }
.ef-lb { display: grid; grid-template-columns: 434px minmax(0, 1fr); gap: 29px; align-items: center; padding: 0 20px 35px; box-sizing: border-box; }
.ef-lb__thumb { position: relative; display: block; width: 434px; height: 260px; overflow: hidden; background: #e9e9e9; }
.ef-lb__thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
.ef-lb__cat { position: absolute; left: 0; bottom: 0; padding: 0 14px; height: 29px; line-height: 29px; font-size: 12px; font-weight: 500; color: #fff; background: var(--ef-accent); }
.ef-lb__title { margin: 0 0 12px; font-size: 20px; line-height: 24px; font-weight: 700; }
.ef-lb__title a { color: var(--ef-heading); }
.ef-lb__title a:hover { color: var(--ef-accent); }
.ef-lb__ex { margin: 0 0 12px; font-size: 14px; line-height: 23.8px; color: #555; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
html[data-theme="dark"] .ef-lb__ex { color: #bbb; }
.ef-lb__meta { display: flex; align-items: center; gap: 6px; font-size: 12px; line-height: 20.4px; color: #777; }
.ef-lb__meta img { width: 22px; height: 22px; border-radius: 50%; object-fit: cover; }
.ef-lb__meta a { font-weight: 600; color: var(--ef-heading); }
@media (max-width: 800px) { .ef-lb { grid-template-columns: 1fr; gap: 14px; } .ef-lb__thumb { width: 100%; height: auto; aspect-ratio: 5/3; } .ef-ah { height: auto; padding: 30px 20px; } .ef-ah__in { height: auto; } .ef-ah__avatar, .ef-ah__main, .ef-ah__count { position: static; } .ef-ah__main { width: auto; margin-top: 16px; } }

/* Forfatternavn: kraftigere specificitet end kittets h1-stil */
.ef-ah .ef-ah__name { font-family: var(--ef-font-body); font-size: 20px; font-weight: 700; line-height: 34px; letter-spacing: 0; }

/* Forfatterband: fuld bredde via egen container (ingen 100vw-hack) */
.ef-ah { width: 100%; margin: 0; }
.ef-archive--author .ef-al__head { margin-top: -19px; }
.ef-ah__name { margin-bottom: 12px; }
.ef-ah__social svg { width: 16px; height: 16px; fill: currentColor; }
.ef-ah__social i { font-size: 16px; }

/* Sektionstitel: lettere tagline (som produktionen) */
html:not([data-theme="dark"]) .ef-section-title__tag { color: rgba(0,0,0,.065); }

/* ==========================================================
   Bogmærker, følg og læsehistorik
   ========================================================== */
.ef-card__date { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.ef-bm { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; flex: 0 0 20px; padding: 0; margin: 0; background: transparent !important; border: 0; color: #232323 !important; cursor: pointer; }
.ef-bm svg { width: 11px; height: 11px; }
.ef-bm__on { display: none; }
.ef-bm.is-on .ef-bm__on { display: block; }
.ef-bm.is-on .ef-bm__off { display: none; }
.ef-bm.is-on, .ef-bm:hover { color: var(--ef-accent) !important; }
.ef-bm[data-tip]:hover::after { content: attr(data-tip); position: absolute; bottom: calc(100% + 6px); right: -6px; background: #111; color: #fff; font-size: 11px; line-height: 1; padding: 7px 10px; white-space: nowrap; z-index: 5; pointer-events: none; }
.ef-card--overlay-l .ef-bm { color: #fff !important; }
html[data-theme="dark"] .ef-bm { color: #dddddd !important; }
html[data-theme="dark"] .ef-bm.is-on, html[data-theme="dark"] .ef-bm:hover { color: var(--ef-accent) !important; }

.ef-follow { display: inline-flex; align-items: center; gap: 8px; height: 34px; padding: 0 16px; background: transparent !important; border: 1px solid rgba(136,136,136,.15); border-radius: 0; color: var(--ef-text) !important; font-size: 12px; font-weight: 500; line-height: 1; cursor: pointer; transition: border-color .15s, color .15s; }
.ef-follow__plus { font-size: 15px; line-height: 1; }
.ef-follow:hover, .ef-follow.is-on { border-color: var(--ef-accent); color: var(--ef-accent) !important; }
.ef-follow--round { width: 34px; padding: 0; border-radius: 50%; justify-content: center; }
.ef-follow--round .ef-follow__txt { display: none; }
.ef-tbar { display: flex; align-items: center; gap: 21px; flex-wrap: wrap; }
.ef-ah__row { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; }
.ef-ah__row .ef-ah__name { margin-bottom: 0; }
.ef-ah__social { align-items: center; }
.ef-ah__fl { font-size: 12px; line-height: 12px; color: #777; margin-right: 10px; }

.ef-toast { position: fixed; left: 24px; bottom: 24px; z-index: 99999; display: flex; align-items: center; gap: 12px; max-width: 360px; padding: 12px 18px 12px 12px; background: #fff; box-shadow: 0 4px 30px rgba(0,0,0,.12); opacity: 0; transform: translateY(12px); pointer-events: none; transition: opacity .25s, transform .25s; }
.ef-toast.is-on { opacity: 1; transform: none; }
.ef-toast img { width: 56px; height: 56px; object-fit: cover; flex: 0 0 56px; }
.ef-toast strong { display: block; font-size: 13px; line-height: 1.3; font-weight: 700; color: var(--ef-accent); }
.ef-toast span { display: block; font-size: 12px; line-height: 1.4; color: #777; }
html[data-theme="dark"] .ef-toast { background: #1c1c1c; }

.ef-pz__in { max-width: 1400px; margin: 0 auto; padding: 0 20px; box-sizing: border-box; }
.ef-pz__sec { margin: 0 0 49px; }
.ef-pz__head { position: relative; padding: 25px 0 24px; margin-bottom: 30px; }
.ef-pz__head::before { content: ''; position: absolute; inset: 0; background-image: radial-gradient(#232323 1px, transparent 1px); background-size: 20px 20px; opacity: .15; pointer-events: none; }
html[data-theme="dark"] .ef-pz__head::before { background-image: radial-gradient(#ffffff 1px, transparent 1px); opacity: .12; }
.ef-pz__head .ef-pz__in { position: relative; }
.ef-pz__head h2 { margin: 0; font-size: 20px; line-height: 24px; font-weight: 700; color: var(--ef-heading); }
.ef-pz__head p { margin: 5px 0 0; font-size: 12px; line-height: 20.4px; color: #777; text-transform: capitalize; }
.ef-card__thumb { position: relative; }
.ef-card__cats--over { position: absolute; left: 12px; bottom: 10px; z-index: 2; font-size: 12px; font-weight: 500; line-height: 18px; margin: 0; }
.ef-card__cats--over a { color: #fff; }
.ef-card--saved .ef-card__title { font-size: 20px; line-height: 24px; }
.ef-card--saved .ef-card__title a { color: var(--ef-heading); }
.ef-card--saved .ef-sep { color: rgba(255,255,255,.6); margin: 0 6px; }
.ef-pz__cats { display: flex; flex-wrap: wrap; gap: 20px; }
.ef-pz-cat { display: flex; align-items: center; gap: 14px; padding: 14px 18px; background: var(--ef-box-grad); border: 2px dashed var(--ef-box-border); box-shadow: none; }
.ef-pz-cat__name { font-size: 16px; font-weight: 700; color: var(--ef-heading); }
.ef-pz-cat__n { font-size: 12px; color: #777; }
.ef-pz__authors { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px; }
.ef-pz-author { display: flex; justify-content: space-between; gap: 30px; padding: 25px; background: var(--ef-box-grad); border: 2px dashed var(--ef-box-border); box-shadow: none; }
.ef-pz-author h3 { margin: 0 0 12px; font-size: 20px; line-height: 26px; font-weight: 700; }
.ef-pz-author h3 a { color: var(--ef-heading); }
.ef-pz-author h3 span { font-size: 12px; font-weight: 400; color: #777; }
.ef-pz-author p { margin: 0 0 18px; font-size: 16px; line-height: 27.2px; color: var(--ef-text); }
.ef-pz-author > img { width: 100px; height: 100px; border-radius: 50%; object-fit: cover; flex: 0 0 100px; align-self: center; }
@media (max-width: 800px) { .ef-pz__authors { grid-template-columns: 1fr; } }
.ef-full { max-width: none; width: 100%; }

/* ==========================================================
   Login-popup: mål fra produktionen
   ========================================================== */
.ef-lm { position: fixed; inset: 0; z-index: 100000; display: flex; align-items: center; justify-content: center; padding: 20px; }
.ef-lm[hidden] { display: none; }
.ef-lm__bg { position: absolute; inset: 0; background: #191c20; opacity: .92; }
.ef-lm__box { position: relative; width: 350px; max-width: 100%; max-height: calc(100vh - 40px); overflow-y: auto; box-sizing: border-box; padding: 25px; background: #ffffff; }
html[data-theme="dark"] .ef-lm__box { background: #141414; }
.ef-lm__x { position: absolute; top: 4px; right: 8px; width: 32px; height: 32px; padding: 0; background: transparent !important; border: 0; color: #777 !important; font-size: 26px; line-height: 32px; cursor: pointer; }
.ef-lm__logo img { display: block; width: 300px; max-width: 100%; height: auto; margin: 0 auto; }
.ef-lm__head { text-align: center; margin: 14px 0 20px; }
.ef-lm__head strong { display: block; font-size: 20px; line-height: 28px; font-weight: 700; color: var(--ef-heading); }
.ef-lm__dots { display: inline-flex; gap: 6px; margin-top: 10px; }
.ef-lm__dots i { width: 6px; height: 6px; border-radius: 50%; background: var(--ef-accent); }
.ef-lm form > a:first-child { display: flex !important; justify-content: center; width: 100%; box-sizing: border-box; }
.ef-lm label { display: block; margin: 14px 0 7px; font-size: 12.8px; line-height: 21.76px; color: #777; }
.ef-lm__input { display: block; width: 100%; height: 48px; box-sizing: border-box; padding: 0 14px; font-size: 14px; color: var(--ef-text); background: rgba(136,136,136,.07); border: 1px solid rgba(136,136,136,.15); border-radius: 0; outline: 0; }
.ef-lm__input:focus { border-color: var(--ef-accent); }
.ef-lm__pw { position: relative; }
.ef-lm__pw .ef-lm__input { padding-right: 44px; }
.ef-lm__eye { position: absolute; right: 6px; top: 8px; width: 32px; height: 32px; padding: 0; background: transparent !important; border: 0; cursor: pointer; }
.ef-lm__eye svg { width: 18px; height: 18px; fill: #777; }
.ef-lm__row { display: flex; align-items: center; justify-content: space-between; margin: 16px 0 24px; font-size: 12.8px; }
.ef-lm__row label.ef-lm__rem { display: flex; align-items: center; gap: 6px; margin: 0; }
.ef-lm__row a { color: var(--ef-text); }
.ef-lm__submit { display: block; width: 100%; height: 40px; padding: 0; background: #191c20 !important; color: #ffffff !important; border: 0; border-radius: 0; font-size: 15.6px; font-weight: 600; line-height: 40px; cursor: pointer; transition: background .15s; }
.ef-lm__submit:hover { background: var(--ef-accent) !important; }
html[data-theme="dark"] .ef-lm__submit { background: #ffffff !important; color: #111111 !important; }
.ef-lm__reg { margin: 22px 0 0; text-align: center; font-size: 12.8px; line-height: 21.76px; color: var(--ef-text); }
.ef-lm__reg a { font-weight: 700; color: var(--ef-heading); }
html.ef-lm-open { overflow: hidden; }

/* ==========================================================
   Som produktionen: tick, badge, Vis Mere, hub-kort
   ========================================================== */
.ef-ah__name { text-decoration: none !important; }
.ef-ah__nm { text-decoration: underline dotted var(--ef-accent); text-decoration-thickness: 2px; text-underline-offset: 5px; }
.ef-ah .ef-ah__name { line-height: 24px; }
.ef-ah__tick { display: inline-flex; vertical-align: middle; margin-left: 2px; color: #4caf50; }
.ef-ah__tick svg { width: 16px; height: 16px; fill: #4caf50; }
.ef-lb__thumb { overflow: visible; }
.ef-lb__cat { left: -5px; bottom: 5px; height: auto; padding: 8.4px 14.4px; line-height: 12px; }
.ef-pagination--hidden { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.ef-more { display: flex; justify-content: center; height: 44px; margin-top: 14px; }
.ef-more__btn { display: inline-flex; align-items: center; height: 34px; padding: 0 18px; font-size: 13px; font-weight: 600; letter-spacing: -.3px; line-height: 22.1px; color: var(--ef-heading); }
.ef-more__btn:hover { color: var(--ef-accent); }
.ef-more__btn.is-loading { opacity: .45; pointer-events: none; }
.ef-pz__cats { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 20px; }
.ef-pz-cat { position: relative; display: block; height: 66px; box-sizing: border-box; padding: 9px 60px 0 15px; background: var(--ef-box-grad); border: 2px dashed var(--ef-box-border); box-shadow: none; }
.ef-pz-cat__name { display: block; font-size: 17px; line-height: 22px; font-weight: 700; }
.ef-pz-cat__n { display: block; font-size: 12px; line-height: 20.4px; }
.ef-pz-cat .ef-follow--round { position: absolute; right: 15px; top: 17px; width: 32px; height: 32px; border-color: transparent; }
.ef-pz-cat .ef-follow--round:hover, .ef-pz-cat .ef-follow--round.is-on { border-color: var(--ef-accent); }
.ef-pz-cat[hidden], .ef-pz-author[hidden] { display: none !important; }
.ef-pz__more { display: flex; flex-direction: column; align-items: center; gap: 4px; margin: 24px auto 0; font-size: 12px; line-height: 16px; color: var(--ef-text); }
.ef-pz__plus { font-size: 20px; line-height: 20px; }
.ef-pz__more:hover { color: var(--ef-accent); }
@media (max-width: 1100px) { .ef-pz__cats { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 700px) { .ef-pz__cats { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* Google-knap i popup: venstrestillet som på produktionen */
.ef-lm form > a:first-child { justify-content: flex-start !important; padding-left: 28px !important; }

/* Mobil: arkiv-topblok (skal ligge efter desktop-reglerne) */
@media (max-width: 1100px) {
  .ef-archive__top { grid-template-columns: minmax(0, 1fr); row-gap: 24px; }
  .ef-archive__side { padding: 0; grid-template-columns: minmax(0, 1fr); }
  .ef-archive__newscol { padding: 0; }
  .ef-archive__news { margin-top: 0; }
}
@media (max-width: 700px) {
  .ef-archive .ef-card--overlay-l .ef-card__title { font-size: 26px; line-height: 32px; }
  .ef-archive .ef-card--overlay-l .ef-card__body { padding: 60px 18px 18px; }
  .ef-archive-title { font-size: 34px; line-height: 40px; letter-spacing: -2px; }
}

/* ==========================================================
   Mobilheader og mobilmenu: mål fra produktionen (≤1024px)
   ========================================================== */
.ef-mh, .ef-mm { display: none; }
@media (max-width: 1024px) {
  .elementor-location-header { display: none !important; }
  .ef-mh { display: flex; position: sticky; top: var(--wp-admin--admin-bar--height, 0px); z-index: 1000; align-items: center; justify-content: space-between; height: 42px; box-sizing: border-box; padding: 0 20px; background: var(--ef-bg); box-shadow: 0 1px 12px rgba(0,0,0,.06); }
  .ef-mh__logo { display: block; line-height: 0; }
  .ef-mh__logo img { height: 38px; width: auto; }
  .ef-mh__right { display: flex; align-items: center; gap: 18px; }
  .ef-mh__burger { position: relative; width: 24px; height: 16px; padding: 0; background: transparent !important; border: 0; cursor: pointer; }
  .ef-mh__burger span { position: absolute; right: 0; height: 2px; background: var(--ef-heading); transition: transform .2s, opacity .2s, width .2s; }
  .ef-mh__burger span:nth-child(1) { top: 0; width: 24px; }
  .ef-mh__burger span:nth-child(2) { top: 7px; width: 16px; }
  .ef-mh__burger span:nth-child(3) { top: 14px; width: 24px; }
  .ef-mh__burger.is-open span:nth-child(1) { top: 7px; width: 24px; transform: rotate(45deg); }
  .ef-mh__burger.is-open span:nth-child(2) { opacity: 0; }
  .ef-mh__burger.is-open span:nth-child(3) { top: 7px; width: 24px; transform: rotate(-45deg); }
  .ef-mm { position: fixed; left: 0; right: 0; bottom: 0; top: calc(42px + var(--wp-admin--admin-bar--height, 0px)); z-index: 999; background: var(--ef-bg); }
  .ef-mm:not([hidden]) { display: block; }
  .ef-mm[hidden] { display: none; }
  .ef-mm__holder { height: 100%; overflow-y: auto; padding: 15px 20px 0; box-sizing: border-box; -webkit-overflow-scrolling: touch; }
  .ef-mm__h5 { display: block; font-size: 15px; line-height: 22px; font-weight: 700; color: var(--ef-heading); margin-bottom: 10px; }
  .ef-mm__search form { position: relative; display: flex; align-items: center; height: 40px; border: 1px solid rgba(136,136,136,.25); }
  .ef-mm__search svg { position: absolute; left: 14px; width: 16px; height: 16px; fill: var(--ef-muted); }
  .ef-mm__search input { flex: 1; min-width: 0; height: 38px; padding: 0 44px 0 36px; background: transparent; border: 0; outline: 0; font-size: 14px; color: var(--ef-text); }
  .ef-mm__search button { position: absolute; right: 0; top: 0; width: 40px; height: 38px; background: transparent !important; border: 0; color: var(--ef-muted) !important; font-size: 16px; cursor: pointer; }
  .ef-mm__group { margin-top: 24px; }
  .ef-mm__gh { padding-bottom: 12px; border-bottom: 1px solid rgba(136,136,136,.2); font-size: 13px; line-height: 19.5px; color: var(--ef-heading); }
  .ef-mm__cols { display: grid; grid-template-columns: 1fr 1fr; list-style: none; margin: 0; padding: 12px 0 0; }
  .ef-mm__cols li { margin: 0; padding: 0; }
  .ef-mm__cols a, .ef-mm__flat a { display: block; padding: 7px 0; font-size: 14px; line-height: 21px; font-weight: 500; color: var(--ef-heading); }
  .ef-mm__flat { list-style: none; margin: 14px 0 0; padding: 0; }
  .ef-mm__flat li { margin: 0; padding: 4px 0; }
  .ef-mm__login { display: flex; align-items: center; justify-content: space-between; margin-top: 26px; padding-top: 26px; border-top: 1px dotted rgba(136,136,136,.5); }
  .ef-mm__login strong { font-size: 14px; line-height: 21px; font-weight: 700; }
  .ef-mm__btn { display: inline-block; padding: 0 16px; height: 30px; line-height: 30px; background: #191c20; color: #fff !important; font-size: 12px; font-weight: 700; }
  html[data-theme="dark"] .ef-mm__btn { background: #ffffff; color: #111 !important; }
  .ef-mm__social { display: flex; align-items: center; gap: 22px; margin-top: 20px; padding: 18px 0 20px; border-top: 1px solid rgba(136,136,136,.2); }
  .ef-mm__social > span { font-size: 13px; font-weight: 700; margin-right: 6px; }
  .ef-mm__social a { color: var(--ef-heading); line-height: 0; }
  .ef-mm__social svg, .ef-mm__social i { width: 16px; height: 16px; font-size: 16px; fill: currentColor; }
  .ef-mm__copy { margin: 0 -20px; padding: 22px 20px 40px; background: rgba(136,136,136,.15); font-size: 12px; line-height: 20px; color: var(--ef-muted); }
  html.ef-mm-open { overflow: hidden; }
}

/* Mobilmenu: Følg os på én linje */
@media (max-width: 1024px) { .ef-mm__social > span { white-space: nowrap; } .ef-mm__social { gap: 20px; justify-content: flex-start; } }

/* ==========================================================
   Mobil: kortlayouts (mål fra produktionen, ≤767px)
   ========================================================== */
@media (max-width: 767px) {
  /* Forside-hero: stablet, kategori som label på billedet, 40px titel */
  .ef-card--feature { grid-template-columns: minmax(0, 1fr); }
  .ef-card--feature .ef-card__thumb { order: 0; }
  .ef-card--feature .ef-card__body { position: relative; padding: 33px 0 0; }
  .ef-card--feature .ef-card__cats { position: absolute; left: 12px; top: -27px; z-index: 2; margin: 0; }
  .ef-card--feature .ef-card__cats a { color: #fff; }
  .ef-card--feature .ef-card__title { font-size: 40px; line-height: 48px; }
  .ef-card--feature .ef-card__excerpt { font-size: 13px; line-height: 22.1px; }
  /* Listekort: tekst til venstre, billede 100x80 til højre */
  .ef-posts--list2 { gap: 10px; }
  .ef-card--list2 { grid-template-columns: minmax(0, 1fr) 100px; gap: 0 15px; padding: 5px 0; }
  .ef-card--list2 .ef-card__thumb { order: 2; width: 100px; height: 80px; }
  .ef-card--list2 .ef-card__body { order: 1; }
  .ef-card--list2 .ef-card__title { font-size: 13px; line-height: 18.2px; }
  /* Gitterkort bliver vandrette småkort */
  .ef-posts--grid { grid-template-columns: minmax(0, 1fr) !important; gap: 10px !important; }
  .ef-card--grid, .ef-card--saved { display: grid; grid-template-columns: minmax(0, 1fr) 100px; column-gap: 15px; align-items: center; padding: 10px 0 !important; min-height: 99px; box-sizing: border-box; }
  .ef-card--grid .ef-card__thumb { order: 2; width: 100px; height: 80px; aspect-ratio: auto; margin: 0; }
  .ef-card--grid .ef-card__body { order: 1; }
  .ef-card--grid .ef-card__title { font-size: 13px; line-height: 18.2px; margin-bottom: 4px; }
  .ef-card--grid .ef-card__excerpt { display: none; }
  .ef-card--saved .ef-card__cats--over { display: none; }
  /* Bredt kort: 5:4 billede, 27px titel */
  .ef-card--wide .ef-card__thumb { aspect-ratio: 5 / 4; }
  .ef-card--wide .ef-card__cats { margin-bottom: 0; }
  .ef-card--wide .ef-card__title { font-size: 27px; line-height: 32.4px; margin-bottom: 8px; }
  .ef-card--wide .ef-card__excerpt { font-size: 13px; line-height: 22.1px; }
}

/* Mobil: kategorilinje (17px høj som på produktionen) */
@media (max-width: 767px) {
  .ef-card--list2 .ef-card__cats, .ef-card--grid .ef-card__cats { line-height: 17px; margin-bottom: 2px; }
}

/* ==========================================================
   Mobil: footer (mål fra produktionen, ≤767px)
   ========================================================== */
@media (max-width: 767px) {
  .ef-footer .elementor-element-eff00004 { padding: 20px 0 0 !important; flex-wrap: wrap !important; gap: 30px 40px !important; }
  .ef-footer .elementor-element-eff00005 { width: 100% !important; padding-bottom: 54px !important; }
  .ef-footer .elementor-element-eff00010, .ef-footer .elementor-element-eff00013 { width: calc(50% - 20px) !important; }
  .ef-footer .elementor-element-eff00016 { width: 100% !important; }
  .ef-footer .ef-footer-heading .elementor-heading-title { font-size: 16px; line-height: 24px; }
  .ef-footer .ef-footer-text, .ef-footer .ef-footer-text p { font-size: 15px; line-height: 25.5px; }
  .ef-footer .ef-footer-nav .elementor-nav-menu--main > ul > li { min-height: 26px; }
  .ef-footer .ef-footer-nav .elementor-item { padding-top: 2.25px !important; padding-bottom: 2.25px !important; }
  .ef-footer .elementor-element-eff00020 p, .ef-footer .elementor-element-eff00020 { font-size: 13px; line-height: 22.1px; }
  .ef-footer .ef-footer-bottom a { font-size: 15px; line-height: 25.5px; }
  .ef-footer .elementor-element-eff00030 img, .ef-footer .elementor-element-eff00031 img { width: 188px; height: auto; }
  .ef-footer .elementor-element-eff00032, .ef-footer .elementor-element-eff00032 p { font-size: 11px; line-height: 18.7px; }
}

/* Mobil: footer finjustering */
@media (max-width: 767px) {
  .ef-footer .elementor-element-eff00009 { display: none; }
  .ef-footer .ef-footer-text *, .ef-footer .ef-footer-text { font-size: 15px !important; line-height: 25.5px !important; }
}

/* ==========================================================
   Mobil: artikel (mål fra produktionen, ≤767px)
   ========================================================== */
@media (max-width: 767px) {
  .elementor-widget-theme-post-content p, .elementor-widget-theme-post-content li { font-size: 15px; line-height: 25.5px; }
  .ef-toc { padding: 20px; }
  .ef-toc summary { height: auto; font-size: 15px; line-height: 25.5px; font-weight: 400; color: #7a7a7a; }
  .ef-toc a { font-size: 14px; line-height: 20px; font-weight: 700; }
  .ef-toc li { padding: 7px 0; }
}

/* Mobil: metalinje (16px mellem rækkerne) */
@media (max-width: 767px) { .ef-post-meta { gap: 16px; } }

/* ==========================================================
   Mobil: arkiver, hero og søgning (mål fra produktionen, ≤767px)
   ========================================================== */
@media (max-width: 767px) {
  /* Arkivtitel bevarer 45px som på produktionen */
  .ef-archive-title { font-size: 45px; line-height: 54px; letter-spacing: -3.5px; }
  /* Hero-kort: billede 5:4 med tekst under på mørk baggrund */
  .ef-card--overlay-l { background: #0a0a0a; }
  .ef-card--overlay-l .ef-card__thumb, .ef-posts--hero .ef-card--overlay-l .ef-card__thumb { aspect-ratio: 5 / 4 !important; }
  .ef-card--overlay-l .ef-card__body, .ef-archive .ef-card--overlay-l .ef-card__body, .ef-posts--hero .ef-card--overlay-l .ef-card__body { position: static !important; background: none !important; padding: 20px 30px 22px 30px !important; }
  .ef-archive .ef-card--overlay-l .ef-card__title, .ef-posts--hero .ef-card--overlay-l .ef-card__title { font-size: 27px; line-height: 32.4px; }
  /* 2-kolonners gitter forbliver lodret på mobil (10:7-billede, 18px titel) */
  .ef-posts--grid[style*="--ef-cols:2"]:not(.ef-posts--search) .ef-card--grid { display: block !important; padding: 0 0 20px !important; min-height: 0; }
  .ef-posts--grid[style*="--ef-cols:2"]:not(.ef-posts--search) .ef-card--grid .ef-card__thumb { width: auto; height: auto; aspect-ratio: 10 / 7; }
  .ef-posts--grid[style*="--ef-cols:2"]:not(.ef-posts--search) .ef-card--grid .ef-card__title { font-size: 18px; line-height: 23.4px; }
  /* Gemte kort forbliver lodrette (1 kolonne) */
  .ef-card--saved { display: block !important; padding: 0 0 20px !important; }
  .ef-card--saved .ef-card__thumb { width: auto; height: auto; aspect-ratio: 5 / 3; }
  .ef-card--saved .ef-card__cats--over { display: block; }
  .ef-card--saved .ef-card__title { font-size: 17px; line-height: 20.4px; }
  /* Tynd streg mellem vandrette gitterkort */
  .ef-posts--grid:not([style*="--ef-cols:2"]) .ef-card--grid:not(.ef-card--saved), .ef-posts--search .ef-card--grid { border-bottom: 1px solid rgba(136,136,136,.15); }
  /* Søgning */
  .ef-sh { height: 157px; }
  .ef-sh::before { height: 100px; }
  .ef-sh__title { padding-top: 25px; font-size: 24px; line-height: 28.8px; letter-spacing: -1.5px; }
  .ef-sh__sub { margin-top: 4px; font-size: 13px; line-height: 20px; }
  .ef-sh__form { top: 113px; height: 44px; }
  .ef-sh__form input[type="search"] { height: 40px; }
  .ef-sh__form button[type="submit"] { height: 40px; line-height: 40px; }
  .ef-qlinks { gap: 5px; margin-bottom: 20px; justify-content: center; }
  .ef-qlinks a { height: 22px; padding: 0 12px; font-size: 11px; line-height: 11px; }
}

/* Mobil: søgeside afstand */
@media (max-width: 767px) { .elementor-element-efr00010 { margin-top: 20px !important; padding: 0 20px !important; } }

/* Mobil: overskrifter med højere specificitet end kittets h1-regel */
@media (max-width: 767px) {
  .ef-sh .ef-sh__title { font-size: 24px; line-height: 28.8px; letter-spacing: -3.5px; }
  .ef-tbar .ef-archive-title, .ef-archive-title { font-size: 45px; line-height: 54px; }
}

/* Mobil: runde 3 rettelser (mål fra produktionen) */
@media (max-width: 767px) {
  .ef-posts--search .ef-card--grid .ef-card__title { font-size: 13px !important; line-height: 18.2px !important; }
  .ef-card--overlay-l .ef-card__body, .ef-archive .ef-card--overlay-l .ef-card__body, .ef-posts--hero .ef-card--overlay-l .ef-card__body { padding: 8px 10px 22px 10px !important; }
  .ef-card--grid2 .ef-card__thumb { aspect-ratio: 10 / 7; }
  .elementor-element-efa00001 { padding-top: 20px !important; }
}
@media (max-width: 1024px) {
  .page-content.ef-classic { grid-template-columns: minmax(0, 1fr); }
  .ef-classic__main { padding: 20px 20px 0; }
  .ef-classic__side .ef-sidebar { padding: 10px 20px 0; }
}

/* Mobil: runde 4 (404, login, hub) */
@media (max-width: 767px) {
  .ef-404b .ef-404b__title { font-size: 45px; line-height: 54px; letter-spacing: -3.5px; margin-bottom: 20px; }
  .ef-404b__text { font-size: 14.72px; line-height: 25px; margin-bottom: 20px; }
  .ef-sf { width: 100%; height: 44px; margin-bottom: 30px; padding-left: 20px; }
  .ef-sf input[type="search"], .ef-sf button[type="submit"] { height: 44px; }
  .ef-404b__btn { height: 34px; line-height: 34px; padding: 0 30px; font-size: 11px; }
  .page-header .entry-title, body .page-header .entry-title { font-size: 27px; line-height: 35.1px; letter-spacing: -2px; }
  .page-header { padding-top: 30px; }
  .ef-pz-author > img { width: 70px; height: 70px; flex-basis: 70px; }
  .ef-pz-author { padding: 20px; gap: 20px; }
  .ef-pz__head h2 { font-size: 20px; }
}

/* Mobil: forfatterprofil (centreret som på produktionen) */
@media (max-width: 767px) {
  .ef-ah { height: auto; padding: 25px 20px 30px; }
  .ef-ah__in { display: flex; flex-direction: column; align-items: center; text-align: center; }
  .ef-ah__avatar { position: static; width: 80px; height: 80px; margin: 0 auto 16px; }
  .ef-ah__main { position: static; width: 100%; }
  .ef-ah__row { flex-direction: column; gap: 12px; align-items: center; }
  .ef-ah .ef-ah__name { font-size: 20px; line-height: 26px; }
  .ef-ah__bio, .ef-ah__bio p { text-align: center; font-size: 13px; line-height: 22px; }
  .ef-ah__social { justify-content: center; margin-top: 18px; }
  .ef-ah__fl, .ef-ah__count { display: none; }
  .ef-archive--author .ef-al__head { margin-top: 20px; margin-bottom: 30px; }
  .ef-lb { padding: 0 0 25px; }
}

/* Forfatteravatar: højere specificitet end Elementors img-regel */
.ef-ah .ef-ah__avatar { width: 92px; height: 92px; border-radius: 50%; object-fit: cover; }
@media (max-width: 767px) {
  .ef-ah .ef-ah__avatar { width: 80px; height: 80px; }
  .ef-ah .ef-ah__name { font-size: 19px; }
}

/* Mobil: runde 5 positioner (mål fra produktionen) */
@media (max-width: 767px) {
  .elementor-element-ef400001 { padding-top: 96px !important; }
  .ef-404b .ef-404b__btn { padding: 0 17px; }
  .ef-classic__main { padding: 20px 10px 0; }
  .page-header { padding-left: 10px; padding-right: 10px; }
  .elementor-element-efa00001 { padding-top: 0 !important; }
  .ef-tbar { margin-top: -10px; }
  .ef-more__btn { height: 29px; padding: 0 13px; }
  .ef-more { height: 44px; }
  .ef-pz__in { padding: 0 10px; }
}

/* ==========================================================
   Tablet: kortlayouts (768-1024px, som produktionen)
   ========================================================== */
@media (min-width: 768px) and (max-width: 1024px) {
  .ef-card--feature { grid-template-columns: minmax(0, 1fr); }
  .ef-card--feature .ef-card__thumb { order: 0; }
  .ef-card--feature .ef-card__body { position: relative; padding: 33px 0 0; }
  .ef-card--feature .ef-card__cats { position: absolute; left: 12px; top: -27px; z-index: 2; margin: 0; }
  .ef-card--feature .ef-card__cats a { color: #fff; }
  .ef-card--feature .ef-card__title { font-size: 40px; line-height: 48px; overflow-wrap: anywhere; }
  .ef-card--feature .ef-card__excerpt { font-size: 13px; line-height: 22.1px; }
  .ef-card--list2 { grid-template-columns: minmax(0, 1fr) 100px; gap: 0 15px; padding: 5px 0; }
  .ef-card--list2 .ef-card__thumb { order: 2; width: 100px; height: 80px; }
  .ef-card--list2 .ef-card__body { order: 1; }
  .ef-card--list2 .ef-card__title { font-size: 13px; line-height: 18.2px; }
  .ef-card--wide { grid-template-columns: minmax(0, 40%) minmax(0, 1fr); gap: 24px; }
  .ef-card--wide .ef-card__title { font-size: 30px; line-height: 36px; }
  .ef-posts--grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

/* Tablet: arkiv-hero og sidekort (768-1100px) */
@media (min-width: 768px) and (max-width: 1100px) {
  .ef-card--overlay-l .ef-card__thumb, .ef-posts--hero .ef-card--overlay-l .ef-card__thumb { aspect-ratio: 16 / 9; }
  .ef-archive .ef-card--overlay-l .ef-card__title, .ef-posts--hero .ef-card--overlay-l .ef-card__title { font-size: 32px; line-height: 38px; }
  .ef-archive__side { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
  .ef-archive__newscol { padding: 0; }
}

/* ==========================================================
   Runde 6: rettelser fra gennemgang
   ========================================================== */
@font-face { font-family: 'ruby-icon'; src: url('assets/fonts/ruby-icon.woff2') format('woff2'); font-weight: normal; font-style: normal; font-display: swap; }

/* Indholdsfortegnelse: Foxiz' egne ikoner (rbi-read og angle) */
.ef-toc summary { gap: 7px; font-weight: 700; color: #7a7a7a; }
.ef-toc summary::before { content: '\e94c'; font-family: 'ruby-icon'; font-size: 16px; line-height: 16px; width: auto; height: auto; flex: 0 0 auto; background: none; -webkit-mask: none; mask: none; color: var(--ef-accent); }
.ef-toc summary::after { content: '\e927'; font-family: 'ruby-icon'; font-size: 14px; line-height: 14px; width: auto; height: auto; border: 0; transform: none; margin-left: auto; color: var(--ef-text); }
.ef-toc:not([open]) summary::after { content: '\e924'; }
html[data-theme="dark"] .ef-toc summary { color: #bbbbbb; }

/* Bogmærke-ikon: Foxiz' glyph (rbi-bookmark / rbi-bookmark-fill) */
.ef-bm svg { display: none !important; }
.ef-bm::before { content: '\e907'; font-family: 'ruby-icon'; font-size: 11px; line-height: 1; }
.ef-bm.is-on::before { content: '\e906'; }
.ef-card__catrow { display: flex; align-items: center; justify-content: space-between; gap: 10px; }

/* Taglines (SENESTE/RELATEREDE): 36px/600 som på produktionen */
.ef-section-title__tag { font-size: 36px; font-weight: 600; line-height: 54px; top: -30px; }
.ef-sidebar .ef-section-title__tag { top: -20px; }

/* Kategorisider: donationsblok og linjer mellem gitterkort */
.ef-archive__newscol { display: flex; flex-direction: column; gap: 20px; }
.ef-donate__t { margin: 0; text-align: center; font-family: 'Covered By Your Grace', cursive; font-size: 25px; line-height: 25px; font-weight: 400; color: #323232; }
html[data-theme="dark"] .ef-donate__t { color: #eeeeee; }
.ef-donate__b { text-align: center; }
.ef-donate__btn { display: inline-block; background: #1C8DBC; color: #ffffff !important; font-size: 15px; font-weight: 500; line-height: 15px; padding: 12px 24px; text-decoration: none; transition: background .2s; }
.ef-donate__btn:hover { background: #157098; }
.ef-posts--grid:not([style*="--ef-gap"]):not(.ef-posts--search) .ef-card--grid:not(.ef-card--saved) { position: relative; }
.ef-posts--grid:not([style*="--ef-gap"]):not(.ef-posts--search) .ef-card--grid:not(.ef-card--saved)::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; border-bottom: 1px solid rgba(136,136,136,.15); }
.ef-posts--grid:not([style*="--ef-gap"]) .ef-card--grid:nth-last-child(-n+4)::after { display: none; }
@media (max-width: 767px) { .ef-card--grid::after { display: none !important; } }
.ef-archive-desc.ef-archive-desc--top { margin: 20px 0 0; max-width: 900px; font-size: 14px; line-height: 23.8px; color: #232323; }
.ef-archive-desc--top p { margin: 0; }
html[data-theme="dark"] .ef-archive-desc.ef-archive-desc--top { color: #dddddd; }

/* Sticky sidebar (kun desktop) */
@media (min-width: 1025px) { .ef-sidebar-col { position: sticky; top: 100px; align-self: flex-start; } }

/* ==========================================================
   Runde 7: kommentarer, metalinje og headerikoner
   ========================================================== */
.ef-ico { font-family: 'ruby-icon'; font-style: normal; font-weight: normal; line-height: 1; display: inline-block; }
.ef-ico--time::before { content: '\e93a'; }
.ef-ico--comment::before { content: '\e945'; }

/* Metalinje: venstrejusteret som på produktionen */
.elementor-element-efs00002 { align-items: stretch !important; }
.ef-post-meta { align-items: flex-start; text-align: left; gap: 21px; width: 100%; }
.ef-post-meta__read { display: inline-flex; align-items: center; gap: 6px; }
.ef-post-meta__read .ef-ico { font-size: 14px; }
.ef-post-meta__by { display: flex; align-items: center; flex-wrap: wrap; }
.ef-post-meta__by a { font-weight: 600; margin-left: 4px; text-decoration: underline; text-decoration-color: var(--ef-accent); text-underline-offset: 3px; }
.ef-post-meta .ef-dot { display: inline-block; width: 4px; height: 4px; border-radius: 50%; background: #b5b5b5; margin: 0 8px; }
.ef-bm--label { width: auto; height: auto; flex: 0 0 auto; gap: 6px; font-size: 13.8px; font-weight: 600; line-height: 23.5px; color: #232323 !important; }
.ef-bm--label::before { font-size: 13.8px; }
.ef-bm--label[data-tip]:hover::after { display: none; }
html[data-theme="dark"] .ef-bm--label { color: #ffffff !important; }
@media (max-width: 767px) { .ef-post-meta { gap: 16px; } }

/* Headerikoner: alle på samme linje (6px under menuens midte, som på produktionen) */
@media (min-width: 1025px) {
  .ef-header .ef-icon-bookmark, .ef-header .ef-icon-user { transform: translateY(10px); }
  .ef-header .elementor-widget-search-form { transform: translateY(6px); }
  .ef-header .ef-dark-toggle { transform: translateY(9px); }
}

/* Kommentarer */
.ef-cm { margin: 40px 0 0; }
.ef-cm__head { display: flex; align-items: center; gap: 8px; margin: 0 0 22px; font-size: 18px; line-height: 28px; font-weight: 700; color: var(--ef-heading); }
.ef-cm__head .ef-ico { font-size: 20px; font-weight: 400; }
.ef-cm__list, .ef-cm__list ol { list-style: none; margin: 0 0 30px; padding: 0; }
.ef-cm__list ol { margin: 20px 0 0 40px; }
.ef-cm__li { margin: 0 0 24px; padding: 0; }
.ef-cm__item { position: relative; display: flex; gap: 15px; }
.ef-cm__avatar img { width: 50px; height: 50px; border-radius: 50%; object-fit: cover; display: block; }
.ef-cm__body { flex: 1; min-width: 0; padding-right: 90px; }
.ef-cm__top { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 12px; }
.ef-cm__top b { font-size: 14.72px; line-height: 25px; font-weight: 700; color: var(--ef-heading); }
.ef-cm__top time { font-size: 12px; line-height: 20px; color: #777; }
.ef-cm__text { font-size: 14px; line-height: 23.8px; color: var(--ef-text); margin-top: 4px; }
.ef-cm__text p { margin: 0 0 10px; font-size: 14px; line-height: 23.8px; }
.ef-cm__wait { margin: 4px 0; font-size: 12px; color: var(--ef-accent); }
.ef-cm__reply { position: absolute; right: 0; top: 0; }
.ef-cm__reply a { font-size: 13px; line-height: 24px; font-weight: 600; color: var(--ef-heading); }
.ef-cm__reply a:hover { color: var(--ef-accent); }
.ef-cm .comment-notes { margin: 0 0 12px; font-size: 12.8px; line-height: 21.76px; font-style: italic; color: var(--ef-heading); }
.ef-cm .comment-notes .required { color: #ff4545; }
.ef-cm #commentform { display: flex; flex-wrap: wrap; gap: 20px; align-items: flex-start; }
.ef-cm #commentform > p { margin: 0; }
.ef-cm .comment-notes, .ef-cm .comment-form-comment { flex: 0 0 100%; }
.ef-cm .comment-form-comment { margin-top: -8px !important; }
.ef-cm label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
.ef-cm textarea { display: block; width: 100%; box-sizing: border-box; min-height: 209px; padding: 15px 20px; font-size: 14px; line-height: 22.4px; color: var(--ef-text); background: rgba(136,136,136,.07); border: 0; border-radius: 0; resize: vertical; outline: 0; }
.ef-cm .comment-form-author, .ef-cm .comment-form-email { flex: 0 0 233px; }
.ef-cm input[type="text"], .ef-cm input[type="email"] { display: block; width: 100%; height: 48px; box-sizing: border-box; padding: 12px 20px; font-size: 14px; color: var(--ef-text); background: rgba(136,136,136,.07); border: 0; border-radius: 0; outline: 0; }
.ef-cm textarea:focus, .ef-cm input:focus { box-shadow: inset 0 0 0 1px var(--ef-accent); }
.ef-cm ::placeholder { color: #777; opacity: 1; }
.ef-cm .form-submit { flex: 0 0 auto; }
.ef-cm input.submit { height: 40px; padding: 0 40px; background: #191c20; color: #ffffff; border: 0; border-radius: 0; font-size: 13px; font-weight: 600; line-height: 40px; cursor: pointer; transition: background .15s; }
.ef-cm input.submit:hover { background: var(--ef-accent); }
html[data-theme="dark"] .ef-cm input.submit { background: #ffffff; color: #111111; }
#cancel-comment-reply-link { font-size: 14.4px; font-weight: 700; margin-left: 10px; }
@media (max-width: 767px) { .ef-cm .comment-form-author, .ef-cm .comment-form-email { flex: 0 0 100%; } .ef-cm__body { padding-right: 0; } .ef-cm__reply { position: static; margin-top: 6px; } .ef-cm__item { flex-wrap: wrap; } }

/* Metalinje: inderste beholder skal ikke centrere */
.elementor-element-efs00002 > .e-con-inner { align-items: stretch !important; }

/* Kommentar-avatar: fast bredde (må ikke skrumpe i flex-rækken) */
.ef-cm__avatar { flex: 0 0 50px; width: 50px; height: 50px; }
.ef-cm__avatar img { width: 50px; height: 50px; max-width: none; }

/* ==========================================================
   Runde 8: tilbage til toppen og live-søgning
   ========================================================== */
.ef-ico--top::before { content: '\e94a'; }
#back-top { position: fixed; right: 20px; bottom: 40px; z-index: 980; width: 40px; height: 40px; opacity: 0; visibility: hidden; transform: translateY(10px); transition: opacity .4s cubic-bezier(.32,.74,.57,1), transform .4s cubic-bezier(.32,.74,.57,1), visibility .4s; }
#back-top.is-on { opacity: 1; visibility: visible; transform: none; }
#back-top i { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; background: #191c20; color: #ffffff; font-size: 13px; }
#back-top:hover i { background: var(--ef-accent); }
html[data-theme="dark"] #back-top i { border: 1px solid rgba(255,255,255,.22); }

.ef-ls { position: fixed; z-index: 100001; width: 340px; box-sizing: border-box; padding: 5px; background: #ffffff; box-shadow: 0 4px 30px rgba(0,0,0,.12); max-height: calc(100vh - 20px); overflow-y: auto; }
.ef-ls[hidden] { display: none; }
html[data-theme="dark"] .ef-ls { background: #121212; box-shadow: 0 4px 30px rgba(0,0,0,.5); }
.ef-ls__form { display: flex; align-items: center; height: 41px; }
.ef-ls__ic { width: 16px; height: 16px; margin: 0 10px 0 8px; fill: var(--ef-heading); flex: 0 0 16px; }
.ef-ls__form input[type="search"] { flex: 1; min-width: 0; height: 41px; padding: 0; background: transparent; border: 0; outline: 0; font-size: 14px; color: var(--ef-text); }
.ef-ls__form button { width: 32px; height: 40px; padding: 0; background: transparent !important; border: 0; color: var(--ef-heading) !important; font-size: 16px; cursor: pointer; }
.ef-ls__item { display: flex; align-items: center; gap: 10px; padding: 10px; border-top: 1px solid rgba(136,136,136,.15); }
.ef-ls__item img, .ef-ls__noimg { width: 50px; height: 38px; object-fit: cover; flex: 0 0 50px; background: #e9e9e9; }
.ef-ls__t { display: block; min-width: 0; }
.ef-ls__t strong { display: block; font-size: 13px; line-height: 17px; font-weight: 700; color: var(--ef-heading); }
.ef-ls__t em { display: block; margin-top: 3px; font-style: normal; font-size: 11.5px; line-height: 16px; color: #777; }
.ef-ls__item:hover strong { color: var(--ef-accent); }
.ef-ls__none { margin: 0; padding: 14px 10px; font-size: 13px; color: #777; border-top: 1px solid rgba(136,136,136,.15); }

.ef-ls__form input[type="search"]::-webkit-search-cancel-button, .ef-sh__form input[type="search"]::-webkit-search-cancel-button, .ef-mm__search input::-webkit-search-cancel-button { display: none; -webkit-appearance: none; }

/* Nyhedsboks: formular i fuld bredde */
.ef-newsbox .elementor-widget, .ef-newsbox .elementor-shortcode, .ef-newsbox .mailpoet_form { width: 100%; }

/* MailPoet-formular: knapfarver og felter (Foxiz' generelle knapstil forsvinder ved temaskiftet) */
.mailpoet_form input.mailpoet_text, .mailpoet_form input[type="email"] { height: 45px; box-sizing: border-box; padding: 12px 20px; background: rgba(136,136,136,.07); border: 0; border-radius: 0; font-size: 14px; color: #7a7a7a; }
.mailpoet_form input.mailpoet_submit { height: 45px; padding: 12px; background: #EA6728; color: #ffffff; border: 0; border-radius: 3px; font-size: 14px; font-weight: 700; line-height: 21px; cursor: pointer; }
.ef-footer .mailpoet_form input.mailpoet_submit { background: #1a1a1a; }
.ef-footer .mailpoet_form input.mailpoet_submit:hover { background: #EA6728 !important; }

/* ==========================================================
   Runde 9: nyhedsbrev, donation, sticky og indholdsfortegnelse
   ========================================================== */
/* Foxiz Cores tekst-indholdsfortegnelse skal ikke vises (vores dropdown beholdes) */
.ruby-table-contents, .rbtoc { display: none !important; }

/* Orange knapper i alle nyhedsbreve og donationer (MailPoets egen sorte knap overstyres) */
.mailpoet_form input.mailpoet_submit, .mailpoet_form input[type="submit"] { background-color: #EA6728 !important; border-color: #EA6728 !important; color: #ffffff !important; }
.mailpoet_form input.mailpoet_submit:hover, .mailpoet_form input[type="submit"]:hover { background-color: #cf5a1f !important; border-color: #cf5a1f !important; }
html .ef-footer .ef-mp-stub button, html .ef-mp-stub button { background: #EA6728 !important; }
.ef-donate__btn { background: #EA6728; }
.ef-donate__btn:hover { background: #cf5a1f; }

/* Forsidens nyhedsbrev: fuld bredde, centreret, lav, felt og knap på én linje */
.elementor-element.ef-nl { width: 100%; flex: 1 1 100%; max-width: 100%; box-sizing: border-box; padding: 24px 30px; }
.ef-nl .ef-nl__title { font-family: 'Covered By Your Grace', cursive !important; font-size: 26px !important; font-weight: 400 !important; line-height: 1.1 !important; margin: 0 0 6px !important; color: var(--ef-heading); }
.ef-nl .ef-nl__text { font-size: 14px; line-height: 22px; margin: 0 0 14px; color: var(--ef-muted); }
.ef-nl form.mailpoet_form, .ef-nl .ef-mp-stub { display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-start; gap: 12px; max-width: 760px; margin: 0 auto; }
.ef-nl form.mailpoet_form > .mailpoet_paragraph, .ef-nl .ef-mp-stub > p { margin: 0 !important; }
.ef-nl form.mailpoet_form > .mailpoet_paragraph:has(input.mailpoet_text), .ef-nl form.mailpoet_form > .mailpoet_paragraph:has(input[type="email"]), .ef-nl .ef-mp-stub .ef-mp-stub__f { flex: 1 1 380px; }
.ef-nl form.mailpoet_form > .mailpoet_paragraph:has(input.mailpoet_submit), .ef-nl .ef-mp-stub .ef-mp-stub__b { flex: 0 0 170px; }
.ef-nl form.mailpoet_form > .mailpoet_message { flex: 0 0 100%; }
.ef-nl .mailpoet_form input.mailpoet_submit, .ef-nl .ef-mp-stub button { width: 100% !important; margin: 0 !important; display: block !important; }
@media (max-width: 767px) { .ef-nl form.mailpoet_form > .mailpoet_paragraph:has(input.mailpoet_submit), .ef-nl .ef-mp-stub .ef-mp-stub__b { flex: 1 1 100%; } .elementor-element.ef-nl { padding: 20px; } }

/* Sticky: kun de to sidste widgets (støtte + Google-badge) klistrer, lige under headeren */
@media (min-width: 1025px) {
  .ef-sidebar-col { position: static !important; top: auto !important; align-self: stretch !important; flex-direction: column !important; }
  .ef-sidebar-col > .elementor-widget, .ef-sidebar-col > .elementor-widget > .elementor-widget-container, .ef-sidebar-col > .elementor-widget > .elementor-widget-container > .elementor-template, .ef-sidebar-col > .elementor-widget > .elementor-widget-container > .elementor-template > .elementor-location-single { display: flex; flex-direction: column; flex: 1 1 auto; min-height: 0; }
  .ef-sidebar-col .ef-sidebar { flex: 1 1 auto; }
  .ef-sidebar .ef-sticky-end { position: sticky; top: 110px; }
}

/* ==========================================================
   Runde 10: knapper, kategori-layout og sticky-afstand
   ========================================================== */
/* Alle udfyldte knapper: orange. Ved mouseover: mørk turkis #045D5D */
.elementor-button, .ef-sw-btn, .ef-bnr-btn, .ef-fcta-btn, .ef-404b__btn, .ef-donate__btn, .ef-mm__btn, .ef-lm__submit, .ef-cm input.submit, .mailpoet_form input.mailpoet_submit, .mailpoet_form input[type="submit"], .ef-mp-stub button, .ef-account-page button[type="submit"], .ef-audio-locked a { background-color: #EA6728 !important; border-color: #EA6728 !important; color: #ffffff !important; transition: background-color .2s, border-color .2s, color .2s; }
.elementor-button:hover, .elementor-button:focus, .ef-sw-btn:hover, .ef-bnr-btn:hover, .ef-fcta-btn:hover, .ef-404b__btn:hover, .ef-donate__btn:hover, .ef-mm__btn:hover, .ef-lm__submit:hover, .ef-cm input.submit:hover, html body .mailpoet_form input.mailpoet_submit:hover, html body .mailpoet_form input[type="submit"]:hover, html .ef-footer .mailpoet_form input.mailpoet_submit:hover, .ef-mp-stub button:hover, .ef-account-page button[type="submit"]:hover, .ef-audio-locked a:hover { background-color: #045D5D !important; border-color: #045D5D !important; color: #ffffff !important; }
html[data-theme="dark"] .ef-lm__submit, html[data-theme="dark"] .ef-mm__btn, html[data-theme="dark"] .ef-cm input.submit { background-color: #EA6728 !important; color: #ffffff !important; }
html[data-theme="dark"] .ef-lm__submit:hover, html[data-theme="dark"] .ef-mm__btn:hover, html[data-theme="dark"] .ef-cm input.submit:hover { background-color: #045D5D !important; }
.ef-cta__btn:hover { background-color: #045D5D !important; border-color: #045D5D !important; color: #ffffff !important; }
.ef-more__btn:hover { color: #045D5D; }
.ef-follow:hover { border-color: #045D5D; color: #045D5D !important; }

/* Sticky-gruppen: lige under headeren (også for indloggede med værktøjslinje) */
@media (min-width: 1025px) { .ef-sidebar .ef-sticky-end { top: calc(110px + var(--wp-admin--admin-bar--height, 0px)); } }

/* Kategorisider: hero + sidekort fylder 67 %, widgets 33 % (som en sidebar) */
@media (min-width: 1101px) {
  .ef-archive__top { grid-template-columns: minmax(0, 44fr) minmax(0, 23fr) minmax(0, 33fr); column-gap: 20px; align-items: stretch; }
  .ef-archive__hero, .ef-archive__hero .ef-card--overlay-l { height: 100%; }
  .ef-archive__hero .ef-card--overlay-l .ef-card__thumb { aspect-ratio: auto !important; height: 100%; min-height: 440px; }
  .ef-archive__hero .ef-card--overlay-l .ef-card__thumb img { height: 100%; }
  .ef-archive__side { padding: 0; align-content: start; }
  .ef-archive__newscol { padding: 0; }
  .ef-archive__newscol .ef-sw { margin: 0; }
}

/* Forside-nyhedsbrev: knap i fuld bredde (MailPoets egen id-regel overstyres) */
.ef-nl #mailpoet_form_5 input.mailpoet_submit, .ef-nl #mailpoet_form_5 input[type="submit"] { width: 100% !important; margin: 0 !important; display: block !important; height: 45px !important; }
.ef-nl #mailpoet_form_5 input.mailpoet_text, .ef-nl #mailpoet_form_5 input[type="email"] { height: 45px !important; }

/* Forside-nyhedsbrev: stærkere regel end MailPoets inline-stil */
html body .ef-nl #mailpoet_form_5 form.mailpoet_form input.mailpoet_submit.mailpoet_submit { width: 100% !important; margin: 0 !important; display: block !important; height: 45px !important; }

/* Runde 11: kategoriside på samme 4-kolonners gitter som artikelgitteret (widgets = yderste kolonne) */
@media (min-width: 1101px) {
  .ef-archive__top { grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 40px; align-items: stretch; }
  .ef-archive__hero { grid-column: span 2; }
  .ef-archive__side { grid-column: span 1; }
  .ef-archive__newscol { grid-column: span 1; }
}

/* ==========================================================
   Runde 12: nyhedsbrev-hover og footer-boks
   ========================================================== */
/* MailPoets egen hover (orange, scopet til formularens id) overstyres: orange normalt, mørk turkis ved mouseover */
html body #mailpoet_form_5 form.mailpoet_form input.mailpoet_submit.mailpoet_submit { background-color: #EA6728 !important; border-color: #EA6728 !important; color: #ffffff !important; transition: background-color .2s, border-color .2s; }
html body #mailpoet_form_5 form.mailpoet_form input.mailpoet_submit.mailpoet_submit:hover, html body #mailpoet_form_5 form.mailpoet_form input.mailpoet_submit.mailpoet_submit:focus, html body #mailpoet_form_5 form.mailpoet_form input.mailpoet_submit.mailpoet_submit:active { background-color: #045D5D !important; border-color: #045D5D !important; color: #ffffff !important; }

/* Footerens nyhedsbrev: samme stil som de øvrige (stiplet boks, centreret) */
.ef-footer .e-con:has(> .ef-footer-newsletter-title):has(> .ef-footer-newsletter) { border: 2px dashed var(--ef-box-border); padding: 22px; background: var(--ef-box-grad); text-align: center; box-sizing: border-box; align-self: flex-start; }
.ef-footer .ef-footer-newsletter-title .elementor-heading-title { text-align: center; }
.ef-footer .ef-footer-newsletter .mailpoet_form, .ef-footer .ef-footer-newsletter .elementor-shortcode { width: 100%; }
html[data-theme="dark"] .ef-footer .e-con:has(> .ef-footer-newsletter-title):has(> .ef-footer-newsletter) { background: var(--ef-box-grad); border-color: #ffffff26; }

/* Runde 13: footerens nyhedsbrev = samme mål som sidebarens (320 px bred, 20 px titel, 14 px tekst) */
.ef-footer .e-con:has(> .ef-footer-newsletter-title):has(> .ef-footer-newsletter) { width: 320px; max-width: 100%; margin-left: auto; padding: 22px; gap: 10px; row-gap: 10px; }
.ef-footer .ef-footer-newsletter-title .elementor-heading-title { font-size: 20px; line-height: 20px; font-weight: 500; }
.ef-footer .ef-footer-newsletter-text { font-size: 14px; line-height: 23.8px; color: #7a7a7a; text-align: center; }
@media (max-width: 1024px) { .ef-footer .e-con:has(> .ef-footer-newsletter-title):has(> .ef-footer-newsletter) { margin: 0 auto; } }

/* Footer-nyhedsbrev: titel som sidebarens */
html body .ef-footer .ef-footer-newsletter-title .elementor-heading-title { font-size: 20px !important; line-height: 20px !important; font-weight: 500 !important; color: #323232 !important; }
html[data-theme="dark"] body .ef-footer .ef-footer-newsletter-title .elementor-heading-title { color: #ffffff !important; }

/* Footer-nyhedsbrev: ingen streg under titlen */
html body .ef-footer .ef-footer-newsletter-title, html body .ef-footer .ef-footer-newsletter-title .elementor-widget-container, html body .ef-footer .ef-footer-newsletter-title .elementor-heading-title { border: 0 !important; box-shadow: none !important; padding-bottom: 0 !important; margin-bottom: 0 !important; }
html body .ef-footer .ef-footer-newsletter-title::before, html body .ef-footer .ef-footer-newsletter-title::after, html body .ef-footer .ef-footer-newsletter-title .elementor-heading-title::before, html body .ef-footer .ef-footer-newsletter-title .elementor-heading-title::after { display: none !important; content: none !important; }

/* Footer-nyhedsbrev: ingen streg over teksten */
html body .ef-footer .ef-footer-newsletter-text { border: 0 !important; padding-top: 0 !important; margin-top: 0 !important; }

/* Sidebar: overkant flugter med featured image (desktop) */
@media (min-width: 1025px) { .ef-sidebar-col .ef-sidebar { padding-top: 0 !important; } }

/* ==========================================================
   Runde 14: dark mode og links
   ========================================================== */
/* Nyhedsbrevs-felter: samme grå som kommentarfeltet (også i dark mode) */
html[data-theme="dark"] body #mailpoet_form_5 form.mailpoet_form input.mailpoet_text.mailpoet_text, html[data-theme="dark"] body #mailpoet_form_5 form.mailpoet_form input[type="email"] { background-color: #151515 !important; border-color: #2b2b2b !important; color: #dddddd !important; }
html[data-theme="dark"] #mailpoet_form_5 input::placeholder { color: #888888 !important; opacity: 1; }
html[data-theme="dark"] .ef-mp-stub input { background: #151515 !important; border-color: #2b2b2b !important; color: #dddddd !important; }

/* Lydafspiller-blok i dark mode */
html[data-theme="dark"] .ef-audio-player { background: var(--ef-box-grad) !important; }
html[data-theme="dark"] .ef-audio-player > span { color: #bbbbbb !important; }
html[data-theme="dark"] .ef-audio-player audio { color-scheme: dark; }
html[data-theme="dark"] .ef-audio-locked { background: var(--ef-box-grad) !important; border-color: var(--ef-box-border) !important; }
html[data-theme="dark"] .ef-audio-locked p { color: #bbbbbb !important; }

/* Min side (inline-stilede felter og bokse) i dark mode */
html[data-theme="dark"] .ef-account-page input[type="email"], html[data-theme="dark"] .ef-account-page input[type="password"] { background: #151515 !important; border-color: #2b2b2b !important; color: #dddddd !important; }
html[data-theme="dark"] .ef-account-page div[style*="background:#f0f7f0"], html[data-theme="dark"] .ef-account-page div[style*="background:#fbf6ea"] { background: #151515 !important; border-color: #2b2b2b !important; }
html[data-theme="dark"] .ef-account-page div, html[data-theme="dark"] .ef-account-page label { color: #cccccc; }

/* Headerens søgeikon: hvidt i dark mode som de øvrige ikoner */
html[data-theme="dark"] .ef-header .elementor-search-form__toggle, html[data-theme="dark"] .ef-header .elementor-search-form__toggle svg, html[data-theme="dark"] .ef-header .elementor-search-form__toggle i, html[data-theme="dark"] .ef-header .elementor-search-form__toggle .e-font-icon-svg-container { color: #ffffff !important; fill: #ffffff !important; }

/* Tekstlinks ved mouseover: orange (ikke turkis) */
.ef-more__btn:hover, .ef-more__btn:hover span { color: var(--ef-accent) !important; }

/* Runde 15: forsidens nyhedsbrev smallere (820 px, centreret) */
.elementor-element.ef-nl { width: 100%; max-width: 820px; flex: 0 1 820px; margin-left: auto; margin-right: auto; }
@media (max-width: 860px) { .elementor-element.ef-nl { flex: 1 1 100%; max-width: 100%; } }

/* Runde 16: forsidens afstand under sektionsoverskrifter (Seneste analyser = Seneste artikler: 10 px) */
.elementor-element.elementor-element-51fe267 { margin-bottom: 0 !important; }
.elementor-element.elementor-element-65480e7 { padding-top: 0 !important; }

/* Runde 16b: indre polstring i Seneste analyser-sektionen */
.elementor-element.elementor-element-65480e7 > .e-con-inner { padding-top: 0 !important; }

/* Runde 17: Seneste artikler-overskriften i samme kant som Seneste analyser (x30) */
.elementor-element.elementor-element-c6a19a9 > .e-con-inner { max-width: 100% !important; width: 100% !important; padding: 10px 20px !important; box-sizing: border-box; }

/* Runde 18: støtteboks på forsiden */
.elementor-element-325c95d .ef-sw { margin: 0; width: 100%; }

/* Runde 18b: støtteboks i fuld kolonnebredde (samme bredde som tekstboksen over) */
.elementor-element.elementor-element-325c95d { padding: 0 !important; }

/* Runde 19: afstand i analyse-blokken (tekst til knap: 90 px -> 30 px). Fjern dette én blok for at gendanne. */
.elementor .ef-cta .ef-cta__text { margin-bottom: 30px; }

/* Runde 20: kun én Google-knap i login-popuppen (Site Kits dublet skjules). Fjern dette blok for at få begge tilbage. */
.ef-lm .googlesitekit-sign-in-with-google__frontend-output-button { display: none !important; }

/* Runde 21: mindre logo i login-popuppen (25 % mindre: 300 px -> 225 px) */
.ef-lm__logo img { width: 225px; }

/* Runde 22: login-popup ca. 28 px lavere (mindre luft om prikkerne og mindre kant til skærmen). Fjern dette blok for at gendanne. */
.ef-lm { padding: 12px; }
.ef-lm__box { max-height: calc(100vh - 24px); }
.ef-lm__head { margin: 6px 0 12px; }

/* Runde 23: mindre indholdsfortegnelse på desktop (Foxiz-værdier: links 14px, rækker 7px, boks 20px). Fjern dette blok for at gendanne. */
@media (min-width: 768px) {
  .ef-toc { padding: 20px; }
  .ef-toc a { font-size: 14px; line-height: 20px; }
  .ef-toc li { padding: 7px 0; }
}

/* Dark mode: header-ikoner hvide */
html[data-theme="dark"] .ef-header .ef-icon-bookmark .elementor-icon,
html[data-theme="dark"] .ef-header .ef-icon-user .elementor-icon,
html[data-theme="dark"] .ef-header .ef-icon-bookmark .elementor-icon i,
html[data-theme="dark"] .ef-header .ef-icon-user .elementor-icon i,
html[data-theme="dark"] .ef-header .ef-icon-bookmark .elementor-icon svg,
html[data-theme="dark"] .ef-header .ef-icon-user .elementor-icon svg {
	color: #ffffff !important;
	fill: #ffffff !important;
}

/* ===== Dark mode: værktøjs- og indholdssider ===== */
/* Kritisk Tjek */
html[data-theme="dark"] .ef-tool .ef-tool-title { color: #ffffff; }
html[data-theme="dark"] .ef-tool .ef-card { background: var(--ef-box-grad); border-color: #ffffff26; }
html[data-theme="dark"] .ef-tool .ef-label { color: #a8a8a8; }
html[data-theme="dark"] .ef-tool .ef-ta { background: #151515; color: #e8e8e8; border-color: #ffffff26; }
html[data-theme="dark"] .ef-tool .ef-ta::placeholder { color: #8a8a8a; }
html[data-theme="dark"] .ef-tool .ef-btn { background: #EA6728; color: #ffffff; }
html[data-theme="dark"] .ef-tool .ef-btn:hover:not(:disabled) { background: #045D5D; }
html[data-theme="dark"] .ef-tool .ef-btn:disabled { background: #3a3a3a; color: #888888; }
html[data-theme="dark"] .ef-tool .ef-kilde { border-bottom-color: #ffffff1f; }
html[data-theme="dark"] .ef-tool .ef-kilde a { color: #7db8ff; }
html[data-theme="dark"] .ef-tool .ef-kilde p { color: #b0b0b0; }
html[data-theme="dark"] .ef-tool .ef-li { color: #e0e0e0; border-bottom-color: #ffffff1f; }
html[data-theme="dark"] .ef-tool .ef-li::before { color: #777777; }
html[data-theme="dark"] .ef-tool .ef-flag::before { color: #f08a8a; }
html[data-theme="dark"] .ef-tool .ef-low { background: #14301f; color: #7ddca1; }
html[data-theme="dark"] .ef-tool .ef-mid { background: #3a2a0d; color: #f0b35a; }
html[data-theme="dark"] .ef-tool .ef-high { background: #3a1717; color: #f08a8a; }
html[data-theme="dark"] .ef-tool .ef-timer { background: #ffffff14; color: #b0b0b0; }
html[data-theme="dark"] .ef-tool .ef-err { background: #3a1717; border-color: #6b2a2a; color: #f4a3a3; }
html[data-theme="dark"] .ef-tool .ef-warn { background: #3a2a0d; border-color: #6b4f1a; color: #f0b35a; }
html[data-theme="dark"] .ef-tool .ef-mini { background: #ffffff0d; color: #dddddd; }
html[data-theme="dark"] .ef-tool .ef-dot { background: #888888; }
html[data-theme="dark"] .ef-tool [style*="color:#666"] { color: #b0b0b0 !important; }
html[data-theme="dark"] .ef-tool [style*="color:#aaa"] { color: #9a9a9a !important; }
/* Infotekst under værktøjerne (Kritisk Tjek + OSINT-hub) */
html[data-theme="dark"] .page-id-16160 .elementor-widget-html p[style*="color:#333"],
html[data-theme="dark"] .page-id-19770 .elementor-widget-html p[style*="color:#333"] { color: #cfcfcf !important; }
html[data-theme="dark"] .page-id-16160 .elementor-widget-html [style*="border-top:1px solid #eee"],
html[data-theme="dark"] .page-id-19770 .elementor-widget-html [style*="border-top:1px solid #eee"] { border-top-color: #ffffff1f !important; }
/* OSINT Research (hub) */
html[data-theme="dark"] .ef-hub .ef-hub-title { color: #ffffff; }
html[data-theme="dark"] .ef-hub .ef-hub-intro { color: #cfcfcf; }
html[data-theme="dark"] .ef-hub .ef-hub-card { background: var(--ef-box-grad); border-color: #ffffff26; }
html[data-theme="dark"] .ef-hub .ef-hub-card:hover { border-color: #ffffff59; }
html[data-theme="dark"] .ef-hub .ef-hub-card h3 { color: #ffffff; }
html[data-theme="dark"] .ef-hub .ef-hub-card p { color: #c2c2c2; }
html[data-theme="dark"] .ef-hub .ef-hub-tag { background: #ffffff14; color: #bdbdbd; }
html[data-theme="dark"] .ef-hub .ef-hub-cta { color: #7db8ff; }
html[data-theme="dark"] .ef-hub .ef-hub-footer { background: var(--ef-box-grad); border-color: #ffffff26; color: #c2c2c2; }
html[data-theme="dark"] .ef-hub .ef-hub-footer strong { color: #ffffff; }
/* Numbrix */
html[data-theme="dark"] #nx-game { background: var(--ef-box-grad); }
html[data-theme="dark"] #nx-game .nx-cell { background: #2b241e; color: #efe9e0; }
html[data-theme="dark"] #nx-game .nx-adj { background: #352c24; }
html[data-theme="dark"] #nx-game .nx-clue { background: #4a3417; color: #f3b36a; }
html[data-theme="dark"] #nx-game .nx-sel { background: #563a1b; color: #f3b36a; outline-color: #EA6728; }
html[data-theme="dark"] #nx-game .nx-err { background: #4a1f1f; color: #f08a8a; }
html[data-theme="dark"] #nx-game .nx-won { background: #173a27; color: #7ddca1; }
html[data-theme="dark"] #nx-game .nx-btn { background: #2b241e; color: #cfc7bb; border-color: #ffffff26; }
html[data-theme="dark"] #nx-game .nx-btn:hover { background: #3a3028; color: #ffffff; }
html[data-theme="dark"] #nx-game .nx-btn.on { background: #4a3417; color: #f3b36a; border-color: #EA6728; }
html[data-theme="dark"] #nx-game .nx-input { background: #151515; color: #eeeeee; border-color: #EA6728; }
html[data-theme="dark"] #nx-game [style*="color:#1A1A2E"] { color: #f1ece4 !important; }
html[data-theme="dark"] #nx-game [style*="color:#777788"] { color: #a9a39a !important; }
html[data-theme="dark"] #nx-game [style*="color:#555570"] { color: #c2bbb0 !important; }
html[data-theme="dark"] #nx-game [style*="color:#BF5A00"] { color: #f3b36a !important; }
html[data-theme="dark"] #nx-game [style*="background:#D8D8E0"] { background: #4a4036 !important; border-color: #5a5045 !important; }
html[data-theme="dark"] #nx-game [style*="background:#F8F8FB"] { background: #ffffff0d !important; border-color: #ffffff26 !important; }
html[data-theme="dark"] #nx-game #nx-win { background: #173a27 !important; border-color: #2f7a4a !important; color: #7ddca1 !important; }
/* Fremtidige historier */
.page-id-22657 [data-id="story-1"], .page-id-22657 [data-id="story-2"], .page-id-22657 [data-id="story-3"] { background: var(--ef-box-grad) !important; }
html[data-theme="dark"] .page-id-22657 [data-id="historier"] { background: transparent !important; }
html[data-theme="dark"] .page-id-22657 [data-id="hvorfor-in"] { border-color: #ffffff1f !important; }
html[data-theme="dark"] .page-id-22657 [data-id$="-title"] { color: #ffffff !important; }
html[data-theme="dark"] .page-id-22657 [data-id$="-body"], html[data-theme="dark"] .page-id-22657 [data-id="hero-subtext"] { color: #cfcfcf !important; }

/* TTS-lydafspiller: samme bokstil */
.ef-audio-player,
.ef-audio-locked {
	background: var(--ef-box-grad) !important;
	border: 2px dashed var(--ef-box-border) !important;
	border-radius: 0 !important;
}
html[data-theme="dark"] .ef-audio-locked > div:first-child { color: #d6b25e !important; }
html[data-theme="dark"] .ef-audio-locked p { color: #cfcfcf !important; }

/* ===== Dark mode: de fem OSINT-værktøjer (Research Planner, Dokument-analyzer, Mågtnetværk, Interview, Kildebeskyttelse) ===== */
/* Infotekst under værktøjet */
html[data-theme="dark"] .page-id-19772 .elementor-widget-html p[style*="color:#333"],
html[data-theme="dark"] .page-id-19774 .elementor-widget-html p[style*="color:#333"],
html[data-theme="dark"] .page-id-19776 .elementor-widget-html p[style*="color:#333"],
html[data-theme="dark"] .page-id-19778 .elementor-widget-html p[style*="color:#333"],
html[data-theme="dark"] .page-id-19780 .elementor-widget-html p[style*="color:#333"] { color: #cfcfcf !important; }
html[data-theme="dark"] .page-id-19772 .elementor-widget-html [style*="border-top:1px solid #eee"],
html[data-theme="dark"] .page-id-19774 .elementor-widget-html [style*="border-top:1px solid #eee"],
html[data-theme="dark"] .page-id-19776 .elementor-widget-html [style*="border-top:1px solid #eee"],
html[data-theme="dark"] .page-id-19778 .elementor-widget-html [style*="border-top:1px solid #eee"],
html[data-theme="dark"] .page-id-19780 .elementor-widget-html [style*="border-top:1px solid #eee"] { border-top-color: #ffffff1f !important; }
/* Inline-farver i resultater og markup */
html[data-theme="dark"] .ef-tool [style*="color:#111"] { color: #f1ece4 !important; }
html[data-theme="dark"] .ef-tool [style*="color:#888"] { color: #a9a39a !important; }
html[data-theme="dark"] .ef-tool [style*="color:#1a6bb5"] { color: #7db8ff !important; }
html[data-theme="dark"] .ef-tool [style*="color:#2d7a4f"] { color: #7ddca1 !important; }
html[data-theme="dark"] .ef-tool [style*="border-bottom:1px solid #eee"] { border-bottom-color: #ffffff1f !important; }
html[data-theme="dark"] .ef-tool [style*="border:1px solid #eee"] { border-color: #ffffff26 !important; }
html[data-theme="dark"] .ef-tool [style*="background:#f0f6ff"] { background: #14233a !important; border-color: #2c4a73 !important; }
html[data-theme="dark"] .ef-tool [style*="background:#fff;"] { background: #ffffff0d !important; }
html[data-theme="dark"] .ef-tool [style*="border-left:3px solid #1a6bb5"] { border-left-color: #7db8ff !important; }

/* 404-siden: Elementor-widgets */
.ef-404b .ef-404b__title { margin: 0 0 25px; font-size: 45px; line-height: 54px; font-weight: 400; color: #54595F; }
.ef-404b .ef-404b__title .elementor-heading-title { margin: 0; font-size: inherit; line-height: inherit; font-weight: inherit; color: inherit; letter-spacing: inherit; }
html[data-theme="dark"] .ef-404b .ef-404b__title { color: #ffffff; }
.ef-404b .ef-404b__text { margin: 0 0 25px; text-align: center; }
.ef-404b .ef-404b__text, .ef-404b .ef-404b__text p { font-size: 16px; line-height: 27.2px; color: #777777; }
.ef-404b .ef-404b__text p { margin: 0; }
.ef-404b .elementor-widget-button .elementor-button { height: 40px; padding: 0 37px; font-size: 13px; font-weight: 600; line-height: 40px; border-radius: 0; }
@media (max-width: 767px) {
	.ef-404b .ef-404b__title { font-size: 45px; line-height: 54px; letter-spacing: -3.5px; margin-bottom: 20px; }
	.ef-404b .ef-404b__text, .ef-404b .ef-404b__text p { font-size: 14.72px; line-height: 25px; }
	.ef-404b .ef-404b__text { margin-bottom: 20px; }
	.ef-404b .elementor-widget-button .elementor-button { height: 34px; line-height: 34px; padding: 0 17px; font-size: 11px; }
}

/* ===== Støtteboks og støttebanner (Elementor-skabeloner) ===== */
/* Skabelon "EF Støtteboks": rediger tekst, tal, knap og link i Elementor. Udseendet styres her. */
.ef-sw.e-con { box-sizing: border-box; width: 100%; }
.ef-sw.e-con::before { content: ""; display: block; flex: 0 0 auto; width: 28px; height: 3px; background: #EA6728; border-radius: 2px; margin: 0 auto .75rem; }
.ef-sw .elementor-widget { margin: 0; }
.ef-sw .ef-sw-title { margin: 0 0 .4rem; }
.ef-sw .ef-sw-title p { margin: 0; font-size: 14px; font-weight: 500; color: #1a1a1a; text-align: center; }
.ef-sw .ef-sw-text { margin: 0 0 .9rem; }
.ef-sw .ef-sw-text p { margin: 0; font-size: 13px; color: #666; line-height: 1.6; }
.ef-sw .ef-sw-counter { margin: 0 0 .5rem; }
.ef-sw .ef-sw-counter p { margin: 0; font-size: 12px; color: #999; }
.ef-sw .ef-sw-counter strong { color: #EA6728; }
.ef-sw .ef-sw-bar { margin: 0 0 .9rem; }
.ef-sw .ef-sw-bar .elementor-title, .ef-sw .ef-sw-bar .elementor-progress-percentage, .ef-sw .ef-sw-bar .elementor-progress-text { display: none; }
.ef-sw .ef-sw-bar .elementor-progress-wrapper { background: #e0e0e0; border-radius: 4px; height: 3px; }
.ef-sw .ef-sw-bar .elementor-progress-bar { background: #EA6728; border-radius: 4px; height: 3px; min-height: 0; line-height: 0; }
.ef-sw .ef-sw-btnw { margin: 0 0 .5rem; }
.ef-sw .ef-sw-btnw .elementor-button { display: block; width: 50%; height: 45px; line-height: 45px; padding: 0; border-radius: 3px; font-size: 14px; font-weight: 700; text-align: center; margin: 0 auto; box-sizing: border-box; }
.ef-sw .ef-sw-btnw .elementor-button-content-wrapper { justify-content: center; }
.ef-sw .ef-sw-link p { margin: 0; text-align: center; font-size: 12px; }
.ef-sw .ef-sw-link a { color: #999; text-decoration: none; }
.ef-sw .ef-sw-link a:hover { color: var(--ef-accent); }
html[data-theme="dark"] .ef-sw .ef-sw-title p { color: #ffffff; }
html[data-theme="dark"] .ef-sw .ef-sw-text p { color: #bbbbbb; }
html[data-theme="dark"] .ef-sw .ef-sw-bar .elementor-progress-wrapper { background: #444444; }
/* Skabelon "EF Støttebanner" (forside og under artikler) */
.ef-bnr.e-con { box-sizing: border-box; border: 2px dashed var(--ef-box-border); border-left: 3px solid #EA6728; border-radius: 0; background: var(--ef-box-grad); }
.ef-bnr .elementor-widget { margin: 0; }
.ef-bnr > .ef-bnr-left.e-con { flex: 1 1 0; width: auto; min-width: 0; }
.ef-bnr > .ef-bnr-right.e-con { flex: 0 0 auto; width: auto; }
.ef-bnr .ef-bnr-tag { margin: 0 0 .3rem; }
.ef-bnr .ef-bnr-tag p { margin: 0; font-size: 11px; font-weight: 600; color: #EA6728; letter-spacing: .08em; text-transform: uppercase; }
.ef-bnr .ef-bnr-title { margin: 0 0 .25rem; }
.ef-bnr .ef-bnr-title p { margin: 0; font-size: 15px; font-weight: 500; color: #1a1a1a; }
.ef-bnr .ef-bnr-sub p { margin: 0; font-size: 13px; color: #666666; }
.ef-bnr .ef-bnr-counter p { margin: 0; font-size: 12px; color: #999999; white-space: nowrap; }
.ef-bnr .ef-bnr-counter strong { color: #EA6728; font-size: 15px; }
.ef-bnr .ef-bnr-btnw .elementor-button { display: inline-block; font-size: 13px; font-weight: 500; padding: .5rem 1.1rem; border-radius: 0; white-space: nowrap; height: auto; line-height: 1.5; }
html[data-theme="dark"] .ef-bnr.e-con { border-color: #ffffff26; }
html[data-theme="dark"] .ef-bnr .ef-bnr-title p { color: #ffffff; }
html[data-theme="dark"] .ef-bnr .ef-bnr-sub p { color: #bbbbbb; }
@media (min-width: 1025px) { html[data-theme="dark"] .ef-bnr.e-con { border-left-color: #EA6728; } }
@media (max-width: 1024px) {
	.ef-bnr.e-con { border-left: 2px dashed var(--ef-box-border); text-align: center; }
	.ef-bnr.e-con::before { content: ""; display: block; flex: 0 0 auto; width: 28px; height: 3px; background: #EA6728; border-radius: 2px; margin: 0 auto; }
	.ef-bnr > .ef-bnr-left.e-con, .ef-bnr > .ef-bnr-right.e-con { width: 100%; flex: 0 0 auto; }
	.ef-bnr .ef-bnr-title { margin: 0 0 .4rem; }
	.ef-bnr .ef-bnr-title p { font-size: 14px; }
	.ef-bnr .ef-bnr-sub p { line-height: 1.6; }
	.ef-bnr .ef-bnr-counter p { white-space: normal; }
	.ef-bnr .ef-bnr-btnw .elementor-button { display: block; width: 160px; height: 45px; line-height: 45px; padding: 0; border-radius: 3px; font-size: 14px; font-weight: 700; text-align: center; margin: 0 auto; box-sizing: border-box; }
	.ef-bnr .ef-bnr-btnw .elementor-button-content-wrapper { justify-content: center; }
}

/* ===== Donationssiden (Elementor-widgets) ===== */
.ef-dp.e-con { max-width: 680px; margin: 0 auto; padding: 2rem 1rem; width: 100%; box-sizing: border-box; }
.ef-dp .elementor-widget { margin: 0; }
.ef-dp .ef-dp-label { margin: 0 0 .5rem; }
.ef-dp .ef-dp-label p { margin: 0; font-size: 11px; font-weight: 600; color: #999999; letter-spacing: .1em; text-transform: uppercase; text-align: center; }
.ef-dp .ef-dp-title { margin: 0 0 .75rem; }
.ef-dp .ef-dp-title .elementor-heading-title { margin: 0; font-size: 28px; font-weight: 500; color: #1a1a1a; text-align: center; line-height: 1.3; }
.ef-dp .ef-dp-intro { max-width: 480px; margin: 0 auto 2rem; }
.ef-dp .ef-dp-intro p { margin: 0; font-size: 16px; color: #555555; line-height: 1.75; text-align: center; }
.ef-dp .ef-counter.e-con { background: var(--ef-box-grad); border: 2px dashed var(--ef-box-border); border-radius: 12px; padding: 1.5rem; margin-bottom: 2rem; text-align: center; align-items: center; }
.ef-dp .ef-counter-num p { margin: 0; font-size: 42px; font-weight: 500; color: #EA6728; line-height: 1; }
.ef-dp .ef-counter-num span { font-size: 20px; color: #999999; font-weight: 400; }
.ef-dp .ef-counter-sub p { margin: .3rem 0 .75rem; font-size: 14px; color: #777777; }
.ef-dp .ef-bar { width: 100%; max-width: 320px; margin: 0 auto; }
.ef-dp .ef-bar .elementor-title, .ef-dp .ef-bar .elementor-progress-percentage, .ef-dp .ef-bar .elementor-progress-text { display: none; }
.ef-dp .ef-bar .elementor-progress-wrapper { background: #dddddd; border-radius: 4px; height: 6px; }
.ef-dp .ef-bar .elementor-progress-bar { background: #EA6728; border-radius: 4px; height: 6px; min-height: 0; line-height: 0; }
.ef-dp .ef-counter-note p { margin: .5rem 0 0; font-size: 13px; color: #aaaaaa; }
.ef-dp .ef-plans { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-bottom: .5rem; }
.ef-dp .ef-plan { background: var(--ef-box-grad); border: 1px solid var(--ef-box-border); border-radius: 12px; padding: 1.5rem 1rem; text-align: center; display: flex; flex-direction: column; min-height: 220px; }
.ef-dp .ef-plan.featured { border: 2px solid #EA6728; }
.ef-dp .ef-plan .ef-badge { display: inline-block; background: #EA6728; color: #ffffff; font-size: 11px; border-radius: 6px; padding: 3px 10px; margin-bottom: .75rem; }
.ef-dp .ef-price { font-size: 26px; font-weight: 500; color: #1a1a1a; margin-bottom: .25rem; }
.ef-dp .ef-freq { font-size: 13px; color: #777777; margin-bottom: 1rem; }
.ef-dp .ef-btn-link { display: block; width: 100%; padding: .65rem 0; border-radius: 6px; border: 1px solid #cccccc; background: #ffffff; color: #1a1a1a; font-size: 14px; cursor: pointer; text-decoration: none; text-align: center; margin-top: auto; box-sizing: border-box; }
.ef-dp .paypal-wrapper { margin-top: auto; }
.ef-dp .ef-no-paywall { margin: .5rem 0 2rem; }
.ef-dp .ef-no-paywall p { margin: 0; font-size: 12px; color: #aaaaaa; text-align: center; }
.ef-dp .ef-divw { margin: 2rem 0; }
.ef-dp .ef-divw .elementor-divider { padding: 0; }
.ef-dp .ef-divw .elementor-divider-separator { width: 100%; border-top: 1px solid #efefef; }
.ef-dp .ef-slabel { margin: 0 0 .75rem; }
.ef-dp .ef-slabel p { margin: 0; font-size: 11px; font-weight: 600; color: #aaaaaa; letter-spacing: .1em; text-transform: uppercase; }
.ef-dp .ef-slabel-center { margin-bottom: 1rem; }
.ef-dp .ef-slabel-center p { text-align: center; }
.ef-dp .ef-body p { margin: 0 0 1rem; font-size: 15px; color: #555555; line-height: 1.75; }
.ef-dp .ef-body { margin: 0; }
.ef-dp .ef-inv-list ul { margin: 1rem 0 1.5rem; padding: 0; list-style: none; }
.ef-dp .ef-inv-list li { position: relative; padding-left: 16px; margin-bottom: .75rem; font-size: 14px; color: #555555; line-height: 1.6; }
.ef-dp .ef-inv-list li::before { content: ""; position: absolute; left: 0; top: 7px; width: 6px; height: 6px; background: #EA6728; border-radius: 50%; }
.ef-dp .ef-quote { border-left: 3px solid #EA6728; padding: 0 0 0 1rem; margin: 1.5rem 0; }
.ef-dp .ef-quote p { margin: 0; font-size: 15px; color: #1a1a1a; line-height: 1.75; font-style: italic; }
.ef-dp .ef-bottom-btns { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 1.25rem; }
.ef-dp .ef-bottom-btn { display: block; width: 100%; padding: .75rem 0; border-radius: 6px; border: 1px solid #cccccc; background: #ffffff; color: #1a1a1a; font-size: 14px; cursor: pointer; text-align: center; text-decoration: none; box-sizing: border-box; }
.ef-dp .ef-bottom-btn.ef-primary { background: #EA6728; border-color: #EA6728; color: #ffffff; font-weight: 500; }
.ef-dp .ef-bottom-btn span { display: block; font-size: 12px; color: #999999; font-weight: 400; }
.ef-dp .ef-bottom-btn.ef-primary span { color: rgba(255,255,255,.8); }
@media (max-width: 600px) { .ef-dp .ef-plans, .ef-dp .ef-bottom-btns { grid-template-columns: 1fr; } }
html[data-theme="dark"] .ef-dp .ef-dp-title .elementor-heading-title { color: #ffffff; }
html[data-theme="dark"] .ef-dp .ef-dp-intro p { color: #bbbbbb; }
html[data-theme="dark"] .ef-dp .ef-counter-sub p { color: #aaaaaa; }
html[data-theme="dark"] .ef-dp .ef-bar .elementor-progress-wrapper { background: #444444; }
html[data-theme="dark"] .ef-dp .ef-plan { background: var(--ef-box-grad); border-color: #ffffff26; }
html[data-theme="dark"] .ef-dp .ef-plan.featured { border-color: #EA6728; }
html[data-theme="dark"] .ef-dp .ef-price { color: #ffffff; }
html[data-theme="dark"] .ef-dp .ef-freq { color: #aaaaaa; }
html[data-theme="dark"] .ef-dp .ef-btn-link { background: transparent; border-color: #ffffff40; color: #ffffff; }
html[data-theme="dark"] .ef-dp .ef-divw .elementor-divider-separator { border-top-color: #ffffff1f; }
html[data-theme="dark"] .ef-dp .ef-body p, html[data-theme="dark"] .ef-dp .ef-inv-list li { color: #bbbbbb; }
html[data-theme="dark"] .ef-dp .ef-quote p { color: #ffffff; }
html[data-theme="dark"] .ef-dp .ef-bottom-btn { background: transparent; border-color: #ffffff40; color: #ffffff; }
html[data-theme="dark"] .ef-dp .ef-bottom-btn span { color: #aaaaaa; }

/* Forklarende tekst under værktøjer (Elementor-tekstwidget) */
.ef-tool-info.elementor-widget { width: 100%; max-width: 740px; margin: 2.5rem auto 0; padding-top: 2rem; border-top: 1px solid #eeeeee; font-family: system-ui, -apple-system, sans-serif; }
.ef-tool-info--wide.elementor-widget { max-width: 800px; }
.ef-tool-info p { margin: 0 0 1rem; font-size: 15px; color: #333333; line-height: 1.75; }
.ef-tool-info p:last-child { margin-bottom: 0; }
html[data-theme="dark"] .ef-tool-info.elementor-widget { border-top-color: #ffffff1f; }
html[data-theme="dark"] .ef-tool-info p { color: #cfcfcf; }

/* Lydboks (låst) – Elementor-skabelon */
.ef-audio-locked.e-con { box-sizing: border-box; }
.ef-audio-locked .elementor-widget { margin: 0; }
.ef-audio-locked .ef-audio-lbl { margin: 0 0 .4em; }
.ef-audio-locked .ef-audio-lbl p { margin: 0; font-size: .85em; font-weight: 700; letter-spacing: .02em; color: #8a6d1d; text-transform: uppercase; }
.ef-audio-locked .ef-audio-txt { margin: 0 0 .8em; }
.ef-audio-locked .ef-audio-txt p { margin: 0; color: #444444; font-size: .95em; }
.ef-audio-locked .ef-audio-btnw .elementor-button { display: inline-block; padding: .55em 1.2em; font-size: .9em; font-weight: 600; line-height: 1.4; height: auto; border-radius: 6px; }
html[data-theme="dark"] .ef-audio-locked .ef-audio-lbl p { color: #d6b25e !important; }
html[data-theme="dark"] .ef-audio-locked .ef-audio-txt p { color: #cfcfcf !important; }

/* Om-siden og Tak-siden (Elementor-widgets) */
.elementor .ef-om-st-label.elementor-widget { margin: 2rem 0 .75rem; padding-top: 2rem; border-top: 1px solid #efefef; }
.ef-om-st-label p { margin: 0; font-size: 11px; font-weight: 600; color: #aaaaaa; letter-spacing: .1em; text-transform: uppercase; }
.elementor .ef-om-st-h2.elementor-widget { margin: 0 0 1rem; }
.ef-om-st-h2 .elementor-heading-title { margin: 0; font-size: 20px; font-weight: 500; color: #1a1a1a; }
.ef-om-st-body p { margin: 0 0 1rem; font-size: 15px; color: #555555; line-height: 1.75; }
.elementor .ef-om-st-counter.elementor-widget { margin: 1.25rem 0; }
.ef-om-st-counter .elementor-widget-container { background: var(--ef-box-grad); border-left: 3px solid #EA6728; border-radius: 6px; padding: .75rem 1rem; }
.ef-om-st-counter p { margin: 0; font-size: 14px; color: #555555; }
.ef-om-st-counter strong { color: #EA6728; font-size: 18px; }
.elementor .ef-om-st-btnw.elementor-widget { margin-top: .5rem; }
.ef-om-st-btnw .elementor-button { display: inline-block; font-size: 14px; font-weight: 500; padding: .6rem 1.25rem; border-radius: 6px; height: auto; line-height: 1.5; }
html[data-theme="dark"] .elementor .ef-om-st-label.elementor-widget { border-top-color: #ffffff1f; }
html[data-theme="dark"] .ef-om-st-label p { color: #888888; }
html[data-theme="dark"] .ef-om-st-h2 .elementor-heading-title { color: #ffffff; }
html[data-theme="dark"] .ef-om-st-body p { color: #bbbbbb; }
html[data-theme="dark"] .ef-om-st-counter p { color: #dddddd; }
.ef-tak.e-con { max-width: 580px; margin: 3rem auto; padding: 2rem 1rem; text-align: center; align-items: center; box-sizing: border-box; }
.ef-tak .elementor-widget { margin: 0; }
.ef-tak .ef-tak-icon p { margin: 0 0 1rem; font-size: 48px; line-height: 1.2; text-align: center; }
.ef-tak .ef-tak-h1 { margin: 0 0 .75rem; }
.ef-tak .ef-tak-h1 .elementor-heading-title { margin: 0; font-size: 26px; font-weight: 500; color: #1a1a1a; text-align: center; }
.ef-tak .ef-tak-sub { margin: 0 0 2rem; }
.ef-tak .ef-tak-sub p { margin: 0; font-size: 16px; color: #555555; line-height: 1.75; text-align: center; }
.ef-tak .ef-tak-divw { width: 100%; margin: 2rem 0; }
.ef-tak .ef-tak-divw .elementor-divider { padding: 0; }
.ef-tak .ef-tak-divw .elementor-divider-separator { width: 100%; border-top: 1px solid #efefef; }
.ef-tak .ef-tak-label { margin: 0 0 .5rem; }
.ef-tak .ef-tak-label p { margin: 0; font-size: 11px; font-weight: 600; color: #aaaaaa; letter-spacing: .1em; text-transform: uppercase; text-align: center; }
.ef-tak .ef-tak-counter { margin: 0 0 1.5rem; }
.ef-tak .ef-tak-counter p { margin: 0; font-size: 15px; color: #555555; text-align: center; }
.ef-tak .ef-tak-counter strong { color: #EA6728; font-size: 20px; }
.ef-tak .ef-tak-btnw .elementor-button { display: inline-block; font-size: 14px; font-weight: 500; padding: .65rem 1.5rem; border-radius: 6px; height: auto; line-height: 1.5; }
html[data-theme="dark"] .ef-tak .ef-tak-h1 .elementor-heading-title { color: #ffffff; }
html[data-theme="dark"] .ef-tak .ef-tak-sub p, html[data-theme="dark"] .ef-tak .ef-tak-counter p { color: #bbbbbb; }
html[data-theme="dark"] .ef-tak .ef-tak-divw .elementor-divider-separator { border-top-color: #ffffff1f; }

/* Afstand under widgets i containere: Elementor nulstiller margin-block-end med ".e-con .elementor-widget.elementor-widget" (0,3,0). Reglerne herunder vejer tungere. */
.ef-sw.e-con .ef-sw-title.elementor-widget { margin-block-end: .4rem; }
.ef-sw.e-con .ef-sw-text.elementor-widget { margin-block-end: .9rem; }
.ef-sw.e-con .ef-sw-counter.elementor-widget { margin-block-end: .5rem; }
.ef-sw.e-con .ef-sw-bar.elementor-widget { margin-block-end: 20px; }
.ef-sw.e-con .ef-sw-btnw.elementor-widget { margin-block-end: .5rem; }
.ef-bnr.e-con .ef-bnr-tag.elementor-widget { margin-block-end: .3rem; }
.ef-bnr.e-con .ef-bnr-title.elementor-widget { margin-block-end: .25rem; }
@media (max-width: 1024px) { .ef-bnr.e-con .ef-bnr-title.elementor-widget { margin-block-end: .4rem; } }
.ef-dp.e-con .ef-dp-label.elementor-widget { margin-block-end: .5rem; }
.ef-dp.e-con .ef-dp-title.elementor-widget { margin-block-end: .75rem; }
.ef-dp.e-con .ef-dp-intro.elementor-widget { margin-block-end: 2rem; }
.ef-dp.e-con .ef-no-paywall.elementor-widget { margin-block-end: 2rem; }
.ef-dp.e-con .ef-divw.elementor-widget { margin-block-end: 2rem; }
.ef-dp.e-con .ef-slabel.elementor-widget { margin-block-end: .75rem; }
.ef-dp.e-con .ef-slabel-center.elementor-widget { margin-block-end: 1rem; }
.ef-dp.e-con .ef-quote.elementor-widget { margin-block-end: 1.5rem; }
.ef-404b.e-con .ef-404b__title.elementor-widget { margin-block-end: 25px; }
.ef-404b.e-con .ef-404b__text.elementor-widget { margin-block-end: 25px; }
@media (max-width: 767px) { .ef-404b.e-con .ef-404b__title.elementor-widget, .ef-404b.e-con .ef-404b__text.elementor-widget { margin-block-end: 20px; } }
.ef-tak.e-con .ef-tak-h1.elementor-widget { margin-block-end: .75rem; }
.ef-tak.e-con .ef-tak-sub.elementor-widget { margin-block-end: 2rem; }
.ef-tak.e-con .ef-tak-divw.elementor-widget { margin-block-end: 2rem; }
.ef-tak.e-con .ef-tak-label.elementor-widget { margin-block-end: .5rem; }
.ef-tak.e-con .ef-tak-counter.elementor-widget { margin-block-end: 1.5rem; }
.ef-audio-locked.e-con .ef-audio-lbl.elementor-widget { margin-block-end: .4em; }
.ef-audio-locked.e-con .ef-audio-txt.elementor-widget { margin-block-end: .8em; }
.elementor .e-con .ef-om-st-label.elementor-widget { margin-block-end: .75rem; }
.elementor .e-con .ef-om-st-h2.elementor-widget { margin-block-end: 1rem; }
.elementor .e-con .ef-om-st-counter.elementor-widget { margin-block-end: 1.25rem; }
.elementor .e-con .ef-om-st-btnw.elementor-widget { margin-block-end: 0; }

/* Accentstreg: Elementors overlay (.e-con::before) er position:absolute oppe til venstre; gør vores streg almindeligt placeret, så den centreres. */
.ef-sw.e-con::before { position: static; top: auto; left: auto; }
@media (max-width: 1024px) { .ef-bnr.e-con::before { position: static; top: auto; left: auto; } }

/* Forfattersider: "Seneste artikler" rykkes 50 px ned, så baggrundsordet ikke rammer de sociale links i forfatterhovedet */
body.author .elementor-element-efa00001 .ef-section-title { margin-top: 50px; }
