:root{--groen-primair:#154D36;--groen-primair-hover:#0F3A28;--groen-accent:#8FD3A9;--groen-mint:#EAF6EC;--groen-wit:#FFFFFF;--groen-tekst:#13241C;--groen-tekst-subtiel:#46705B;--groen-link:#1D7650;--groen-rand:#CFE3D5;}
:root{--wp--preset--font-family--sans:"DM Sans",sans-serif}
@font-face{font-family:"DM Sans";src:url(fonts/dm-sans-semibold.ttf) format("truetype");font-weight:600;font-display:swap}
@font-face{font-family:"Bricolage Grotesque";src:url(fonts/bricolage-grotesque.ttf) format("truetype");font-weight:200 800;font-display:swap}
@font-face{font-family:"DM Sans";src:url(fonts/dm-sans.ttf) format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:Gambarino;src:url(fonts/gambarino.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
body{margin:0;background:#fff;font-family:"DM Sans",sans-serif}.wp-site-blocks{padding:0}.wp-site-blocks>main{margin:0}.jsm-header{position:fixed;z-index:100;inset:0 0 auto;padding:22px 24px 20px;box-sizing:border-box;max-width:none!important}.jsm-logo{display:block;width:250px}.jsm-logo img{display:block;width:100%;height:auto}.jsm-hero{position:relative;isolation:isolate;overflow:hidden;margin:0!important;min-height:660px;height:78svh;max-height:820px;padding:130px 24px 85px;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(170deg,#154d36 37%,#13241c 100%);color:#ffffff}.jsm-hero-content{position:relative;z-index:2;width:100%;max-width:1100px;text-align:center;margin:auto!important}.jsm-hero h1{font-family:"Bricolage Grotesque",sans-serif;font-weight:600;font-size:clamp(40px,4.8vw,70px);line-height:1.08;letter-spacing:normal;color:#ffffff;margin:0}.jsm-hero h1 em{font-family:Gambarino,sans-serif;font-style:normal;font-weight:400;color:#fff;letter-spacing:normal}.jsm-intro{font-size:22px;font-weight:400;line-height:1.5;margin:28px auto 30px;color:#ffffff;max-width:900px}.jsm-hero .wp-block-buttons{gap:20px}.jsm-button .wp-block-button__link::after{content:"↗";display:grid;place-items:center;width:34px;height:34px;border-radius:7px;background:#ffffff26;font-size:32px;line-height:1;font-weight:400}.jsm-button a:focus-visible{outline:3px solid #ffffff;outline-offset:4px}.jsm-arc{position:absolute;inset:0;z-index:0;pointer-events:none;width:100%;height:100%}.jsm-arc path{fill:none;stroke:#ffffff0d;stroke-width:110;stroke-linecap:round;vector-effect:non-scaling-stroke}.jsm-placeholder{padding:100px 24px;color:#13241c}.jsm-placeholder h2{font-family:"Bricolage Grotesque",sans-serif}.editor-styles-wrapper .jsm-hero{min-height:660px}.editor-styles-wrapper .jsm-header{position:relative;background:#154d36}@media(hover:hover) and (pointer:fine){.jsm-button a:hover{background:#0f3a28;transform:none}}@media(max-width:767px){.jsm-header{padding:20px 20px 18px}.jsm-logo{width:170px}.jsm-hero{height:auto;min-height:620px;max-height:none;padding:140px 22px 75px}.jsm-hero h1{font-size:clamp(36px,8.5vw,54px);line-height:1.15}.jsm-intro{font-size:18px;margin:24px auto}.jsm-intro br{display:none}.jsm-hero .wp-block-buttons{gap:12px}.jsm-arc path{stroke-width:62}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Secondary CTA shares the Richway button geometry and Flow icon. */
.jsm-button-secondary {
    --rw-btn-bg: transparent;
    --rw-btn-text: #ffffff;
    --rw-btn-hover: #ffffff14;
    --rw-btn-hover-text: #ffffff;
}
.wp-block-button.jsm-button-secondary.is-style-rw-theme .wp-block-button__link {
    box-shadow: inset 0 0 0 1px #ffffff80;
}

/* The white content naturally scrolls over the pinned hero. */
body.home .jsm-hero {
    position: sticky;
    top: 0;
    z-index: 0;
}
.jsm-content-panel {
    position: relative;
    z-index: 2;
    min-height: 100svh;
    margin-top: -36px !important;
    border-radius: 36px 36px 0 0;
    overflow: clip;
    background: #fff;
    padding-top: 18px;
}
.editor-styles-wrapper .jsm-content-panel {
    margin-top: 0 !important;
}
@media (max-width: 767px) {
    .jsm-content-panel {
        margin-top: -24px !important;
        border-radius: 24px 24px 0 0;
    }
}
@media (prefers-reduced-motion: reduce) {
    body.home .jsm-hero { position: relative; }
}

/* One persistent header template across this site's pages. */
.jsm-header {
    transition: background-color 180ms ease, box-shadow 180ms ease;
}
.jsm-header.is-scrolled,
body:not(.home) .jsm-header {
    background: #154d36f2;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    box-shadow: 0 1px 0 #ffffff14;
}
body:not(.home) .wp-site-blocks > main { padding-top: 136px; }
body.admin-bar .jsm-header { top: 32px; }
:where([id]) { scroll-margin-top: 110px; }
@media (max-width: 782px) {
    body.admin-bar .jsm-header { top: 46px; }
}
@media (prefers-reduced-motion: reduce) {
    .jsm-header { transition: none; }
}



/* Site branding for the shared request flow. */
.rw-flow { background: radial-gradient(ellipse at 100% 0%, #154d3655, transparent 65%), #13241c; }

/* Editable homepage section scaffold. */
.jsm-section{box-sizing:border-box;max-width:1440px;margin:0 auto!important;padding:90px 40px;color:#13241c;border-bottom:1px solid #13241c14}
.jsm-section>p:first-child{font-size:12px;letter-spacing:.12em;font-weight:600;color:#0f3a28;margin-bottom:24px}
.jsm-section h2{font-size:clamp(30px,3.4vw,48px);line-height:1.16;max-width:900px;margin:0 0 28px}
.jsm-section>p{max-width:800px;font-size:19px;line-height:1.7}
.jsm-section .wp-block-buttons{margin-top:30px}
.jsm-package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:36px}
.jsm-package{display:flex;flex-direction:column;background:#eaf6ec;border:1px solid #cfe3d5;border-radius:20px;padding:28px}
.jsm-package h3{font-size:24px;margin:0 0 12px;line-height:1.25}
.jsm-package p{font-size:16px;line-height:1.5}
.jsm-package ul{padding-left:20px;font-size:15px;line-height:1.8;flex:1}
.jsm-package h4{font-size:22px;margin:24px 0 0}
.jsm-package .wp-block-buttons{margin-top:20px}
.jsm-project-placeholder{background:#eaf6ec;border-radius:18px;padding:130px 26px 26px;border:1px dashed #cfe3d5}
.jsm-project-placeholder h3{font-size:22px;line-height:1.3}
.jsm-project-placeholder p{font-size:14px;line-height:1.5}
.jsm-review-placeholder{padding:45px;background:#eaf6ec;border-radius:18px;color:#46705b}
.jsm-about-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.jsm-portrait-placeholder{display:grid;place-items:center;min-height:350px;border-radius:24px;background:#eaf6ec;color:#46705b}
.jsm-about-copy p{font-size:18px;line-height:1.7}
.jsm-section#contact{background:#eaf6ec;border-radius:28px;margin:50px auto!important;border:0}
@media(max-width:800px){.jsm-section{padding:60px 24px}.jsm-package-grid,.jsm-about-grid{grid-template-columns:1fr}.jsm-section#contact{margin:24px!important}.jsm-project-placeholder{padding-top:80px}}



/* Two matching sets keep the USP marquee seamless. */
:root{--jsm-topbar-height:48px}
.jsm-usp-bar{position:absolute;z-index:101;inset:0 0 auto;height:var(--jsm-topbar-height);overflow:hidden;background:#eaf6ec;color:#154d36;font-size:12px;line-height:1.3}
.jsm-usp-track{display:flex;width:max-content;animation:jsm-usp-scroll 64s linear infinite}
.jsm-usp-set{display:flex;flex-shrink:0;align-items:center}
.jsm-usp-item{display:flex;align-items:center;gap:14px;padding:0 46px;height:var(--jsm-topbar-height);white-space:nowrap}
.jsm-usp-flourish{flex:none;color:#1d7650}
.jsm-usp-copy{display:flex;align-items:baseline;gap:10px}
.jsm-usp-copy em{font-family:Gambarino,sans-serif;font-weight:400;font-size:17px;font-optical-sizing:auto;font-style:normal;}
.jsm-usp-copy>span{color:#154d36}
.jsm-usp-bar:hover .jsm-usp-track{animation-play-state:paused}
@keyframes jsm-usp-scroll{to{transform:translateX(-50%)}}
@media(max-width:767px){.jsm-usp-item{padding:0 26px}.jsm-usp-copy{gap:8px}.jsm-usp-copy em{font-size:16px}}
@media(prefers-reduced-motion:reduce){.jsm-usp-track{animation:none}.jsm-usp-bar{overflow-x:auto}.jsm-usp-set[aria-hidden]{display:none}}
/* The topbar scrolls with the page, independently of the fixed navigation. */
.jsm-header{top:var(--jsm-topbar-height)}
body.admin-bar .jsm-usp-bar{top:32px}
@media(max-width:782px){body.admin-bar .jsm-usp-bar{top:46px}}

/* Editable section labels with the same pen flourish as the topbar. */
.jsm-section>p.jsm-eyebrow{display:flex;align-items:center;gap:12px;font-family:"DM Sans",sans-serif;font-size:14px;line-height:1.5;font-weight:500;letter-spacing:0;text-transform:none;color:#1d7650;margin-bottom:22px}
.jsm-eyebrow::before{content:"";display:block;flex:0 0 38px;height:24px;background:currentColor;-webkit-mask:url("penkrul.svg") center/contain no-repeat;mask:url("penkrul.svg") center/contain no-repeat}

/* Intro collage: editable core images, with opposing scroll tracks. */
#introductie{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:64px}
.jsm-intro-copy>p{font-size:18px;line-height:1.7}
.jsm-intro-copy>p.jsm-eyebrow{display:flex;align-items:center;gap:12px;font-size:14px;line-height:1.5;color:#1d7650;margin-bottom:22px}
.jsm-intro-collage{height:580px;overflow:hidden;border-radius:32px;background:#eaf6ec;isolation:isolate;margin:0!important}
.jsm-photo-grid{display:flex;gap:16px;transform:rotate(5deg);height:100%;margin:0!important}
.jsm-photo-track{display:flex;flex-direction:column;gap:16px;flex:0 0 52%;margin:0!important}
.jsm-photo-track figure{flex:none;aspect-ratio:2/3;overflow:hidden;border-radius:18px;margin:0!important;width:100%}
.jsm-photo-track img{display:block;width:100%;height:100%;object-fit:cover}
@media(max-width:900px){#introductie{gap:32px}.jsm-intro-collage{height:500px}}
@media(max-width:700px){#introductie{grid-template-columns:1fr}.jsm-intro-collage{height:420px;max-width:500px;width:100%;justify-self:center}}
@media(prefers-reduced-motion:reduce){.jsm-photo-track{transform:none!important}}

.jsm-packages-band{position:relative;isolation:isolate;margin:100px 0!important;overflow:visible}
.jsm-packages-band #pakketten{position:relative;z-index:2;border:0;padding-top:110px;padding-bottom:110px}
.jsm-packages-band .jsm-package{background:#ffffff;border-color:#ffffff80}
.jsm-packages-line{position:absolute;inset:0;width:100%;height:100%;z-index:0;overflow:hidden;pointer-events:none}
.jsm-packages-line path{fill:none;stroke:#154d362b;stroke-width:110;stroke-linecap:round;vector-effect:non-scaling-stroke}
@media(max-width:800px){.jsm-packages-band{margin:70px 0!important}.jsm-packages-band #pakketten{padding-top:75px;padding-bottom:75px}}

@media(max-width:767px){.jsm-packages-line path{stroke-width:64}}

.jsm-packages-band #pakketten{color:#ffffff}
.jsm-packages-band #pakketten>h2,.jsm-packages-band #pakketten>p{color:#ffffff}
.jsm-packages-band .jsm-package{color:#13241c}
.jsm-packages-line path{stroke:#ffffff2b}

/* Center the package introduction while preserving card text alignment. */
#pakketten>h2,#pakketten>p{text-align:center;margin-left:auto;margin-right:auto}
#pakketten>.jsm-eyebrow{justify-content:center}

#pakketten>h2{font-size:clamp(38px,4.4vw,64px);line-height:1.12;max-width:1100px}
#pakketten>h2 em{font-family:Gambarino,sans-serif;font-weight:400;font-style:normal;font-optical-sizing:auto;color:inherit}

.jsm-intro-copy>h2{font-size:clamp(38px,4vw,58px);line-height:1.12}
.jsm-intro-copy>h2 em{font-family:Gambarino,sans-serif;font-weight:400;font-style:normal;font-optical-sizing:auto;color:#1d7650}

/* Three equal services: editorial typography and a shared visual hierarchy. */
.jsm-package-grid{gap:22px;margin-top:58px;align-items:stretch}
.jsm-package-grid>.jsm-package{margin:0!important;padding:38px 32px 32px;border:0;border-radius:28px;position:relative;box-shadow:0 8px 30px #13241c08}
.jsm-package::before{content:"";width:44px;height:28px;display:block;background:#154d36;mask:url("penkrul.svg") center/contain no-repeat;-webkit-mask:url("penkrul.svg") center/contain no-repeat;margin-bottom:24px}
.jsm-package h3{font-size:clamp(24px,2.1vw,30px);line-height:1.18;letter-spacing:normal;min-height:2.36em;margin:0!important;max-width:280px}
.jsm-package>p:not(.jsm-service-price){font-family:Gambarino,sans-serif;font-style:normal;font-size:22px;line-height:1.25;font-weight:400;color:#1d7650;margin:8px 0 28px;min-height:2.5em}
.jsm-package ul{list-style:none;padding:25px 0 26px;margin:0!important;border-top:1px solid #13241c1a;flex:1;font-size:15px;line-height:1.55}
.jsm-package li{position:relative;padding-left:24px;margin:0 0 13px}
.jsm-package li:last-child{margin-bottom:0}
.jsm-package li::before{content:"";position:absolute;left:2px;top:7px;width:9px;height:5px;border-left:1.5px solid #154d36;border-bottom:1.5px solid #154d36;transform:rotate(-45deg)}
.jsm-package>.jsm-service-price{border-top:1px solid #13241c1a;padding-top:25px;margin:0!important;display:flex;flex-wrap:wrap;align-items:baseline;gap:7px}
.jsm-price-prefix{flex-basis:100%;font-size:12px;color:#46705b}
.jsm-service-price strong{font-family:Gambarino,sans-serif;font-size:52px;line-height:1.05;font-weight:400;letter-spacing:normal;font-style:normal;}
.jsm-price-period{font-size:14px;color:#46705b}
.jsm-package .wp-block-buttons{margin-top:25px!important}
.jsm-package .wp-block-button{width:100%}
.jsm-package .wp-block-button__link{width:100%;box-sizing:border-box;display:flex;justify-content:space-between;font-size:14px!important}
@media(max-width:1100px) and (min-width:801px){.jsm-package-grid{gap:16px}.jsm-package-grid>.jsm-package{padding:30px 22px}.jsm-package>p:not(.jsm-service-price){font-size:20px}}
@media(max-width:800px){.jsm-package-grid{gap:24px;margin-top:38px}.jsm-package-grid>.jsm-package{padding:30px 26px}.jsm-package h3,.jsm-package>p:not(.jsm-service-price){min-height:0}.jsm-package h3{max-width:none;font-size:30px}.jsm-package>p:not(.jsm-service-price){margin-bottom:24px}}

/* Compact service cards with distinct content and decision areas. */
.jsm-package-grid>.jsm-package{padding:28px 28px 24px;border:1px solid #ffffff80;border-radius:24px;background:linear-gradient(to top,#eaf6ec 0,#eaf6ec 160px,#ffffff 160px,#ffffff 100%);box-shadow:0 6px 24px #13241c0a}
.jsm-package::before{display:none}
.jsm-package h3{font-size:clamp(23px,1.9vw,28px);min-height:2.36em;max-width:none}
.jsm-package>p:not(.jsm-service-price){font-size:20px;min-height:1.25em;margin:6px 0 18px}
.jsm-package ul{padding:14px 0 18px;border-top:1px solid #1d765033;font-size:15px;line-height:1.45}
.jsm-package li{padding:8px 0 8px 23px;margin:0;border-bottom:1px solid #13241c0c}
.jsm-package li:last-child{border-bottom:0}
.jsm-package li::before{top:15px}
.jsm-package>.jsm-service-price{padding-top:18px;border-top:1px solid #1d765033;gap:6px}
.jsm-price-prefix{flex-basis:auto;align-self:center;margin-right:3px}
.jsm-service-price strong{font-size:44px}
.jsm-package .wp-block-buttons{margin-top:16px!important;padding-top:0}
.jsm-package .wp-block-button__link{justify-content:space-between;text-align:left}
@media(max-width:1100px) and (min-width:801px){.jsm-package-grid>.jsm-package{padding:25px 20px 22px}.jsm-package>p:not(.jsm-service-price){min-height:2.5em}}
@media(max-width:800px){.jsm-package-grid>.jsm-package{padding:26px 24px 24px}.jsm-package h3{min-height:0;font-size:28px}.jsm-package>p:not(.jsm-service-price){min-height:0}}

/* Put the service and decision first, with the included work underneath. */
.jsm-package-grid>.jsm-package{padding:12px;background:#ffffff}
.jsm-service-summary{background:#eaf6ec;border:0;border-radius:16px;padding:24px;margin:0!important}
.jsm-service-summary h3{font-size:25px;min-height:2.36em;line-height:1.18}
.jsm-service-summary .jsm-service-price{display:flex;align-items:baseline;gap:6px;margin:14px 0 0!important;padding:0;border:0}
.jsm-service-summary .jsm-price-prefix{align-self:center}
.jsm-service-summary>p:not(.jsm-service-price){font-family:Gambarino,sans-serif;font-style:normal;font-size:20px;line-height:1.3;color:#1d7650;margin:18px 0 0;min-height:2.6em}
.jsm-service-summary .wp-block-buttons{margin-top:16px!important}
.jsm-package>ul{border-top:0;padding:20px 16px 12px;margin:0!important}
@media(max-width:1100px) and (min-width:801px){.jsm-service-summary{padding:20px 14px}.jsm-service-summary h3{font-size:23px}.jsm-package>ul{padding-left:12px;padding-right:12px}}
@media(max-width:800px){.jsm-service-summary{padding:22px}.jsm-service-summary h3,.jsm-service-summary>p:not(.jsm-service-price){min-height:0}.jsm-service-summary h3{font-size:28px}}

/* Compact comparison header with Phosphor CheckCircle markers. */
.jsm-service-summary{padding:20px}
.jsm-service-summary h3{font-size:24px;min-height:0;line-height:1.2}
.jsm-service-summary .jsm-service-price{margin-top:18px!important}
.jsm-service-summary>p:not(.jsm-service-price){min-height:0;margin-top:10px;font-size:19px;line-height:1.3}
.jsm-service-summary .wp-block-buttons{margin-top:18px!important}
.jsm-package>ul{padding-top:14px;padding-bottom:8px}
.jsm-package li{padding:7px 0 7px 28px;font-size:14px;line-height:1.45}
.jsm-package li::before{top:8px;left:0;width:18px;height:18px;border:0;transform:none;background:#1d7650;-webkit-mask:url("check-circle.svg") center/contain no-repeat;mask:url("check-circle.svg") center/contain no-repeat}
@media(min-width:801px) and (max-width:1250px){.jsm-service-summary h3{min-height:2.4em}.jsm-service-summary>p:not(.jsm-service-price){min-height:2.6em}}
@media(max-width:800px){.jsm-service-summary{padding:20px}.jsm-service-summary h3{font-size:26px}.jsm-package li{font-size:15px}}

/* Clean service typography; reserve the serif accent for section headings. */
.jsm-service-summary .jsm-service-price strong{font-family:"DM Sans",sans-serif;font-size:42px;font-weight:600;font-style:normal;line-height:1.1;letter-spacing:normal;font-variant-numeric:lining-nums tabular-nums}
.jsm-service-summary>p:not(.jsm-service-price){font-family:"DM Sans",sans-serif;font-size:15px;font-weight:400;font-style:normal;line-height:1.45;color:#46705b;letter-spacing:0}
.jsm-service-summary .jsm-price-prefix,.jsm-service-summary .jsm-price-period{font-family:"DM Sans",sans-serif;font-style:normal;color:#46705b}

.jsm-package li::before{background:transparent url("check-filled.svg") center/contain no-repeat;-webkit-mask:none;mask:none}

/* Purposeful pen marks: promise, decision word, then the growth-scan action. */
.jsm-hero h1 em{position:relative;display:inline-block}
.jsm-hero h1 em::after{content:"";position:absolute;left:0;right:0;bottom:-.23em;height:.38em;background:#8fd3a9;opacity:.85;mask:url("pen-underline.svg") center/100% 100% no-repeat;-webkit-mask:url("pen-underline.svg") center/100% 100% no-repeat;pointer-events:none}
.jsm-intro-copy>h2 em{position:relative;display:inline-block;white-space:nowrap;padding:0 .12em}
.jsm-intro-copy>h2 em::after{content:"";position:absolute;inset:-.16em -.2em -.22em;background:#154d36;mask:url("pen-oval.svg") center/100% 100% no-repeat;-webkit-mask:url("pen-oval.svg") center/100% 100% no-repeat;pointer-events:none}
#contact>.wp-block-buttons{position:relative;width:fit-content;max-width:100%}
#contact>.wp-block-buttons::after{content:"";position:absolute;width:86px;height:72px;right:-100px;top:-58px;background:#1d7650;transform:scaleX(-1);mask:url("pen-arrow.svg") center/contain no-repeat;-webkit-mask:url("pen-arrow.svg") center/contain no-repeat;pointer-events:none}
@media(max-width:600px){#contact>.wp-block-buttons::after{display:none}.jsm-intro-copy>h2 em::after{inset:-.1em -.14em -.16em}}

/* Improve readability of the service inclusions. */
.jsm-package li{font-size:16px;line-height:1.5;padding-left:30px}
.jsm-package li::before{width:20px;height:20px;top:9px}

/* Full-width service chapters: equal emphasis, generous typography. */
#pakketten .jsm-package-grid{display:flex;flex-direction:column;gap:36px;position:relative;padding-bottom:40px}
#pakketten .jsm-package-grid>.jsm-package{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:60px;padding:48px;border-radius:30px;box-shadow:0 -12px 40px #13241c12;transform-origin:center top}
.jsm-service-summary{display:flex;flex-direction:column;align-items:flex-start;background:transparent;border:0;border-radius:0;padding:0!important}
.jsm-service-summary h3{font-size:clamp(36px,4vw,58px);line-height:1.07;letter-spacing:normal;min-height:0!important;max-width:550px}
.jsm-service-summary>p:not(.jsm-service-price){order:1;font-size:21px;line-height:1.45;min-height:0!important;margin:18px 0 28px;max-width:440px;color:#46705b}
.jsm-service-summary h3{order:0}
.jsm-service-summary .jsm-service-price{order:2;margin-top:auto!important}
.jsm-service-summary .wp-block-buttons{order:3;width:100%;max-width:360px;margin-top:22px!important}
.jsm-service-summary .jsm-service-price strong{font-size:48px}
.jsm-package>ul{padding:0 0 0 40px;margin:0!important;border:0;border-left:1px solid #1d765026;align-self:center}
.jsm-package li{font-size:17px;padding-top:10px;padding-bottom:10px;line-height:1.5}
.jsm-package li::before{top:13px}
@media(min-width:901px) and (prefers-reduced-motion:no-preference){#pakketten .jsm-package-grid>.jsm-package{position:sticky;top:110px}}
@media(max-width:1100px){#pakketten .jsm-package-grid>.jsm-package{gap:32px;padding:36px}.jsm-package>ul{padding-left:28px}}
@media(max-width:900px){#pakketten .jsm-package-grid>.jsm-package{position:relative;grid-template-columns:1fr;gap:28px;padding:28px}.jsm-service-summary h3{font-size:38px}.jsm-service-summary>p:not(.jsm-service-price){font-size:19px;margin-bottom:22px}.jsm-package>ul{padding:20px 0 0;border-left:0;border-top:1px solid #1d765026}.jsm-package li{font-size:16px}#pakketten .jsm-package-grid{gap:24px;padding-bottom:0}}
@media(min-width:901px){#pakketten .jsm-package-grid>.jsm-package{min-height:470px;box-sizing:border-box}}
@media(min-width:901px) and (max-height:700px){#pakketten .jsm-package-grid>.jsm-package{position:relative;top:auto}}

/* Illustrative service stories; no fabricated client work or performance data. */
#pakketten .jsm-package-grid>.jsm-package{gap:42px;padding:36px;align-items:stretch}
.jsm-service-summary .jsm-service-price{margin-top:4px!important}
.jsm-service-summary>ul{order:4;border:0;padding:20px 0 0;margin:0!important;flex:0;width:100%}
.jsm-service-summary>ul li{font-size:15px;padding-top:7px;padding-bottom:7px}
.jsm-service-summary>ul li::before{top:8px}
.jsm-service-summary .jsm-service-details{order:5;width:100%;margin:8px 0 0;font-size:14px}
.jsm-service-details summary{cursor:pointer;padding:12px 0;color:#1d7650;font-weight:600;border-top:1px solid #1d765025}
.jsm-service-details summary:focus-visible{outline:2px solid #1d7650;outline-offset:4px}
.jsm-service-details ul{padding:8px 0 0;border:0;font-size:14px}
.jsm-service-details li{font-size:14px}
.jsm-service-visual{position:relative;overflow:hidden;min-height:470px;border-radius:22px;background:#eaf6ec;isolation:isolate;align-self:stretch}
.jsm-visual-label,.jsm-visual-note{position:absolute;left:26px;right:26px;font-size:12px;color:#154d36;z-index:4}
.jsm-visual-label{top:24px}.jsm-visual-note{bottom:20px;opacity:.7}
.jsm-demo-post{position:absolute;border-radius:14px;box-shadow:0 16px 38px #13241c20;overflow:hidden;display:flex;flex-direction:column}
.jsm-demo-post--back{background:#154d36;color:#ffffff;width:56%;height:310px;left:7%;top:85px;padding:24px;box-sizing:border-box;transform:rotate(-9deg)}
.jsm-demo-post--back>span{font-size:12px}.jsm-demo-post--back strong{font-family:"Bricolage Grotesque",sans-serif;font-size:clamp(22px,2.3vw,34px);line-height:1.1;margin:auto 0;letter-spacing:normal}
.jsm-service-visual em{font-family:Gambarino,sans-serif;font-weight:400;font-style:normal;}
.jsm-demo-post--front{width:45%;height:290px;right:6%;top:145px;background:#ffffff;transform:rotate(8deg)}
.jsm-demo-post--front img{width:100%;height:210px;object-fit:cover;object-position:center 35%}.jsm-demo-post--front>span{padding:13px 17px;font-size:14px;line-height:1.3;color:#13241c}
.jsm-visual-seo{background:#ffffff}.jsm-demo-search{position:absolute;top:95px;left:7%;right:7%;padding:19px 20px;background:#ffffff;border-radius:30px;font-size:14px;box-shadow:0 5px 16px #13241c08;display:flex;align-items:center;gap:12px}
.jsm-search-dot{width:12px;height:12px;border:2px solid #154d36;border-radius:50%;position:relative;flex:none}.jsm-search-dot::after{content:"";position:absolute;width:7px;height:2px;background:#154d36;transform:rotate(45deg);right:-6px;bottom:-3px}
.jsm-demo-result{position:absolute;left:10%;right:10%;top:180px;padding:27px;background:#ffffff;border-radius:16px;box-shadow:0 12px 30px #13241c10;transform:rotate(-3deg)}
.jsm-demo-result>span{font-size:12px;color:#46705b}.jsm-demo-result strong{display:block;font-family:"Bricolage Grotesque",sans-serif;font-size:30px;line-height:1.15;color:#1d7650;margin:14px 0 22px;letter-spacing:normal}
.jsm-demo-line{height:6px;border-radius:4px;background:#eaf6ec;margin-top:9px;transform-origin:left center}.jsm-demo-line--short{width:65%}.jsm-result-tag{display:inline-block;margin-top:20px;padding:6px 10px;border-radius:6px;background:#8fd3a9}
.jsm-visual-design{background:#cfe3d5}.jsm-demo-flyer{position:absolute;width:58%;height:330px;left:9%;top:75px;background:#ffffff;box-shadow:0 20px 30px #13241c20;transform:rotate(-8deg);padding:26px;box-sizing:border-box;display:flex;flex-direction:column;color:#154d36}
.jsm-demo-flyer>span{font-size:10px;letter-spacing:.05em}.jsm-demo-flyer strong{font-size:clamp(24px,2.4vw,35px);line-height:1.1;font-family:"Bricolage Grotesque",sans-serif;margin:auto 0;letter-spacing:normal}
.jsm-demo-business{position:absolute;width:49%;height:170px;right:6%;top:255px;background:#1d7650;color:#ffffff;box-shadow:0 16px 25px #13241c30;padding:22px;box-sizing:border-box;transform:rotate(10deg);display:flex;flex-direction:column;justify-content:space-between}
.jsm-demo-business>span{font-size:10px}.jsm-demo-business strong{font-family:"Bricolage Grotesque",sans-serif;font-size:23px;line-height:1.1;letter-spacing:normal}
@media(max-width:1100px){#pakketten .jsm-package-grid>.jsm-package{gap:28px;padding:28px}.jsm-demo-result{padding:22px}.jsm-demo-result strong{font-size:25px}}
@media(max-width:900px){.jsm-service-visual{min-height:450px}.jsm-demo-post--back strong,.jsm-demo-flyer strong{font-size:32px}.jsm-service-summary .wp-block-buttons{max-width:none}}
@media(max-width:480px){#pakketten .jsm-package-grid>.jsm-package{padding:22px;gap:26px}.jsm-service-visual{min-height:410px}.jsm-visual-label,.jsm-visual-note{left:16px;right:16px;font-size:11px}.jsm-demo-post--back{height:265px;padding:16px;left:4%}.jsm-demo-post--back strong,.jsm-demo-flyer strong{font-size:25px}.jsm-demo-post--front{height:245px;top:120px;right:4%}.jsm-demo-post--front img{height:165px}.jsm-demo-result{top:160px;padding:18px}.jsm-demo-result strong{font-size:23px}.jsm-demo-search{font-size:11px;top:80px;padding:16px}.jsm-demo-flyer{height:280px;padding:18px}.jsm-demo-business{top:220px;padding:15px;height:145px}.jsm-demo-business strong{font-size:19px}}
/* Expanded content must remain fully reachable while scrolling. */
#pakketten .jsm-package:not(.jsm-scroll-service):has(details[open]){position:relative;top:auto;transform:none!important}

.jsm-service-mockup{position:relative;overflow:hidden;border-radius:22px;margin:0!important;align-self:center;width:100%;aspect-ratio:1}
.jsm-service-mockup img{display:block;width:100%;height:100%;object-fit:cover}
.jsm-service-mockup figcaption{position:absolute;left:16px;bottom:14px;margin:0;padding:5px 9px;border-radius:6px;background:#ffffffe8;color:#154d36;font-size:10px;line-height:1.3}

/* Landscape crops keep the imagery proportional to the wide service panels. */
.jsm-service-mockup{aspect-ratio:3/2;max-height:410px}
.jsm-service-mockup img{object-position:center 48%}
@media(max-width:900px){.jsm-service-mockup{aspect-ratio:16/10;max-height:360px}}

/* Balance the copy vertically against the landscape service mockup. */
#pakketten .jsm-package>.jsm-service-summary{align-self:center;justify-content:center}
@media(min-width:901px){#pakketten .jsm-package-grid>.jsm-package{align-items:center}}

/* Keep expanded service details sharp and readable. */
#pakketten .jsm-package:not(.jsm-scroll-service):has(details[open]){filter:none!important;opacity:1!important}
@media(prefers-reduced-motion:reduce){#pakketten .jsm-package{transform:none!important;filter:none!important;opacity:1!important}}

/* Keep service titles subordinate to the main section heading. */
.jsm-service-summary h3{font-size:clamp(34px,3.2vw,46px);line-height:1.12}
@media(max-width:900px){.jsm-service-summary h3{font-size:34px}}

/* Give the service mockups slightly more vertical room. */
@media(min-width:901px){.jsm-service-mockup{aspect-ratio:4/3;max-height:460px}}

/* Extra breathing room around the service copy without shrinking the mockup. */
#pakketten .jsm-package>.jsm-service-summary{box-sizing:border-box;padding:20px 24px!important}
@media(max-width:900px){#pakketten .jsm-package>.jsm-service-summary{padding:12px 10px!important}}

/* Accessible native disclosure, with a custom plus/minus control. */
.jsm-service-details summary{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;padding:15px 0;border-top:1px solid #1d765025;font-size:15px;color:#154d36}
.jsm-service-details summary::-webkit-details-marker{display:none}
.jsm-service-details summary::marker{content:""}
.jsm-service-details summary::after{content:"+";display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:#eaf6ec;color:#154d36;font-size:23px;font-weight:400;line-height:1}
.jsm-service-details[open] summary::after{content:"−"}
.jsm-service-details[open] summary{border-bottom:1px solid #1d765020}
@media(hover:hover){.jsm-service-details summary:hover::after{background:#1d7650;color:white}}
@media(min-width:901px){
 .jsm-package:has(details[open]) .jsm-service-mockup{align-self:stretch;aspect-ratio:auto;max-height:none;min-height:460px}
 .jsm-package:has(details[open]) .jsm-service-mockup img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover}
}

/* Scroll disclosure: only the active service unfolds; the image follows its copy height. */
#pakketten .jsm-service-stage{position:relative}
#pakketten .jsm-service-stage>.jsm-scroll-service{position:sticky;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:42px;padding:36px;border-radius:30px;box-sizing:border-box;transform-origin:center top;background:#ffffff;box-shadow:0 -12px 40px #13241c12}
.jsm-scroll-service .jsm-service-details summary{display:none}
.jsm-scroll-service .jsm-service-details>ul{overflow:hidden;margin:0!important;padding-top:0}
.jsm-scroll-service .jsm-service-mockup{align-self:stretch;aspect-ratio:auto;max-height:none;min-height:0!important}
.jsm-scroll-service .jsm-service-mockup img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* Quiet editorial testimonials between the animated services and personal introduction. */
#ervaringen.jsm-reviews{padding-top:110px;padding-bottom:110px;display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.4fr);column-gap:90px;row-gap:24px}
.jsm-reviews>.jsm-eyebrow{grid-column:1/-1;margin:0}
#ervaringen.jsm-reviews>h2{font-size:clamp(32px,3.2vw,46px);line-height:1.15;letter-spacing:normal;max-width:440px;margin:0}
.jsm-reviews>h2 em{font-family:Gambarino,sans-serif;font-weight:400;color:#154d36;font-style:normal;}
.jsm-review-stage{position:relative;padding:50px 0 0!important;margin:0!important;min-width:0}
.jsm-review-stage::before{content:'“';position:absolute;top:-30px;left:-5px;font-family:Gambarino,sans-serif;font-size:110px;line-height:1;color:#154d36;font-style:normal;}
.jsm-review-slide{border:0!important;padding:0!important;margin:0!important;background:transparent!important}
.jsm-review-slide[hidden]{display:none!important}
.jsm-review-slide p{font-family:'DM Sans',sans-serif;font-size:clamp(25px,2.6vw,36px);font-weight:400;line-height:1.4;letter-spacing:normal;color:#13241c;margin:0 0 32px!important;max-width:none!important}
.jsm-review-slide cite{display:block;font-family:'DM Sans',sans-serif;font-size:14px;font-style:normal;color:#46705b;padding-top:20px;border-top:1px solid #154d3630}
.jsm-review-controls{display:flex;align-items:center;gap:10px;margin-top:28px}
.jsm-review-count{margin-right:auto;font-family:'DM Sans',sans-serif;font-size:13px;letter-spacing:.08em;color:#46705b}
.jsm-review-controls button{display:grid;place-items:center;width:46px;height:46px;border:1px solid #154d3640;border-radius:50%;background:transparent;color:#154d36;cursor:pointer;transition:background .18s,color .18s}
.jsm-review-controls svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.jsm-review-controls button:focus-visible{outline:2px solid #1d7650;outline-offset:4px}
@media(hover:hover){.jsm-review-controls button:hover{background:#eaf6ec}}
@media(max-width:900px){#ervaringen.jsm-reviews{grid-template-columns:1fr;padding-top:70px;padding-bottom:70px;row-gap:24px}.jsm-review-stage{margin-top:30px!important}.jsm-review-slide p{font-size:27px}}

/* Layered review cards give the quiet section a more playful brand signature. */
#ervaringen.jsm-reviews{align-items:center;column-gap:100px;padding-top:130px;padding-bottom:140px}
.jsm-review-stage{padding:0!important;isolation:isolate}
.jsm-review-stage::before{display:none}
.jsm-review-deck{position:relative;margin:16px 20px 40px 0;min-height:340px}
.jsm-review-deck::before{content:'';position:absolute;inset:0;border-radius:24px;background:#8fd3a9;transform:translate(25px,22px) rotate(5deg)}
.jsm-review-deck .jsm-review-slide{position:absolute;inset:0 0 auto;border-radius:24px;padding:52px 44px 34px!important;background:#eaf6ec!important;transform:translate(16px,14px) rotate(3deg);box-sizing:border-box;min-height:100%;box-shadow:0 12px 30px #13241c0b;transition:transform .65s cubic-bezier(.77,0,.175,1)}
.jsm-review-deck .jsm-review-slide.is-front{background:#154d36!important;transform:rotate(-2deg)}
.jsm-review-deck .jsm-review-slide::before{content:'“';display:block;font-family:Gambarino,sans-serif;font-size:80px;line-height:.7;color:#154d36;margin-bottom:22px;font-style:normal;}
.jsm-review-deck .jsm-review-slide.is-front::before{color:#8fd3a9}
.jsm-review-deck .jsm-review-slide p{font-size:clamp(24px,2.3vw,33px);line-height:1.35}
.jsm-review-deck .jsm-review-slide.is-front p{color:#ffffff}
.jsm-review-deck .jsm-review-slide.is-front cite{color:#ffffff;border-color:#ffffff40}
.jsm-review-controls{padding-right:20px;margin-top:40px}
.jsm-review-pause{font-size:17px;font-family:Arial,sans-serif}
@media(max-width:900px){#ervaringen.jsm-reviews{padding-top:80px;padding-bottom:90px}.jsm-review-deck{margin-left:5px;margin-right:25px}.jsm-review-deck .jsm-review-slide{padding:32px 26px 26px!important}.jsm-review-deck .jsm-review-slide p{font-size:25px}}
@media(prefers-reduced-motion:reduce){.jsm-review-deck .jsm-review-slide{transition:none}.jsm-review-pause{display:none!important}}
.jsm-review-stage .jsm-review-controls{margin-top:65px}

/* Editorial direction: bold type, open image composition and varied section rhythm. */
.jsm-hero{height:auto;min-height:88svh;max-height:none;padding:185px 40px 110px;background:#154d36}
.jsm-hero-content{max-width:1360px}
.jsm-hero h1{font-size:clamp(64px,6.8vw,108px);line-height:.99;letter-spacing:normal;max-width:1300px;margin-inline:auto}
.jsm-hero h1 br{display:none}
.jsm-hero h1 em{display:block;font-size:1.06em;line-height:1.06;letter-spacing:normal;color:#ffffff;margin-top:8px}
.jsm-hero .jsm-intro{font-size:19px;line-height:1.55;margin:30px auto 26px;max-width:680px}
#introductie{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:85px;padding-top:145px;padding-bottom:140px;border-bottom:0}
.jsm-intro-copy>h2{font-size:clamp(42px,4.6vw,68px);line-height:1.06;letter-spacing:normal}
.jsm-intro-copy>h2 em{display:inline-block;margin-top:8px;font-size:1.2em}
.jsm-intro-copy>p:not(.jsm-eyebrow){font-size:19px;line-height:1.65;max-width:540px}
.jsm-intro-collage{height:610px;overflow:visible;background:transparent;border-radius:0;transform:rotate(-3deg)}
.jsm-photo-grid{transform:none;align-items:center;gap:0}
.jsm-photo-track{flex-basis:64%;gap:0}
.jsm-photo-track figure{border-radius:4px;border:12px solid #fff;box-shadow:0 12px 36px #13241c18;box-sizing:border-box}
.jsm-photo-track figure~figure{display:none}
.jsm-photo-track--left{transform:rotate(-5deg);z-index:1}
.jsm-photo-track--right{margin-left:-24%!important;padding-top:180px;transform:rotate(9deg);z-index:2}
.jsm-photo-track--right figure{transform:rotate(9deg);aspect-ratio:3/4}
.jsm-intro-collage::after{content:'Jouw verhaal.\A Mijn woorden.';white-space:pre;position:absolute;right:-8px;top:30px;z-index:3;background:#8fd3a9;color:#154d36;font-family:Gambarino,sans-serif;font-style:normal;font-size:25px;line-height:1.1;padding:20px 24px;border-radius:50%;transform:rotate(8deg)}
#pakketten>h2{font-size:clamp(48px,5.5vw,80px);line-height:1.03;letter-spacing:normal}
#ervaringen.jsm-reviews{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);column-gap:90px;padding-top:145px;padding-bottom:150px}
#ervaringen.jsm-reviews>h2{font-size:clamp(40px,4.3vw,64px);line-height:1.06;max-width:530px;letter-spacing:normal}
#ervaringen.jsm-reviews>.jsm-eyebrow{margin-bottom:5px}
#contact.jsm-section{padding:90px 70px;background:#eaf6ec;border-radius:36px;position:relative}
#contact.jsm-section>h2{font-size:clamp(42px,5.5vw,78px);line-height:1.06;letter-spacing:normal;max-width:1000px}
@media(max-width:1000px){#introductie{gap:42px}.jsm-intro-collage{height:500px}.jsm-intro-collage::after{right:0;font-size:20px}#ervaringen.jsm-reviews{column-gap:45px}}
@media(max-width:900px){#ervaringen.jsm-reviews{grid-template-columns:1fr;padding-top:80px;padding-bottom:90px}#ervaringen.jsm-reviews>h2{max-width:650px}.jsm-review-stage{max-width:720px;width:100%}}
@media(max-width:700px){.jsm-hero{min-height:760px;padding:170px 24px 95px}.jsm-hero h1{font-size:clamp(43px,9.7vw,68px);line-height:1.04;letter-spacing:normal}.jsm-hero .jsm-intro{font-size:17px}#introductie{grid-template-columns:1fr;padding-top:80px;padding-bottom:80px;gap:50px}.jsm-intro-copy>h2{font-size:46px}.jsm-intro-collage{height:440px;width:90%;max-width:430px}.jsm-intro-collage::after{top:0;font-size:20px}.jsm-photo-track--right{padding-top:100px}#pakketten>h2{font-size:46px}#contact.jsm-section{padding:55px 28px}#contact.jsm-section>h2{font-size:44px}}

/* Split CTA: a compact label paired with a separate circular arrow. */
body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link{min-height:54px;box-sizing:border-box;padding:17px 82px 17px 25px;border-radius:3px;background-color:transparent;background-image:linear-gradient(to right,#8fd3a9 0,#8fd3a9 calc(100% - 62px),transparent calc(100% - 62px));background-size:100% 100%;color:#154d36;font-size:15px;line-height:20px;animation:none;isolation:isolate}
body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link::before{display:block;right:0;top:50%;width:54px;height:54px;opacity:1;background:#8fd3a9;border-radius:50%;transform:translateY(-50%);transition:transform .22s cubic-bezier(.23,1,.32,1),background-color .18s ease;z-index:-1}
body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link::after{display:block;right:16px;top:50%;width:22px;height:22px;border-radius:0;background:currentColor;transform:translateY(-50%) rotate(-35deg);transition:transform .22s cubic-bezier(.23,1,.32,1)}
body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:focus-visible{outline:2px solid #1d7650;outline-offset:6px}
@media(hover:hover) and (pointer:fine){body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:hover{background-color:transparent;background-image:linear-gradient(to right,#8fd3a9 0,#8fd3a9 calc(100% - 62px),transparent calc(100% - 62px));color:#154d36}body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:hover::before{transform:translateY(-50%) rotate(8deg) scale(.94);background:#8fd3a9}body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:hover::after{transform:translateY(-50%) rotate(0deg)}}
@media(prefers-reduced-motion:reduce){body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link::before,body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link::after{transition:none}}

/* Match the arrow tile to the square CTA label. */
body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link::before{border-radius:3px}
@media(hover:hover) and (pointer:fine){body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:hover::before{transform:translateY(-50%) scale(.94)}}

/* Tilt the complete CTA as one piece on pointer hover. */
body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link{transform-origin:center;transition:transform .22s cubic-bezier(.23,1,.32,1),color .18s ease}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:hover{transform:rotate(-3deg)}
 body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:hover::before{transform:translateY(-50%)}
}
@media(prefers-reduced-motion:reduce){body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link{transition:none}}

/* The header uses a quiet, compact navigation CTA. */
body .jsm-header>.wp-block-buttons .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link{min-height:44px;padding:12px 43px 12px 20px;background:#ffffff;color:#154d36;border-radius:4px;font-size:14px;line-height:20px;transform:none;transition:background-color .18s ease}
body .jsm-header>.wp-block-buttons .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link::before{display:none}
body .jsm-header>.wp-block-buttons .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link::after{width:17px;height:17px;right:15px;transform:translateY(-50%)}
body .jsm-header>.wp-block-buttons .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:hover{background:#8fd3a9;color:#154d36;transform:none}
body .jsm-header>.wp-block-buttons .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:hover::after{transform:translateY(-50%)}

/* The arrow and label exchange sides while the complete CTA tilts. */
body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label){padding:17px 25px 17px 82px;background:transparent}
.jsm-cta-label{display:block;position:relative;z-index:1;transition:transform .3s cubic-bezier(.23,1,.32,1)}
.jsm-cta-label::before{content:'';position:absolute;inset:-17px -25px -17px -20px;z-index:-1;border-radius:3px;background:#8fd3a9}
body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label)::before{left:0;right:auto;transform:translateY(-50%);transition:transform .3s cubic-bezier(.23,1,.32,1)}
body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label)::after{left:16px;right:auto;transform:translateY(-50%);transition:transform .3s cubic-bezier(.23,1,.32,1)}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label):hover{background:transparent;transform:rotate(-3deg)}
 .wp-block-button__link:hover .jsm-cta-label{transform:translateX(-62px)}
 body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label):hover::before{transform:translate(var(--jsm-arrow-travel),-50%)}
 body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label):hover::after{transform:translate(var(--jsm-arrow-travel),-50%) rotate(-35deg)}
}
@media(prefers-reduced-motion:reduce){.jsm-cta-label{transition:none}}

/* Reference interaction: only the label tilts; the arrow tile stays upright. */
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label):hover{transform:none}
 .wp-block-button__link:hover .jsm-cta-label{transform:translateX(-62px) rotate(-3deg)}
 body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label):hover::after{transform:translate(var(--jsm-arrow-travel),-50%)}
}

/* Rose CTAs complement the periwinkle brand; the header stays cream. */
body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label),body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label):hover{color:#ffffff}
.jsm-cta-label::before{background:#1d7650}
body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label)::before,body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label):hover::before{background:#1d7650}

/* A short overshoot adds tactile feedback without replaying keyframes. */
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .jsm-cta-label{transform-origin:center;transition:transform .38s cubic-bezier(.34,1.56,.64,1)}
 body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label)::before,
 body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label)::after{transition:transform .38s cubic-bezier(.34,1.56,.64,1)}
 .wp-block-button__link:hover .jsm-cta-label{transform:translate(-62px,-2px) rotate(-3deg) scale(1.025)}
 body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label):hover::before{transform:translate(var(--jsm-arrow-travel),-50%) scale(1.04)}
 body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label):active .jsm-cta-label{transform:translateX(-62px) rotate(-2deg) scale(.98);transition-duration:.12s}
 body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label):active::before{transform:translate(var(--jsm-arrow-travel),-50%) scale(.96);transition-duration:.12s}
}

/* Light pink CTA tiles with black labels and arrows. */
body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label),body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label):hover{color:#13241c}
.jsm-cta-label::before{background:#8fd3a9}
body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label)::before,body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label):hover::before{background:#8fd3a9}

/* Coordinated CTA motion: a leading arrow tile and a lightly trailing label. */
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .jsm-cta-label{transition:transform .42s cubic-bezier(.22,1,.36,1);transition-delay:0s}
 .jsm-cta-label::before{box-shadow:0 0 0 transparent;transition:box-shadow .28s ease,background-color .28s ease}
 body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label)::before{transition:transform .42s cubic-bezier(.34,1.25,.64,1),box-shadow .28s ease,background-color .28s ease;box-shadow:0 0 0 transparent}
 body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label)::after{transition:transform .42s cubic-bezier(.34,1.25,.64,1)}
 .wp-block-button__link:hover .jsm-cta-label{transform:translate(-62px,-3px) rotate(-3deg);transition-delay:35ms}
 .wp-block-button__link:hover .jsm-cta-label::before{box-shadow:0 7px 0 #13241c14,0 12px 20px #13241c10;background:#8fd3a9}
 body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label):hover::before{transform:translate(var(--jsm-arrow-travel),calc(-50% - 1px));background:#8fd3a9;box-shadow:0 5px 0 #13241c14}
 body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label):hover::after{transform:translate(var(--jsm-arrow-travel),calc(-50% - 1px))}
 body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label):active .jsm-cta-label{transform:translate(-62px,1px) rotate(-2deg) scale(.99);transition-duration:.12s;transition-delay:0s}
 .wp-block-button__link:active .jsm-cta-label::before{box-shadow:0 1px 0 #13241c14}
 body .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:has(.jsm-cta-label):active::before{transform:translate(var(--jsm-arrow-travel),-50%) scale(.97);box-shadow:0 1px 0 #13241c14;transition-duration:.12s}
}

/* Standard header button with an inset square icon tile. */
body .jsm-header>.wp-block-buttons .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link{min-height:48px;padding:14px 58px 14px 20px;border-radius:4px;background:#ffffff}
body .jsm-header>.wp-block-buttons .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link::before{display:block;left:auto;right:6px;top:50%;width:36px;height:36px;border-radius:2px;background:#eaf6ec;opacity:1;transform:translateY(-50%);z-index:0;box-shadow:none;transition:background-color .18s ease}
body .jsm-header>.wp-block-buttons .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link::after{left:auto;right:15px;width:18px;height:18px;transform:translateY(-50%);z-index:1}
body .jsm-header>.wp-block-buttons .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:hover{background:#ffffff;transform:none}
body .jsm-header>.wp-block-buttons .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:hover::before{background:#8fd3a9;transform:translateY(-50%);box-shadow:none}

/* One confident marker stroke instead of the double hairline underline. */
.jsm-hero h1 em::after{left:8%;right:8%;bottom:-.15em;height:.22em;background:#8fd3a9;opacity:1;mask:url("marker-underline.svg") center/100% 100% no-repeat;-webkit-mask:url("marker-underline.svg") center/100% 100% no-repeat;transform:rotate(-1deg)}

/* Rounded pen flourish with a returning stroke beneath the hero accent. */
.jsm-hero h1 em::after{left:9%;right:9%;bottom:-.27em;height:.36em;background:#8fd3a9;opacity:1;transform:none;mask:url("hero-scribble.svg") center/100% 100% no-repeat;-webkit-mask:url("hero-scribble.svg") center/100% 100% no-repeat}
.jsm-hero .jsm-intro{margin-top:40px}

/* Size the flourish against the accent text, not the full heading container. */
.jsm-hero h1 em{width:fit-content;max-width:100%;margin-left:auto;margin-right:auto}
.jsm-hero h1 em::after{left:2%;right:2%}

/* Match the hero flourish to the pink CTA accent. */
.jsm-hero h1 em::after{background:#8fd3a9}

/* Tighten the two-line hero title while preserving room for the flourish. */
.jsm-hero h1{line-height:.94}
.jsm-hero h1 em{margin-top:0;line-height:.96}

/* The intro photos float freely without a printed white frame. */
.jsm-photo-track figure{border:0}

/* Generated transparent die-cut sticker replaces the plain oval badge. */
.jsm-intro-collage::after{content:'';background:url('verhaal-sticker.png') center/contain no-repeat;width:210px;height:175px;padding:0;border-radius:0;top:5px;right:-12px;transform:rotate(8deg);filter:drop-shadow(0 5px 4px #13241c15)}
@media(max-width:700px){.jsm-intro-collage::after{width:150px;height:125px;right:-10px;top:-12px}}

/* Keep the sticker above the overlap and clear of the portrait faces. */
.jsm-intro-collage::after{width:155px;height:130px;left:43%;right:auto;top:-35px;transform:translateX(-50%) rotate(-8deg)}
@media(max-width:700px){.jsm-intro-collage::after{width:120px;height:100px;left:43%;right:auto;top:-30px}}

/* Fine-tune the sticker position while retaining its original clockwise tilt. */
.jsm-intro-collage::after{left:48%;transform:translateX(-50%) rotate(8deg)}

/* Place the sticker along the lower edge of the photo composition. */
.jsm-intro-collage::after{top:auto;bottom:10px;left:48%;transform:translateX(-50%) rotate(8deg)}
@media(max-width:700px){.jsm-intro-collage::after{top:auto;bottom:0}}

/* Service CTAs hug their labels instead of stretching across the column. */
#pakketten .jsm-service-summary .wp-block-buttons{width:fit-content;max-width:100%}
#pakketten .jsm-package .wp-block-button{width:auto;max-width:100%;flex:0 1 auto}
#pakketten .jsm-package .wp-block-button__link{width:auto;max-width:100%;justify-content:center}

/* Reviews as one editorial composition rather than a two-column feature. */
#ervaringen.jsm-reviews{display:flex;flex-direction:column;align-items:center;gap:0;padding-top:120px;padding-bottom:120px;border-bottom:0}
#ervaringen.jsm-reviews>.jsm-eyebrow{align-self:center;margin:0 0 30px}
#ervaringen.jsm-reviews>h2{font-size:clamp(64px,8.8vw,126px);line-height:1;letter-spacing:normal;max-width:none;text-align:center;margin:0;position:relative;z-index:3;transform:rotate(-2deg)}
#ervaringen.jsm-reviews>h2 em{color:#1d7650}
#ervaringen .jsm-review-stage{width:min(100%,820px);max-width:820px;margin:38px 0 0!important}
#ervaringen .jsm-review-deck{margin:12px 28px 0 12px;min-height:330px}
#ervaringen .jsm-review-deck .jsm-review-slide{padding:48px 55px 38px!important;border-radius:8px;background:#eaf6ec!important}
#ervaringen .jsm-review-deck .jsm-review-slide.is-front{background:#ffffff!important;box-shadow:0 18px 50px #13241c10;transform:rotate(-2deg)}
#ervaringen .jsm-review-deck::before{border-radius:8px;background:#8fd3a9;transform:translate(25px,18px) rotate(4deg)}
#ervaringen .jsm-review-deck .jsm-review-slide.is-front p{color:#13241c;font-size:clamp(25px,2.5vw,35px)}
#ervaringen .jsm-review-deck .jsm-review-slide.is-front::before{color:#154d36;font-size:90px;margin-bottom:15px}
#ervaringen .jsm-review-deck .jsm-review-slide.is-front cite{color:#46705b;border-color:#13241c20}
#ervaringen .jsm-review-controls{margin-top:65px;padding:0 25px}
@media(max-width:700px){#ervaringen.jsm-reviews{padding-top:75px;padding-bottom:80px}#ervaringen.jsm-reviews>h2{font-size:clamp(56px,12vw,80px)}#ervaringen .jsm-review-stage{margin-top:30px!important}#ervaringen .jsm-review-deck{margin-left:0;margin-right:20px}#ervaringen .jsm-review-deck .jsm-review-slide{padding:32px 25px!important}#ervaringen .jsm-review-deck .jsm-review-slide.is-front p{font-size:25px}}

/* Edge-to-edge review rail: real cards side by side, with a glimpse of the next. */
#ervaringen .jsm-review-stage{width:100vw;max-width:none;margin-top:45px!important;align-self:center}
.jsm-review-track{position:relative;display:flex;gap:32px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:max(24px,calc((100vw - 1150px)/2));padding:30px max(24px,calc((100vw - 1150px)/2)) 45px;scrollbar-width:none;overscroll-behavior-x:contain;box-sizing:border-box}
.jsm-review-track::-webkit-scrollbar{display:none}
.jsm-review-track::after{content:'';flex:0 0 max(24px,calc((100vw - 1150px)/2))}
.jsm-review-track .jsm-review-slide{position:relative;flex:0 0 min(720px,76vw);scroll-snap-align:start;box-sizing:border-box;padding:45px!important;background:#eaf6ec!important;border-radius:12px;box-shadow:0 10px 25px #13241c08;transform:rotate(-1deg);display:flex;flex-direction:column}
.jsm-review-track .jsm-review-slide:nth-child(even){background:#ffffff!important;transform:rotate(1deg)}
.jsm-review-track .jsm-review-slide::before{content:'“';font-family:Gambarino,sans-serif;font-size:85px;line-height:.8;color:#154d36;margin-bottom:25px;font-style:normal;}
.jsm-review-track .jsm-review-slide p{font-size:clamp(25px,2.5vw,34px);line-height:1.4}
.jsm-review-track .jsm-review-slide cite{margin-top:auto;padding-top:24px}
#ervaringen .jsm-review-controls{max-width:1150px;margin:10px auto 0;padding:0 24px;box-sizing:border-box}
.jsm-review-track:focus-visible{outline:2px solid #154d36;outline-offset:-5px}
@media(max-width:700px){.jsm-review-track{gap:20px;padding-top:20px;padding-bottom:30px}.jsm-review-track .jsm-review-slide{flex-basis:84vw;padding:30px 25px!important}.jsm-review-track .jsm-review-slide p{font-size:25px}}

/* Oversized editorial review cards with an intentional author strip. */
#ervaringen.jsm-reviews>h2{font-size:clamp(42px,5.4vw,78px);max-width:1020px;line-height:1.07;transform:none}
#ervaringen.jsm-reviews>.jsm-review-intro{max-width:760px;text-align:center;font-size:18px;line-height:1.65;margin:26px auto 0}
#ervaringen .jsm-review-track{gap:38px;padding-top:45px;padding-bottom:50px}
#ervaringen .jsm-review-track .jsm-review-slide{flex-basis:min(680px,78vw);min-height:450px;padding:52px 46px 0!important;border-radius:5px 30px 5px 5px;background:#154d36!important;box-shadow:8px 10px 0 #eaf6ec;transform:rotate(-1.5deg);overflow:hidden;isolation:isolate}
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even){background:#8fd3a9!important;box-shadow:8px 10px 0 #154d36;transform:rotate(1.5deg)}
#ervaringen .jsm-review-track .jsm-review-slide::before{content:'“';position:absolute;top:13px;right:29px;margin:0;font-size:190px;line-height:1;color:#ffffff;opacity:.13;z-index:-1}
#ervaringen .jsm-review-track .jsm-review-slide::after{content:'';position:absolute;top:27px;left:46px;width:54px;height:14px;background:#8fd3a9;mask:url('hero-scribble.svg') center/contain no-repeat;-webkit-mask:url('hero-scribble.svg') center/contain no-repeat}
#ervaringen .jsm-review-track .jsm-review-slide p{font-size:clamp(27px,2.9vw,39px);line-height:1.3;letter-spacing:normal;color:#ffffff;margin:20px 0 40px!important;max-width:560px}
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even) p{color:#13241c}
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even)::before{color:#154d36;opacity:.12}
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even)::after{background:#154d36}
#ervaringen .jsm-review-track .jsm-review-slide cite{position:relative;display:flex;align-items:center;gap:15px;margin:auto -46px 0;padding:23px 46px;background:#ffffff0c;border-top:1px solid #ffffff33;color:#ffffff;font-size:14px;line-height:1.5;min-height:75px;box-sizing:border-box}
#ervaringen .jsm-review-track .jsm-review-slide cite::before{content:'';flex:0 0 35px;height:30px;background:currentColor;mask:url('penkrul.svg') center/contain no-repeat;-webkit-mask:url('penkrul.svg') center/contain no-repeat}
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even) cite{color:#13241c;border-color:#13241c25;background:#ffffff18}
@media(max-width:700px){#ervaringen .jsm-review-track{gap:26px}#ervaringen .jsm-review-track .jsm-review-slide{flex-basis:85vw;min-height:400px;padding:42px 28px 0!important}#ervaringen .jsm-review-track .jsm-review-slide p{font-size:28px}#ervaringen .jsm-review-track .jsm-review-slide cite{margin-left:-28px;margin-right:-28px;padding:20px 28px}#ervaringen .jsm-review-track .jsm-review-slide::after{left:28px}#ervaringen.jsm-reviews>.jsm-review-intro{font-size:17px}}

/* Keep the brand name together on its own review-heading line. */
#ervaringen.jsm-reviews>h2 em{display:block;white-space:nowrap}
@media(max-width:700px){#ervaringen.jsm-reviews>h2 em{font-size:clamp(27px,7.2vw,50px);letter-spacing:normal}}

/* Personal correspondence: restrained paper cards rather than decorative panels. */
#ervaringen .jsm-review-track{gap:28px}
#ervaringen .jsm-review-track .jsm-review-slide,
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even){flex-basis:min(610px,78vw);min-height:390px;padding:42px 42px 0!important;border-radius:2px;background:#ffffff!important;box-shadow:none;transform:none;overflow:hidden;border:1px solid #13241c10!important}
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even){background:#eaf6ec!important}
#ervaringen .jsm-review-track .jsm-review-slide::before,
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even)::before{position:static;display:block;content:'“';font-family:Gambarino,sans-serif;font-size:86px;line-height:.65;color:#154d36;opacity:1;margin:0 0 22px;z-index:auto;font-style:normal;}
#ervaringen .jsm-review-track .jsm-review-slide::after{display:none}
#ervaringen .jsm-review-track .jsm-review-slide p,
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even) p{font-family:'DM Sans',sans-serif;font-size:clamp(24px,2.3vw,31px);font-weight:400;line-height:1.45;letter-spacing:normal;color:#13241c;margin:0 0 38px!important}
#ervaringen .jsm-review-track .jsm-review-slide cite,
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even) cite{margin:auto 0 0;padding:22px 0 26px;min-height:0;background:transparent;border-top:1px solid #13241c20;color:#46705b;font-size:13px;line-height:1.5}
#ervaringen .jsm-review-track .jsm-review-slide cite::before{display:none}
@media(max-width:700px){#ervaringen .jsm-review-track .jsm-review-slide,#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even){flex-basis:85vw;min-height:350px;padding:32px 28px 0!important}#ervaringen .jsm-review-track .jsm-review-slide p{font-size:25px}}

/* Loosely pinned notes: warmer and more playful than formal testimonial boxes. */
#ervaringen .jsm-review-track{gap:42px;padding-top:50px;padding-bottom:50px}
#ervaringen .jsm-review-track .jsm-review-slide,
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even){overflow:visible;border:0!important;border-radius:3px;background:#8fd3a9!important;box-shadow:0 9px 16px #13241c09;transform:rotate(-2deg);padding-top:48px!important}
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even){background:#eaf6ec!important;transform:rotate(2deg)}
#ervaringen .jsm-review-track .jsm-review-slide::after,
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even)::after{content:'';display:block;position:absolute;top:-15px;left:calc(50% - 48px);width:96px;height:30px;background:#ffffffb8;mask:none;-webkit-mask:none;transform:rotate(-5deg);border-left:2px dotted #ffffff75;border-right:2px dotted #ffffff75}
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even)::after{transform:rotate(6deg)}
#ervaringen .jsm-review-track .jsm-review-slide p{font-family:Gambarino,sans-serif;font-size:clamp(27px,2.5vw,35px);line-height:1.35;letter-spacing:normal;font-style:normal;}
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even) p{font-family:Gambarino,sans-serif;font-size:clamp(27px,2.5vw,35px);line-height:1.35;font-style:normal;}
#ervaringen .jsm-review-track .jsm-review-slide cite,
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even) cite{border-top:0;padding-top:12px;color:#154d36}
@media(max-width:700px){#ervaringen .jsm-review-track{gap:28px}#ervaringen .jsm-review-track .jsm-review-slide p,#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even) p{font-size:28px}}

/* Tall, staggered testimonial cards with illustrated stickers on the top edge. */
#ervaringen .jsm-review-track{gap:28px;padding-top:95px;padding-bottom:85px;align-items:stretch}
#ervaringen .jsm-review-track .jsm-review-slide,
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even){flex-basis:min(455px,78vw);min-height:500px;padding:86px 36px 0!important;background:#154d36!important;border-radius:14px;box-shadow:none;transform:rotate(-4deg);overflow:visible}
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even){background:#8fd3a9!important;transform:translateY(32px) rotate(4deg)}
#ervaringen .jsm-review-track .jsm-review-slide::before,
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even)::before{display:none}
#ervaringen .jsm-review-track .jsm-review-slide::after,
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even)::after{content:'';position:absolute;display:block;top:-57px;left:auto;right:27px;width:130px;height:120px;background:url('irma-review-quote.webp') center/contain no-repeat;border:0;mask:none;-webkit-mask:none;transform:rotate(10deg)}
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even)::after{background-image:url('irma-review-heart.webp');transform:rotate(-12deg);right:30px}
#ervaringen .jsm-review-track .jsm-review-slide p,
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even) p{font-family:'DM Sans',sans-serif;font-size:clamp(25px,2.2vw,30px);font-weight:600;line-height:1.38;letter-spacing:normal;color:#13241c;margin:0 0 35px!important}
#ervaringen .jsm-review-track .jsm-review-slide:first-child p{color:#ffffff}
#ervaringen .jsm-review-track .jsm-review-slide cite,
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even) cite{margin:auto 0 0;border-top:3px solid #13241c;background:transparent;padding:23px 0 28px;color:#13241c;font-size:14px}
#ervaringen .jsm-review-track .jsm-review-slide:first-child cite{color:#ffffff;border-color:#ffffff}
@media(max-width:700px){#ervaringen .jsm-review-track{gap:26px;padding-top:75px;padding-bottom:65px}#ervaringen .jsm-review-track .jsm-review-slide,#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even){flex-basis:80vw;min-height:460px;padding:70px 28px 0!important}#ervaringen .jsm-review-track .jsm-review-slide::after,#ervaringen .jsm-review-track .jsm-review-slide:nth-child(even)::after{width:110px;height:100px;top:-45px}}

/* Alternate the added review cards within the same brand palette. */
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(3){background:#8fd3a9!important;transform:translateY(-12px) rotate(-2deg)}
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(4){background:#154d36!important;transform:translateY(22px) rotate(3deg)}
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(4) p,#ervaringen .jsm-review-track .jsm-review-slide:nth-child(4) cite{color:#ffffff;border-color:#ffffff}
#ervaringen .jsm-review-track .jsm-review-slide:nth-child(5){background:#eaf6ec!important;transform:rotate(-3deg)}

/* User-controlled review navigation in the site's square pink button style. */
#ervaringen .jsm-review-controls{justify-content:center;gap:12px;margin:12px auto 0}
#ervaringen .jsm-review-count,#ervaringen .jsm-review-pause{display:none!important}
#ervaringen .jsm-review-controls button{width:54px;height:54px;border:0;border-radius:3px;background:#8fd3a9;color:#13241c;transition:transform .22s cubic-bezier(.23,1,.32,1),background-color .18s ease}
#ervaringen .jsm-review-controls svg{width:24px;height:24px;stroke-width:1.8}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){#ervaringen .jsm-review-controls button:hover{background:#8fd3a9;transform:rotate(-4deg) translateY(-2px)}#ervaringen .jsm-review-controls button:active{transform:scale(.96)}}
@media(prefers-reduced-motion:reduce){#ervaringen .jsm-review-controls button{transition:none}}

/* Keep the review author's name and company on separate lines. */
#ervaringen .jsm-review-track .jsm-review-slide cite{display:block}

/* ScrollTrigger owns horizontal progress only during the desktop pinned scene. */
#ervaringen .jsm-review-pinned .jsm-review-track{scroll-snap-type:none;overflow-x:hidden;scroll-behavior:auto}

/* Keep the persistent header transparent, including its scrolled state. */
body .jsm-header,body .jsm-header.is-scrolled,body:not(.home) .jsm-header{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}

/* Shared page navigation and editable inner-page compositions. */
.jsm-site-nav{display:flex;gap:28px;align-items:center;padding:13px 22px;background:#ffffff;border-radius:4px}
.jsm-site-nav a:not(.wp-block-button__link){font-size:14px;font-weight:600;color:#13241c;text-decoration:none}
.jsm-site-nav a:not(.wp-block-button__link):hover{text-decoration:underline;text-underline-offset:5px}
.jsm-site-nav a:not(.wp-block-button__link):focus-visible{outline:2px solid #1d7650;outline-offset:5px}
body:not(.home) .jsm-logo img{filter:brightness(0) saturate(100%)}
.jsm-page-hero{max-width:1280px;margin:0 auto!important;padding:100px 40px 100px;text-align:center;color:#13241c;box-sizing:border-box}
.jsm-page-hero h1{font-size:clamp(48px,6vw,90px);line-height:1.05;letter-spacing:normal;margin:0 auto 30px;max-width:1100px}
.jsm-page-hero em,.jsm-page-copy em,.jsm-contact-option em{font-family:Gambarino,sans-serif;font-weight:400;color:#154d36;font-style:normal;}
.jsm-page-hero>p{font-size:20px;line-height:1.6;max-width:760px;margin:auto}
.jsm-page-about{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center;padding-top:30px;border:0}
.jsm-page-about>figure{margin:0;transform:rotate(-3deg)}
.jsm-page-about img{width:100%;max-height:650px;object-fit:cover;border-radius:5px}
.jsm-page-copy p,.jsm-contact-option p{font-size:19px;line-height:1.7}
.jsm-contact-options{display:grid;grid-template-columns:1fr 1fr;gap:35px;border:0;padding-top:0}
.jsm-contact-option{padding:45px;background:#eaf6ec;border-radius:10px}
.jsm-contact-option:nth-child(2){background:#ffffff}
.jsm-contact-option h2{font-size:40px}
@media(max-width:760px){.jsm-header{flex-wrap:wrap;gap:12px}.jsm-site-nav{order:3;width:100%;justify-content:center;padding:10px 15px;gap:25px;box-sizing:border-box}.jsm-site-nav a:not(.wp-block-button__link){font-size:13px}body:not(.home) .wp-site-blocks>main{padding-top:180px}.jsm-page-hero{padding:60px 24px}.jsm-page-hero h1{font-size:48px}.jsm-page-about,.jsm-contact-options{grid-template-columns:1fr;gap:35px}.jsm-page-about{padding-top:20px}.jsm-contact-option{padding:30px}.jsm-contact-option h2{font-size:34px}.jsm-page-about>figure{max-width:500px}}

/* Match the navigation surround to the light pink CTA tiles. */
.jsm-site-nav{background:#8fd3a9}
.jsm-site-nav a:not(.wp-block-button__link){color:#13241c}

/* Navigation matches the cream Start button. */
.jsm-site-nav{background:#ffffff}
.jsm-site-nav a:not(.wp-block-button__link){color:#13241c}

/* Keep the transparent header logo legible against the section underneath it. */
body .jsm-header .jsm-logo img{filter:none}
body .jsm-header.jsm-header--dark-logo .jsm-logo img{filter:brightness(0) saturate(100%)}

/* Smooth logo contrast changes as the fixed header crosses section boundaries. */
body .jsm-header .jsm-logo img{transition:filter .3s cubic-bezier(.23,1,.32,1)}
@media(prefers-reduced-motion:reduce){body .jsm-header .jsm-logo img{transition:none}}

/* Reserve the full pinned distance inside the flex section; prevent content bleed. */
#ervaringen>.pin-spacer{flex-shrink:0;align-self:center}
#ervaringen .jsm-review-pinned{background:#fff;z-index:4}

/* Center navigation on the viewport, independently of the side controls. */
@media(min-width:761px){
 body .jsm-header{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center}
 .jsm-header>.jsm-logo{justify-self:start}
 .jsm-header>.jsm-site-nav{justify-self:center;margin:0}
 .jsm-header>.wp-block-buttons{justify-self:end;margin:0}
}

/* Personal introduction: a full-width lilac pause after the reviews. */
.jsm-about-band{background:#eaf6ec;margin:0!important;padding:0;position:relative}
#over-mij.jsm-about-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:100px;align-items:center;padding-top:125px;padding-bottom:125px;border:0}
.jsm-about-portrait{position:relative;isolation:isolate;max-width:520px;margin:0!important}
.jsm-about-portrait::before{content:'';position:absolute;inset:20px -20px -12px 12px;background:#8fd3a9;border-radius:6px;transform:rotate(5deg);z-index:-1}
.jsm-about-portrait figure{margin:0;transform:rotate(-3deg)}
.jsm-about-portrait img{display:block;width:100%;height:580px;object-fit:cover;object-position:center;border-radius:5px}
.jsm-about-copy>.jsm-eyebrow{display:flex;align-items:center;gap:12px;color:#1d7650;font-size:14px;margin-bottom:25px}
#over-mij .jsm-about-copy h2{font-size:clamp(42px,4.7vw,68px);line-height:1.07;letter-spacing:normal;margin-bottom:30px}
#over-mij .jsm-about-copy h2 em{display:block;font-family:Gambarino,sans-serif;font-weight:400;color:#1d7650;font-style:normal;}
#over-mij .jsm-about-copy>p:not(.jsm-eyebrow){font-size:19px;line-height:1.65;max-width:600px}
@media(max-width:1000px){#over-mij.jsm-about-feature{gap:55px}.jsm-about-portrait img{height:500px}}
@media(max-width:700px){#over-mij.jsm-about-feature{grid-template-columns:1fr;padding-top:75px;padding-bottom:75px;gap:60px}.jsm-about-portrait{width:85%;justify-self:center}.jsm-about-portrait img{height:auto;aspect-ratio:4/5}.jsm-about-portrait::before{inset:15px -12px -8px 8px}#over-mij .jsm-about-copy h2{font-size:45px}}

/* Let the tilted portrait stand on its own. */
.jsm-about-portrait::before{display:none}

/* Reverse the about portrait's tilt. */
.jsm-about-portrait figure{transform:rotate(3deg)}

/* Center the closing growth-scan invitation on a clean white surface. */
#contact.jsm-section{background:#fff;text-align:center}
#contact.jsm-section>.jsm-eyebrow{justify-content:center;margin-left:auto;margin-right:auto}
#contact.jsm-section>h2,#contact.jsm-section>p{margin-left:auto;margin-right:auto}
#contact.jsm-section>.wp-block-buttons{margin-left:auto;margin-right:auto;justify-content:center}
#contact.jsm-section>.jsm-growth-benefits{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px 30px;max-width:none;margin-top:28px;margin-bottom:35px;font-size:16px}
.jsm-growth-benefits>span{display:inline-block}
@media(max-width:600px){#contact.jsm-section>.jsm-growth-benefits{gap:10px 20px}}

/* Shared two-font treatment for the closing CTA heading. */
#contact.jsm-section>h2 em{font-family:Gambarino,sans-serif;font-weight:400;font-style:normal;color:#154d36}

/* Place the highlighted closing phrase on its own line. */
#contact.jsm-section>h2 em{display:block}

/* Use the three benefits as the lead-in above the CTA title. */
#contact.jsm-section>.jsm-growth-benefits{margin-top:0;margin-bottom:32px;font-size:16px;font-weight:400;letter-spacing:0;color:#13241c}

/* Match the benefit checks to the filled service icons. */
.jsm-growth-benefits>span{display:inline-flex;align-items:center;gap:9px}
.jsm-growth-benefits>span::before{content:'';display:block;flex:0 0 20px;width:20px;height:20px;background:url('check-filled.svg') center/contain no-repeat}

/* Noninteractive sticker trail behind the closing CTA content. */
#contact.jsm-section{isolation:isolate}
.jsm-sticker-trail{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;border-radius:inherit}
.jsm-sticker-trail img{position:absolute;width:115px;height:115px;object-fit:contain;pointer-events:none;will-change:transform,opacity}
@media(hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.jsm-sticker-trail{display:none}}

/* A purple closing panel slides over the pinned white growth-scan invitation. */
.wp-site-blocks>footer{position:relative;z-index:5;margin-top:-36px}
.jsm-footer{position:relative;background:#154d36;color:#ffffff;border-radius:36px 36px 0 0;min-height:85svh;margin:0!important;box-sizing:border-box}
.jsm-footer-inner{max-width:1440px;margin:0 auto!important;padding:100px 40px 35px;min-height:85svh;box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-start}
.jsm-footer .jsm-eyebrow{display:flex;align-items:center;gap:12px;font-size:14px;color:#ffffff}
.jsm-footer-title{max-width:1050px;font-size:clamp(48px,6vw,88px);line-height:1.06;letter-spacing:normal;color:#ffffff;margin:24px 0 35px}
.jsm-footer-title em{font-family:Gambarino,sans-serif;font-weight:400;display:block;font-style:normal;}
.jsm-footer-bottom{width:100%;margin-top:auto;padding-top:80px;display:flex;align-items:center;flex-wrap:wrap;gap:35px;justify-content:space-between}
.jsm-footer-logo{max-width:408px;width:40%}.jsm-footer-logo img{width:100%;height:auto;display:block}
.jsm-footer-bottom nav{display:flex;gap:28px}.jsm-footer-bottom a{color:#ffffff;text-decoration:none}.jsm-footer-bottom a:hover{text-decoration:underline;text-underline-offset:5px}
.jsm-footer-bottom p{width:100%;padding-top:24px;border-top:1px solid #ffffff40;font-size:13px;margin:0}
@media(max-width:700px){.wp-site-blocks>footer{margin-top:-24px}.jsm-footer{border-radius:24px 24px 0 0}.jsm-footer-inner{padding:65px 24px 25px}.jsm-footer-logo{width:100%;max-width:300px}.jsm-footer-bottom{gap:28px;padding-top:65px}.jsm-footer-title{font-size:48px}}

/* Rounded top edge on the complete footer panel. */
.wp-site-blocks>footer{border-radius:56px 56px 0 0;overflow:hidden;background:transparent}
.wp-site-blocks>footer .jsm-footer{border-radius:56px 56px 0 0}
@media(max-width:700px){.wp-site-blocks>footer,.wp-site-blocks>footer .jsm-footer{border-radius:30px 30px 0 0}}

/* Stable pin surface prevents the CTA's auto margins from shifting on pin. */
.jsm-cta-pin{position:relative;width:100%;display:flow-root;background:#fff}
.jsm-cta-pin>#contact.jsm-section{margin-top:0!important;margin-bottom:0!important}

/* Oversized closing wordmark, intentionally cropped by the bottom edge. */
.jsm-footer-wordmark{width:100%;height:5.5vw;overflow:hidden;margin:28px 0 0;line-height:0;pointer-events:none}
.jsm-footer-wordmark img{display:block;width:100%;height:auto;max-width:none;transform:translateY(.3vw)}
@media(max-width:700px){.jsm-footer-wordmark{margin-top:20px}}

/* Footer information grouped into navigation, social profiles and contact. */
.jsm-footer-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px;width:100%;padding-bottom:15px}
.jsm-footer-bottom .jsm-footer-columns nav,.jsm-footer-socials{display:flex;flex-direction:column;align-items:flex-start;gap:13px}
.jsm-footer-columns h3{font-family:'DM Sans',sans-serif;font-size:14px;font-weight:600;color:#ffffffb3;margin:0 0 10px}
.jsm-footer-columns a{font-size:21px;line-height:1.4}
.jsm-footer-socials span{font-size:16px;color:#ffffffb3}
@media(max-width:700px){.jsm-footer-columns{grid-template-columns:1fr 1fr;gap:35px}.jsm-footer-columns a{font-size:18px}}

/* Keep the closing thought together on the footer heading's second line. */
.jsm-footer-title .jsm-footer-title-line{display:block}
.jsm-footer-title .jsm-footer-title-line em{display:inline}

/* Closing message left, practical navigation right, socials on their own row. */
.jsm-footer-inner{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);column-gap:75px;row-gap:70px;align-items:start}
.jsm-footer-lead{min-width:0}
.jsm-footer-title{font-size:clamp(42px,4.5vw,68px);margin-top:24px}
.jsm-footer-bottom{margin:0;padding-top:55px;display:block}
.jsm-footer-columns{grid-template-columns:1fr 1fr;gap:30px}
.jsm-footer-meta{grid-column:1/-1;border-top:1px solid #ffffff40;padding-top:25px;display:flex;justify-content:space-between;align-items:center;gap:30px;width:100%;align-self:end}
.jsm-footer-meta .jsm-footer-socials{gap:8px}
.jsm-footer-meta h3{font-family:'DM Sans',sans-serif;font-size:14px;font-weight:600;margin:0}
.jsm-footer-meta p{font-size:13px;margin:0}
@media(max-width:1000px){.jsm-footer-inner{column-gap:35px}.jsm-footer-columns a{font-size:18px}}
@media(max-width:760px){.jsm-footer-inner{grid-template-columns:1fr;row-gap:35px}.jsm-footer-bottom{padding-top:15px}.jsm-footer-meta{flex-direction:column;align-items:flex-start;gap:24px}.jsm-footer-title{font-size:clamp(37px,7vw,54px)}}

/* Social profile placeholders: circular brand icons, ready for verified URLs. */
.jsm-social-icons{display:flex;gap:8px;margin-top:0}
.jsm-footer-meta .jsm-social-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#ffffff;color:#154d36}
.jsm-social-icon svg{display:block;width:22px;height:22px}

/* Discreet studio credit above the oversized footer wordmark. */
.jsm-footer-meta .jsm-made-by{display:inline-flex;align-items:center;gap:9px;font-size:13px;color:#ffffff;text-decoration:none;white-space:nowrap}
.jsm-made-by strong{font-weight:600;text-decoration:underline;text-underline-offset:3px}
.jsm-made-by-icon{display:block;width:27px;height:27px;flex-shrink:0}
.jsm-footer-meta .jsm-made-by:hover strong{text-decoration-thickness:2px}
.jsm-footer-meta .jsm-made-by:focus-visible{outline:2px solid #ffffff;outline-offset:5px}

/* Connect the shared growth CTA to the footer on the about page. */
.jsm-integrated-footer-cta #contact.jsm-section{max-width:none;width:100%;margin:0!important;background:#154d36;color:#ffffff;border:0;border-radius:56px 56px 0 0;padding:100px 40px 80px}
.jsm-integrated-footer-cta #contact.jsm-section>h2 em,.jsm-integrated-footer-cta #contact.jsm-section>.jsm-eyebrow{color:#ffffff}
.jsm-integrated-footer-cta #contact>.wp-block-buttons::after{background:#ffffff}
.jsm-integrated-footer-cta .wp-site-blocks>footer{margin-top:0;border-radius:0;background:#154d36}
.jsm-integrated-footer-cta .wp-site-blocks>footer .jsm-footer{border-radius:0}
.jsm-integrated-footer-cta .jsm-footer-inner{border-top:1px solid #ffffff33}
@media(max-width:700px){.jsm-integrated-footer-cta #contact.jsm-section{border-radius:30px 30px 0 0;padding:65px 24px 55px}}

/* Services flow individually, without sticky overlap or translucent layers. */
#pakketten .jsm-service-stage{flex-shrink:0}
#pakketten .jsm-service-stage>.jsm-scroll-service{position:relative;top:auto;transform-origin:center bottom}
#pakketten .jsm-package-grid>.jsm-package{position:relative;top:auto}

/* Transparent header blur with a soft lower edge. */
body .jsm-header::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:transparent;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);-webkit-mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.85) 30%,rgba(0,0,0,.45) 60%,rgba(0,0,0,.12) 82%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.85) 30%,rgba(0,0,0,.45) 60%,rgba(0,0,0,.12) 82%,transparent 100%)}
@media(max-width:760px){body .jsm-header::before{bottom:0;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}}
.jsm-contact-options{align-items:stretch}
.jsm-contact-data{margin:38px 0 0}.jsm-contact-data>div{padding:22px 0;border-top:1px solid #154d3626}.jsm-contact-data dt{font-size:13px;margin-bottom:8px;color:#154d36}.jsm-contact-data dd{margin:0;font-size:clamp(20px,2vw,28px);font-weight:500;overflow-wrap:anywhere}.jsm-contact-option .jsm-contact-placeholder{font-size:12px;opacity:.65}
.jsm-contact-form{display:grid;gap:20px;margin-top:30px}.jsm-contact-form label{display:grid;gap:8px;font-size:14px;font-weight:500}.jsm-contact-form label>span{display:contents;font-weight:400}.jsm-contact-form input,.jsm-contact-form textarea{box-sizing:border-box;width:100%;min-width:0;padding:14px 16px;border:1px solid #154d3630;border-radius:5px;background:#ffffff;color:#13241c;font:inherit;font-size:16px}.jsm-contact-form textarea{resize:vertical}.jsm-contact-form input:focus-visible,.jsm-contact-form textarea:focus-visible{outline:2px solid #154d36;outline-offset:3px}.jsm-contact-option .jsm-contact-status{font-size:14px;line-height:1.5;margin:0}.jsm-contact-status:empty{display:none}

/* Floating labels remain visible for focus, saved values and autofill. */
.jsm-contact-form{gap:12px;margin-top:24px}
.jsm-contact-form .jsm-float-field{display:block;position:relative}
.jsm-contact-form .jsm-float-field input,.jsm-contact-form .jsm-float-field textarea{display:block;padding:25px 16px 9px;line-height:22px;border-color:#154d3626;transition:border-color 180ms ease}
.jsm-contact-form .jsm-float-field textarea{min-height:112px}
.jsm-contact-form .jsm-float-field>span{display:block;position:absolute;left:16px;top:18px;max-width:calc(100% - 32px);font-size:15px;line-height:22px;font-weight:400;color:#46705b;pointer-events:none;transform-origin:left top;transition:transform 180ms cubic-bezier(.23,1,.32,1),color 180ms ease}
.jsm-float-field:focus-within>span,.jsm-float-field input:not(:placeholder-shown)+span,.jsm-float-field textarea:not(:placeholder-shown)+span{transform:translateY(-12px) scale(.75);color:#154d36}
.jsm-float-field input:autofill+span{transform:translateY(-12px) scale(.75)}
.jsm-float-field input:-webkit-autofill+span{transform:translateY(-12px) scale(.75)}
.jsm-contact-form .jsm-float-field:focus-within input,.jsm-contact-form .jsm-float-field:focus-within textarea{border-color:#154d36}

@media(prefers-reduced-motion:reduce){.jsm-contact-form .jsm-float-field>span{transition:none}}

/* Compact contact details with quiet, consistent line icons. */
.jsm-contact-data{margin-top:26px}
.jsm-contact-data>div{position:relative;padding:15px 0 15px 46px}
.jsm-contact-data dt{font-size:12px;line-height:18px;margin-bottom:3px}
.jsm-contact-data dt svg{position:absolute;left:0;top:21px;width:23px;height:23px;color:#154d36}
.jsm-contact-data dd{font-size:20px;line-height:1.4;font-weight:500}
.jsm-contact-option .jsm-contact-placeholder{margin-top:12px}

/* Full-width form action follows the header's inset-arrow button. */






/* Individual contact tiles replace the ruled list. */
.jsm-contact-data{display:grid;gap:10px;margin-top:26px}
.jsm-contact-data>div{padding:16px 18px 16px 74px;border:0;border-radius:8px;background:#ffffff;min-height:70px;box-sizing:border-box}
.jsm-contact-data dt{font-size:12px;line-height:17px;margin:0 0 3px;color:#46705b}
.jsm-contact-data dt svg{left:18px;top:50%;transform:translateY(-50%);width:22px;height:22px;padding:9px;box-sizing:content-box;background:#eaf6ec;border-radius:50%;color:#154d36;stroke-width:1.9}
.jsm-contact-data dd{font-size:19px;line-height:1.4;color:#13241c}
@media(max-width:480px){.jsm-contact-data>div{padding-left:65px;padding-right:12px}.jsm-contact-data dt svg{left:12px}.jsm-contact-data dd{font-size:17px}}

/* Die-cut contact badges: distinct silhouettes, consistent line artwork. */
.jsm-contact-data>div{padding:20px 18px 20px 92px;min-height:86px;border-radius:10px}
.jsm-contact-data dt svg{left:19px;top:50%;width:25px;height:25px;padding:12px;border:3px solid #fff;outline:1px solid #154d3612;background:#8fd3a9;color:#154d36;border-radius:14px;transform:translateY(-50%) rotate(-9deg);box-shadow:2px 3px 0 #154d3620;stroke-width:1.8}
.jsm-contact-data>div:nth-child(2) dt svg{background:#154d36;color:#ffffff;border-radius:10px;transform:translateY(-50%) rotate(7deg)}
.jsm-contact-data>div:nth-child(3) dt svg{background:#ffffff;color:#154d36;border-radius:50% 50% 14px 50%;transform:translateY(-50%) rotate(-8deg)}
@media(max-width:480px){.jsm-contact-data>div{padding-left:80px;padding-right:12px}.jsm-contact-data dt svg{left:13px;width:23px;height:23px;padding:10px}}

/* Illustrated sticker sheet, matching the homepage's printed cutout artwork. */
.jsm-contact-data dt svg{display:none}
.jsm-contact-data>div{padding-left:108px;min-height:94px}
.jsm-contact-data>div::before{content:"";position:absolute;left:14px;top:50%;width:78px;height:78px;background:url("irma-contact-stickers.webp") left center/300% 100% no-repeat;transform:translateY(-50%) rotate(-7deg);pointer-events:none}
.jsm-contact-data>div:nth-child(2)::before{background-position:center center;transform:translateY(-50%) rotate(5deg)}
.jsm-contact-data>div:nth-child(3)::before{background-position:right center;transform:translateY(-50%) rotate(-5deg)}
@media(max-width:480px){.jsm-contact-data>div{padding-left:91px}.jsm-contact-data>div::before{left:10px;width:68px;height:68px}}

.jsm-contact-submit{width:100%;margin-top:4px}
.jsm-contact-submit .wp-block-button__link{width:100%;box-sizing:border-box;cursor:pointer;text-align:center}
.jsm-contact-submit .wp-block-button__link:disabled{opacity:.6;cursor:wait;pointer-events:none}

/* Stretch both the submit hit area and its animated label panel. */
body .jsm-contact-form .wp-block-button.jsm-contact-submit{display:block;width:100%;max-width:none;justify-self:stretch}
body .jsm-contact-form .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link{display:flex;width:100%;max-width:none;box-sizing:border-box;justify-content:center}
body .jsm-contact-form .jsm-contact-submit .jsm-cta-label{flex:1;min-width:0;text-align:center}

/* Mobile header: independent equal side columns keep the logo truly centered. */
.jsm-menu-toggle{display:none}
@media(max-width:760px){
 body .jsm-header{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:10px;padding:16px 20px;align-items:center}
 body .jsm-header>.jsm-logo{grid-column:2;grid-row:1;width:clamp(130px,35vw,190px);justify-self:center}
 body .jsm-header>.wp-block-buttons{grid-column:3;grid-row:1;justify-self:end;margin:0}
 .jsm-menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;grid-column:1;grid-row:1;justify-self:start;width:44px;height:44px;border:0;border-radius:4px;background:#ffffff;color:#154d36;cursor:pointer}
 .jsm-menu-toggle span{display:block;width:20px;height:2px;background:currentColor;transition:transform 180ms ease}
 .jsm-menu-open .jsm-menu-toggle span:first-child{transform:translateY(4px) rotate(45deg)}
 .jsm-menu-open .jsm-menu-toggle span:last-child{transform:translateY(-4px) rotate(-45deg)}
 .jsm-menu-toggle:focus-visible{outline:2px solid #154d36;outline-offset:4px}
 body .jsm-header>.jsm-site-nav{display:none;position:absolute;top:calc(100% + 8px);left:20px;right:20px;width:auto;padding:16px;gap:0;background:#ffffff;border-radius:8px;box-shadow:0 12px 30px #13241c14}
 body .jsm-header.jsm-menu-open>.jsm-site-nav{display:flex;flex-direction:column;align-items:stretch}
 .jsm-site-nav a:not(.wp-block-button__link){padding:15px 12px;font-size:18px}
 body .jsm-header>.wp-block-buttons .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link{min-height:44px;padding:12px 48px 12px 14px;font-size:13px}
 body .jsm-header>.wp-block-buttons .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link::before{width:32px;height:32px}
 body .jsm-header>.wp-block-buttons .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link::after{right:13px}
 body:not(.home) .wp-site-blocks>main{padding-top:120px}
}
@media(max-width:420px){
 body .jsm-header>.wp-block-buttons .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link{width:44px;height:44px;min-height:44px;padding:0;font-size:0}
 body .jsm-header>.wp-block-buttons .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link::before{display:none}
 body .jsm-header>.wp-block-buttons .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link::after{left:13px;right:auto;width:18px;height:18px}
}
@media(prefers-reduced-motion:reduce){.jsm-menu-toggle span{transition:none}}

/* Matching mobile menu and enquiry controls. */
@media(max-width:760px){
 body .jsm-header>.wp-block-buttons .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link,
 body .jsm-header>.wp-block-buttons .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link:hover{width:44px;height:44px;min-height:44px;padding:0;font-size:0;border-radius:4px;background:#ffffff;color:#154d36}
 body .jsm-header>.wp-block-buttons .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link::before{display:none}
 body .jsm-header>.wp-block-buttons .wp-block-button.is-style-rw-theme.is-style-rw-theme .wp-block-button__link::after{left:13px;right:auto;width:18px;height:18px;background-color:#154d36}
}

/* Mobile navigation fills the viewport while the header controls stay in place. */
@media(max-width:760px){
 html.jsm-navigation-open,html.jsm-navigation-open body{overflow:hidden;overscroll-behavior:none}
 body .jsm-header.jsm-menu-open{top:0!important;z-index:1000;transform:none}
 body .jsm-header.jsm-menu-open::before{display:none}
 body .jsm-header>.jsm-site-nav,body .jsm-header.jsm-menu-open>.jsm-site-nav{display:flex;position:fixed;inset:0;z-index:-1;width:100%;height:100dvh;box-sizing:border-box;flex-direction:column;align-items:stretch;justify-content:center;gap:12px;margin:0;padding:110px 30px 70px;border-radius:0;background:#154d36;box-shadow:none;overflow-y:auto;overscroll-behavior:contain;visibility:hidden;pointer-events:none;clip-path:inset(0 0 100% 0);transition:clip-path 300ms cubic-bezier(.23,1,.32,1),visibility 300ms}
 body .jsm-header.jsm-menu-open>.jsm-site-nav{visibility:visible;pointer-events:auto;clip-path:inset(0)}
 body .jsm-header>.jsm-site-nav a:not(.wp-block-button__link){display:block;font-family:"Bricolage Grotesque",sans-serif;font-weight:600;font-size:clamp(36px,10vw,64px);line-height:1.15;letter-spacing:normal;color:#ffffff;padding:12px 0;text-decoration:none}
 body .jsm-header>.jsm-site-nav a:not(.wp-block-button__link)[href="/contact/"]{font-family:Gambarino,sans-serif;font-weight:400;font-style:normal;color:#8fd3a9}
 body .jsm-header>.jsm-site-nav::before{content:"Jouw verhaal begint hier.";font-family:"DM Sans",sans-serif;font-size:14px;color:#ffffffb3;letter-spacing:0;margin-bottom:22px}
 body .jsm-header.jsm-menu-open .jsm-logo img{filter:none}
}
@media(prefers-reduced-motion:reduce){body .jsm-header>.jsm-site-nav{transition:none}}

/* Bold mobile menu with consistent typography and directional cues. */
@media(max-width:760px){
 body .jsm-header>.jsm-site-nav,body .jsm-header.jsm-menu-open>.jsm-site-nav{padding:120px 26px 70px;gap:0}
 body .jsm-header>.jsm-site-nav::before{content:"Waar gaan we naartoe?";margin-bottom:26px;color:#ffffffb3;font-size:14px}
 body .jsm-header>.jsm-site-nav a:not(.wp-block-button__link),body .jsm-header>.jsm-site-nav a:not(.wp-block-button__link)[href="/contact/"]{display:flex;align-items:center;justify-content:space-between;gap:16px;font-family:"Bricolage Grotesque",sans-serif;font-style:normal;font-weight:600;font-size:clamp(34px,9vw,60px);line-height:1.2;letter-spacing:normal;color:#ffffff;padding:24px 0;border-top:1px solid #ffffff2b;transform:translateY(16px);opacity:0;transition:transform 280ms cubic-bezier(.23,1,.32,1),opacity 200ms ease}
 body .jsm-header>.jsm-site-nav a:not(.wp-block-button__link)[href="/contact/"]{border-bottom:1px solid #ffffff2b}
 body .jsm-header>.jsm-site-nav a:not(.wp-block-button__link)::after{content:"↗";display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border-radius:4px;background:#8fd3a9;color:#154d36;font-family:Arial,sans-serif;font-size:30px;font-weight:400;letter-spacing:0;line-height:1}
 body .jsm-header.jsm-menu-open>.jsm-site-nav a:not(.wp-block-button__link){opacity:1;transform:translateY(0);transition-delay:70ms}
 body .jsm-header.jsm-menu-open>.jsm-site-nav a:not(.wp-block-button__link):nth-of-type(2){transition-delay:110ms}
 body .jsm-header.jsm-menu-open>.jsm-site-nav a:not(.wp-block-button__link):nth-of-type(3){transition-delay:150ms}
 body .jsm-header>.jsm-site-nav a:not(.wp-block-button__link):focus-visible{outline:2px solid #8fd3a9;outline-offset:5px}
 body .jsm-header>.jsm-site-nav a:not(.wp-block-button__link):active::after{background:#ffffff}
}
@media(max-width:760px) and (max-height:550px){body .jsm-header>.jsm-site-nav,body .jsm-header.jsm-menu-open>.jsm-site-nav{justify-content:flex-start;padding-top:90px}body .jsm-header>.jsm-site-nav a:not(.wp-block-button__link),body .jsm-header>.jsm-site-nav a:not(.wp-block-button__link)[href="/contact/"]{font-size:30px;padding:14px 0}}
@media(prefers-reduced-motion:reduce){body .jsm-header>.jsm-site-nav a:not(.wp-block-button__link){transition:none!important;transform:none!important}}

/* Keep a soft glimpse of the page behind the full-screen mobile menu. */
@media(max-width:760px){
 @supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  body .jsm-header>.jsm-site-nav,body .jsm-header.jsm-menu-open>.jsm-site-nav{background:rgba(21,77,54,.92);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
 }
}

/* Navigation uses the same configured arrow asset as the theme buttons. */
@media(max-width:760px){
 body .jsm-header>.jsm-site-nav a:not(.wp-block-button__link){position:relative}
 body .jsm-header>.jsm-site-nav a:not(.wp-block-button__link)::after{content:""}
 body .jsm-header>.jsm-site-nav a:not(.wp-block-button__link)::before{content:"";position:absolute;right:11px;top:50%;width:22px;height:22px;transform:translateY(-50%);z-index:1;background:#154d36;mask:var(--rw-btn-icon-mask) center/contain no-repeat;-webkit-mask:var(--rw-btn-icon-mask) center/contain no-repeat;pointer-events:none}
}

/* Contact becomes the mobile navigation's primary action. */
@media(max-width:760px){
 body .jsm-header>.jsm-site-nav a:not(.wp-block-button__link)[href="/contact/"]{margin-top:26px;padding:18px 18px 18px 22px;border:0;border-radius:4px;background:#8fd3a9;color:#154d36;font-size:clamp(24px,7vw,34px);letter-spacing:normal}
 body .jsm-header>.jsm-site-nav a:not(.wp-block-button__link)[href="/contact/"]::after{background:#154d36;width:40px;height:40px;flex-basis:40px;border-radius:2px}
 body .jsm-header>.jsm-site-nav a:not(.wp-block-button__link)[href="/contact/"]::before{right:27px;background:#ffffff}
 body .jsm-header>.jsm-site-nav a:not(.wp-block-button__link)[href="/contact/"]:active{background:#8fd3a9}
 body .jsm-header>.jsm-site-nav a:not(.wp-block-button__link)[href="/contact/"]:active::after{background:#154d36}
}

/* A separate mobile tab opens the existing enquiry popup. */
.jsm-site-nav .jsm-menu-start-tab{display:none}
@media(max-width:760px){
 body .jsm-header>.jsm-site-nav a:not(.wp-block-button__link).jsm-menu-start-tab{align-self:center;justify-content:center;width:auto;margin-top:18px;padding:11px 22px;border:1px solid #ffffff66;border-radius:30px;background:#ffffff;color:#154d36;font-family:"DM Sans",sans-serif;font-size:16px;font-weight:600;line-height:1.4;letter-spacing:0;gap:0}
 body .jsm-header>.jsm-site-nav a:not(.wp-block-button__link).jsm-menu-start-tab::before,body .jsm-header>.jsm-site-nav a:not(.wp-block-button__link).jsm-menu-start-tab::after{display:none}
 body .jsm-header.jsm-menu-open>.jsm-site-nav a:not(.wp-block-button__link).jsm-menu-start-tab{transition-delay:180ms}
}

/* Reuse the actual site CTA component in the full-screen menu. */
@media(min-width:761px){.jsm-menu-contact{display:contents}.jsm-menu-contact .jsm-cta-label::before,.jsm-menu-contact .wp-block-button__link::before,.jsm-menu-contact .wp-block-button__link::after{display:none!important}body .jsm-header .jsm-menu-contact .wp-block-button__link{padding:0!important;background:none!important;font:inherit!important;color:inherit!important}.jsm-menu-contact .jsm-cta-label{transform:none!important}}
@media(max-width:760px){
 .jsm-menu-contact{width:100%;margin-top:26px}
 body .jsm-header .jsm-menu-contact .wp-block-button__link{display:flex;width:100%;box-sizing:border-box;font-size:18px;line-height:22px;text-decoration:none}
 .jsm-menu-contact .jsm-cta-label{flex:1;text-align:center}
}

/* Start is a navigation choice, placed between Services and Contact. */
@media(max-width:760px){
 body .jsm-header>.jsm-site-nav::before{display:none}
 body .jsm-header>.jsm-site-nav a.jsm-menu-start-tab{align-self:stretch;justify-content:space-between;width:auto;margin:0;padding:24px 0;border:0;border-top:1px solid #ffffff2b;border-radius:0;background:transparent;color:#ffffff;font-family:"Bricolage Grotesque",sans-serif;font-size:clamp(34px,9vw,60px);font-weight:600;line-height:1.2;letter-spacing:normal;gap:16px}
 body .jsm-header>.jsm-site-nav a.jsm-menu-start-tab::before{display:block}
 body .jsm-header>.jsm-site-nav a.jsm-menu-start-tab::after{display:grid}
}
@media(max-width:760px) and (max-height:550px){body .jsm-header>.jsm-site-nav a.jsm-menu-start-tab{font-size:30px;padding:14px 0}}

/* Start inherits the regular menu-link styling without tab overrides. */
@media(min-width:761px){.jsm-site-nav .jsm-menu-start-item{display:none}}

/* Preserve the original WhatsApp widget; hide it behind other navigation flows. */
body .wa-orb{z-index:80}
body .rw-chat{z-index:90}
html.jsm-navigation-open .wa-orb,html.jsm-navigation-open .wa-nudge,html.jsm-navigation-open .rw-chat,body:has(.rw-flow[open]) .wa-orb,body:has(.rw-flow[open]) .wa-nudge,body:has(.rw-flow[open]) .rw-chat{display:none!important}

/* Keep the supplied Irma Groen logo at its natural proportions. */
.jsm-footer-wordmark{height:auto;overflow:visible}
.jsm-footer-wordmark img{transform:none}

/* Irma Groen semantic colors and controls. */
body{color:var(--groen-tekst);background:var(--groen-wit)}
body h2,body h3,body h4{color:var(--groen-primair)}
body .jsm-hero{background:linear-gradient(170deg,var(--groen-primair) 37%,var(--groen-primair-hover) 100%)}
body .jsm-hero h1,body .jsm-hero .jsm-intro{color:var(--groen-wit)}
body .jsm-hero h1 em{color:var(--groen-accent)}
body .wp-block-button.is-style-rw-theme{--rw-btn-bg:var(--groen-primair);--rw-btn-text:var(--groen-wit);--rw-btn-hover:var(--groen-primair-hover);--rw-btn-hover-text:var(--groen-wit)}
body .jsm-hero .wp-block-button.is-style-rw-theme,body .jsm-header .wp-block-button.is-style-rw-theme,body .jsm-footer .wp-block-button.is-style-rw-theme{--rw-btn-bg:var(--groen-accent);--rw-btn-text:var(--groen-tekst);--rw-btn-hover:var(--groen-mint);--rw-btn-hover-text:var(--groen-tekst)}
body .jsm-button-secondary.is-style-rw-theme{--rw-btn-bg:var(--groen-accent);--rw-btn-text:var(--groen-tekst);--rw-btn-hover:var(--groen-mint);--rw-btn-hover-text:var(--groen-tekst)}
body .jsm-float-field input,body .jsm-float-field textarea{border-color:var(--groen-rand)}
/* Preserve the supplied logo colors on the primary green header. */
body .jsm-header{background:var(--groen-primair)}
body .jsm-header .jsm-logo img,body .jsm-header.jsm-header--dark-logo .jsm-logo img{filter:none}
#rw-chat,.rw-chat-toggle,.rw-wa-button{--rw-primary:var(--groen-primair);--rw-accent:var(--groen-accent)}

/* Give the new heading faces enough vertical space on every viewport. */
body .jsm-hero h1,body .jsm-page-hero h1{line-height:1.15}
body .jsm-hero h1 em{letter-spacing:normal;line-height:1.15}

/* Logo emblem as a printed sticker on the photo composition. */
.jsm-intro-collage::after{content:"";background:url('irma-logo-sticker.svg') center/contain no-repeat;width:138px;height:138px;padding:0;border-radius:0;filter:drop-shadow(0 5px 4px #13241c26);pointer-events:none}
@media(max-width:700px){.jsm-intro-collage::after{width:108px;height:108px}}
/* Generated paper sticker, sized to keep the words readable. */
.jsm-intro-collage::after{background-image:url('op-jouw-manier-sticker.webp');width:190px;height:105px}
@media(max-width:700px){.jsm-intro-collage::after{width:150px;height:83px}}

/* Let the hand-drawn oval stretch around the complete highlighted phrase. */
.jsm-intro-copy>h2 em{padding:.04em .2em;margin-bottom:.16em}
.jsm-intro-copy>h2 em::after{inset:-.12em -.28em -.16em;mask-size:100% 100%;-webkit-mask-size:100% 100%}
@media(max-width:600px){.jsm-intro-copy>h2 em{font-size:1.05em}.jsm-intro-copy>h2 em::after{inset:-.12em -.18em -.16em}}

/* Repeat the logo's four-point star in the topbar and section labels. */
.jsm-usp-flourish{width:24px;height:24px}
.jsm-eyebrow::before{flex-basis:24px;width:24px;height:24px;-webkit-mask:url("logo-star.svg?v=2") center/contain no-repeat;mask:url("logo-star.svg?v=2") center/contain no-repeat}

/* Compact footer row with socials and copyright left, brand centered. */
.jsm-footer-meta{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:24px}
.jsm-footer-meta .jsm-footer-socials{display:flex;flex-direction:row;align-items:center;gap:14px;flex-wrap:wrap}
.jsm-footer-meta .jsm-footer-brand{display:block;width:180px;justify-self:center}
.jsm-footer-brand img{display:block;width:100%;height:auto}
.jsm-footer-meta .jsm-made-by{justify-self:end}
@media(max-width:760px){.jsm-footer-meta{grid-template-columns:1fr;justify-items:center;gap:24px}.jsm-footer-meta .jsm-footer-socials{justify-content:center}.jsm-footer-meta .jsm-made-by{justify-self:center}.jsm-footer-meta .jsm-footer-brand{width:160px}}
/* Equal counselling cards with practical details instead of marketing mockups. */
#pakketten.jsm-counselling-rates .jsm-package{display:flex;flex-direction:column;padding:32px!important;background:var(--groen-wit);border:1px solid var(--groen-rand);border-radius:20px;gap:0}
#pakketten.jsm-counselling-rates .jsm-package h3{font-size:28px;line-height:1.2;min-height:0;max-width:none;margin:0 0 24px;color:var(--groen-primair)}
#pakketten.jsm-counselling-rates .jsm-service-price{display:flex;flex-direction:column;align-items:flex-start;border:0;padding:0;margin:0 0 22px!important;gap:8px}
#pakketten.jsm-counselling-rates .jsm-service-price strong{font-family:"Bricolage Grotesque",sans-serif;font-size:clamp(30px,3vw,42px);font-weight:600;line-height:1.15;color:var(--groen-primair)}
#pakketten.jsm-counselling-rates .jsm-package>p:not(.jsm-service-price){font-family:"DM Sans",sans-serif;font-size:17px;line-height:1.6;font-weight:400;color:var(--groen-tekst);min-height:0;margin:0 0 22px}
#pakketten.jsm-counselling-rates .jsm-package ul{margin:0 0 30px;padding:0;flex:1}
#pakketten.jsm-counselling-rates .jsm-package li{font-size:16px;line-height:1.6}
#pakketten.jsm-counselling-rates .jsm-package>.wp-block-buttons{margin-top:auto;padding-top:12px}
#pakketten .jsm-rates-details{margin:36px 0 0;padding:28px 32px;background:var(--groen-mint);border:1px solid var(--groen-rand);border-radius:16px;color:var(--groen-tekst)}
#pakketten .jsm-rates-details h3{font-size:24px;margin:0 0 16px;color:var(--groen-primair)}
#pakketten .jsm-rates-details p{font-size:16px;line-height:1.65;max-width:900px}
@media(max-width:1000px){#pakketten.jsm-counselling-rates .jsm-package-grid{grid-template-columns:1fr}}
/* Three equal tariff cards, with no reserved visual column. */
#pakketten.jsm-counselling-rates .jsm-package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding-bottom:0;align-items:stretch}
#pakketten.jsm-counselling-rates .jsm-package-grid>.jsm-package{position:relative;top:auto;min-width:0;min-height:0;align-items:stretch;justify-content:flex-start;gap:0;transform:none;box-sizing:border-box}
#pakketten.jsm-counselling-rates .jsm-package>ul{width:auto;border:0;padding:0;margin:0 0 28px;box-sizing:border-box}
#pakketten.jsm-counselling-rates .jsm-package>ul li{padding:8px 0 8px 28px}
#pakketten.jsm-counselling-rates .jsm-package>ul li::before{left:0;top:11px}
@media(max-width:900px){#pakketten.jsm-counselling-rates .jsm-package-grid{grid-template-columns:1fr}}

/* Use forest-green logo lettering as the header crosses light sections. */
body .jsm-header{background:transparent}
body .jsm-header .jsm-logo img{content:url("logo.svg");filter:none}
body .jsm-header.jsm-header--dark-logo .jsm-logo img{content:url("logo-dark.svg");filter:none}
body .jsm-header.jsm-menu-open .jsm-logo img{content:url("logo.svg");filter:none}
/* Brand-green checkmarks, independent of the legacy SVG's purple fill. */
#pakketten.jsm-counselling-rates .jsm-package li::before{background:var(--groen-link)!important;background-image:none!important;-webkit-mask:url("check-circle.svg") center/contain no-repeat;mask:url("check-circle.svg") center/contain no-repeat}
/* Practical notes sit quietly beneath the tariff cards. */
#pakketten .jsm-rates-notes{margin:30px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:0 36px;color:var(--groen-wit)}
#pakketten .jsm-rates-notes details{margin:0;border-top:1px solid #ffffff40;border-bottom:1px solid #ffffff40;padding:0;background:none;border-radius:0}
#pakketten .jsm-rates-notes summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;padding:20px 0;font-family:"DM Sans",sans-serif;font-size:16px;font-weight:600;line-height:1.5;color:var(--groen-wit)}
#pakketten .jsm-rates-notes summary::-webkit-details-marker{display:none}
#pakketten .jsm-rates-notes summary::after{content:"+";font-size:25px;font-weight:400;color:var(--groen-accent)}
#pakketten .jsm-rates-notes details[open] summary::after{content:"−"}
#pakketten .jsm-rates-notes summary:focus-visible{outline:2px solid var(--groen-accent);outline-offset:4px}
#pakketten .jsm-rates-notes details p{max-width:560px;margin:0 0 22px;font-size:16px;line-height:1.65;color:var(--groen-mint)}
@media(max-width:700px){#pakketten .jsm-rates-notes{grid-template-columns:1fr;gap:0}#pakketten .jsm-rates-notes details+details{border-top:0}}
/* Keep Irma's face centered in the circular chat portrait. */
.wa-nudge-avatar,.rw-chat-avatar img{object-fit:cover;object-position:65% 42%}
.rw-chat-opt{color:var(--groen-primair)!important}
.rw-chat-opt:hover{color:var(--groen-wit)!important}
/* A lighter, quiet WhatsApp button without the heavy orb treatment. */
body .wa-orb{background:linear-gradient(155deg,var(--groen-mint),var(--groen-accent));border:0;box-shadow:0 5px 18px #13241c1a}
body .wa-orb::before{display:none}
body .wa-orb svg,body .wa-orb:hover svg{color:var(--groen-primair);filter:none}
body .wa-orb:hover{box-shadow:0 7px 22px #13241c26}
body .wa-orb:focus-visible{outline:2px solid var(--groen-primair);outline-offset:4px}
.jsm-about-background{max-width:1000px;color:var(--groen-tekst)}
.jsm-about-background h2{font-size:clamp(34px,4vw,54px);line-height:1.15;margin-bottom:28px}
.jsm-about-background h2 em{font-family:Gambarino,sans-serif;font-weight:400;font-style:normal;color:var(--groen-link)}
.jsm-about-background p:not(.jsm-eyebrow){font-size:18px;line-height:1.75;max-width:800px}
.jsm-about-background h3{margin-top:36px}

/* The footer repeats the contact page's illustrated contact cards. */
.jsm-footer-inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:64px}
.jsm-footer-columns{grid-template-columns:minmax(90px,.65fr) minmax(0,2fr);gap:28px}
.jsm-footer-contact{min-width:0}
.jsm-footer-contact .jsm-contact-data{margin:0;display:grid;gap:10px}
.jsm-footer-contact .jsm-contact-data>div{background:var(--groen-mint);color:var(--groen-tekst);padding:16px 12px 16px 86px;min-height:82px;border:0;border-radius:12px;box-sizing:border-box}
.jsm-footer-contact .jsm-contact-data>div::before{width:62px;height:62px;left:10px}
.jsm-footer-contact .jsm-contact-data dt{color:var(--groen-tekst-subtiel);font-size:12px;line-height:1.5}
.jsm-footer-contact .jsm-contact-data dd{margin:4px 0 0;font-size:15px;line-height:1.5;color:var(--groen-tekst)}
.jsm-footer-contact .jsm-contact-data dd a{font-family:"DM Sans",sans-serif;font-size:15px;line-height:1.5;color:var(--groen-primair);overflow-wrap:anywhere}
.jsm-footer-contact .jsm-contact-data dd span{font-size:13px;color:var(--groen-tekst-subtiel)}
@media(max-width:1000px){.jsm-footer-inner{grid-template-columns:1fr;row-gap:32px}.jsm-footer-bottom{padding-top:0}.jsm-footer-columns{grid-template-columns:minmax(100px,1fr) minmax(0,2fr)}}
@media(max-width:480px){.jsm-footer-columns{grid-template-columns:1fr}.jsm-footer-contact{margin-top:12px}}
