.elementor-kit-7{--e-global-color-primary:#123A52;--e-global-color-secondary:#1F7A4F;--e-global-color-text:#4A6373;--e-global-color-accent:#F2B33D;--e-global-color-mbjdeep:#0E2E42;--e-global-color-mbjgreend:#17603D;--e-global-color-mbjmint:#8FE0B7;--e-global-color-mbjwash:#F5F8FA;--e-global-color-mbjmuted:#587080;--e-global-color-mbjborder:#D6E0E7;--e-global-color-mbjline:#E1E8EC;--e-global-color-mbjpale:#C6D8E3;--e-global-color-mbjfoot:#A9C4D3;--e-global-color-mbjfoot2:#DCE8EF;--e-global-color-mbjwhite:#FFFFFF;--e-global-typography-primary-font-family:"Figtree";--e-global-typography-primary-font-weight:800;--e-global-typography-secondary-font-family:"Figtree";--e-global-typography-secondary-font-weight:700;--e-global-typography-text-font-family:"Figtree";--e-global-typography-text-font-weight:500;--e-global-typography-accent-font-family:"Figtree";--e-global-typography-accent-font-weight:700;--e-global-typography-mbjeyebrow-font-family:"Figtree";--e-global-typography-mbjeyebrow-font-size:14px;--e-global-typography-mbjeyebrow-font-weight:800;--e-global-typography-mbjeyebrow-text-transform:uppercase;--e-global-typography-mbjeyebrow-letter-spacing:0.18em;background-color:#FFFFFF;color:#123A52;font-family:"Figtree", Helvetica Neue, Helvetica, sans-serif;font-size:17px;font-weight:500;line-height:1.7em;}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{background-color:#1F7A4F;font-family:"Figtree", Helvetica Neue, Helvetica, sans-serif;font-size:17px;font-weight:700;color:#FFFFFF;border-radius:999px 999px 999px 999px;padding:18px 32px 18px 32px;}.elementor-kit-7 button:hover,.elementor-kit-7 button:focus,.elementor-kit-7 input[type="button"]:hover,.elementor-kit-7 input[type="button"]:focus,.elementor-kit-7 input[type="submit"]:hover,.elementor-kit-7 input[type="submit"]:focus,.elementor-kit-7 .elementor-button:hover,.elementor-kit-7 .elementor-button:focus{background-color:#17603D;color:#FFFFFF;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-kit-7 a{color:#123A52;}.elementor-kit-7 a:hover{color:#1F7A4F;}.elementor-kit-7 h1{color:#123A52;font-family:"Figtree", Helvetica Neue, Helvetica, sans-serif;font-size:64px;font-weight:800;line-height:1.06em;letter-spacing:-0.03em;}.elementor-kit-7 h2{color:#123A52;font-family:"Figtree", Helvetica Neue, Helvetica, sans-serif;font-size:46px;font-weight:800;line-height:1.1em;letter-spacing:-0.03em;}.elementor-kit-7 h3{color:#123A52;font-family:"Figtree", Helvetica Neue, Helvetica, sans-serif;font-size:23px;font-weight:800;line-height:1.25em;letter-spacing:-0.02em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1312px;}.e-con{--container-max-width:1312px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ====== Malermester Bjarne - hjælpeklasser ======
   Alt layout er bygget med Elementor-containere og -widgets.
   Disse få regler dækker det, Elementor ikke har en native kontrol til. */

/* Billedformater. Elementor har ingen aspect-ratio-kontrol på billed-widgeten,
   så kortbilleder beskæres med disse klasser i stedet for faste pixelhøjder. */
.mbj-r43 img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}
.mbj-r1610 img{aspect-ratio:16/10;object-fit:cover;width:100%;display:block}
.mbj-r45 img{aspect-ratio:4/5;object-fit:cover;width:100%;display:block}
.mbj-r11 img{aspect-ratio:1/1;object-fit:cover;width:100%;display:block}

/* Kort med billede øverst stables som almindelige blokke. Som flex-kolonne klemmer Chrome
   billed-widgeten til 0 px, mens et lazy-billede loader, og så lægger billedet sig ind over teksten. */
.e-con.mbj-stack{display:block}

/* Den gule accentstreg (Divider-widget) med runde ender */
.mbj-goldbar .elementor-divider-separator{border-radius:3px}

/* Containere med html-tag "a" må ikke arve temaets understregning */
a.e-con,a.e-con *{text-decoration:none}

/* Container der kun fylder sit indhold (bruges i headeren) */
.e-con.mbj-auto{width:auto;flex:0 0 auto;max-width:100%}

/* Overskriftsblok der deler række med en knap: knappen står til højre, til der ikke er plads */
.e-con.mbj-grow{width:auto;flex:1 1 480px}

/* Ydelseskort: hele kortet vender om ved hover.
   Elementor kan skifte containerens baggrund, men ikke farven på teksten indeni. */
.mbj-svc{transition:background-color .18s ease,transform .18s ease,box-shadow .18s ease}
.mbj-svc:hover{background-color:#123A52!important;transform:translateY(-3px);box-shadow:0 14px 30px rgba(18,58,82,.16)}
.mbj-svc:hover .elementor-heading-title,.mbj-svc:hover .elementor-widget-text-editor{color:#FFFFFF!important}

/* Kort og referencer der løftes ved hover */
.mbj-lift{transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}
.mbj-lift:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(18,58,82,.14)}
.mbj-lift img{transition:transform .26s ease}
.mbj-lift:hover img{transform:scale(1.035)}
.mbj-next:hover{background-color:#EDF3F7!important}

/* Ydelser: indendørskort bliver hvide, specialkort bliver hvide og løftes */
.mbj-soft{transition:background-color .18s ease,box-shadow .18s ease}
.mbj-soft:hover{background-color:#FFFFFF!important;box-shadow:0 8px 20px rgba(18,58,82,.08)}
.mbj-special{transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}
.mbj-special:hover{background-color:#FFFFFF!important;box-shadow:0 12px 26px rgba(18,58,82,.12);transform:translateY(-3px)}

/* Kort med skygge der løftes (udendørs, holdet, fordele) */
.mbj-float{box-shadow:0 8px 22px rgba(18,58,82,.12);transition:transform .18s ease,box-shadow .18s ease}
.mbj-float:hover{box-shadow:0 14px 30px rgba(18,58,82,.16);transform:translateY(-3px)}

/* Bynavne: bliver mørke ved hover */
.mbj-pill{transition:background-color .16s ease,transform .16s ease}
.mbj-pill .elementor-heading-title{transition:color .16s ease}
.mbj-pill:hover{background-color:#123A52!important;transform:translateY(-2px)}
.mbj-pill:hover .elementor-heading-title{color:#FFFFFF!important}

/* Kontaktformular: grøn kant på feltet man skriver i */
.mbj-form .elementor-field-textual{transition:border-color .15s ease}
.mbj-form .elementor-field-textual:focus{border-color:#1F7A4F!important;box-shadow:none;outline:none}

/* Galleri: billedet zoomer let inden for den runde ramme */
.mbj-zoom a{display:block;overflow:hidden;border-radius:16px;background:#EFF3F5}
.mbj-zoom img{transition:transform .22s ease}
.mbj-zoom:hover img{transform:scale(1.035)}

/* Ydelses-undersider: links i brødteksten skal ligne links; sidekolonnen følger med på desktop */
.mbj-prose a{color:#1F7A4F;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px;transition:color .16s ease}
.mbj-prose a:hover{color:#123A52}
@media (min-width:1025px){.mbj-aside{position:sticky;top:120px}}

@media (prefers-reduced-motion:reduce){.mbj-zoom img,.mbj-svc,.mbj-lift,.mbj-soft,.mbj-special,.mbj-float,.mbj-pill,.mbj-lift img{transition:none}}

/* Læsbar linjelængde. Designet sætter max-width i ch på overskrifter og brødtekst. */
.mbj-m16 .elementor-heading-title,.mbj-m16 p{max-width:16ch}
.mbj-m18 .elementor-heading-title,.mbj-m18 p{max-width:18ch}
.mbj-m20 .elementor-heading-title,.mbj-m20 p{max-width:20ch}
.mbj-m22 .elementor-heading-title,.mbj-m22 p{max-width:22ch}
.mbj-m24 .elementor-heading-title,.mbj-m24 p{max-width:24ch}
.mbj-m34 .elementor-heading-title,.mbj-m34 p{max-width:34ch}
.mbj-m44 .elementor-heading-title,.mbj-m44 p{max-width:44ch}
.mbj-m46 .elementor-heading-title,.mbj-m46 p{max-width:46ch}
.mbj-m48 .elementor-heading-title,.mbj-m48 p{max-width:48ch}
.mbj-m50 .elementor-heading-title,.mbj-m50 p{max-width:50ch}
.mbj-m52 .elementor-heading-title,.mbj-m52 p{max-width:52ch}
.mbj-m56 .elementor-heading-title,.mbj-m56 p{max-width:56ch}
.mbj-m58 .elementor-heading-title,.mbj-m58 p{max-width:58ch}

/* Overskrifter må gerne brække pænt */
.elementor-heading-title{text-wrap:balance}

/* Punktlister i lange tekster følger samme linjelængde som afsnittene */
.mbj-m58 li{max-width:56ch}

/* Case-hero: "Alle referencer" som frostet pille med Lucide arrow-left */
.mbj-back a{display:inline-flex;align-items:center;gap:8px;padding:10px 18px 10px 13px;border-radius:999px;color:#FFFFFF!important;
  background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.32);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  text-decoration:none;transition:background-color .18s ease,color .18s ease,border-color .18s ease}
.mbj-back a::before{content:"";width:18px;height:18px;flex:0 0 18px;background:currentColor;transition:transform .18s ease;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 19-7-7 7-7'/%3E%3Cpath d='M19 12H5'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 19-7-7 7-7'/%3E%3Cpath d='M19 12H5'/%3E%3C/svg%3E") center/contain no-repeat}
.mbj-back a:hover,.mbj-back a:focus-visible{background:#FFFFFF;color:#123A52!important;border-color:#FFFFFF}
.mbj-back a:hover::before{transform:translateX(-3px)}

/* ====== Mobil (<768px) ====== */
@media (max-width:767px){
  /* Fotohero: desktoppens venstre-mod-højre-gradient efterlader teksten på lyst foto; mørk hele fladen */
  body .e-con.mbj-hero::before{background-image:linear-gradient(180deg,rgba(10,28,40,.82) 0%,rgba(10,28,40,.68) 100%)!important;opacity:1!important}
  /* Knapper stables i fuld bredde, så de står lige */
  body .e-con.mbj-btnrow{width:100%!important;max-width:100%;flex:0 0 100%!important;flex-direction:column!important;align-items:stretch!important}
  body .mbj-btnrow>.elementor-widget-button{width:100%!important;max-width:100%!important}
  body .mbj-btnrow .elementor-button{width:100%;justify-content:center}
  /* Galleri uden billedtekst: to billeder pr. række */
  body .e-con.mbj-gal2{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .mbj-gal2 .mbj-zoom a,.mbj-gal2 img{border-radius:12px!important}
  /* "Om opgaven": etiket over værdi på alle rækker */
  body .e-con.mbj-spec{flex-direction:column!important;align-items:flex-start!important;gap:3px!important}
  .mbj-spec .elementor-widget-heading,.mbj-spec .elementor-heading-title{text-align:left!important}
  /* Footer: brand og kontakt i fuld bredde, de to linklister side om side */
  body .e-con.mbj-foot-cols{grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:20px!important}
  .mbj-foot-cols>.mbj-foot-wide{grid-column:1/-1}
}

/* Mobilmenu (tablet og mobil): burger i headeren, menuen fylder skærmen, som i designet */
/* Åbn/luk: Lucide-ikoner (menu / x) i samme runde knap */
body button.mbj-ico-btn{display:flex;align-items:center;justify-content:center;width:48px;height:48px;min-height:0;padding:0;border:0;border-radius:999px;box-shadow:none;background:#F2F5F7;color:#123A52;cursor:pointer;transition:background-color .16s ease,color .16s ease,transform .16s ease}
body button.mbj-ico-btn:focus{background:#F2F5F7;color:#123A52;box-shadow:none}
@media (hover:hover){body button.mbj-ico-btn:hover{background:#123A52;color:#FFFFFF}}
body button.mbj-ico-btn:active{transform:scale(.94)}
body button.mbj-ico-btn:focus-visible{outline:2px solid #1F7A4F;outline-offset:3px}
.mbj-ico-btn svg{width:24px;height:24px;display:block;pointer-events:none}
.mbj-mm-close svg{transition:transform .3s ease}
@media (hover:hover){.mbj-mm-close:hover svg{transform:rotate(90deg)}}
@keyframes mbj-mm-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.mbj-mm{position:fixed;inset:0;z-index:9995;background:#FFFFFF;padding:clamp(18px,5vw,44px);display:flex;flex-direction:column;overflow:auto;font-family:Figtree,"Helvetica Neue",Helvetica,sans-serif;
  opacity:0;visibility:hidden;pointer-events:none;transform:translateX(100%);transition:opacity 260ms ease,transform 460ms cubic-bezier(.22,1,.36,1),visibility 0s linear 460ms}
.mbj-mm.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition-delay:0s}
.mbj-mm-top{display:flex;justify-content:space-between;align-items:center}
.mbj-mm-top img{width:176px;height:auto;display:block}
.mbj-mm-links{display:flex;flex-direction:column;margin:auto 0;padding:26px 0}
.mbj-mm-links a{color:#123A52;text-decoration:none;font-size:clamp(27px,7.4vw,35px);font-weight:800;letter-spacing:-.02em;line-height:1.2;padding:16px 0;border-bottom:1px solid #E6EBEF}
.mbj-mm-links a:last-child{border-bottom:0}
.mbj-mm-links a:hover{color:#1F7A4F}
.mbj-mm-cta{display:flex;flex-direction:column;gap:12px}
.mbj-mm-cta a{color:#FFFFFF;text-align:center;padding:18px;border-radius:999px;font-size:17px;font-weight:700;text-decoration:none}
.mbj-mm-cta a:hover{color:#FFFFFF}
.mbj-mm-green{background:#1F7A4F}
.mbj-mm-navy{background:#123A52}
.mbj-mm.is-open>div,.mbj-mm.is-open>nav{animation:mbj-mm-in 440ms cubic-bezier(.22,1,.36,1) both}
.mbj-mm.is-open>:nth-child(1){animation-delay:120ms}
.mbj-mm.is-open>:nth-child(2){animation-delay:220ms}
.mbj-mm.is-open>:nth-child(3){animation-delay:420ms}
.mbj-mm.is-open .mbj-mm-links a{animation:mbj-mm-in 400ms cubic-bezier(.22,1,.36,1) both}
.mbj-mm.is-open .mbj-mm-links a:nth-child(1){animation-delay:260ms}
.mbj-mm.is-open .mbj-mm-links a:nth-child(2){animation-delay:310ms}
.mbj-mm.is-open .mbj-mm-links a:nth-child(3){animation-delay:360ms}
.mbj-mm.is-open .mbj-mm-links a:nth-child(4){animation-delay:410ms}
.mbj-mm.is-open .mbj-mm-links a:nth-child(5){animation-delay:460ms}
@media (prefers-reduced-motion:reduce){.mbj-mm,.mbj-mm.is-open{transition:none;transform:none}.mbj-mm.is-open>*,.mbj-mm.is-open .mbj-mm-links a{animation:none}}

/* Cookiebanner (Privento): to farver, som pluginet ikke har felter til. html:root vinder over pluginets egne :root-variabler. */
html:root{--prv-subtext:#4A6373;--prv-settings-bdr:#D6E0E7}

/* Om os, Menneskene bag: holdbilledets kolonne er dobbelt saa bred (2fr). Billedet er 2:1, saa det staar lige saa hoejt som portraetkortenes kvadratiske billeder. */
.e-con.mbj-teamgrid{grid-template-columns:1fr 1fr 2fr 1fr!important}
.mbj-rteam img{aspect-ratio:2/1;object-fit:cover;object-position:50% 40%;width:100%;display:block}
@media (max-width:1199px){
  .e-con.mbj-teamgrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .e-con.mbj-team,.e-con.mbj-dig{grid-column:1/-1}
}
@media (max-width:767px){
  .e-con.mbj-teamgrid{grid-template-columns:minmax(0,1fr)!important}
  .mbj-rteam img{aspect-ratio:2.4/1}
}

/* Ydelser: lavt billede oeverst i ydelseskassen */
.mbj-rlow img{aspect-ratio:5/2;object-fit:cover;width:100%;display:block}

/* WCAG 1.4.1: links i broedtekst skal kunne ses uden farve, saa de understreges */
main .elementor-widget-text-editor a:not(.elementor-button),main .entry-content p a{text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px}
/* Skip-linket flytter fokus til <main>; selve omraadet skal ikke have en ramme */
main#content:focus{outline:none}

/* Elementors breakpoints har et hul: tablet gaelder til max-width 1024px, desktop fra min-width 1025px.
   Ved skalering (fx 150 % i Windows) kan vinduet blive 1024,x px bredt, og saa gaelder ingen af dem, saa headeren viser baade menu og menuknapper. Hullet behandles som desktop. Range-syntaksen rammer praecis hullet og overlapper aldrig Elementors egne regler. */
@media (1024px < width < 1025px){
  .elementor-hidden-desktop{display:none!important}
  .elementor-nav-menu--dropdown-tablet .elementor-menu-toggle,
  .elementor-nav-menu--dropdown-tablet .elementor-nav-menu--dropdown.elementor-nav-menu__container{display:none!important}
  .elementor-nav-menu--dropdown-tablet .elementor-nav-menu--main{display:block!important}
}

/* Forside: farvet sidste boks med link til alle ydelser og en pil, der skubber sig frem */
.mbj-allsvc{transition:background-color .18s ease}
.mbj-allsvc:hover,.mbj-allsvc:focus-visible{background-color:#17603D!important}
.mbj-allsvc .mbj-arrow{display:block;color:#FFFFFF;width:48px;height:48px}
.mbj-allsvc .mbj-arrow svg{display:block;width:100%;height:100%;animation:mbj-nudge 1.8s ease-in-out infinite}
.mbj-allsvc:hover .mbj-arrow svg,.mbj-allsvc:focus-visible .mbj-arrow svg{animation-duration:.8s}
@keyframes mbj-nudge{0%,100%{transform:translateX(0)}50%{transform:translateX(10px)}}
@media (prefers-reduced-motion:reduce){.mbj-allsvc .mbj-arrow svg{animation:none}}

/* Footer: diskret link til webbureauet i samme farve som footer-teksten */
body .elementor .mbj-credit{display:flex;align-items:center;height:29px;margin-bottom:.9rem;color:#A9C4D3;transition:color .2s ease}
body .elementor .mbj-credit:hover,body .elementor .mbj-credit:focus-visible{color:#FFFFFF}
.mbj-credit svg{display:block}

/* Forside- og Ydelser-hero på mobil: samme varme espresso-tone som desktop (WCAG-kontrast målt 23. okt. 2026) */
@media (max-width:767px){
  body .e-con.mbj-hero.elementor-element-ee9f3ab::before,body .e-con.mbj-hero.elementor-element-3368df5::before{background-image:linear-gradient(180deg,rgba(43,27,18,.82) 0%,rgba(43,27,18,.68) 100%)!important}
}/* End custom CSS */