.elementor-kit-6{--e-global-color-primary:#D62030;--e-global-color-secondary:#17191D;--e-global-color-text:#54595F;--e-global-color-accent:#DDD9D1;--e-global-color-lmpaper2:#D1CCC3;--e-global-color-lmpaper3:#C5BFB5;--e-global-color-lminks:#23262B;--e-global-color-lmreddk:#B4151F;--e-global-color-lmrule:rgba(23,25,29,0.20);--e-global-color-lmond:#B9BEC6;--e-global-color-lmond2:#9AA1AA;--e-global-color-lmwa:#25D366;--e-global-typography-primary-font-family:"Space Grotesk";--e-global-typography-primary-font-weight:500;--e-global-typography-secondary-font-family:"Space Grotesk";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"IBM Plex Mono";--e-global-typography-accent-font-weight:500;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-letter-spacing:0.1em;background-color:#DDD9D1;color:#23262B;font-family:"Inter", Sans-serif;font-size:17px;font-weight:400;line-height:1.62em;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{background-color:#17191D;font-family:"Space Grotesk", Sans-serif;font-size:15.5px;font-weight:600;line-height:1.2em;color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-color:#17191D;border-radius:4px 4px 4px 4px;}.elementor-kit-6 button:hover,.elementor-kit-6 button:focus,.elementor-kit-6 input[type="button"]:hover,.elementor-kit-6 input[type="button"]:focus,.elementor-kit-6 input[type="submit"]:hover,.elementor-kit-6 input[type="submit"]:focus,.elementor-kit-6 .elementor-button:hover,.elementor-kit-6 .elementor-button:focus{background-color:#D62030;color:#FFFFFF;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{color:#17191D;}.elementor-kit-6 a:hover{color:#D62030;}.elementor-kit-6 h1{color:#17191D;font-family:"Space Grotesk", Sans-serif;font-size:92px;font-weight:500;line-height:1.08em;letter-spacing:-0.04em;}.elementor-kit-6 h2{color:#17191D;font-family:"Space Grotesk", Sans-serif;font-size:50px;font-weight:500;line-height:1.08em;letter-spacing:-0.035em;}.elementor-kit-6 h3{color:#17191D;font-family:"Space Grotesk", Sans-serif;font-size:23px;font-weight:700;line-height:1.08em;letter-spacing:-0.02em;}.elementor-kit-6 h4{color:#17191D;font-family:"Space Grotesk", Sans-serif;font-size:17px;font-weight:700;line-height:1.08em;letter-spacing:-0.01em;}.elementor-kit-6 h5{color:#17191D;font-family:"Space Grotesk", Sans-serif;font-size:15px;font-weight:600;line-height:1.08em;letter-spacing:0em;}.elementor-kit-6 h6{color:#54595F;font-family:"Space Grotesk", Sans-serif;font-size:13px;font-weight:600;text-transform:uppercase;line-height:1.08em;letter-spacing:0.06em;}.elementor-kit-6 img{border-style:none;border-radius:6px 6px 6px 6px;}.elementor-kit-6 label{color:#54595F;font-family:"IBM Plex Mono", Sans-serif;font-size:11.5px;font-weight:500;text-transform:uppercase;letter-spacing:0.09em;}.elementor-kit-6 input:not([type="button"]):not([type="submit"]),.elementor-kit-6 textarea,.elementor-kit-6 .elementor-field-textual{font-family:"Inter", Sans-serif;font-size:16.5px;font-weight:400;color:#17191D;background-color:rgba(0,0,0,0);border-style:solid;border-width:0px 0px 1px 0px;border-color:rgba(23,25,29,0.20);border-radius:0px 0px 0px 0px;}.elementor-kit-6 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-6 textarea:focus,.elementor-kit-6 .elementor-field-textual:focus{color:#17191D;background-color:rgba(0,0,0,0);border-style:solid;border-width:0px 0px 1px 0px;border-color:#D62030;border-radius:0px 0px 0px 0px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1320px;}.e-con{--container-max-width:1320px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.elementor-lightbox{background-color:rgba(23,25,29,0.92);--lightbox-ui-color:rgba(255,255,255,0.75);--lightbox-ui-color-hover:#FFFFFF;--lightbox-text-color:#FFFFFF;}@media(max-width:1024px){.elementor-kit-6 h1{font-size:69px;}.elementor-kit-6 h2{font-size:37px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-6{font-size:16px;}.elementor-kit-6 h1{font-size:50px;}.elementor-kit-6 h2{font-size:27px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ===================== Looman - ontwerpsysteem (v4) ===================== */
:root{
  --lm-paper:#DDD9D1; --lm-paper-2:#D1CCC3; --lm-paper-3:#C5BFB5;
  --lm-ink:#17191D; --lm-ink-soft:#23262B; --lm-graphite:#54595F;
  --lm-red:#D62030; --lm-red-dark:#B4151F; --lm-wa:#25D366;
  /* dezelfde kleuren, dieper, voor kleine tekst op licht papier (WCAG AA) */
  --lm-red-txt:#A8121C; --lm-graphite-aa:#4A4F55;
  --lm-rule:rgba(23,25,29,0.20); --lm-rule-soft:rgba(23,25,29,0.10);
  --lm-rule-w:rgba(255,255,255,0.16); --lm-rule-w2:rgba(255,255,255,0.28);
  --lm-ondark:#B9BEC6; --lm-ondark2:#9AA1AA;
  --lm-streep:repeating-linear-gradient(115deg,#D62030 0 7px,transparent 7px 14px);
  --lm-r:6px;
}
/* Elementor zet zelf scroll-behavior:smooth; daardoor voert Chrome de sprong naar een
   #anker bij het laden van de pagina niet uit. */
html{scroll-behavior:auto!important}
[id]{scroll-margin-top:110px}
body{overflow-x:hidden}
::selection{background:#D62030;color:#fff}

h1 em,h2 em,h3 em{font-style:normal;color:var(--lm-red)}
strong{color:var(--lm-ink);font-weight:600}
.lm-sec--ink strong{color:#fff}
@media(max-width:767px){h1,h2,h3{overflow-wrap:break-word;hyphens:auto;-webkit-hyphens:auto}}
p a,li a{overflow-wrap:anywhere}
.lm-foot .elementor-heading-title,.lm-naw .elementor-heading-title,
.elementor.elementor .lm-topbar .elementor-heading-title{overflow-wrap:anywhere}
@media(max-width:1024px){.elementor.elementor .elementor-heading-title{overflow-wrap:break-word}}
.elementor.elementor .elementor-field-group{min-width:0}
.elementor.elementor .elementor-form .elementor-form-fields-wrapper{max-width:100%}

/* --------------------------- secties en vormlaag ------------------------- */
.lm-sec{position:relative}
.lm-sec--alt{background:var(--lm-paper-2)}
.lm-sec--ink{background:var(--lm-ink)}
.lm-sec--pre{padding-bottom:156px!important}
@media(max-width:1024px){.lm-sec--pre{padding-bottom:123px!important}}
.lm-wig::before{content:"";position:absolute;left:0;right:0;top:-44px;height:45px;
  background:var(--lm-ink);clip-path:polygon(0 100%,100% 0,100% 100%,0 100%);z-index:0}
.lm-wig--op::before{clip-path:polygon(0 0,100% 100%,100% 100%,0 100%)}
.lm-sec>.e-con-inner,.lm-sec>*{position:relative;z-index:1}
@media(max-width:640px){
  .lm-sec--pre{padding-bottom:80px!important}
  .lm-wig{margin-top:22px}
  .lm-wig::before{top:-22px;height:23px}
}
/* technisch raster als watermerk */
.lm-raster{overflow:hidden}
.lm-raster::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;z-index:0;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:72px 72px;
  -webkit-mask-image:radial-gradient(120% 90% at 100% 0%,#000 0%,transparent 62%);
          mask-image:radial-gradient(120% 90% at 100% 0%,#000 0%,transparent 62%)}
.lm-raster--lo::after{-webkit-mask-image:radial-gradient(110% 90% at 0% 100%,#000 0%,transparent 60%);
          mask-image:radial-gradient(110% 90% at 0% 100%,#000 0%,transparent 60%)}
@media(max-width:640px){.lm-raster::after{background-size:52px 52px}}

/* ------------------------------- sectiekop ------------------------------- */
.lm-shead{display:grid!important;grid-template-columns:minmax(0,180px) minmax(0,1fr);
  gap:40px!important;align-items:start;margin-bottom:64px}
.lm-shead__n{grid-column:1;grid-row:1/span 2}
.elementor.elementor .lm-shead__n .elementor-heading-title::before{content:"";display:block;height:12px;width:78px;
  background:var(--lm-streep);margin-bottom:16px}
.lm-shead__t{grid-column:2;grid-row:1}
.elementor.elementor .lm-shead__t .elementor-heading-title{max-width:20ch}
.lm-shead__s{grid-column:2;grid-row:2;max-width:60ch}
@media(max-width:1024px){
  .lm-shead{grid-template-columns:1fr;gap:18px!important;margin-bottom:44px}
  .lm-shead__n,.lm-shead__t,.lm-shead__s{grid-column:1;grid-row:auto}
}

/* --------------------------------- knoppen ------------------------------- */
.elementor.elementor .elementor-button{transition:.16s ease}
.elementor.elementor .elementor-button .elementor-button-content-wrapper{display:flex;align-items:center;justify-content:center;gap:11px}
.elementor.elementor .elementor-button .elementor-button-icon{display:flex;align-items:center}
.elementor.elementor .elementor-button .elementor-button-icon svg{display:block;height:1em;width:auto}
.elementor.elementor .lm-btn .elementor-button{white-space:nowrap}
.lm-btns{margin-top:36px}
.lm-btns>*{flex:0 0 auto}
@media(max-width:767px){
  /* De widget-CSS van de pagina zet flex-direction op de container zelf en staat later
     in hetzelfde stylesheet; daarom hier met !important. */
  .lm-btns{flex-direction:column!important;flex-wrap:nowrap!important;align-items:stretch!important}
  .lm-btns>*{width:100%!important;max-width:100%!important}
.elementor.elementor .lm-btns .elementor-button{width:100%;justify-content:center;white-space:normal}
}
.elementor.elementor .lm-alink .elementor-button{padding-left:0;padding-right:0}
.elementor.elementor .lm-alink .elementor-button-icon svg{width:15px;height:15px;color:var(--lm-red);transition:transform .16s ease}
.elementor.elementor .lm-alink .elementor-button:hover .elementor-button-icon svg{transform:translateX(4px)}

/* ------------------------------- iconen ---------------------------------- */
.elementor.elementor .elementor-widget-icon .elementor-icon-wrapper,.elementor.elementor .elementor-widget-icon .elementor-icon{
  display:flex;align-items:center;justify-content:center;line-height:0}
.elementor.elementor .elementor-widget-icon svg,.elementor.elementor .elementor-widget-icon i{display:block}

/* ------------------------------- afbeeldingen ---------------------------- */
.lm-img img{width:100%;display:block;object-fit:cover;border-radius:var(--lm-r)}
.lm-img-hero img{height:clamp(360px,56vh,640px)}
.lm-img-duo img{height:clamp(300px,42vw,520px)}
.lm-img-pfig img{height:clamp(260px,38vw,480px)}
@media(max-width:640px){.lm-img-hero img,.lm-img-duo img,.lm-img-pfig img{height:300px}}
.lm-fig{position:relative}
.lm-fig::before{content:"";position:absolute;left:-24px;top:-24px;width:150px;height:150px;
  background:var(--lm-streep);opacity:.9;z-index:0}
.lm-fig .lm-img img{position:relative;z-index:1;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.lm-fig:hover .lm-img img{transform:scale(1.02)}
@media(max-width:1180px){.lm-fig::before{width:110px;height:110px;left:-14px;top:-14px}}
@media(max-width:640px){.lm-fig::before{width:84px;height:84px}}

/* ------------------------------ bijschriften ----------------------------- */
.lm-figcap,.lm-figcap p{display:flex;gap:28px;align-items:baseline;margin:0}
.lm-figcap span:first-child{color:#fff}
.lm-figcap--licht{border-top:1px solid var(--lm-rule);padding-top:14px}
.lm-figcap--licht span:first-child{color:var(--lm-red)}
@media(max-width:640px){.lm-figcap,.lm-figcap p{flex-direction:column;gap:4px}}

/* ---------------------------------- hero --------------------------------- */
.lm-hero__meta,.lm-hero__meta p{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0}
.lm-hero__meta::after{content:"";height:1px;flex:1;min-width:40px;background:rgba(255,255,255,.18)}
.lm-hero h1{margin-bottom:0}
.lm-herofig{position:relative}
@media(min-width:1181px){
  .lm-bleed{margin-right:calc(50% - 50vw + 6px)}
  .lm-herofig .lm-figcap{position:absolute;left:0;top:16px;z-index:2;width:auto;max-width:70%;
    background:rgba(23,25,29,.74);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);
    padding:11px 20px;border-radius:0 4px 4px 0}
  .lm-specs--over{margin-top:-92px!important;z-index:2;max-width:980px;
    background:var(--lm-ink);box-shadow:0 26px 60px rgba(0,0,0,.35)}
}
.lm-specs{display:grid!important;grid-template-columns:repeat(4,1fr);gap:0!important;
  border-top:1px solid var(--lm-rule-w);border-left:1px solid var(--lm-rule-w)}
.lm-spec{border-right:1px solid var(--lm-rule-w);border-bottom:1px solid var(--lm-rule-w)}
.lm-spec sup{font-size:16px;color:var(--lm-red);vertical-align:super;margin-left:3px;font-weight:600}
@media(max-width:1024px){.lm-specs{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.lm-specs{grid-template-columns:1fr}}

/* ------------------------------ vinkjeslijst ----------------------------- */
.lm-checks{margin-top:26px}
.elementor.elementor .lm-checks .elementor-icon-list-items{border-top:1px solid var(--lm-rule)}
.elementor.elementor .lm-checks .elementor-icon-list-item{padding:16px 0;align-items:flex-start;
  border-bottom:1px solid var(--lm-rule)}
.elementor.elementor .lm-checks .elementor-icon-list-icon{margin-top:4px}
.lm-checks strong{color:var(--lm-ink);font-weight:600}
.elementor.elementor .lm-checks--dark .elementor-icon-list-items,.elementor.elementor .lm-checks--dark .elementor-icon-list-item{
  border-color:var(--lm-rule-w)}
.lm-checks--dark strong{color:#fff}

/* ------------------------------ dienstenlijst ---------------------------- */
.lm-index{border-top:1px solid var(--lm-rule)}
.lm-index__row{display:grid!important;grid-template-columns:70px minmax(0,1.1fr) minmax(0,1.5fr) 44px;
  gap:32px!important;align-items:center;padding:30px 0!important;
  border-bottom:1px solid var(--lm-rule);transition:.16s ease;text-decoration:none}
.lm-index__row:hover{background:var(--lm-paper-2);padding-left:14px!important;padding-right:14px!important}
.elementor.elementor .lm-index__n .elementor-heading-title{display:inline-flex;align-items:center;justify-content:center;
  width:40px;height:40px;border:1px solid var(--lm-rule);border-radius:50%;font-size:11px;transition:.18s}
.elementor.elementor .lm-index__row:hover .lm-index__n .elementor-heading-title{border-color:var(--lm-red);
  background:var(--lm-red);color:#fff}
.elementor.elementor .lm-index__a .elementor-icon{width:40px;height:40px;border:1px solid var(--lm-rule);border-radius:50%;
  display:flex;align-items:center;justify-content:center;transition:.18s ease;margin-left:auto}
.elementor.elementor .lm-index__row:hover .lm-index__a .elementor-icon{background:var(--lm-red);border-color:var(--lm-red);
  transform:rotate(-45deg) scale(1.06)}
.elementor.elementor .lm-index__row:hover .lm-index__a .elementor-icon svg{fill:#fff;color:#fff}
.lm-sec--ink .lm-index{border-top-color:var(--lm-rule-w)}
.lm-sec--ink .lm-index__row{border-bottom-color:var(--lm-rule-w)}
.elementor.elementor .lm-sec--ink .lm-index__n .elementor-heading-title,.elementor.elementor .lm-sec--ink .lm-index__a .elementor-icon{border-color:var(--lm-rule-w)}
.elementor.elementor .lm-sec--ink .lm-index__row:not(:hover) > .elementor-widget-heading:not(.lm-index__n) .elementor-heading-title{color:#fff}
.lm-sec--ink .lm-index__row:not(:hover) .lm-index__d,.lm-sec--ink .lm-index__row:not(:hover) .lm-index__d p{color:var(--lm-ondark2)}
.lm-index__d,.lm-index__d p{margin:0}
@media(max-width:1024px){
  .lm-index__row{grid-template-columns:44px 1fr 34px;gap:18px!important}
  .lm-index__d{display:none}
}

/* --------------------------------- kranen -------------------------------- */
.lm-crane__top{border-top:2px solid #fff;padding-top:22px}
.elementor.elementor .lm-crane__tag .elementor-heading-title{border:1px solid var(--lm-rule-w2);border-radius:999px;
  padding:5px 13px;line-height:1;display:inline-block}
.lm-tabel table{width:100%;border-collapse:collapse;margin:0;border:0}
.lm-tabel td{padding:12px 2px;border:0;border-bottom:1px solid var(--lm-rule-w);font-size:15.5px;
  color:var(--lm-ondark2)}
.lm-tabel td:last-child{text-align:right;color:#fff;font-family:"Space Grotesk",sans-serif;
  font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}
.lm-tabel--l td{border:0;border-bottom:1px solid var(--lm-rule);color:var(--lm-graphite)}
.lm-tabel--l td:last-child{color:var(--lm-ink)}
.elementor.elementor .lm-sec--alt .lm-crane__tag .elementor-heading-title{border-color:var(--lm-rule)}

/* -------------------------------- werkgebied ----------------------------- */
.lm-places{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:0!important;
  border-top:1px solid var(--lm-rule);border-left:1px solid var(--lm-rule)}
.lm-place{border-right:1px solid var(--lm-rule);border-bottom:1px solid var(--lm-rule);
  transition:.18s ease}
.lm-place:hover{background:var(--lm-ink);transform:translateY(-2px)}
.lm-place .lm-place__i{display:flex;justify-content:space-between;align-items:baseline;gap:14px;
  padding:20px 22px;margin:0}
.lm-place .lm-place__i span:first-child{font-family:"Space Grotesk",sans-serif;font-weight:500;
  font-size:17px;letter-spacing:-.02em;color:var(--lm-ink)}
.lm-place:hover .lm-place__i span:first-child{color:#fff}
.lm-place:hover .lm-place__i span:last-child{color:var(--lm-red)}
@media(max-width:1180px){.lm-places{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.lm-places{grid-template-columns:1fr}}

/* --------------------------------- stappen ------------------------------- */
.lm-steps{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:0!important;
  border-top:1px solid var(--lm-rule-w)}
.lm-step{padding:34px 34px 34px 0!important;border-right:1px solid var(--lm-rule-w)}
.lm-step:last-child{border-right:0}
.lm-step:not(:first-child){padding-left:34px!important}
.elementor.elementor .lm-step__n .elementor-heading-title{display:inline-flex;align-items:center;gap:10px}
.elementor.elementor .lm-step__n .elementor-heading-title::before{content:"";width:9px;height:9px;border-radius:50%;
  background:var(--lm-red);flex:0 0 auto}
.lm-steps--l{border-top-color:var(--lm-rule)}
.lm-steps--l .lm-step{border-right-color:var(--lm-rule)}
@media(max-width:1024px){
  .lm-steps--l .lm-step{border-bottom-color:var(--lm-rule)}
}
@media(max-width:1024px){
  .lm-steps{grid-template-columns:1fr}
  .lm-step{border-right:0;border-bottom:1px solid var(--lm-rule-w);padding:28px 0!important}
  .lm-step:not(:first-child){padding-left:0!important}
}

/* ----------------------------------- faq --------------------------------- */
.elementor.elementor .lm-faq .elementor-accordion{border-top:1px solid var(--lm-rule)}
.elementor.elementor .lm-faq .elementor-accordion-item{border:0;border-bottom:1px solid var(--lm-rule)}
.elementor.elementor .lm-faq .elementor-tab-title{padding:26px 0!important;background:none!important}
.elementor.elementor .lm-faq .elementor-tab-content{padding:0 0 28px!important;background:none!important;
  border:0!important;max-width:74ch}
.lm-faq .e-n-accordion-item{border-bottom:1px solid var(--lm-rule)}
.lm-faq summary{cursor:pointer}

/* ---------------------------------- tegels ------------------------------- */
.lm-tiles{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:0!important;
  border-top:1px solid var(--lm-rule);border-left:1px solid var(--lm-rule)}
.lm-tile{padding:34px 30px!important;border-right:1px solid var(--lm-rule);
  border-bottom:1px solid var(--lm-rule);transition:.16s}
.lm-tile:hover{background:var(--lm-paper-2)}
.elementor.elementor .lm-tile__n .elementor-heading-title{display:inline-flex;align-items:center;justify-content:center;
  box-sizing:border-box;min-width:34px;width:auto;height:34px;padding:0 8px;border-radius:999px;
  background:var(--lm-red);color:#fff!important;font-size:11px}
@media(max-width:1180px){.lm-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.lm-tiles{grid-template-columns:1fr}}

/* ------------------------------ kraan met foto ---------------------------- */
.lm-crane__specs{display:grid!important;grid-template-columns:minmax(0,36fr) minmax(0,64fr);gap:24px!important;align-items:start;margin:22px 0 24px!important}
.lm-crane__foto{background:#fff;border-radius:var(--lm-r);padding:10px!important}
.lm-img-product img{aspect-ratio:1/1;height:auto!important;object-fit:contain!important;background:#fff}
@media(max-width:767px){.lm-crane__specs{grid-template-columns:1fr;gap:18px!important}.lm-crane__foto .lm-img-product img{height:220px!important;aspect-ratio:auto}}

/* -------------------------------- hulpstukken ----------------------------- */
.lm-hulpen{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px!important}
.lm-hulp.lm-werkitem .lm-img img{height:clamp(200px,17vw,250px)}
.lm-hulp .lm-img-product{background:#fff;border-radius:var(--lm-r)}
.lm-hulp.lm-werkitem .lm-img-product img{aspect-ratio:auto;height:clamp(200px,17vw,250px)!important;padding:14px;box-sizing:border-box}
@media(max-width:1024px){.lm-hulpen{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.lm-hulpen{grid-template-columns:1fr}}

/* --------------------------------- ons werk ------------------------------ */
.elementor.elementor .lm-werk .elementor-loop-container{display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.lm-werkitem .lm-img img{height:clamp(220px,22vw,300px);
  transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.lm-werkitem:hover .lm-img img{transform:scale(1.02)}
.lm-werkitem__cap{border-top:1px solid var(--lm-rule-w);padding-top:14px!important;margin-top:14px}
.lm-werkitem--l .lm-werkitem__cap{border-top-color:var(--lm-rule)}
@media(max-width:1024px){.elementor.elementor .lm-werk .elementor-loop-container{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}}
@media(max-width:640px){.elementor.elementor .lm-werk .elementor-loop-container{grid-template-columns:1fr}}

/* -------------------------------- formulier ------------------------------ */
.lm-form{background:var(--lm-paper);border-radius:var(--lm-r)}
.lm-form h3,.lm-form h4{color:var(--lm-ink)}
.elementor.elementor .lm-form .elementor-field-label{font-family:"IBM Plex Mono",monospace!important;font-size:11.5px!important;
  letter-spacing:.09em;text-transform:uppercase;color:var(--lm-graphite)!important;margin-bottom:8px!important}
.elementor.elementor .lm-form .elementor-field-textual{background:transparent!important;border:0!important;
  border-bottom:1px solid var(--lm-rule)!important;border-radius:0!important;padding:11px 0!important;
  color:var(--lm-ink)!important;font-size:16.5px!important;box-shadow:none!important}
.elementor.elementor .lm-form textarea.elementor-field-textual{border:1px solid var(--lm-rule)!important;
  padding:12px 14px!important;min-height:110px}
.elementor.elementor .lm-form .elementor-field-textual:focus{outline:0;border-color:var(--lm-red)!important}
.elementor.elementor .lm-form select.elementor-field-textual{appearance:none;-webkit-appearance:none;
  background-image:linear-gradient(45deg,transparent 50%,var(--lm-ink) 50%),
                   linear-gradient(135deg,var(--lm-ink) 50%,transparent 50%)!important;
  background-position:calc(100% - 13px) 21px,calc(100% - 8px) 21px!important;
  background-size:5px 5px,5px 5px!important;background-repeat:no-repeat!important}
.elementor.elementor .lm-form .elementor-button{width:100%;justify-content:center;border-radius:4px}

/* ------------------------------- contactlijst ---------------------------- */
.lm-naw{display:grid!important;grid-template-columns:130px minmax(0,1fr);gap:0 20px!important;
  align-items:baseline;border-top:1px solid var(--lm-rule-w);margin-top:34px}
.lm-naw>*{padding:16px 0;border-bottom:1px solid var(--lm-rule-w)}
.elementor.elementor .lm-naw .lm-nawlbl .elementor-heading-title{color:#7E858E}
.lm-naw a:hover{color:var(--lm-red)}
@media(max-width:640px){
  .lm-naw{grid-template-columns:1fr}
  .lm-naw>.lm-nawlbl{padding:16px 0 0;border-bottom:0}
  .lm-naw>.lm-nawval{padding:4px 0 16px}
}

/* --------------------------------- header -------------------------------- */
.elementor.elementor .elementor-location-header{position:relative;z-index:999}
.elementor.elementor .elementor-location-header .e-con,.elementor.elementor .elementor-location-header .e-con-inner{overflow:visible}
.elementor.elementor .elementor-nav-menu--dropdown,.elementor.elementor .elementor-nav-menu .sub-menu{z-index:1000}
.lm-topbar,.lm-topbar a{color:var(--lm-ondark2)}
.lm-topbar a:hover{color:#fff}
.elementor.elementor .lm-topbar .elementor-icon svg{fill:var(--lm-red);color:var(--lm-red)}
.elementor.elementor .lm-topbar .elementor-heading-title{white-space:nowrap}
.elementor.elementor .lm-nav .elementor-nav-menu--main .elementor-item{padding-left:10px!important;padding-right:10px!important;font-size:11.5px!important}
.elementor.elementor .lm-nav .elementor-nav-menu--main .elementor-item.elementor-item-active::before{content:"";
  width:5px;height:5px;background:var(--lm-red);border-radius:50%;margin-right:7px;display:inline-block}
.elementor.elementor .lm-nav .elementor-nav-menu a{white-space:nowrap}
.lm-nav .sub-arrow{margin-left:7px;opacity:.55}
.lm-nav .sub-arrow svg{width:9px;height:9px}
.elementor.elementor .lm-nav .elementor-menu-toggle{background:transparent!important;border:0!important;
  border-radius:0!important;box-shadow:none!important;padding:6px}
.elementor.elementor .lm-nav .elementor-menu-toggle i,.elementor.elementor .lm-nav .elementor-menu-toggle svg{color:#fff!important;fill:#fff!important}
@media(min-width:1025px){.lm-nav .elementor-nav-menu--dropdown{min-width:290px;
  border:1px solid var(--lm-rule-w);box-shadow:0 22px 44px rgba(0,0,0,.35)}}
@media(max-width:1024px){.elementor.elementor .lm-nav .elementor-nav-menu--dropdown a{padding:15px 24px}}
/* het telefoonnummer staat al in de topbalk; in de header alleen op zeer brede
   schermen, anders breekt het hoofdmenu over twee regels */
@media(max-width:1600px){.lm-hdr-tel{display:none!important}}
@media(max-width:1180px){.lm-topbar-r{display:none!important}}
@media(max-width:640px){.lm-topbar-l{justify-content:flex-start}}

/* --------------------------------- footer -------------------------------- */
.lm-foot ul{list-style:none;padding:0;margin:0;display:grid;gap:11px}
.lm-foot li{margin:0}
.lm-foot a{color:inherit}
.lm-foot a:hover{color:#fff}
.lm-foot p{margin:0}
.lm-uren p{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin:0;
  padding:11px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.lm-uren p:last-child{border-bottom:0}
.lm-uren strong{font-weight:400;color:#fff;white-space:nowrap;font-variant-numeric:tabular-nums}
.lm-adres p{margin:0}
.lm-footbot{border-top:1px solid rgba(255,255,255,.12);margin-top:64px;padding:22px 0}
.lm-footlegal p{display:flex;gap:24px;flex-wrap:wrap;margin:0}
.elementor.elementor .lm-soc .elementor-social-icon{border-radius:50%!important;box-shadow:none}
.lm-credit::before{content:"|";margin-right:14px;opacity:.4}
@media(max-width:640px){.lm-credit::before{display:none}}

/* ------------------------- zwevende knoppen (mobiel) --------------------- */
.lm-wa{position:fixed!important;right:26px;bottom:26px;z-index:55;width:58px;height:58px;
  border-radius:50%;box-shadow:0 12px 28px rgba(20,22,26,.22);transition:transform .25s}
.lm-wa:hover{transform:translateY(-3px) scale(1.04)}
.elementor.elementor .lm-wa .elementor-icon{color:#fff}
.elementor.elementor .lm-wa .elementor-icon svg{width:28px;height:28px;fill:#fff}
.lm-mbar{position:fixed!important;left:0;right:0;bottom:0;z-index:58;display:none!important}
.elementor.elementor .lm-mbar .elementor-button{width:100%;justify-content:center;border-radius:0!important;
  border:0!important;padding:15px 8px!important}
.lm-mbar>*{flex:1 1 0;min-width:0}
.lm-mbar>*+*{border-left:1px solid rgba(255,255,255,.14)}
@media(max-width:640px){
  body{padding-bottom:54px}
  .lm-mbar{display:flex!important}
  .lm-wa{display:none!important}
}

/* -------------------------- beweging bij scrollen ------------------------ */
@media(prefers-reduced-motion:no-preference){
  .lm-rv{opacity:0;transform:translateY(16px);
    animation:lm-in .7s cubic-bezier(.2,.7,.2,1) forwards;animation-timeline:view();
    animation-range:entry 0% cover 22%}
}
@keyframes lm-in{to{opacity:1;transform:none}}

/* -------------------------------- subpagina ------------------------------- */
.lm-phead{border-top:1px solid rgba(255,255,255,0.16)}
.lm-pfig{margin-top:56px;padding-bottom:30px}
/* lucht tussen beeld en bijschrift: ook genoeg voor de 2% hover-schaal */
.lm-pfig .lm-figcap{border-top:1px solid var(--lm-rule-w);padding-top:16px;margin-top:18px}
.lm-figcap--licht{margin-top:18px}
.lm-sec--ink .lm-tiles,.lm-sec--ink .lm-tile{border-color:rgba(255,255,255,.14)}
.lm-sec--ink .lm-tile:hover{background:#1C1F25}

/* kolommenlijst: plaatsen, andere werkzaamheden */
.lm-pcols,.lm-pcols p{margin:0}
.lm-pcols{columns:4;column-gap:40px}
.lm-pcols a{display:block;padding:13px 0;border-bottom:1px solid var(--lm-rule);
  break-inside:avoid;color:var(--lm-graphite);font-size:15.5px;text-decoration:none;
  transition:color .16s}
.lm-pcols a:hover{color:var(--lm-red)}
@media(max-width:1024px){.lm-pcols{columns:2}}
@media(max-width:640px){.lm-pcols{columns:1}}

/* zijkolom naast een tekstblok */
.lm-aside{border-top:2px solid var(--lm-ink);padding-top:24px!important}
.lm-aside .lm-checks{margin:22px 0 0}

/* juridische pagina's */
.elementor.elementor .lm-legal .elementor-widget-heading .elementor-heading-title{font-size:26px}
.lm-legal p{color:var(--lm-graphite)}

/* --------------------------- plaatspagina's ------------------------------ */
.elementor.elementor .lm-plaatsen .elementor-loop-container{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0!important;border-top:1px solid var(--lm-rule);border-left:1px solid var(--lm-rule)}
.lm-plaatskaart{padding:20px 22px!important;border-right:1px solid var(--lm-rule);
  border-bottom:1px solid var(--lm-rule);transition:.16s}
.lm-plaatskaart:hover{background:var(--lm-paper-2)}
@media(max-width:1024px){.elementor.elementor .lm-plaatsen .elementor-loop-container{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.elementor.elementor .lm-plaatsen .elementor-loop-container{grid-template-columns:1fr}}
.elementor.elementor .lm-plaatsmeta .elementor-heading-title{color:var(--lm-red)}

/* ------------------------------ leesbaarheid ----------------------------- */
/* Rood en grafiet halen op de papierkleuren net geen 4.5:1. Op lichte secties
   gebruiken we de diepere varianten; op ink blijft alles zoals het was.
   Let op: .elementor-kit-6lijst op EEN regel, anders mist de .elementor-versterking. */
.elementor.elementor .lm-sec:not(.lm-sec--ink) .lm-shead__n .elementor-heading-title,.elementor.elementor .lm-sec:not(.lm-sec--ink) .lm-index__n .elementor-heading-title,.elementor.elementor .lm-sec:not(.lm-sec--ink) .lm-step__n .elementor-heading-title,.elementor.elementor .lm-sec:not(.lm-sec--ink) .lm-crane__tag .elementor-heading-title,.elementor.elementor .lm-sec:not(.lm-sec--ink) .lm-hero__meta,.elementor.elementor .lm-sec:not(.lm-sec--ink) .lm-hero__meta p,.elementor.elementor .lm-sec:not(.lm-sec--ink) .lm-figcap,.elementor.elementor .lm-sec:not(.lm-sec--ink) .lm-figcap p,.elementor.elementor .lm-sec:not(.lm-sec--ink) .lm-places .lm-place__i span:last-child,.elementor.elementor .lm-sec:not(.lm-sec--ink) .lm-faq .elementor-tab-title.elementor-active .elementor-accordion-title,.elementor.elementor .lm-sec:not(.lm-sec--ink) .lm-faq .elementor-tab-title.elementor-active a{color:var(--lm-red-txt)}
.elementor.elementor .lm-sec:not(.lm-sec--ink) .lm-shead__s,.elementor.elementor .lm-sec:not(.lm-sec--ink) .lm-shead__s p,.elementor.elementor .lm-sec:not(.lm-sec--ink) .lm-index__d,.elementor.elementor .lm-sec:not(.lm-sec--ink) .lm-index__d p,.elementor.elementor .lm-sec:not(.lm-sec--ink) .lm-tile p,.elementor.elementor .lm-sec:not(.lm-sec--ink) .lm-step p,.elementor.elementor .lm-sec:not(.lm-sec--ink) .lm-checks .elementor-icon-list-text,.elementor.elementor .lm-sec:not(.lm-sec--ink) .lm-tabel--l td,.elementor.elementor .lm-sec:not(.lm-sec--ink) .lm-aside p,.elementor.elementor .lm-sec:not(.lm-sec--ink) .elementor-widget-text-editor p{color:var(--lm-graphite-aa)}

/* --------------------------- toegankelijkheid ---------------------------- */
.skip-link.screen-reader-text:focus{position:fixed!important;left:16px!important;top:16px!important;
  z-index:100000;width:auto!important;height:auto!important;clip:auto!important;
  clip-path:none!important;padding:12px 20px;background:#fff;color:#17191D}/* End custom CSS */