.elementor .mobile-foot{padding-block-start:2rem;padding-block-end:0px;padding-inline-start:var(--gutter);padding-inline-end:var(--gutter);margin-block-start:auto;display:flex;flex-direction:column;gap:1rem;align-items:flex-start;& .btn { width: 100%; justify-content: flex-start; }\n}.elementor .mobile-secondary{padding-block-start:1rem;padding-block-end:0px;padding-inline-start:var(--gutter);padding-inline-end:var(--gutter);display:flex;flex-direction:row;flex-wrap:wrap;gap: 0 1.5rem; & a { color: var(--muted-dark); } & a:hover { color: var(--surface); }\n}.elementor .mobile-link{width:100%;min-height:56px;position:relative;font-family:var(--font-heading);font-weight:400;font-size:1.25rem;color:var(--surface);line-height:1.3;text-decoration:none;padding-block-start:10px;padding-block-end:10px;padding-inline-start:var(--gutter);padding-inline-end:var(--gutter);border-radius:0px;border-block-end-width:1px;background-color:transparent;display:flex;align-items:center;isolation: isolate; text-align: left; border-bottom-style: solid; border-bottom-color: var(--line-dark); &:hover, &:focus-visible { color: var(--surface); } &::before { content: ''; position: absolute; top: 6px; bottom: 6px; left: 0; right: 3rem; z-index: -1; background: var(--primary); clip-path: polygon(0 0, 0 0, -15px 100%, -15px 100%); transition: clip-path 320ms cubic-bezier(0.16, 1, 0.3, 1); } &:hover::before, &:focus-visible::before, &:active::before { clip-path: polygon(0 0, 100% 0, calc(100% - 15px) 100%, 0 100%); }\n}.elementor .mobile-sheet{position:fixed;inset-block-start:128px;inset-inline-end:0px;inset-block-end:0px;inset-inline-start:0px;z-index:40;color:var(--surface);padding-block-start:0.5rem;padding-block-end:calc(1.5rem + env(safe-area-inset-bottom, 0px));padding-inline-start:0px;padding-inline-end:0px;background-color:var(--navy);display:none;flex-direction:column;clip-path:polygon(0 0, 0 0, calc(0px - (100vh - 128px) * 0.3443) 100%, calc(0px - (100vh - 128px) * 0.3443) 100%);overflow-y: auto; visibility: hidden; transition: clip-path 380ms cubic-bezier(0.7, 0, 0.84, 0), visibility 0s 380ms;\n}.elementor .post-widgets{& .post-meta-line .elementor-heading-title { font-family: var(--font-body); font-size: var(--text-sm); font-weight: 400; line-height: 1.4; color: var(--muted); } & .post-meta-line .elementor-heading-title a, & .post-meta-light .elementor-heading-title a, & .post-card-title a { color: inherit; text-decoration: none; } & .post-meta-light .elementor-heading-title { font-family: var(--font-body); font-size: var(--text-sm); font-weight: 600; line-height: 1.4; color: var(--muted-dark); } & .post-figure-line .elementor-heading-title { font-family: var(--font-body); font-size: var(--text-sm); font-weight: 600; line-height: 1.4; color: var(--primary); padding-top: 0.5rem; } & .post-card-title .elementor-heading-title { font-family: var(--font-heading); font-weight: 500; font-size: var(--text-h3); line-height: 1.3; letter-spacing: -0.01em; color: var(--ink); transition: color 200ms; } & .card:hover .post-card-title .elementor-heading-title { color: var(--primary); } & .case-row .post-card-title .elementor-heading-title { font-size: clamp(1.5rem, 1.1rem + 1vw, 2.125rem); } & .post-hero-title .elementor-heading-title { font-family: var(--font-heading); font-weight: 500; font-size: clamp(2.125rem, 1.5rem + 1.8vw, 2.875rem); line-height: 1.1; letter-spacing: -0.01em; color: var(--surface); text-wrap: balance; } & .post-excerpt, & .post-excerpt p { color: var(--muted); font-family: var(--font-body); font-size: 1.0625rem; line-height: 1.65; margin: 0; } & .post-lead, & .post-lead p { font-family: var(--font-body); font-size: var(--text-lead); line-height: 1.6; color: var(--ink); margin: 0; } & .post-image-cover, & .post-image-cover .elementor-widget-container, & .post-image-cover img { width: 100%; height: 100%; } & .post-image-cover img { object-fit: cover; display: block; } & .fact .elementor-heading-title { font-family: var(--font-body); font-size: var(--text-base); font-weight: 600; line-height: 1.5; color: var(--ink); } & .fact-figure .elementor-heading-title { font-family: var(--font-heading); font-weight: 500; font-size: 1.75rem; color: var(--primary); } & .elementor-widget-theme-post-title, & .elementor-widget-theme-post-excerpt, & .elementor-widget-theme-post-featured-image { margin: 0; }\n}.elementor .fact{position:relative;padding-block-start:0px;padding-block-end:0px;padding-inline-start:calc(8px + 1rem);padding-inline-end:0px;display:flex;flex-direction:column;gap:2px;&::before { content: ''; position: absolute; left: 0; top: 0.55em; width: 8px; height: 8px; background: var(--primary); } & .help { font-size: var(--text-sm); color: var(--muted); } & .elementor-heading-title { font-family: var(--font-body); font-size: var(--text-base); font-weight: 600; line-height: 1.5; color: var(--ink); } & .elementor-heading-title a { color: inherit; text-decoration: none; } &:not(:has(.elementor-heading-title)) { display: none; }\n}.elementor .facts{padding:0px;margin-block-start:1.5rem;display:flex;flex-direction:column;gap:1rem;}.elementor .loop-cards{padding:0px;display:grid;gap:1.5rem;grid-template-columns:repeat(3, minmax(0, 1fr));grid-auto-rows:auto;& > * { padding: 0; }\n}.elementor .help{font-size:var(--text-sm);color:var(--muted);}.elementor .card-body{padding:1.5rem;display:flex;flex-direction:column;gap:0.5rem;flex:1 1 auto;& p { color: var(--muted); font-size: 1.0625rem; }\n}.elementor .card-media{aspect-ratio:4 / 3;}.elementor .card{position:relative;padding:0px;background-color:var(--surface);display:flex;flex-direction:column;&:hover .slant-swipe::after { transform: skewX(-19deg) translateX(0); } &:hover h3 { color: var(--primary); } &:hover .knop { background-size: 100% 100%, 100% 100%; color: var(--surface); } & .knop { margin-top: auto; } & .knop::after { content: ''; position: absolute; inset: 0; }\n}.elementor .prose{max-width:68ch;}.elementor .breadcrumb{font-size:var(--text-sm);color:var(--muted-dark);padding:0px;display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap: 4px 10px; & p, & a { font-size: var(--text-sm); color: var(--muted-dark); text-decoration: none; } & a:hover { color: var(--surface); text-decoration: underline; text-underline-offset: 4px; }\n}.elementor .footer-bottom{color:var(--muted-dark);padding-block-start:1.5rem;padding-block-end:0px;padding-inline-start:0px;padding-inline-end:0px;margin-block-start:3rem;border-block-start-width:1px;display:flex;flex-direction:row;gap:1rem;flex-wrap:wrap;justify-content:space-between;align-items:center;border-top-style: solid; border-top-color: var(--line-dark); & p { font-size: var(--text-sm); } & .footer-link { font-size: var(--text-sm); color: var(--muted-dark); } & .footer-link:hover { color: var(--surface); }\n}.elementor .footer-link:hover,.elementor .footer-link:focus-visible{color:var(--surface);text-decoration:underline;text-underline-offset: 4px;\n}.elementor .footer-link{min-height:36px;font-family:var(--font-body);font-weight:400;font-size:1rem;color:var(--surface);line-height:1.4;text-decoration:none;padding:0px;border-radius:0px;background-color:transparent;display:inline-flex;align-items:center;text-align: left;\n}.elementor .footer-col{padding:0px;display:flex;flex-direction:column;align-items:flex-start;& h2 { margin-bottom: 1rem; font-family: var(--font-body); font-size: 1rem; font-weight: 600; line-height: 1.4; color: var(--muted-dark); }\n}.elementor .footer-brand{padding:0px;display:flex;flex-direction:column;gap:1rem;& p { color: var(--muted-dark); font-size: 1rem; } & a { color: var(--surface); } & a:hover { color: var(--surface); text-decoration: underline; text-underline-offset: 4px; } & a[href^='tel'] { display: inline-flex; align-items: center; min-height: 44px; font-weight: 600; }\n}.elementor .footer-grid{padding:0px;display:grid;gap:2rem;grid-template-columns:1.4fr repeat(3, 1fr);grid-template-rows:auto;}.elementor .site-footer{color:var(--surface);padding-block-start:4rem;padding-block-end:1.5rem;padding-inline-start:0px;padding-inline-end:0px;background-color:var(--navy-deep);}.elementor .main-nav{width:auto;flex:1 1 auto;& .elementor-nav-menu--main .elementor-nav-menu { justify-content: center; } & .elementor-nav-menu--main .elementor-item { position: relative; display: inline-flex; align-items: center; min-height: 44px; padding: 0 0 0 14px; margin: 0 12px; font-family: var(--font-body); font-weight: 600; font-size: 1rem; color: var(--ink); white-space: nowrap; } & .elementor-nav-menu--main .elementor-item::before { content: ''; position: absolute; left: 0; top: 50%; width: 4px; height: 14px; margin-top: -7px; background: var(--primary); transform: skewX(-19deg) scaleY(0); transform-origin: bottom; transition: transform 200ms cubic-bezier(0.16, 1, 0.3, 1); opacity: 1; } & .elementor-nav-menu--main .elementor-item:hover, & .elementor-nav-menu--main .elementor-item.elementor-item-active, & .elementor-nav-menu--main .highlighted { color: var(--primary); } & .elementor-nav-menu--main .elementor-item:hover::before, & .elementor-nav-menu--main .elementor-item.elementor-item-active::before, & .elementor-nav-menu--main .highlighted::before { transform: skewX(-19deg) scaleY(1); } & .elementor-nav-menu--main .sub-menu { min-width: 17rem; padding: 0.5rem 0; background: var(--surface); border: 1px solid var(--line); box-shadow: 0 18px 40px -18px rgba(20, 23, 46, 0.35); } & .elementor-nav-menu--main .sub-menu .elementor-sub-item { position: relative; display: flex; min-height: 44px; align-items: center; padding: 0 20px 0 34px; font-family: var(--font-body); font-weight: 600; font-size: 1rem; color: var(--ink); background: transparent; border: 0; } & .elementor-nav-menu--main .sub-menu .elementor-sub-item::before { content: ''; position: absolute; left: 20px; top: 50%; width: 4px; height: 14px; margin-top: -7px; background: var(--primary); transform: skewX(-19deg) scaleY(0); transform-origin: bottom; transition: transform 200ms; } & .elementor-nav-menu--main .sub-menu .elementor-sub-item:hover { background: var(--surface-alt); color: var(--primary); } & .elementor-nav-menu--main .sub-menu .elementor-sub-item:hover::before, & .elementor-nav-menu--main .sub-menu .elementor-sub-item.elementor-item-active::before { transform: skewX(-19deg) scaleY(1); } & .sub-arrow svg { width: 12px; height: 12px; } & .elementor-menu-toggle { width: 48px; height: 48px; background: transparent; color: var(--ink); font-size: 24px; } & .elementor-nav-menu--dropdown { background: var(--navy); } & .elementor-nav-menu--dropdown a { min-height: 56px; padding: 10px var(--gutter); font-family: var(--font-heading); font-weight: 400; font-size: 1.25rem; color: var(--surface); background: var(--navy); border-bottom: 1px solid var(--line-dark); } & .elementor-nav-menu--dropdown a:hover, & .elementor-nav-menu--dropdown a.elementor-item-active { background: var(--primary); color: var(--surface); } & .elementor-nav-menu--main .elementor-item::before, & .elementor-nav-menu--main .elementor-sub-item::before { background-color: var(--primary) !important; } & .elementor-nav-menu--main .elementor-item:hover, & .elementor-nav-menu--main .elementor-item:focus-visible, & .elementor-nav-menu--main .elementor-item.highlighted, & .elementor-nav-menu--main .elementor-item.elementor-item-active, & .elementor-nav-menu--main .elementor-sub-item:hover, & .elementor-nav-menu--main .elementor-sub-item.elementor-item-active { color: var(--primary) !important; } & .elementor-nav-menu--main .menu-item-has-children { position: relative; } & .elementor-nav-menu--main .menu-item-has-children > .sub-menu { display: block !important; opacity: 0; visibility: hidden; transform: translateY(-6px); top: 100% !important; left: -20px !important; margin-top: 20px !important; margin-left: 0 !important; transition: opacity 200ms ease, transform 200ms cubic-bezier(0.16, 1, 0.3, 1), visibility 0s 200ms; } & .elementor-nav-menu--main .menu-item-has-children > .sub-menu::before { content: ''; position: absolute; left: 0; right: 0; bottom: 100%; height: 22px; } & .elementor-nav-menu--main .menu-item-has-children:hover > .sub-menu, & .elementor-nav-menu--main .menu-item-has-children:focus-within > .sub-menu { opacity: 1; visibility: visible; transform: none; transition: opacity 200ms ease, transform 200ms cubic-bezier(0.16, 1, 0.3, 1), visibility 0s; } & .elementor-nav-menu--main .sub-arrow svg { transition: transform 200ms cubic-bezier(0.16, 1, 0.3, 1); } & .elementor-nav-menu--main .menu-item-has-children:hover > a .sub-arrow svg, & .elementor-nav-menu--main .menu-item-has-children:focus-within > a .sub-arrow svg { transform: rotate(180deg); } & .elementor-nav-menu--main .menu-item-has-children:hover > a, & .elementor-nav-menu--main .menu-item-has-children:focus-within > a { color: var(--primary) !important; } & .elementor-nav-menu--main .menu-item-has-children:hover > a::before { transform: skewX(-19deg) scaleY(1); } & .elementor-nav-menu--dropdown { display: none !important; }\n}.elementor .icon-btn:hover,.elementor .icon-btn:focus-visible{color:var(--primary);}.elementor .icon-btn{width:48px;height:48px;min-width:48px;color:var(--navy);padding:0px;justify-content:center;align-items:center;& svg { width: 22px; height: 22px; } & svg, & svg * { fill: none; }\n}.elementor .header-actions{width:auto;padding:0px;display:flex;flex-direction:row;gap:12px;flex:0 0 auto;align-items:center;}.elementor .site-header-inner{min-height:84px;display:flex;flex-direction:row;gap:1.5rem;justify-content:space-between;align-items:center;}.elementor .site-header{padding:0px;border-block-end-width:1px;background-color:var(--surface);border-bottom-style: solid; border-bottom-color: var(--line); &:has(.elementor-menu-toggle.elementor-active) .mobile-sheet { visibility: visible; clip-path: polygon(0 0, calc(100% + (100vh - 128px) * 0.3443) 0, 100% 100%, 0 100%); transition: clip-path 640ms cubic-bezier(0.16, 1, 0.3, 1), visibility 0s; }\n}.elementor .show-tablet{display:none;}.elementor .utility-inner{min-height:44px;display:flex;flex-direction:row;gap:1rem;justify-content:space-between;align-items:center;}.elementor .utility{color:var(--muted-dark);padding:0px;background-color:var(--navy-deep);& p { font-size: var(--text-sm); }\n}.elementor .slant-swipe{overflow:hidden;position:relative;padding:0px;&::after { content: ''; position: absolute; top: 0; bottom: 0; left: -60%; width: 170%; background: rgba(21, 25, 76, 0.42); pointer-events: none; transform: skewX(-19deg) translateX(-100%); transform-origin: bottom left; transition: transform 600ms cubic-bezier(0.16, 1, 0.3, 1); } &:hover::after { transform: skewX(-19deg) translateX(0); } & img { width: 100%; height: 100%; object-fit: cover; }\n}.elementor .hero-panel{max-width:56rem;position:relative;color:var(--surface);padding-block-start:clamp(2rem, 1rem + 3vw, 3.25rem);padding-block-end:clamp(2rem, 1rem + 3vw, 3.25rem);padding-inline-start:clamp(2rem, 1rem + 4vw, 4rem);padding-inline-end:clamp(2rem, 1rem + 4vw, 4rem);background-color:var(--navy);display:flex;flex-direction:column;gap:1rem;isolation: isolate; &::after { content: ''; position: absolute; z-index: -1; top: 0; bottom: 0; left: 50%; width: 50%; background: var(--navy); transform: skewX(-19deg); transform-origin: bottom left; } & h1 { max-width: 18em; }\n}.elementor .hero-body{position:relative;z-index:2;align-self:end;grid-area: 1 / 1 / 3 / 2;\n}.elementor .hero-photo{height:clamp(480px, 50vw, 700px);overflow:hidden;position:relative;padding:0px;background-color:var(--navy);grid-area: 1 / 1 / 2 / 2; & img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 100%; } isolation: isolate;\n}.elementor .hero{position:relative;padding:0px;display:grid;grid-template-columns:minmax(0, 1fr);grid-template-rows:clamp(480px, 50vw, 700px) clamp(7rem, 9vw, 9rem);overflow-x: clip;\n}.elementor .icon-18{width:18px;height:18px;display:block;flex:0 0 auto;fill: none; & svg, & svg *, &svg { fill: none; }\n}.elementor .knop:hover,.elementor .knop:focus-visible{color:var(--surface);background-size: 100% 100%, 100% 100%;\n}.elementor .knop{min-height:44px;font-family:var(--font-body);font-weight:600;font-size:var(--text-base);color:var(--primary);line-height:1.2;text-decoration:none;padding-block-start:0px;padding-block-end:0px;padding-inline-start:16px;padding-inline-end:31px;border-radius:0px;background-color:transparent;display:inline-flex;gap:12px;align-items:center;align-self:flex-start;text-align: left; background-image: linear-gradient(109deg, var(--primary) calc(100% - 14.3px), transparent calc(100% - 14.3px)), linear-gradient(109deg, var(--surface-alt) calc(100% - 14.3px), transparent calc(100% - 14.3px)); background-repeat: no-repeat, no-repeat; background-position: left, left; background-size: 0 100%, 100% 100%; transition: background-size 600ms cubic-bezier(0.16, 1, 0.3, 1), color 200ms;\n}.elementor .urgent-line{padding:0px;display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap: 4px 0.5rem; & a { margin-left: 0.5rem; }\n}.elementor .urgent-dot{width:8px;height:8px;min-width:8px;min-height:8px;padding:0px;border-radius:50%;background-color:var(--urgent);flex:0 0 auto;}.elementor .tel{& a { display: inline-flex; align-items: center; min-height: 44px; font-weight: 600; text-decoration: none; white-space: nowrap; color: inherit; } & a:hover { text-decoration: underline; text-underline-offset: 4px; } & a { color: var(--surface); } & a:hover { color: var(--surface); }\n}.elementor .link:hover,.elementor .link:focus-visible{color:var(--primary);text-underline-offset: 8px;\n}.elementor .link{min-height:44px;font-family:var(--font-body);font-weight:600;font-size:var(--text-base);color:var(--primary);text-decoration:underline;padding:0px;border-radius:0px;background-color:transparent;display:inline-flex;align-items:center;text-decoration-thickness: 1.5px; text-underline-offset: 5px; transition: text-underline-offset 200ms; text-align: left; & svg, & svg * { fill: none; }\n}.elementor .btn{width:auto;min-height:52px;max-width:100%;position:relative;font-family:var(--font-body);font-weight:600;font-size:1.0625rem;line-height:1.2;text-decoration:none;cursor:pointer;padding-block-start:0px;padding-block-end:0px;padding-inline-start:1.5rem;padding-inline-end:calc(1.5rem + 18px);border-radius:0px;border-width:0px;transition:background-color 200ms;display:inline-flex;gap:1rem;flex:0 0 auto;justify-content:center;align-items:center;clip-path:polygon(0 0, 100% 0, calc(100% - 18px) 100%, 0 100%);text-align: left; & svg { width: 18px; height: 18px; flex-shrink: 0; transition: transform 200ms; } &:hover svg { transform: translateX(4px); } isolation: isolate; & svg, & svg * { fill: none; } &::after { content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: #E1E4F2; clip-path: polygon(0 0, 0 0, -18px 100%, -18px 100%); transition: clip-path 320ms cubic-bezier(0.16, 1, 0.3, 1); } &:hover::after, &:focus-visible::after { clip-path: polygon(0 0, 100% 0, calc(100% - 18px) 100%, 0 100%); }\n}.elementor .muted-dark{color:var(--muted-dark);}.elementor .section-head{padding:0px;margin-block-end:3rem;display:flex;flex-direction:row;gap:1rem;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;& h2 { max-width: 20ch; }\n}.elementor .split-5-7{padding:0px;display:grid;gap:var(--gap-wide);grid-template-columns:minmax(0, 5fr) minmax(0, 7fr);align-items:center;}.elementor .row{padding:0px;display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap: 1rem 1.5rem;\n}.elementor .stack{padding:0px;display:flex;flex-direction:column;gap:1.5rem;}.elementor .band{scroll-margin-top:110px;color:var(--ink);padding-block-start:var(--space-section);padding-block-end:var(--space-section);padding-inline-start:0px;padding-inline-end:0px;background-color:var(--surface);}.elementor .container{width:100%;max-width:calc(var(--container) + 2 * var(--gutter));padding-block-start:0px;padding-block-end:0px;padding-inline-start:var(--gutter);padding-inline-end:var(--gutter);margin-block-start:0px;margin-block-end:0px;margin-inline-start:auto;margin-inline-end:auto;}.elementor .band-alt{background-color:var(--surface-alt);}.elementor .btn-sm{min-height:44px;font-size:1rem;padding-block-start:0px;padding-block-end:0px;padding-inline-start:1.5rem;padding-inline-end:calc(1.5rem + 15px);clip-path:polygon(0 0, 100% 0, calc(100% - 15px) 100%, 0 100%);white-space: nowrap; &::after { clip-path: polygon(0 0, 0 0, -15px 100%, -15px 100%); } &:hover::after, &:focus-visible::after { clip-path: polygon(0 0, 100% 0, calc(100% - 15px) 100%, 0 100%); }\n}.elementor .btn-primary:hover,.elementor .btn-primary:focus-visible{color:var(--surface);background-color:var(--primary);}.elementor .btn-primary{color:var(--surface);background-color:var(--primary);&::after { background: var(--navy-deep); }\n}.elementor .btn-light:hover,.elementor .btn-light:focus-visible{color:var(--navy);background-color:var(--surface);}.elementor .btn-light{color:var(--navy);background-color:var(--surface);&::after { background: #E1E4F2; }\n}.elementor .link-light{color:var(--surface);}.elementor .link-light:hover,.elementor .link-light:focus-visible{color:var(--surface);}.elementor .hero-photo-page{height:clamp(280px, 34vw, 460px);grid-area: auto;\n}.elementor .hero-body-page{margin-block-start:calc(-1 * (clamp(280px, 34vw, 460px) - 6rem));align-self:auto;grid-area: auto;\n}.elementor .hero-panel-page{max-width:52rem;gap:1rem;& h1 { font-size: clamp(2.125rem, 1.5rem + 1.8vw, 2.875rem); max-width: none; }\n}.elementor .hero-page{position:relative;padding:0px;background-color:var(--surface);display:block;overflow-x: clip;\n}