.jd-public{--jd-paper:#f5f1e9;--jd-sand:#eeeae1;--jd-ink:#203943;--jd-muted:#5d6c68;--jd-gold:#876b39;--jd-line:#dcd8ce;background:var(--jd-paper);color:var(--jd-ink);font-family:Arial,Helvetica,sans-serif}.jd-public main{min-width:0}.jd-public :is(h1,h2,h3){letter-spacing:-.035em;text-wrap:balance}.jd-public :is(h1,h2){font-weight:500}.jd-public h3{font-weight:600}.jd-public :is(a,button,input,textarea,select,summary):focus-visible{outline:2px solid #997438;outline-offset:4px}.jd-public :is(input,textarea,select){color:#203943;caret-color:#203943;background-color:#fffefa;border-color:var(--jd-line)}.jd-public :is(input,textarea)::-moz-placeholder{color:#6f7973;opacity:1}.jd-public :is(input,textarea)::placeholder{color:#6f7973;opacity:1}.jd-public input[type=checkbox]{accent-color:var(--jd-ink)}.jd-public main>section:not(.jd-house):first-child:not(.jd-home-hero){background:var(--jd-sand);border-bottom:1px solid var(--jd-line);padding-top:140px}.jd-public main>section:not(.jd-house):first-child:not(.jd-home-hero) h1{font-size:clamp(36px,4.5vw,62px);line-height:1.1;color:var(--jd-ink)}.jd-public main>section.bg-\[\#1c1714\]:first-child :is(.text-white,.text-stone-200,.text-stone-300){color:var(--jd-ink)}.jd-public main>section.bg-\[\#1c1714\]:first-child .text-\[\#ffd1b1\]{color:#806435}.jd-public main>section:not(.jd-house):first-child:not(.jd-home-hero) .border-white\/25{border-color:#b7bdb5}.jd-public :is(.bg-white,.bg-stone-50,.bg-slate-50){background-color:var(--jd-paper)}.jd-public :is(.bg-slate-100,.bg-stone-100){background-color:var(--jd-sand)}.jd-public :is(.bg-slate-900,.bg-slate-950,.bg-\[\#1c1714\],.bg-\[\#0d1015\]){background-color:var(--jd-ink)}.jd-public :is(.text-slate-900,.text-slate-950,.text-zinc-950,.text-zinc-800,.text-slate-800,.text-\[\#0d1015\],.text-\[\#1c1714\]){color:var(--jd-ink)}.jd-public :is(.text-slate-500,.text-slate-600,.text-zinc-500,.text-zinc-600,.text-zinc-700){color:var(--jd-muted)}.jd-public :is(.text-slate-400,.text-stone-400){color:#69776f}.jd-public :is(.bg-slate-900,.bg-slate-950,.jd-public-footer) :is(.text-slate-400,.text-stone-400,.text-slate-500){color:#c6d0c9}.jd-public :is(.text-amber-600,.text-amber-700,.text-\[\#9f5f3b\]){color:var(--jd-gold)}.jd-public :is(.text-amber-400,.text-\[\#d9a17f\]){color:#6d542c}.jd-public :is(.bg-amber-100,.bg-amber-200){background-color:#e9e1cf}.jd-public :is(.border-slate-200,.border-stone-200,.border-slate-100,.border-amber-200){border-color:var(--jd-line)}.jd-public :is(a,button).bg-amber-400,.jd-public :is(a,button).bg-\[\#9f5f3b\],.jd-public :is(a,button).bg-\[\#d9a17f\]{background:var(--jd-ink);color:#fffefa;box-shadow:none}.jd-public :is(a,button).bg-amber-400:hover,.jd-public :is(a,button).bg-\[\#9f5f3b\]:hover{background:#36535b}.jd-public section.bg-amber-400{background:#ddd3bd;color:var(--jd-ink)}.jd-public :is(.rounded-2xl,.rounded-3xl){border-radius:12px}body .jd-public main :is(.bg-white,.bg-stone-50).border{background:#fffefa;box-shadow:0 6px 24px #20394305}.jd-public main a.group:hover{border-color:#a99161;box-shadow:0 10px 25px #2039430a}.jd-public main .font-black{font-weight:600}.jd-public-nav{background:#f5f1e9f5;border-bottom:1px solid var(--jd-line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 3px 16px #20394305}.jd-public-nav :is(.text-white,.text-slate-100,.text-slate-300){color:var(--jd-ink)}.jd-public-nav .text-amber-400{color:#6d542c}.jd-public-nav .border-white\/15{border-color:var(--jd-line)}.jd-public-nav a:hover{color:var(--jd-gold)}.jd-public-nav :is(a.bg-amber-400,a.bg-\[\#9f5f3b\]){color:#fffefa}.jd-public-nav button{color:var(--jd-ink)}.jd-public-footer{background:#203943;color:#f5f1e9;border-color:#52615f}.jd-public-footer :is(.text-stone-500,.text-slate-500){color:#c6d0c9}.jd-public-footer [class*=border-]{border-color:#47606a}.jd-public-footer a:hover{color:#e2c991}.jd-skip-link{position:fixed;top:8px;left:12px;transform:translateY(-160%);padding:12px 20px;background:#203943;color:#fff;z-index:100;border-radius:4px}.jd-skip-link:focus{transform:translateY(0)}.jd-home-hero{padding:152px 24px 54px;background:#eeeae1;overflow:hidden}.jd-home-wrap{max-width:1400px;margin:auto}.jd-home-hero-grid{display:grid;grid-template-columns:1fr 1.12fr;align-items:center;gap:48px}.jd-home-eyebrow{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#6d542c;font-weight:700}.jd-home-hero h1{font-size:clamp(44px,5.8vw,82px);line-height:1.03;letter-spacing:-.055em;margin:24px 0;color:#203943;font-weight:500}.jd-home-hero h1 em{font-style:normal;color:#87744f}.jd-home-lead{font-size:16px;line-height:1.85;max-width:460px;color:#536561}.jd-home-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:30px}.jd-home-button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;background:#203943;color:#fffefa;border:1px solid #203943;padding:16px 22px;border-radius:5px;font-size:13px;font-weight:600}.jd-home-button:hover{background:#36535b;color:#fff}.jd-home-link{display:inline-flex;align-items:center;gap:12px;color:#203943;font-size:13px;border-bottom:1px solid #bfb59e;padding:10px 0}.jd-home-proof{display:flex;align-items:center;gap:20px;margin-top:32px;font-size:11px;color:#596a65}.jd-home-proof span{display:flex;align-items:center;gap:6px}.jd-home-visual{position:relative;min-width:0;background:#f5f1e9;border:1px solid #dcd8ce;border-radius:14px;overflow:hidden}.jd-house-scene picture{display:block}.jd-home-visual img{width:100%;aspect-ratio:3/2;-o-object-fit:cover;object-fit:cover;mix-blend-mode:multiply}.jd-home-visual-top{padding:20px 22px 0;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.12em;color:#68716b}.jd-home-visual-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;border-top:1px solid #dcd8ce;color:#203943;font-size:13px}.jd-home-visual-bottom small{display:block;color:#69776f;font-size:10px;margin-top:5px}.jd-home-video .jd-home-visual-top{padding-bottom:18px;gap:12px}.jd-home-video video{display:block;width:100%;height:auto;aspect-ratio:16/9;-o-object-fit:contain;object-fit:contain;background:#203943}.jd-home-video video:focus-visible{outline:3px solid #9d824d;outline-offset:-3px}.jd-home-contact{padding:80px 24px;background:#e9e2d3;border-top:1px solid #d7ceba}.jd-home-contact-grid{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:80px}.jd-home-contact h2{font-size:clamp(34px,4vw,56px);font-weight:500;letter-spacing:-.045em;line-height:1.12;margin:18px 0}.jd-home-contact p{font-size:15px;line-height:1.8;color:#53645e;max-width:510px}.jd-home-contact-card{padding:32px;border:1px solid #d4c9b1;border-radius:14px;background:#f8f4eb}.jd-home-contact-card>span{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#806435}.jd-home-contact-card>a{display:block;overflow-wrap:anywhere;margin-top:16px;font-size:19px}.jd-home-contact-card>a:first-of-type{font-size:clamp(24px,3vw,34px);letter-spacing:-.03em}.jd-home-contact-card p{margin-top:24px;font-size:13px}.jd-home-contact-card>a.jd-home-link{display:inline-flex;font-size:13px}.jd-public :is(a,button,summary):focus-visible{outline:2px solid #806435;outline-offset:4px}@media(max-width:767px){.jd-home-contact{padding:48px 20px}.jd-home-contact-grid{grid-template-columns:1fr;gap:30px}.jd-home-contact-card{padding:24px}}.jd-home-strip{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;border-top:1px solid #d3cec1;margin-top:48px;padding-top:24px;font-size:11px;color:#627169}.jd-home-strip strong{font-weight:600;color:#203943}.jd-home-section{padding:80px 24px;background:#f5f1e9}.jd-home-section-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:36px}.jd-home-section-heading h2{font-size:clamp(30px,3.4vw,48px);line-height:1.12;margin-top:14px;font-weight:500}.jd-home-section-heading p{max-width:390px;line-height:1.8;color:#5d6c68;font-size:14px}.jd-home-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.jd-home-service{background:#fffefa;border:1px solid #dcd8ce;border-radius:10px;padding:26px}.jd-home-service-top{display:flex;align-items:center;justify-content:space-between;color:#8c7243;margin-bottom:26px;font-size:10px}.jd-home-service h3{font-size:21px;margin-bottom:20px}.jd-home-service a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 0;border-top:1px solid #e7e3d9;font-size:13px}.jd-home-service a:hover{color:#876b39}.jd-home-method{padding:70px 24px;background:#203943;color:#f5f1e9}.jd-home-method .jd-home-eyebrow{color:#d7bc86}.jd-home-method h2{font-size:clamp(30px,3.4vw,46px);margin-top:15px;font-weight:500}.jd-home-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:38px}.jd-home-method-grid article{border-top:1px solid #586d70;padding-top:22px}.jd-home-method-grid small{color:#d7bc86;font-size:11px}.jd-home-method-grid h3{font-size:20px;margin:20px 0 12px}.jd-home-method-grid p{font-size:14px;line-height:1.8;color:#c6d0c9}.jd-home-faq{max-width:880px;margin:auto}.jd-home-faq h2{font-size:clamp(30px,3.4vw,46px);margin:15px 0 30px}.jd-home-faq details{border-bottom:1px solid #dcd8ce;padding:22px 0}.jd-home-faq summary{display:flex;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;font-size:16px}.jd-home-faq summary::-webkit-details-marker{display:none}.jd-home-faq summary span{color:#8c7243}.jd-home-faq details[open] summary span{transform:rotate(45deg)}.jd-home-faq details p{max-width:720px;color:#5d6c68;font-size:14px;line-height:1.8;margin-top:16px}.jd-home-book{padding:80px 24px;background:#f5f1e9;border-top:1px solid #d7ceba}.jd-home-book-grid{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:60px}.jd-home-book h2{font-size:clamp(30px,3.4vw,46px);margin:16px 0;font-weight:500;line-height:1.12}.jd-home-book p{font-size:15px;line-height:1.8;color:#53645e;max-width:520px}.jd-home-book-card{padding:30px;border:1px solid #d4c9b1;border-radius:14px;background:linear-gradient(180deg,#fbf7ef,#f4ece0)}.jd-home-book-card>span{display:flex;flex-direction:column;padding:14px 0;border-bottom:1px solid #e0d7c4;font-size:12px;color:#6d542c;letter-spacing:.04em}.jd-home-book-card>span strong{font-size:17px;color:#203943;letter-spacing:0;margin-bottom:3px}.jd-home-book-card>a{display:flex;align-items:center;justify-content:space-between;margin-top:22px;color:#203943;font-size:13px;font-weight:600}.jd-home-book-card>a:hover{color:#876b39}@media(max-width:767px){.jd-home-book{padding:48px 20px}.jd-home-book-grid{grid-template-columns:1fr;gap:30px}.jd-home-book-card{padding:22px}}.jd-home-chat{padding:80px 24px;background:#e9e2d3;border-top:1px solid #d7ceba}.jd-home-chat-head{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:34px}.jd-home-chat-head h2{font-size:clamp(28px,3.2vw,44px);font-weight:500;line-height:1.12;margin:14px 0}.jd-home-chat-head p{font-size:14px;line-height:1.8;color:#5d6c68;max-width:430px}.jd-home-chat-tabs{display:inline-flex;background:#f5f1e9;border:1px solid #d4c9b1;border-radius:12px;padding:4px;gap:4px}.jd-home-chat-tabs button{padding:11px 18px;border-radius:9px;font-size:13px;font-weight:600;color:#5d6c68;transition:background .15s,color .15s}.jd-home-chat-tabs button[aria-selected=true]{background:#203943;color:#fffefa}.jd-home-chat-panel{max-width:860px;margin:auto}.jd-home-chat-book{display:grid;grid-template-columns:1.1fr 1fr;gap:44px;align-items:center;background:#f8f4eb;border:1px solid #d4c9b1;border-radius:16px;padding:40px}.jd-home-chat-book h3{font-size:25px;font-weight:600;line-height:1.2;margin:14px 0 12px}.jd-home-chat-book p{font-size:14px;line-height:1.8;color:#5d6c68;margin-bottom:24px}.jd-home-chat-book-points{display:flex;flex-direction:column;gap:14px}.jd-home-chat-book-points span{display:flex;flex-direction:column;padding:14px 0;border-top:1px solid #e0d7c4;font-size:11px;letter-spacing:.05em;color:#6d542c}.jd-home-chat-book-points strong{font-size:15px;color:#203943;letter-spacing:0;margin-bottom:3px}@media(max-width:820px){.jd-home-chat{padding:52px 20px}.jd-home-chat-head{display:block}.jd-home-chat-tabs{margin-top:18px}.jd-home-chat-book{grid-template-columns:1fr;gap:26px;padding:26px}}@media(max-width:900px){.jd-home-hero-grid{grid-template-columns:1fr;gap:32px}.jd-home-hero{padding-top:120px}.jd-home-hero h1{max-width:650px}.jd-home-visual{max-width:700px}.jd-home-services{grid-template-columns:repeat(2,minmax(0,1fr))}.jd-home-section-heading{display:block}.jd-home-section-heading p{margin-top:20px}.jd-home-method-grid{gap:24px}}@media(max-width:600px){.jd-home-hero,.jd-home-section,.jd-home-method{padding-left:20px;padding-right:20px}.jd-home-hero h1{font-size:48px}.jd-home-lead{font-size:15px}.jd-home-services,.jd-home-method-grid{grid-template-columns:1fr}.jd-home-section,.jd-home-method{padding-top:50px;padding-bottom:50px}.jd-home-proof{flex-wrap:wrap;gap:12px}.jd-home-strip{flex-direction:column}.jd-public main>section:not(.jd-house):first-child:not(.jd-home-hero){padding-top:115px}.jd-public-nav [class*=truncate]{font-size:14px}.jd-public main a[href^="mailto:"]{overflow-wrap:anywhere}}@media(prefers-reduced-motion:reduce){.jd-public *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* ==========================================================================
   TOPMENU OG FOOTER - layout-rettelse
   --------------------------------------------------------------------------
   To fejl paa samme aarsag:

   1) Topmenuen bryder "Bestil tid", "Om os" og "Dit projekt" paa to linjer.
      Aarsagen er IKKE for lidt plads. Pladsregnskabet gaar præcis op:
      logo 209 + menu 745 + knapper 246 + gaps 32 = 1232 px, og der er
      1232 px til raadighed. Underskuddet er 0 px. Den laengste ordgruppe
      taber derfor subpixel-pladsen og brydes.
      Rettelsen er flex-shrink:0 paa de tre grupper (menuen maa aldrig
      give plads til logo og knapper) og white-space:nowrap paa linkene.

   2) Menuen OG FOOTEREN er laesst i max-w-7xl = 1280 px, saa de flyder
      midt i skaermen og efterlader 1.536 px tomt paa en 2816 px skaerm.
      (Merk: det er de indre .max-w-7xl-bokse, ikke <footer> selv, der er
      laest. En tidligere maaling ramte <footer> og gav derfor et forkert
      svar - footeren har samme fejl som menuen.)
      Rettelsen er at lade begge fylde skaermen.

   Begge dele er rene layout-rettelser og rører ikke indhold eller funktion.

   3) Indholdet i <main> laes i max-w-6xl (1152 px) paa flere sider, saa
      det flyder midt i skaermen og efterlader 1.536 px tomt paa en
      2.816 px skaerm.
      VIGTIGT omfang: kun de BREDE layout-klasser frigives. max-w-prose
      (max-w-2xl / 3xl / 4xl) BEHOLDES med vilje - en laesestribe paa
      2.800 px er ulaeselig. Samme regel som en avis: spalter er brede,
      artikler har en laesbar laengde.
   ========================================================================== */

/* --- 1) Topmenuen: ingen linjeskift, ingen pladsafgivelse --- */
.jd-public-nav > div > *{flex-shrink:0}
.jd-public-nav a{white-space:nowrap}

/* Logoet maa gerne staa paa to linjer, det er meningen */
.jd-public-nav a > span{white-space:normal}

/* Telefonnummer og Log ind er knapper, ikke menupunkter */
.jd-public-nav a.flex.items-center.gap-2{white-space:normal}

/* --- 2) Fuld bredde: menuen OG footeren fylder skaermen ---
   Det er de indre .max-w-7xl-bokse der skal frigives, ikke <footer>. */
@media (min-width:1281px){
  .jd-public-nav > div,
  .jd-public-footer > div{max-width:none}
}
/* ==========================================================================
   FULD BREDDE OG LAESBAR LAENGDE - hele sitet
   ==========================================================================
   Tidligere fejl (2026-10-02): jeg satte
       :is(.max-w-4xl,.max-w-3xl,.max-w-2xl){max-width:72rem}
   med kommentaren "Tekststrimler: menneskelig laengde".

   72rem er 1.152 px. Det er ca. 150 tegn pr. linje - altsaa det modsatte
   af laesbar. En laesbar broedtekst ligger omkring 65-80 tegn pr. linje.
   En folge var at .max-w-2xl, som normalt er 42rem og naesten altid
   bruges til en tekstblok eller en formular, blev 672 px bredere.

   Rigtig opdeling:
     - Layoutbokse (7xl, 6xl, 5xl, 4xl, 3xl) skal fylde skaermen.
     - Broedtekst skal aldrig overstige en laesbar laengde, uanset
       hvilken max-w-klasse den sidder i.

   Derfor faar de store klasser max-width:none, og saa saetter vi en
   menneskelig laengde paa selve teksten bagefter. Saadan kan ingen
   overskrift, afsnit eller liste nogensinde blive 2.800 px bred.

   Specificiteten er bevidst haevet med "html body" foran, saa disse
   regler vinder over sidens egne uanset hvilken stylesheet der
   indlaeses sidst.
   ========================================================================== */
@media (min-width:1281px){
  /* Layout: frigiv til skaermkanten med en rimelig kantmargen */
  html body .jd-public main :is(.max-w-7xl,.max-w-6xl,.max-w-5xl,.max-w-4xl,.max-w-3xl,.max-w-\[80\%\]){
    max-width:none;
    padding-inline:clamp(32px,5vw,140px);
  }
  /* De smaa klasser er naesten altid tekst eller formular - lad dem blive
     smaa. 42rem er Tailwinds egen vaerdi for max-w-2xl. */
  html body .jd-public main :is(.max-w-2xl,.max-w-xl,.max-w-sm,.max-w-md){
    max-width:42rem;
  }
  /* Sikkerhedsnet: uanset hvilken klasse en tekst har, maa den ikke blive
     laengere end en menneskelig linje. */
  /* VIGTIGT: layout-reglen ovenfor rammer ogsaa AFSNIT, fordi den gaar paa
     max-w-3xl uanset hvad klassen sidder paa. Et afsnit med klassen
     max-w-3xl fik derfor max-width:none og blev 828 px bredt - 104 tegn
     pr. linje. Det er netop det, layout-reglen skulle forhindre.

     Denne regel har præcis samme vægt (0,2,3) som layout-reglen, men
     står længere nede i filen - og det er nok, fordi vægten er lige.
     Den skal derfor ALTID stå efter layout-reglen. */
  html body .jd-public main p:is(.max-w-7xl,.max-w-6xl,.max-w-5xl,.max-w-4xl,.max-w-3xl,.max-w-\[80\%\]){
    max-width:74ch;
  }
  html body .jd-public main p{max-width:74ch}
  /* Samtykketekster ligger i en flex-label som en nøgen <span>. Den er et
     flex-item, altsaa blocket - derfor virker max-width her, i modsatning
     til en almindelig inline-span. Uden denne regel blev teksten paa
     /konfigurator/ 941 px bred = 157 tegn pr. linje. */
  html body .jd-public main label > span{max-width:70ch}
  html body .jd-public main :is(li,dd){max-width:78ch}
  /* To-spalters layout med fast 320 px sidekolonne (kun paa
     /standardbetingelser/, brugt i Standardbetingelser-*.js).

     Teksten i den brede spalte er begrænset til 74ch = 658 px, men
     spalten bliver 2.169 px bred. Det gav 1.625 px tomrum mellem
     sidste tekstlinje og sidekolonnen - tydeligt et brudt layout.

     Loft paa gridet, saa spalterne ligger tæt sammen. */
  html body .jd-public main .grid[class*="grid-cols-[1fr_320px]"]{
    max-width:1180px;
  }
}

/* --- 3) Let: marker den aktive side tydeligt i topmenuen --- */
.jd-public-nav a[aria-current="page"],
.jd-public-nav a[data-active="true"]{
  position:relative;
  color:var(--jd-gold);
}
/* Understregning under det valgte menupunkt */
.jd-public-nav a[aria-current="page"]::after,
.jd-public-nav a[data-active="true"]::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:-7px;
  height:2px;
  border-radius:2px;
  background:var(--jd-gold);
}
@supports not (backdrop-filter:blur(1px)){
  .jd-public-nav{background:var(--jd-paper,#f5f1e9)}
}

/* --- 4) Footer: tydeligere opdeling og bedre klikflader --- */
.jd-public-footer > div + div{border-color:rgba(245,241,233,.18)}
.jd-public-footer h2{color:#f5f1e9;opacity:.92}
/* Lokale ydelser: gør dem til chips saa de ligner valgbare, ikke tekstmasse */
.jd-public-footer a.text-sm{
  display:inline-block;
  padding:6px 12px;
  border:1px solid rgba(245,241,233,.2);
  border-radius:999px;
  transition:background .15s,border-color .15s,color .15s;
}
.jd-public-footer a.text-sm:hover{
  background:rgba(245,241,233,.1);
  border-color:rgba(245,241,233,.42);
  color:#d7bc86;
}
.jd-public-footer a.transition,
.jd-public-footer a[class*="hover:text-["]{
  text-decoration:none;
  border-bottom:1px solid transparent;
  transition:color .15s,border-color .15s;
}
.jd-public-footer a.transition:hover,
.jd-public-footer a[class*="hover:text-["]:hover{
  border-bottom-color:currentColor;
}
@media (max-width:700px){
  .jd-public-footer a.text-sm{padding:5px 10px}
}
/* ==========================================================================
   FULD BREDDE - forsiden og indholdet i main
   --------------------------------------------------------------------------
   VIGTIGT: forside og indhold bruger EGNE klasser, ikke Tailwinds
   max-w-6xl. En tidligere rettelse ramte derfor aldrig forsiden:

     .jd-home-wrap        1400 px  (hero, sektioner, book, chat, contact)
     .jd-house-heading    1440 px  (husvisualen)
     .jd-home-faq          880 px  (FAQ)

   .jd-home-faq er saa snav at "En enkel opgave. Eller det hele, samlet."
   brydes i fire linjer paa en 2.816 px skaerm. Den laegges derfor bare
   til et menneskeligt maal, ikke fuld ud til kanten.

   Regel: layout fylder skærmen, tekst behaolder sin laesbare laengde.
   ========================================================================== */

/* Layout-bokse: fylder skaermen med rimelig kantmargen */
@media (min-width:1281px){
  body .jd-public main :is(.jd-home-wrap,.jd-house-heading){
    max-width:none;
    padding-inline:clamp(32px,5vw,140px);
  }
  /* FAQ holdes i et laesevenligt maal - 880 px var for smalt paa ultrabred */
  body .jd-public main .jd-home-faq{max-width:1100px;padding-inline:24px}
  /* Overskriften er 46 px. Uden et maal brydes den i fire linjer paa en
     bred skaerm, hvilket saar grimt ud. 18ch er nok til to linjer. */
  body .jd-public main .jd-home-faq h2{max-width:18ch}
}

/* Grid-spalters tekst skal aldrig blive linjer paa 1.400 px */
@media (min-width:1500px){
  body .jd-public main :is(.jd-home-lead,.jd-home-method p,.jd-home-book p,.jd-home-contact p){
    max-width:62ch;
  }
}
/* ==========================================================================
   TELEFONNUMMER I TOPMENUEN - lille igen, som det var
   --------------------------------------------------------------------------
   Forsoeget paa at gjoere denne knap stor fortraengde resten af menuen, og
   den fyldte mere end den fortjener. Den er nu tilbage til et almindeligt
   link: kun let kraftigere end de andre menupunkter, saa den er at finde
   uden at raebe. Det store nummer ligger i heroen i stedet.
   ========================================================================== */
/* VIGTIGT om specificitet:
   Sidens egen CSS har regler med nøjagtig samme vælger
   (.jd-public-nav a[href^="tel:"]) og samme !important. Når to regler er
   lige tunge, vinder den der kommer SIDST - og vi kan ikke være sikre på
   at være sidst, fordi siden indlæser sine egne stylesheets dynamisk.

   Derfor har alle regler nedenfor "html body" foran. Det løfter vægten
   fra (0,2,1) til (0,3,2), så vores regler vinder uanset rækkefølge.
   Det er den eneste måde at være sikker på et site vi ikke kan bygge. */
html body .jd-public-nav a[href^="tel:"]{
  font-size:15px!important;
  font-weight:600!important;
  letter-spacing:0!important;
  line-height:1!important;
  padding:9px 12px!important;
  min-height:38px!important;
  display:inline-flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:7px!important;
  color:var(--jd-ink,#203943)!important;
  background-color:transparent!important;
  background-image:none!important;
  border:1px solid var(--jd-line,#dcd8ce)!important;
  border-radius:9px!important;
  white-space:nowrap!important;
  transition:background-color .12s ease, border-color .12s ease;
}
html body .jd-public-nav a[href^="tel:"]:hover{
  background-color:rgba(135,107,57,.09)!important;
  background-image:none!important;
  border-color:var(--jd-gold,#876b39)!important;
}
html body .jd-public-nav a[href^="tel:"] svg{
  width:16px!important;height:16px!important;
  flex:none;
  order:0!important;
  margin-top:0!important;
  stroke-width:2.2;
}
html body .jd-public-nav a[href^="tel:"] > span{white-space:nowrap}

/* Nulstilling af tidligere forsøg på et stort nummer i topmenuen.
   Den lavede knappen i kolonne-retning med "TAL MED OS" over nummeret.
   Reglerne skal væk, ellers lever de videre i den indlæste CSS fra før. */
html body .jd-public-nav a[href^="tel:"]::before,
html body .jd-public-nav a[href^="tel:"]::after{
  content:none!important;
  display:none!important;
}

/* Nulstilling af tidligere forsøg på et stort nummer i topmenuen.
   Den lavede knappen i kolonne-retning med "TAL MED OS" over nummeret.
   Reglerne skal væk, ellers lever de videre i den indlæste CSS fra før. */
.jd-public-nav a[href^="tel:"]{
  flex-direction:row!important;
  align-items:center!important;
}
.jd-public-nav a[href^="tel:"]::before,
.jd-public-nav a[href^="tel:"]::after{
  content:none!important;
  display:none!important;
}
.jd-public-nav a[href^="tel:"] svg{
  order:0!important;
  margin-top:0!important;
}

/* ==========================================================================
   STORT TELEFONNUMMER I HEROEN - til venstre, under brødteksten
   --------------------------------------------------------------------------
   Nummeret indsaettes som et rigtigt <a href="tel:..."> af
   hero-telefon.js. En ::after-pseudo kan ikke vaere et link, saa det maa
   vaere et rigtigt element. Placeres efter .jd-home-lead, altsaa mellem
   brødteksten og knapperne "Se vaerker" / "Book en tid".
   ========================================================================== */
.jd-hero-tel{
  display:flex;
  align-items:center;
  gap:16px;
  margin:26px 0 4px;
  padding:16px 22px 16px 18px;
  width:fit-content;
  max-width:100%;
  text-decoration:none;
  border-left:4px solid var(--jd-gold,#876b39);
  border-radius:0 14px 14px 0;
  background:rgba(255,254,250,.72);
  transition:background .14s ease, transform .14s ease;
}
.jd-hero-tel:hover{
  background:#fffefa;
  transform:translateX(3px);
}
.jd-hero-tel__ico{
  flex:none;
  display:grid;
  place-items:center;
  width:52px;height:52px;
  border-radius:50%;
  background:var(--jd-ink,#203943);
  color:#fffefa;
}
.jd-hero-tel__ico svg{width:24px;height:24px;stroke-width:2.2}
.jd-hero-tel__txt{display:flex;flex-direction:column;gap:3px;min-width:0}
.jd-hero-tel__lbl{
  font-size:11px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--jd-muted,#5d6c68);
}
.jd-hero-tel__num{
  font-size:clamp(28px,3.1vw,44px);
  font-weight:700;
  line-height:1;
  letter-spacing:-.03em;
  color:var(--jd-ink,#203943);
  white-space:nowrap;
}
@media (max-width:900px){
  .jd-hero-tel{margin:20px 0 2px;padding:13px 18px 13px 14px;gap:13px}
  .jd-hero-tel__ico{width:44px;height:44px}
  .jd-hero-tel__ico svg{width:21px;height:21px}
}
/* På mobil skalerer tallet med skærmen i stedet for at stå fast.
   "+45 82 30 90 90" har white-space:nowrap, så det kan ikke brydes ned
   efter en tegnlinje - og en fast fontstørrelse ville på en 320 px
   telefon skubbe kassen ud over kanten. clamp() sikrer at den altid
   passer: 6,1vw ved 320 px giver 19,5 px, som fylder ca. 150 px. */
@media (max-width:480px){
  .jd-hero-tel{margin:18px 0 2px;padding:12px 15px 12px 13px;gap:12px}
  .jd-hero-tel__ico{width:42px;height:42px}
  .jd-hero-tel__ico svg{width:20px;height:20px}
  .jd-hero-tel__num{font-size:clamp(19px,6.1vw,27px)}
  .jd-hero-tel__lbl{font-size:9.5px;letter-spacing:.14em}
}