/*
Theme Name: Maskinvurdering
Theme URI: https://maskinvurdering.dk
Author: Jonathan Bekke-Hansen
Description: Tema til Maskinvurdering ApS, bygget over den godkendte forside-prototype.
Version: 1.0.0
Requires at least: 6.4
Requires PHP: 8.0
License: GNU General Public License v2 or later
Text Domain: maskinvurdering
*/

@font-face{font-family:'Inter';font-style:normal;font-weight:400 800;font-display:swap;
  src:url('assets/fonts/inter-variable.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;
  src:url('assets/fonts/ibm-plex-mono-400.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;
  src:url('assets/fonts/ibm-plex-mono-500.woff2') format('woff2')}

:root{
  --ink:#1A1817;
  --signal:#B32B2B;
  --signal-lt:#C9534A;
  --paper:#FFFFFF;
  --surface:#F3F0EB;
  --surface-2:#F9F8F6;
  --rule:#E3DDD7;
  --muted:#65605B;
  --brass:#B32B2B;
  --brass-dark:#902020;
  --brass-lt:#E8A79E;
  --mono:'IBM Plex Mono',ui-monospace,monospace;
  --maxw:1120px;
  /* Læsebredden for indholdssider, ca. 70 tegn. Som px og ikke ch, så
     brødkrummen kan flugte med H1: ch regnes ud fra elementets egen skriftstørrelse,
     og brødkrummen er mindre end brødteksten. */
  --tekst:706px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:'Inter',system-ui,sans-serif;color:#1E1B17;background:var(--paper);
     font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3,.serif{font-family:'Inter',system-ui,sans-serif;color:var(--ink);margin:0;font-weight:700;letter-spacing:-.02em}
/* Lange sammensatte ord ("Markedsføringsopgaver") må aldrig gøre en overskrift bredere end skærmen. Ord på 12 tegn eller mere deles med
   orddeling (sprogmærket i <html lang>), og kan ordet stadig ikke være der, brydes det. Brødkrummen følger samme regel. */
h1,h2,h3{overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;hyphenate-limit-chars:12 4 4}
.crumbs{overflow-wrap:break-word}
h1{font-size:clamp(2.1rem,4.4vw,3.5rem);line-height:1.05}
h2{font-size:clamp(1.5rem,2.6vw,2.05rem);line-height:1.15}
h3{font-size:1.12rem;font-weight:600;letter-spacing:-.01em}
p{margin:0 0 1rem}
a{color:var(--signal);text-decoration:none}
a:hover{text-decoration:underline}
.entry-body a,.std-grid p a,.std-grid li a,.page-cta a{text-decoration:underline;text-underline-offset:3px}
:focus-visible{outline:3px solid var(--signal);outline-offset:3px}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
/* Kun temaets egne sektioner (direkte børn af main). Elementors sektioner ligger dybere og styrer selv deres padding.
   :where() giver samme specificitet som den gamle section-regel, så klasser som .hero stadig vinder */
:where(#top)>section{padding:clamp(56px,7vw,92px) 0}
.lede{font-size:1.12rem;color:#4A443C;max-width:62ch}
.section-surface{background:var(--surface-2);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}

/* ---------- header ---------- */
.site-header{position:absolute;top:0;left:0;right:0;z-index:40}
.site-header .wrap{max-width:1320px}
.site-header .bar{max-width:1640px;padding:0 32px}
.bar{display:flex;align-items:center;gap:28px;height:94px}
.home .site-header .brand .nm{color:#fff}
.home .site-header .brand .sub{color:#A69C8C}
.home .site-header nav a{color:#EDE8DD}
.home .site-header .sub-toggle{color:#EDE8DD}
.home .site-header .hdr-call{color:#EDE8DD;border-color:rgba(255,255,255,.4)}
.home .site-header .hdr-call:hover{background:rgba(255,255,255,.08)}
/* .btn er urørt her: kun mv-mobile-cta (i den åbne mobilmenu) bruger den nu,
   og skal have temaets almindelige udfyldte knap, ikke headerens tidligere stil. */
/* Mærket er nu to rækker: ikon+navn (centreret på ikonets højde) og taglinen
   derunder, indrykket så den flugter med navnet, ikke med ikonet. Så er navnet
   altid centreret på logoet, uanset om taglinen vises eller ej. */
.brand{display:flex;flex-direction:column;gap:3px;flex-shrink:0}
.brand-top{display:flex;align-items:center;gap:13px;flex-shrink:0}
.brand .nm{font-family:'Inter',sans-serif;font-size:1.1rem;color:var(--ink);font-weight:700;line-height:1.1}
.brand .sub{display:block;margin-left:55px;max-width:34ch;font-size:.72rem;letter-spacing:.045em;
            color:var(--muted);text-transform:none;line-height:1.3}
nav{display:flex;gap:26px;align-items:center;margin-left:auto;margin-right:16px}
nav ul{display:flex;gap:inherit;list-style:none;margin:0;padding:0}
nav a,.sub-toggle{color:#3D3935;font-size:.78rem;font-weight:500;white-space:nowrap;letter-spacing:.05em;text-transform:uppercase}
#site-nav .menu{align-items:center}
#site-nav .menu > li{display:flex;align-items:center}
#site-nav .menu > li > a,
#site-nav .sub-toggle{display:inline-flex;align-items:center;gap:6px;line-height:1;padding:0}
#site-nav .sub-toggle svg{display:block}
.hdr-right{display:flex;align-items:center}
/* Telefonblokken er selve handlingen: kant i stedet for udfyldning, så den ikke
   konkurrerer med hero-knappen. min-height sikrer et tap-target på mindst 44 px. */
.hdr-call{display:flex;flex-direction:column;justify-content:center;line-height:1.15;
          text-decoration:none;color:#3D3935;border:1px solid var(--rule);border-radius:2px;
          padding:9px 20px;margin-left:8px;min-height:44px}
.hdr-call:hover{background:var(--surface-2)}
.hdr-call .lbl{font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;opacity:.65}
.hdr-call .no{font-family:var(--mono);font-size:1.05rem;font-weight:500;white-space:nowrap}
.hdr-call .icon{display:none}
#site-nav .mv-mobile-cta{display:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* margin-top:0: den globale button-regel (formularknappen) giver ellers menuikonet 22 px luft over sig,
   så det sad lavere end telefonknappen på mobil. */
.nav-toggle{display:none;background:none;border:0;padding:8px;margin:0 0 0 auto;color:var(--ink);cursor:pointer}
.home .site-header .nav-toggle{color:#fff}
.nav-toggle svg{display:block}
.has-sub{position:relative}
.sub-toggle{background:none;border:0;padding:0;margin:0;font-family:inherit;line-height:inherit;cursor:pointer;display:flex;align-items:center;gap:5px}
.sub-toggle::after{content:"";width:6px;height:6px;margin-top:-3px;border-right:1.5px solid currentColor;
                   border-bottom:1.5px solid currentColor;transform:rotate(45deg)}
.sub-menu{display:none;position:absolute;top:100%;left:0;min-width:230px;background:var(--paper);
          border:1px solid var(--rule);border-radius:2px;box-shadow:0 12px 24px rgba(0,0,0,.14);
          padding:6px;margin:10px 0 0;z-index:50}
.sub-menu li{list-style:none}
.site-header .menu .sub-menu a{display:block;padding:10px 12px;color:var(--ink);font-size:.86rem;
          font-weight:500;text-transform:none;letter-spacing:0;white-space:nowrap}
.sub-menu a:hover{background:var(--surface-2);text-decoration:none}
.has-sub:hover .sub-menu,
.has-sub.is-open .sub-menu,
.sub-menu:focus-within{display:block}
@media(max-width:1280px){
  .bar{gap:16px}
  nav{gap:20px}
  nav a,.sub-toggle{font-size:.72rem}
  .site-header .btn{padding:13px 18px}
  .home .site-header .btn{padding:13px 18px}
}
.btn{display:inline-block;background:var(--ink);color:#fff;padding:13px 24px;border-radius:2px;
     font-size:.9rem;font-weight:600;border:1px solid var(--ink)}
.btn:hover{background:#14110E;text-decoration:none}
.btn.ghost{background:transparent;color:var(--ink)}
.btn.ghost:hover{background:var(--surface-2)}
.btn.lt{background:#fff;color:var(--ink);border-color:#fff}

/* ---------- hero ---------- */
.hero{padding:clamp(104px,10svh,120px) 28px clamp(56px,9svh,104px);background:radial-gradient(ellipse 70% 60% at 50% 20%,rgba(179,43,43,.2),transparent 65%),#1A1817;
      min-height:clamp(480px,60svh,620px);display:flex;align-items:center;justify-content:center;
      position:relative;overflow:hidden;text-align:center}
.hero-in{width:100%;max-width:720px;display:flex;flex-direction:column;align-items:center;
         position:relative;z-index:2}
/* Understekst under H1, heroens eneste brødtekst nu hvor "lede" er fjernet.
   Dæmpet farve som før, men lidt større, da den bærer mere af budskabet alene. */
/* 40ch giver den fulde sætning to nogenlunde lige linjer (43/51 tegn) ved 1366 og 1024 px,
   det naturlige ordskel tættest på midten. Ved 390 px er den tilgængelige bredde for lille til
   to linjer uden at gøre skriften ulæseligt lille, den bryder der i tre linjer (31/29/33 tegn). */
.hero-sub{color:#A69C8C;font-size:1.15rem;font-weight:500;max-width:40ch;margin:22px auto 0}
.hero h1{color:#fff;font-size:clamp(2.15rem,5.6vw,4.2rem);line-height:1.03;letter-spacing:-.03em;
         font-weight:700}
.hero-cta{display:flex;gap:14px;margin-top:36px;flex-wrap:wrap;align-items:center;justify-content:center}
.hero .btn{border-radius:2px;padding:15px 30px;font-size:.92rem;min-width:200px;text-align:center}
.hero .btn:not(.ghost){background:var(--signal);color:#fff;border-color:var(--signal)}
.hero .btn:not(.ghost):hover{background:var(--brass-dark);border-color:var(--brass-dark)}
.hero .btn.ghost{color:#fff;border-color:rgba(255,255,255,.5)}
.hero .btn.ghost:hover{background:rgba(255,255,255,.1)}

.cases{background:var(--surface-2);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.case-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:36px}
.case{border-radius:3px;overflow:hidden;background:#fff;border:1px solid var(--rule);
      position:relative}
.case::before{content:attr(data-badge);position:absolute;top:10px;left:10px;
              z-index:2;font-family:var(--mono);font-size:.62rem;font-weight:500;letter-spacing:.03em;
              color:#2A1D08;background:var(--brass-lt);padding:3px 8px;border-radius:2px}
.case img{width:100%;height:190px;object-fit:cover;display:block}
.case .cx{padding:14px 16px}
.case .ct{font-family:'Inter',sans-serif;font-size:.98rem;color:var(--ink);font-weight:700}
.case .cd{font-size:.79rem;color:#5C5650;margin-top:3px;line-height:1.45}

/* De tre værdier. Stregerne viser kun forholdet mellem værdierne og falder i længde
   fra venstre mod højre. De har hverken tal eller forklaring og er derfor aria-hidden. */
.vaerdi-h{max-width:30ch}
.vaerdi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:46px}
.vaerdi-streg{height:4px;background:var(--ink);margin-bottom:20px}
.vaerdi:nth-child(1) .vaerdi-streg{width:100%}
.vaerdi:nth-child(2) .vaerdi-streg{width:60%}
.vaerdi:nth-child(3) .vaerdi-streg{width:30%}
.vaerdi h3{font-size:1.15rem;margin-bottom:5px}
.vaerdi-fag{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);
            margin-bottom:12px}
.vaerdi p{font-size:.94rem;color:#4A443C;margin:0}
.vaerdi-note{margin-top:44px;color:var(--muted)}
@media(max-width:900px){.vaerdi-grid{grid-template-columns:1fr;gap:34px}}

table.doc-t{width:100%;border-collapse:collapse;font-size:.82rem}
table.doc-t th{text-align:left;padding:10px 24px;color:var(--muted);font-weight:500;font-size:.72rem;
                border-bottom:1px solid var(--rule);background:var(--surface-2)}
table.doc-t td{padding:11px 24px;border-bottom:1px solid #EFE9DE;vertical-align:top}
table.doc-t td.n{text-align:right;font-family:var(--mono);font-size:.88rem;color:var(--ink);
                 font-weight:500;white-space:nowrap}
table.doc-t .as{color:#1E1B17}
table.doc-t .sub{display:block;color:var(--muted);font-size:.72rem}

/* ---------- proof strip ---------- */
.proof{margin-top:0;border-bottom:1px solid var(--rule);background:var(--surface-2)}
.proof .wrap{max-width:1640px;padding:0 32px}
.proof-in{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.proof-in > div{padding:26px 22px;border-right:1px solid var(--rule)}
.proof .k{font-family:'Inter',sans-serif;font-size:1.32rem;color:var(--ink);font-weight:700;line-height:1.15}
.proof .d{font-size:.82rem;color:var(--muted);margin-top:5px;line-height:1.45}

/* Kontaktbånd: hvem ringer jeg til, og hvor. Eget mørkt bånd, tydeligt adskilt fra den lyse
   proof-bar over og den hvide sektion under, ikke en del af proof-baren selv. */
.contact-strip{background:var(--ink)}
.contact-strip-in{display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;
                  gap:10px 48px;padding:18px 0}
.cs-item{display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:4px 9px;color:#fff}
/* Telefon og mail er hver sit link. Paddingen giver et større tryk-felt uden at flytte teksten. */
.cs-item a{color:#fff;text-decoration:none;padding:10px 4px;margin:-10px -4px}
.cs-item a:hover{text-decoration:underline}
.cs-name{font-weight:600;font-size:.92rem}
.cs-area{color:#A69C8C;font-size:.8rem}
.cs-phone{font-family:var(--mono);font-weight:500;font-size:.92rem}
.cs-mail{font-size:.86rem}

/* ---------- two doors ---------- */
.doors{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:44px}
.door{border:1px solid var(--rule);border-radius:2px;padding:34px 32px 30px;background:var(--paper);
      display:flex;flex-direction:column}
.door.dark{background:var(--ink);border-color:var(--ink)}
.door.dark h3,.door.dark p{color:#fff}
.door.dark p{color:#C9C0B0}
.door h3{font-size:1.32rem;margin-bottom:10px}
.door p{font-size:.94rem;color:#4A443C}
.door ul{margin:4px 0 22px;padding-left:18px;font-size:.88rem;color:#4A443C}
.door.dark ul{color:#C9C0B0}
.door li{margin-bottom:5px}
/* Links til ydelsessiderne, ét pr. linje med pil og tynd skillelinje imellem.
   Pilen er tegnet med kanter, samme greb som .sub-toggle i menuen. */
.door-links{list-style:none;margin:10px 0 26px;padding:0;
            border-top:1px solid rgba(255,255,255,.16)}
.door-links li{margin:0;border-bottom:1px solid rgba(255,255,255,.16)}
.door-links a{display:flex;align-items:center;justify-content:space-between;gap:14px;
              padding:13px 0;color:#fff;font-size:.95rem;font-weight:500;text-decoration:none}
.door-links a::after{content:"";flex-shrink:0;width:7px;height:7px;margin-right:2px;
                     border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;
                     transform:rotate(45deg)}
.door-links a:hover{text-decoration:underline}
/* Kort linje under linkene om de opgavetyper, der ikke har deres egen side. */
.door.dark .door-ogsaa{font-size:.86rem;color:#A69C8C;margin:0 0 22px}
/* Kortet er en kolonne-flexbox, så knappen ville ellers blive strakt ud i fuld bredde
   med teksten klemt op i venstre hjørne. Den skal kun fylde sin egen tekst. */
.door .btn{align-self:flex-start;text-align:center}

/* Fotomosaik i stedet for det andet indgangskort. Mosaikken er selv et grid-element
   i .doors og strækkes derfor automatisk til nøjagtig samme højde som det mørke kort.
   Lysstyrken er udlignet i selve filerne, så her styres kun mætningen. */
.mosaik{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:3px}
.mosaik img{width:100%;height:100%;object-fit:cover;display:block;
            filter:saturate(.7);transition:filter .25s}
@media(hover:hover){.mosaik img:hover{filter:saturate(1)}}
/* Linket står uden for højdeflugten, under hele rækken og højrestillet under mosaikken. */
.mosaik-link{display:block;text-align:right;margin-top:14px;font-size:.9rem;font-weight:500}
/* På mobil ligger kortet og mosaikken over hinanden. Der er ingen kort-højde at flugte
   med, så felterne styres af deres eget kvadratiske format. */
@media(max-width:900px){
  .mosaik{grid-template-rows:auto}
  .mosaik img{height:auto;aspect-ratio:1/1}
}

/* ---------- process ---------- */
.steps{margin-top:44px;border-top:1px solid var(--rule)}
.step{display:grid;grid-template-columns:64px 1fr 1fr;gap:32px;padding:28px 0;border-bottom:1px solid var(--rule);align-items:start}
.step .no{font-family:'Inter',sans-serif;font-size:1.4rem;color:var(--signal);font-weight:800}
.step h3{margin-bottom:0}
.step p{margin:0;font-size:.94rem;color:#4A443C}

/* ---------- kunder og opgaver ---------- */
/* Mosaik-linket stikker ud under det mørke kort, så sektionens indhold slutter
   36 px under kortets underkant. Uden denne trimning ser springet ned til næste
   sektion større ud end de øvrige: målt 220 px fra kortets kant mod 184 px andre
   steder. Her fjernes de 36 px, så alle spring ser ens ud. */
#vurderinger{padding-bottom:clamp(30px,4vw,56px)}
.kunde-intro{font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);
             margin:22px 0 10px}
.kunde-navne{font-size:1.5rem;font-weight:600;color:var(--ink);letter-spacing:-.01em;
             line-height:1.35;margin:0 0 12px}
/* Ingen maks. bredde: afsnittet får samme bredde som branchelinjen under og brydes ikke midt i "Bech-Bruun". */
.kunde-rest{font-size:1rem;color:#4A443C;margin:0}
.nobr{white-space:nowrap}
@media(max-width:600px){.kunde-navne{font-size:1.25rem}}

/* ---------- standards ---------- */
.std-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px}
.quote{border-left:4px solid var(--signal);padding:4px 0 4px 26px;margin:26px 0}
.quote p{font-family:'Inter',sans-serif;font-size:1.2rem;font-weight:400;color:var(--ink);line-height:1.4;margin:0}
.chk{list-style:none;margin:22px 0 0;padding:28px;background:var(--surface-2);border:1px solid var(--rule);border-radius:3px;height:100%}
.chk li{padding:15px 0 15px 32px;border-bottom:1px solid var(--rule);position:relative;font-size:.94rem}
.chk li:last-child{border-bottom:none}
.chk li::before{content:"";position:absolute;left:2px;top:1.26em;width:8px;height:8px;
                background:var(--signal);border-radius:1px}
/* Kompakt linkliste til de dybe fagsider, så de ikke kun kan nås via /viden/ (SEO-linkværdi).
   CSS-spalter balancerer listen uden en grid-opbygning pr. link. */
.std-links{border-top:1px solid var(--rule);margin-top:48px;padding-top:32px}
.std-links-lbl{display:block;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;
               color:var(--muted);font-weight:600;margin-bottom:14px}
.std-links ul{list-style:none;margin:0;padding:0;columns:3;column-gap:32px}
.std-links li{margin-bottom:11px;break-inside:avoid}
.std-links a{font-size:.88rem}
@media(max-width:900px){.std-links ul{columns:2}}
@media(max-width:600px){.std-links ul{columns:1}}

/* ---------- kontakt: personer og formular i én sektion ---------- */
.kontakt-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start;margin-top:40px}
.kontakt-folk h3{font-size:1.15rem;margin-bottom:4px}
.kontakt-folk-lede{font-size:.94rem;color:var(--muted);margin-bottom:22px}
/* Lys variant af personkortene. De stod før på mørk baggrund i en egen sektion.
   Hvide, fordi kontaktsektionen selv er beige: med surface-2 ville kortene
   forsvinde i baggrunden. */
.card{background:var(--paper);border:1px solid var(--rule);border-radius:2px;padding:24px 26px}
.card + .card{margin-top:16px}
.card .nm{font-family:'Inter',sans-serif;font-size:1.2rem;color:var(--ink);font-weight:700}
.card .rl{font-size:.85rem;color:var(--muted);margin-top:3px;margin-bottom:16px}
.card .tl{font-family:var(--mono);font-size:1.22rem;color:var(--ink);font-weight:500;display:block}
.card .ml{font-size:.86rem;color:var(--signal);display:block;margin-top:4px}
@media(max-width:900px){
  /* Personerne først, formularen under. */
  .kontakt-grid{grid-template-columns:1fr;gap:40px}
}
/* Formularreglerne gælder temaets egne formularer og TablePress' kontroller (.dt-container), ikke Elementors formularer.
   Elementor styrer selv sine felter. :where() giver samme specificitet som de gamle regler, så øvrige klasser stadig vinder */
:where(#top form:not(.elementor-form)){margin-top:8px}
:where(#top form:not(.elementor-form),.dt-container) label{display:block;font-size:.84rem;color:var(--ink);font-weight:500;margin:16px 0 6px}
:where(#top form:not(.elementor-form),.dt-container) input,:where(#top form:not(.elementor-form),.dt-container) select,:where(#top form:not(.elementor-form),.dt-container) textarea{width:100%;padding:12px 14px;border:1px solid var(--rule);border-radius:3px;
       font-family:inherit;font-size:.94rem;background:#fff;color:#1E1B17}
:where(#top form:not(.elementor-form),.dt-container) textarea{min-height:104px;resize:vertical}
/* Ordlisten (TablePress med vandret scroll) er bredere end teksten. DataTables lægger den i
   .dt-scroll-body med overflow:auto, men uden højdegrænse sad den vandrette scrollbar i bunden af
   en ca. 9.700 px høj tabel og blev aldrig set, så tabellen så afskåret ud. Med en højdegrænse
   står scrollbaren altid i rammen, og kolonneoverskrifterne bliver stående over den. */
.dt-container .dt-scroll{border:1px solid var(--rule)}
.dt-container .dt-scroll-body{max-height:70vh}
/* Ordlisten (alle bredder): ét kort pr. begreb i stedet for en 993 px bred tabel med to rulleflader (lodret og vandret). Kortene ligger i et gitter: 1 kolonne på mobil, 2 til 3 på pc.
   DataTables sætter bredder og overflow som inline-stil, derfor !important. Kolonneoverskrifterne skjules, og hver celle får sin egen
   mærkat. Søgning og antal linjer står stablet i fuld bredde med luft i siderne. */
  .dt-container{box-sizing:border-box;padding:0 28px;width:min(1040px,calc(100vw - 32px));position:relative;left:50%;transform:translateX(-50%)}
  .dt-container .dt-layout-row{display:block}
  .dt-container .dt-layout-cell{display:block!important;width:100%!important;padding:0!important;margin:0!important}
  .dt-container .dt-length,.dt-container .dt-search{display:block!important;float:none!important;text-align:left!important;margin:0 0 14px!important;padding:0!important}
  .dt-container .dt-length select{display:inline-block!important;width:auto!important;min-width:84px;margin:0 8px!important}
  .dt-container .dt-search label{display:block!important;margin:0 0 6px!important}
  .dt-container .dt-search input{display:block!important;width:100%!important;margin:0!important}
  .dt-container .dt-scroll{border:0}
  .dt-container .dt-scroll-head{display:none!important}
  .dt-container .dt-scroll-body{max-height:none!important;overflow:visible!important;width:auto!important;border:0!important}
  .dt-container table.tablepress{display:block;width:100%!important;margin:0!important;border:0}
  .dt-container table.tablepress thead,.dt-container table.tablepress tfoot{display:none}
  .dt-container table.tablepress tbody{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:14px;align-items:start}
  .dt-container table.tablepress tr,.dt-container table.tablepress td{display:block;width:auto!important}
  .dt-container table.tablepress tr{border:1px solid var(--rule);border-radius:3px;background:#fff;padding:14px 16px 4px;margin:0;min-width:0;overflow-wrap:anywhere}
  .dt-container table.tablepress td{border:0;padding:0 0 12px;background:transparent}
  .dt-container table.tablepress tbody tr > *{background:transparent!important} /* TablePress' striber (--even-bg-color) hang ved i kortene på iPhone, kortene er hvide */
  .dt-container table.tablepress td:empty{display:none}
  .dt-container table.tablepress td.column-1{font-weight:700;font-size:1.08rem;line-height:1.3}
  .dt-container table.tablepress td.column-2::before,.dt-container table.tablepress td.column-3::before,.dt-container table.tablepress td.column-4::before{
    display:block;font-size:.72rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin-bottom:2px}
  .dt-container table.tablepress td.column-2::before{content:"Danish definition"}
  .dt-container table.tablepress td.column-3::before{content:"English term"}
  .dt-container table.tablepress td.column-4::before{content:"English definition"}
  .dt-container table.tablepress td.column-3{font-weight:600}
  .dt-container table.tablepress td.column-3::before,.dt-container table.tablepress td.column-4::before{font-weight:600}
  /* Over 700 px står antal linjer og søgning på samme række, og valgboksen har kun den bredde, den skal bruge */
@media(min-width:701px){
  .dt-container .dt-layout-row:first-child{display:flex;justify-content:space-between;align-items:flex-end;gap:24px}
  .dt-container .dt-layout-row:first-child .dt-layout-cell{width:auto!important}
  .dt-container .dt-search input{width:260px!important}
}
/* Ordlistens sideskift (DataTables) er en <nav>, og temaets globale nav-regel til mobilmenuen (display:none, position:absolute) skjulte den.
   Reglen nulstilles for sideskiftet på alle bredder. */
  .dt-container .dt-paging nav{display:flex!important;position:static!important;flex-direction:row;flex-wrap:wrap;gap:6px;justify-content:center;align-items:center;margin:8px 0 0;padding:0;background:none;border:0;box-shadow:none}
  .dt-container .dt-paging-button{margin:0;min-width:44px;min-height:44px;padding:0 12px;background:#fff;color:var(--ink);border:1px solid var(--rule);border-radius:2px;font-size:.95rem;font-weight:500}
  .dt-container .dt-paging-button.current{background:var(--ink);color:#fff;border-color:var(--ink)}
  .dt-container .dt-paging-button.disabled{opacity:.4}
button{margin-top:22px;background:var(--ink);color:#fff;border:none;padding:14px 30px;border-radius:3px;
       font-family:inherit;font-size:.95rem;font-weight:500;cursor:pointer}
button:hover{background:#14110E}
/* Formularen åbner brugerens eget mailprogram, så vi kan ikke vide, om det lykkedes.
   Derfor vises hjælpeboksen altid efter klik, ikke kun ved fejl. */
.form-note{margin:10px 0 0;font-size:.82rem;color:var(--muted)}
.form-fallback{margin-top:16px;padding:16px 18px;border:1px solid var(--rule);border-radius:3px;
       background:var(--surface-2);font-size:.88rem;line-height:1.55}
.form-fallback p{margin:0 0 12px}
.form-fallback a{text-decoration:underline;text-underline-offset:3px}
.form-kopier{margin:0;padding:9px 16px;font-size:.86rem}
.form-kopier-status{margin:10px 0 0;font-size:.84rem;color:var(--muted)}
.form-privatliv{margin:14px 0 0;font-size:.82rem}
.form-privatliv a{color:var(--muted);text-decoration:underline;text-underline-offset:3px}
/* Gamle Elementor-sider starter med en banner, der kun har en hvid overskrift oven på et foto.
   Overskriften gentager sidens H1, og uden fotoet står der et tomt hul. Bannere med andet indhold røres ikke. */
#top .elementor-top-section:first-child:has(> .elementor-background-overlay):not(:has(.elementor-widget:not(.elementor-widget-heading))){display:none}

/* ---------- gamle Elementor-sider: fælles oprydning ---------- */
/* Alt herunder ligger inde i .entry-body, altså kun i det gamle indhold, og ændrer kun
   visningen. Elementors gemte data røres ikke. Målt 24. september på alle 75 berørte
   sider ved 1366 og 390 px: intet synligt indhold forsvinder. Se status.md.

   1. Den døde Bitrix24-formular. Kontoen bag den er slettet, så form_loader.js svarer 403
   og widgetten bliver 20 px høj. På 75 af 147 sider stod halvdelen af siden derfor tom.
   Første regel fjerner selve den tomme widget. De to næste fjerner hele kolonnen og giver
   teksten pladsen, men KUN hvis der ikke er andet i kolonnen. Uden de vagter skjulte reglen
   en fungerende Elementor-formular med 18 felter på de engelske sider, hvor den døde kode
   ligger side om side med en rigtig formular.
   Bemærk: :has() må ikke stå inde i et andet :has(). Derfor tjekker den tredje regel
   containeren direkte i stedet for at pege på kolonnen. */
#top .entry-body .elementor-widget-text-editor:has(#bx24_form_inline){display:none}
#top .entry-body .elementor-column:has(#bx24_form_inline):not(:has(form)):not(:has(img)):not(:has(a)):not(:has(.elementor-button)){display:none}
#top .entry-body .elementor-container:has(#bx24_form_inline):not(:has(form)) > .elementor-column{width:100%}

/* 2. Elementors globale farver og skrifter er aldrig ændret fra standarden: teksten står
   i #7A7A7A og Roboto, mens overskrifterne i samme kasse arver temaets Inter og --ink.
   Vi sætter variablerne om ét sted i stedet for at jage hver enkelt widget. */
#top .entry-body{
  --e-global-color-text:#1E1B17;
  --e-global-color-secondary:#1A1817;
  --e-global-typography-text-font-family:'Inter';
  --e-global-typography-primary-font-family:'Inter';
}

/* 3. Læsebredde. Kun tekstwidgets, så kort, billeder og gitre beholder deres egen bredde.
   margin:auto får teksten til at flugte med H1, der står i den samme 706 px kolonne. */
#top .entry-body .elementor-widget-text-editor{max-width:var(--tekst);margin-left:auto;margin-right:auto}

/* 3b. Stumper med fast skriftstørrelse på 15 px midt i brødteksten (indsat i Elementors editor på seks gamle sider,
   bl.a. /om-virksomheden/) står mindre end resten. Reglen rammer kun præcis 15 px og lader dem arve brødtekstens
   størrelse. Andre størrelser og selve indholdet er urørt. */
#top .entry-body span[style*="font-size: 15px"]{font-size:inherit!important}

/* 4. Knapper. Elementors standard er en laksefarvet pille. */
#top .entry-body .elementor-button{background-color:var(--ink);color:#fff;border-radius:3px;
       font-family:inherit;font-weight:500;letter-spacing:0}
#top .entry-body .elementor-button:hover{background-color:#14110E}

/* ---------- kontaktsiden ---------- */
/* Formularen under det gamle Elementor-indhold. Samme læsebredde som brødteksten. */
.kontakt-side{max-width:var(--tekst);margin:56px auto 0;padding-top:40px;border-top:1px solid var(--rule)}
.kontakt-side > p{color:#4A443C;margin-bottom:8px}

/* ---------- footer ---------- */
footer{background:#14110E;color:#A69C8C;padding:56px 0 34px;font-size:.88rem}
footer a{color:#D9D3C7}
/* Linket "Cookie-indstillinger" bærer pluginets klasse cli_settings_button, og pluginet giver den bannerets mørke linkfarve.
   Pluginets script skriver farven som inline-stil, så kun !important kan slå den. I den mørke footer skal linket se ud som de andre. */
footer a.cli_settings_button{color:#D9D3C7!important;cursor:pointer;text-decoration:none}
.f-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:44px}
footer h4{font-family:'Poppins',sans-serif;color:#fff;font-size:.86rem;font-weight:500;margin:0 0 12px}
footer ul{list-style:none;padding:0;margin:0}
footer li{margin-bottom:7px}
.f-btm{border-top:1px solid #2A241E;margin-top:40px;padding-top:20px;font-size:.8rem;color:#7A7166}

@media(max-width:900px){
  .std-grid,.doors{grid-template-columns:1fr;gap:40px}
  .case-grid{grid-template-columns:1fr 1fr}
  .proof-in{grid-template-columns:1fr 1fr}
  .proof-in > div:nth-child(2),.proof-in > div:nth-child(4){border-right:none}
  .proof-in > div:nth-child(1),.proof-in > div:nth-child(2){border-bottom:1px solid var(--rule)}
  .f-grid{grid-template-columns:1fr}
  .step{grid-template-columns:44px 1fr;gap:18px}
  .step p{grid-column:2}
  :where(#top form:not(.elementor-form),.dt-container) input,:where(#top form:not(.elementor-form),.dt-container) select,:where(#top form:not(.elementor-form),.dt-container) textarea{font-size:16px}
}

@media(max-width:600px){
  .proof-in{grid-template-columns:1fr}
  .proof-in > div{border-right:none;border-bottom:1px solid var(--rule)}
  .proof-in > div:last-child{border-bottom:none}
  /* Kortere hero, så proof-barens første felt kommer i sigte uden at scrolle.
     100 px toppadding holder teksten fri af den 94 px høje header. */
  .hero{min-height:clamp(380px,52svh,460px);padding:100px 20px clamp(40px,8svh,72px)}
  .contact-strip-in{flex-direction:column;align-items:center;gap:12px;padding:16px 0}
  /* 5. Gamle Elementor-sider: kolonnerne lægger 10 px oven i .wrap's 28 px, så teksten
     på de gamle sider stod længere inde end på temaets egne. Nu flugter de. */
  #top .entry-body .elementor-column-gap-default > .elementor-column > .elementor-widget-wrap{padding-left:0;padding-right:0}
}

@media(max-height:700px){
  .hero .lede{margin-top:14px}
  .hero-cta{margin-top:24px}
}

@media(max-width:1024px){
  .nav-toggle{display:block;padding:5px}
  .site-header .bar{padding:0 16px}
  .bar{gap:8px}
  .brand-top{gap:10px}
  .brand svg{width:34px;height:34px}
  .brand .nm{font-size:.94rem}
  .brand .sub{margin-left:44px;max-width:23ch}
  nav{
    display:none;
    position:absolute;
    top:94px;
    left:0;
    right:0;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    background:var(--paper);
    border-top:1px solid var(--rule);
    box-shadow:0 12px 24px rgba(0,0,0,.12);
    padding:8px 28px 24px;
    margin:0; /* nulstiller margin-right:16px fra desktop (linje 84), ellers når panelet ikke ud til højre kant */
  }
  nav.is-open{display:flex}
  nav ul{flex-direction:column;gap:0}
  #site-nav .menu{align-items:stretch}
  #site-nav .menu > li{display:block}
  #site-nav .menu > li > a{display:block;padding:17px 0}
  .home .site-header nav.is-open a,
  .home .site-header nav.is-open .sub-toggle{color:var(--ink)}
  .home .site-header nav.is-open a.mv-mobile-cta{color:#fff} /* knappen har mørk baggrund, linjen ovenfor gav den mørk tekst */
  #site-nav .sub-toggle{width:100%;justify-content:space-between;padding:17px 0}
  .sub-menu{display:block!important;position:static;box-shadow:none;border:0;background:none;
            padding:0 0 6px 16px;margin:0}
  .site-header .menu .sub-menu a{padding:11px 0}
  #site-nav .mv-mobile-cta{display:block;text-align:center;margin-top:14px}
  .hdr-right{margin-left:4px}
  .hdr-call{width:44px;height:44px;min-height:44px;padding:0;margin-left:0;
            border:1.5px solid currentColor;border-radius:50%;
            justify-content:center;align-items:center}
  .hdr-call .lbl,.hdr-call .no{display:none}
  .hdr-call .icon{display:block}
}

/* Under ca. 480 px er brand + hamburger + rund telefonknap tilsammen bredere end
   skærmen, fordi ingen af dem må krympe (logo, ikon og tap-target har faste mål).
   Gør selve mærket lidt mindre, så det hele er inden for skærmen ned til 320 px. */
@media(max-width:480px){
  .site-header .bar{padding:0 12px}
  .bar{gap:6px}
  .brand-top{gap:8px}
  .brand svg{width:28px;height:28px}
  .brand .nm{font-size:.82rem}
  .brand .sub{margin-left:36px;max-width:17ch;font-size:.66rem}
  .hdr-right{margin-left:0}
}


/* ---------- indholdssider og indlaeg ---------- */
.content-main{padding-top:94px}
/* Kun lodret padding. Sætter man padding med genvejen, nulstilles .wrap's 28 px i
   siderne, og på mobil rammer teksten skærmkanten. */
.entry{padding-top:64px;padding-bottom:88px}
/* Indholdskolonnen (overskrift, brødtekst, CTA-boks) er samlet 70ch bred og centreret
   i den brede .wrap, så teksten ikke ligger ud til venstre med tom plads i højre side.
   Elementor-sider (entry-body uden .narrow) styrer selv deres bredde og rammes ikke. */
.entry-head{max-width:var(--tekst);margin:0 auto 34px;border-bottom:1px solid var(--rule);padding-bottom:22px}
.entry-head h1{font-size:clamp(1.9rem,4vw,2.9rem);line-height:1.1}
.entry-meta{color:var(--muted);font-size:.9rem;margin-top:10px}
.entry-body{font-size:1.03rem}
/* Indlæggets fremhævede billede, samme bredde som overskriften over det. */
.entry-thumb{max-width:var(--tekst);margin:0 auto 34px}
.entry-thumb img{display:block;width:100%;height:auto;border-radius:3px}
.entry-body.narrow{max-width:var(--tekst);margin:0 auto}
.page-cta{margin:48px auto 0;padding:26px 28px;background:var(--surface-2);border:1px solid var(--rule);border-radius:3px;max-width:var(--tekst)}
.page-cta p{margin:0 0 10px}
/* Diskret link til retssagssiden: tynd linje over, mindre og dæmpet tekst. */
.page-cta-diskret{margin:16px 0 0;padding-top:12px;border-top:1px solid var(--rule);
                  font-size:.82rem}
.page-cta-diskret a{color:var(--muted)}
/* "Læs videre" mellem de to retssagssider. */
.retssag-videre{max-width:var(--tekst);margin:40px auto 0;padding-top:20px;
                border-top:1px solid var(--rule)}
.retssag-videre .lbl{display:block;font-size:.78rem;letter-spacing:.09em;text-transform:uppercase;
                     color:var(--muted);font-weight:600;margin-bottom:6px}
.page-cta ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.page-cta a{font-weight:500}
/* /viden/ er en oversigt, ikke en tekstside, så overskrift, indledning og de to
   bokse står i venstre kant i stedet for centreret. Så flugter de med kortene og
   artikellisten nedenfor, som bruger hele bredden. Læsebredden er uændret. */
.page-template-page-viden .entry-head,
.page-template-page-viden .entry-body.narrow,
.page-template-page-viden .viden-bokse,
.page-template-page-viden .page-cta,
.page-template-page-viden .ydelse-cta,
.page-template-page-viden .ydelse-andre{margin-left:0;margin-right:0}

/* Tre gruppekort side om side. align-items:start gør, at hvert kort beholder sin
   egen højde i stedet for at blive strakt til det højeste. */
.viden-kort{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:start;
            margin-top:44px}
.viden-kort-item{background:var(--surface-2);border:1px solid var(--rule);border-radius:3px;
                 padding:24px 26px}
.viden-kort-item h2{font-size:1.1rem;margin-bottom:12px;line-height:1.3}
.viden-kort-item ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.viden-kort-item li{font-size:.92rem;line-height:1.45}

.viden-artikler{margin-top:44px;padding-top:32px;border-top:1px solid var(--rule)}
.viden-artikler h2{font-size:1.2rem;margin-bottom:18px}
.viden-artikler ul{list-style:none;margin:0;padding:0;columns:2;column-gap:44px}
.viden-artikler li{margin-bottom:10px;break-inside:avoid;font-size:.94rem;line-height:1.45}

/* Listelinks er mørke med rødt ved hover, så gruppeoverskriften træder frem foran
   linkene. Brødtekstlinks og de to bokse er urørte og bliver røde og understregede. */
.viden-kort-item a,.viden-artikler a{color:var(--ink);text-decoration:none}
.viden-kort-item a:hover,.viden-artikler a:hover{color:var(--signal);text-decoration:underline}

@media(max-width:900px){.viden-kort{grid-template-columns:1fr}}
@media(max-width:600px){.viden-artikler ul{columns:1}}
/* De to bokse står side om side i fuld bredde, ikke stablet i en smal spalte. */
.viden-bokse{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start;margin-top:32px}
.viden-bokse .viden-glossary{margin:0;max-width:none}
@media(max-width:700px){.viden-bokse{grid-template-columns:1fr}}
.viden-glossary{margin:32px auto 0;padding:26px 28px;background:var(--surface-2);border:1px solid var(--rule);border-radius:3px;max-width:70ch}
.viden-glossary h2{font-size:1.2rem;margin-bottom:8px}
.viden-glossary p{margin:0 0 10px}
.entry-lead-img{width:100%;max-width:760px;height:auto;border-radius:3px;margin:0 auto 32px;display:block}

/* ---------- ydelsessider ---------- */
/* Tillidslinje under H1: de fire proof-felter fra forsiden i kompakt form.
   Prikkerne er dekoration og laves med ::before, så de ikke læses op. */
.ydelse-trust{list-style:none;display:flex;flex-wrap:wrap;gap:6px 0;margin:16px 0 0;padding:0;
              font-size:.84rem;color:var(--muted)}
.ydelse-trust li{display:flex;align-items:center}
.ydelse-trust li + li::before{content:"·";margin:0 10px;color:var(--rule)}
/* Under 600 px brydes linjen, og en ny linje ville begynde med en prik.
   Derfor 2x2 uden prikker i stedet. */
@media(max-width:600px){
  .ydelse-trust{display:grid;grid-template-columns:1fr 1fr;gap:6px 18px}
  .ydelse-trust li + li::before{content:none}
}

/* Mørk afslutning med begge kontaktpersoner. */
.ydelse-cta{margin:56px auto 0;max-width:var(--tekst);background:var(--ink);color:#fff;
            border-radius:3px;padding:30px 32px}
.ydelse-cta h2{color:#fff;font-size:1.25rem;margin-bottom:22px}
.ydelse-cta-folk{display:flex;flex-wrap:wrap;gap:14px 40px;margin-bottom:26px}
.yc-item{display:flex;flex-direction:column;color:#fff;text-decoration:none;
         padding:8px 6px;margin:-8px -6px}
.yc-item:hover{text-decoration:underline}
.yc-navn{font-weight:600;font-size:.95rem}
.yc-omraade{font-size:.8rem;color:#A69C8C;margin-top:1px}
.yc-tlf{font-family:var(--mono);font-size:1.15rem;font-weight:500;margin-top:6px;white-space:nowrap}

/* Links til de øvrige ydelsessider, under den mørke boks. */
.ydelse-andre{margin:26px auto 0;max-width:var(--tekst)}
.ydelse-andre-lbl{display:block;font-size:.78rem;letter-spacing:.09em;text-transform:uppercase;
                  color:var(--muted);font-weight:600;margin-bottom:10px}
.ydelse-andre ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.ydelse-andre a{font-size:.94rem}

@media(max-width:600px){
  .ydelse-cta{padding:26px 22px}
  .ydelse-cta-folk{gap:18px;flex-direction:column}
}

/* ---------- galleri: udstyr vi har vurderet ---------- */
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:36px}
.g-item{border:1px solid var(--rule);border-radius:3px;overflow:hidden;background:#fff}
/* height:auto er nødvendig. Uden den vinder billedets height-attribut (600) som
   praesentationstip over aspect-ratio, og felterne bliver stående i stedet for 4:3. */
.g-item img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;display:block}
.g-item .g-cap{padding:10px 12px;font-size:.82rem;color:var(--muted)}
@media(max-width:900px){.gallery-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.gallery-grid{grid-template-columns:1fr}}
.entry-body h2{font-size:1.5rem;margin:2em 0 .6em}
.entry-body h3{font-size:1.2rem;margin:1.6em 0 .5em}
.entry-body ul,.entry-body ol{padding-left:22px}
.entry-body li{margin-bottom:8px}
.entry-body img{max-width:100%;height:auto}
.entry-body blockquote{border-left:3px solid var(--signal);margin:1.6em 0;padding:4px 0 4px 20px;color:var(--muted)}
.entry-body table{border-collapse:collapse;width:100%}
.entry-body td,.entry-body th{border:1px solid var(--rule);padding:8px 10px;text-align:left}
/* Brødkrummen er sin egen .wrap. På de skabeloner, hvor indholdskolonnen er
   centreret, får den samme bredde som kolonnen plus wrap-paddingen, så teksten
   starter præcis samme sted som H1. /viden/ er venstrestillet og undtaget. */
body:not(.page-template-page-viden) .content-main .crumbs{max-width:calc(var(--tekst) + 56px)}
.crumbs{font-size:.85rem;color:var(--muted);padding-top:26px}
.crumbs a{color:var(--muted)}
.arch-list{display:grid;gap:26px;max-width:800px}
.arch-item{border-top:1px solid var(--rule);padding-top:18px}
.arch-item h2{font-size:1.25rem}
.arch-item p{color:var(--muted);margin:8px 0 0}
.pagi{margin-top:40px}
/* paginate_links() skriver en liste, og listen har selv klassen page-numbers. Uden disse regler fik listen kant, punkttegn og
   cifrene lå oven i hinanden. Felterne er mindst 44 px, så de kan trykkes med en tommelfinger. */
.pagi ul.page-numbers{list-style:none;margin:0;padding:0;border:0;display:flex;flex-wrap:wrap;gap:8px}
.pagi li{margin:0;padding:0}
.pagi li .page-numbers{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:44px;min-height:44px;
                       padding:0 14px;border:1px solid var(--rule);border-radius:2px;color:var(--ink);text-decoration:none;background:#fff}
.pagi li a.page-numbers:hover{border-color:var(--ink)}
.pagi li .page-numbers.current{background:var(--ink);color:#fff;border-color:var(--ink)}
.pagi li .page-numbers.dots{border-color:transparent;background:transparent}
.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:16px;top:16px;background:#fff;padding:10px 16px;z-index:999}
.admin-bar .site-header{top:32px}
@media screen and (max-width:782px){.admin-bar .site-header{top:46px}}

/* ---------- cookiebanner (CookieYes / Cookie Law Info) ----------
   Acceptér og Afvis er ligeværdige: samme størrelse, farver og udseende. Pluginets tekster og valg sættes af
   _projekt/lancering/b9-cookieyes.sh. Her er kun udseendet. */
#cookie-law-info-bar{font-family:inherit;font-size:.95rem;line-height:1.5;color:var(--ink);background:#fff;
  border-top:1px solid var(--rule);box-shadow:0 -4px 18px rgba(26,24,23,.08);padding:16px 24px;z-index:2147483000!important}
#cookie-law-info-bar > span{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 18px;
  max-width:1100px;margin:0 auto;text-align:left}
#cookie-law-info-bar a{color:var(--ink);text-decoration:underline;margin:0;order:1}
/* Vinduets tekst på én række, og links og knapper på næste række */
#cookie-law-info-bar > span::after{content:"";order:0;flex-basis:100%;height:0}
/* Den flydende fane "Cookie-indstillinger" er fjernet (b9 slår den fra). Valget ændres via linket i footeren.
   Reglen sikrer, at fanen aldrig vises, selv hvis pluginets indstilling skulle blive sat til igen. */
#cookie-law-info-again{display:none!important}
#cookie-law-info-bar a.cli-plugin-button{order:3;display:inline-block;min-width:132px;margin:0;padding:12px 20px;text-align:center;
  font-size:.95rem;font-weight:600;line-height:1.2;text-decoration:none;color:#fff;background:var(--ink);
  border:2px solid var(--ink);border-radius:3px}
#cookie-law-info-bar a.cli-plugin-button:hover{background:#3A3532;border-color:#3A3532}
#cookie-law-info-bar a:focus-visible,#cookie-law-info-again:focus-visible{outline:3px solid var(--signal);outline-offset:2px}
#cookie-law-info-again{left:16px!important;right:auto!important;font-size:.8rem;padding:6px 12px;background:#fff;color:var(--ink);
  border:1px solid var(--rule);border-radius:3px 3px 0 0;z-index:2147483000!important}
@media(max-width:700px){
  #cookie-law-info-bar{padding:14px 16px}
  #cookie-law-info-bar > span{justify-content:flex-start;gap:8px 12px}
  #cookie-law-info-bar > span::before{content:"";order:2;flex-basis:100%;height:0}
  #cookie-law-info-bar a.cli-plugin-button{flex:1 1 calc(50% - 12px);min-width:0}
}

#cliSettingsPopup .wt-cli-privacy-btn,#cliSettingsPopup .cli_setting_save_button{background:var(--ink)!important;border-color:var(--ink)!important;color:#fff!important;border-radius:3px;font-weight:600}
#cliSettingsPopup .cli-modal-dialog{font-family:inherit}

/* PDF fra sitet selv (beskikkelsen), uden Google Docs */
.mv-pdf{display:block;width:100%;max-width:760px;height:1020px;margin:0 auto;border:1px solid var(--rule)}
.mv-pdf-link{max-width:760px;margin:0 auto 12px;text-align:center}
@media(max-width:700px){.mv-pdf{height:70vh}}

/* Klik-for-at-indlæse (annoncelisten fra AltiMaskiner) */
.mv-feed{max-width:760px;margin:0 auto;padding:24px;border:1px solid var(--rule);background:var(--surface-2);text-align:center}
.mv-feed-tekst{margin:0 0 16px;color:var(--muted)}
.mv-feed-knap{display:inline-block;min-width:220px;padding:14px 24px;font:inherit;font-weight:600;color:#fff;background:var(--ink);
  border:2px solid var(--ink);border-radius:3px;cursor:pointer}
.mv-feed-knap:hover{background:#3A3532;border-color:#3A3532}
.mv-feed-knap:focus-visible{outline:3px solid var(--signal);outline-offset:2px}
.mv-feed-link{margin:16px 0 0}
.mv-feed-ramme{display:block;width:100%;height:800px;border:0;overflow:hidden;background:#fff}
@media(max-width:700px){.mv-feed{padding:16px}.mv-feed-ramme{height:70vh}}
