/* A Dutch palette, expressed through typography, rules and movement. */
:root{--cobalt:#1856c9;--ink:#10294c;--bg:#10294c;--red:#d83243;--paper:#f8faff;--sub:#abc3e7}
.certainty{background:#fff}.approach{background:#edf3fc}.faq-section{background:#10294c}.advice-section{background:#fff}footer{background:#091b35}
.section-heading .soft,.approach .soft,.advice-section .soft{color:#1856c9}.section-label:after{background:linear-gradient(90deg,#d83243 0 13%,#1856c9 13% 100%)}.service-number,.step-number{color:#d83243}.service:before{background:#d83243}.step:before{background:#1856c9}.service-plus{color:#d83243}.step-number>span{color:#1856c9}.scene.active:after{background:#f65f66}.scroll-progress{background:linear-gradient(90deg,#d83243,#ed5963 20%,#1856c9 72%)}.hero .button>span:last-child{color:#ffabb0}.hero .button{border-color:#edf4ffb8;box-shadow:0 0 24px #cadfff0f}.hero .button.glow:hover{border-color:#ffb6bc;box-shadow:0 0 28px #e83e533f,inset 0 0 20px #e83e530b}.people .button>span:last-child{color:#ffb6bc}.hero .scene.active{color:#fff}.approach .button,.submit{border-color:#1856c9aa}.approach .button>span:last-child,.submit>span:last-child{color:#d83243}.advice-assurance{color:#244a83}.faq-layout h2 .soft{color:#9fc0f6}.faq-list summary>span{color:#f18b96}.mobile-sticky-cta>span{color:#d83243}.mobile-sticky-cta{border-color:#1856c999}#header.scrolled .nav-link{border-color:#1856c977}#header.scrolled .nav-link>span{color:#d83243}.text-link>span{color:#d83243}.form-success .success-label{color:#bf2738}.button.glow:hover{box-shadow:0 0 25px #1856c927}.form-panel{background:#f0f4fa;border-color:#dce5f2}.field input:focus,.field textarea:focus{border-color:#d83243}::selection{background:#d83243;color:white}
/* 01 — lines enter vertically while the service rows travel horizontally. */
.js-motion .certainty .service{opacity:0;transform:translate3d(35px,0,0);transition:opacity .75s var(--ease),transform .95s var(--ease)}.js-motion .certainty .service.in-view{opacity:1;transform:none}.js-motion .certainty .service:nth-child(2){transition-delay:.09s}.js-motion .certainty .service:nth-child(3){transition-delay:.18s}
/* The photographic chapter opens from its centre and moves with the scroll. */
.js-motion .people-photo{clip-path:inset(0 8% 0 8%);transition:clip-path 1.4s var(--ease)}.js-motion .people-photo.in-view{clip-path:inset(0)}.js-motion .people-content.motion-heading .line-inner{opacity:0;transform:translate3d(-45px,0,0);transition:opacity .9s var(--ease),transform 1.1s var(--ease);transition-delay:var(--line-delay,0ms)}.js-motion .people-content.motion-heading.in-view .line-inner{opacity:1;transform:none}.people-bottom{transition:opacity .9s .3s,transform .9s .3s var(--ease)}.js-motion .people-content:not(.in-view) .people-bottom{opacity:0;transform:translateY(16px)}
/* 02 — the steps are drawn from left to right, with the numbers arriving first. */
.js-motion .approach .step{opacity:1;transform:none}.js-motion .approach .step>*{opacity:0;transform:translate3d(0,22px,0);transition:opacity .7s var(--ease),transform .9s var(--ease)}.js-motion .approach .step.in-view>*{opacity:1;transform:none}.approach .step h3{transition-delay:.08s!important}.approach .step p{transition-delay:.15s!important}.approach .step .step-note{transition-delay:.23s!important}.approach .step:nth-child(2)>*{transition-delay:.16s}.approach .step:nth-child(3)>*{transition-delay:.24s}
/* Questions reveal row by row; the answers keep a calm, immediate interaction. */
.js-motion .faq-list.reveal{opacity:1;transform:none}.js-motion .faq-list details{opacity:0;transform:translate3d(0,20px,0);transition:opacity .65s var(--ease),transform .8s var(--ease);transition-delay:var(--row-delay,0ms)}.js-motion .faq-list.in-view details{opacity:1;transform:none}.faq-list details:nth-child(2){--row-delay:80ms}.faq-list details:nth-child(3){--row-delay:160ms}.faq-list details:nth-child(4){--row-delay:240ms}.faq-list details[open]>p{animation:answer-in .35s var(--ease) both}.faq-list summary{transition:color .2s}.faq-list summary:hover{color:#c1d8ff}
/* The invitation and the input rules open in sequence. */
.js-motion .form-panel.reveal{opacity:0;transform:translate3d(0,32px,0);transition:opacity .9s .1s,transform 1.1s .1s var(--ease)}.js-motion .form-panel.reveal.in-view{opacity:1;transform:none}.field{position:relative}.field:after{content:'';position:absolute;height:1px;left:0;right:0;bottom:0;background:#1856c9;transform:scaleX(0);transform-origin:left;transition:transform 1s var(--ease);transition-delay:var(--field-delay,0ms)}.form-panel.in-view .field:after{transform:scaleX(1)}.field:focus-within:after{background:#d83243}.form-row .field:nth-child(2){--field-delay:100ms}form>.field:nth-child(2){--field-delay:160ms}form>.field:nth-child(3){--field-delay:240ms}
@keyframes answer-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}
@media(max-width:600px){.js-motion .certainty .service{transform:translate3d(18px,0,0)}.js-motion .people-photo{clip-path:inset(0 4% 0 4%)}.js-motion .people-photo.in-view{clip-path:inset(0)}.js-motion .people-content.motion-heading .line-inner{transform:translate3d(-24px,0,0)}.js-motion .people-content.motion-heading.in-view .line-inner{transform:none}.js-motion .form-panel.reveal{transform:translate3d(0,20px,0)}.js-motion .form-panel.reveal.in-view{transform:none}}
@media(prefers-reduced-motion:reduce){.js-motion .certainty .service,.js-motion .people-content.motion-heading .line-inner,.js-motion .approach .step>*,.js-motion .faq-list details,.js-motion .form-panel.reveal,.js-motion .people-content:not(.in-view) .people-bottom{opacity:1;transform:none}.js-motion .people-photo{clip-path:none}.field:after{transform:scaleX(1)}.faq-list details[open]>p{animation:none}}
.hero-statement{max-width:620px;font-size:18px}.section-heading>p{max-width:455px}.advice-copy>p:not(.kicker){max-width:390px}.hero .button{margin-top:0}
@media(max-width:600px){.hero-statement{font-size:16px;max-width:330px;line-height:1.5}.hero-content{padding-top:128px;padding-bottom:123px}.hero h1{font-size:clamp(36px,9.7vw,47px);margin-bottom:25px}.hero-kicker{margin-bottom:21px}.certainty .section-heading h2{font-size:clamp(27px,7.25vw,34px)}.certainty .service{padding:17px 0}.certainty .section-heading p{font-size:13px;line-height:1.65}.certainty .service p{font-size:12px;line-height:1.65}.certainty .service h3{font-size:22px}.certainty .sector-line{margin-top:22px}.certainty{padding-top:36px;padding-bottom:32px}.certainty .section-label{margin-bottom:25px}.form-row{grid-template-columns:1fr 1fr;gap:16px}.advice-copy h2{font-size:39px}.advice-copy>p:not(.kicker){font-size:13px}.advice-section{padding-top:36px;padding-bottom:36px}.advice-layout{gap:25px}.form-panel{padding:24px 19px}.advice-copy .kicker{margin-bottom:16px}.advice-assurance{margin-top:18px}.field label{font-size:11px}.field input::placeholder,.field textarea::placeholder{font-size:11px}.field{margin-bottom:19px}.privacy-line{font-size:9px}.hero .micro{max-width:320px}.people h2{font-size:clamp(40px,10.7vw,55px)}}
@media(max-width:370px){.form-row{grid-template-columns:1fr;gap:0}.hero h1{font-size:34px}.hero-statement{font-size:15px}.certainty .section-heading h2{font-size:26px}.advice-copy h2{font-size:36px}}
.people-bottom p{max-width:580px}.people h2{font-size:clamp(48px,5.4vw,80px)}
@media(max-width:600px){.people h2{font-size:clamp(36px,9.6vw,48px)}.people-bottom p{font-size:14px;max-width:340px}.people .kicker{font-size:11px}.people-content{padding-top:45px;padding-bottom:60px}}
.margin-note{max-width:330px;border-left:2px solid #d83243;padding-left:24px}.margin-note h3{font-size:25px;font-weight:540;line-height:1.2;letter-spacing:-.025em}.approach-heading .margin-note p{font-size:13px;line-height:1.65;margin:14px 0 0;color:#536780}
@media(max-width:800px){.margin-note{max-width:280px;padding-left:18px}.margin-note h3{font-size:22px}.approach-heading .margin-note p{font-size:12px}}
@media(max-width:600px){.approach-heading{display:block}.margin-note{max-width:none;margin-top:22px;padding-left:15px;display:grid;grid-template-columns:125px 1fr;gap:15px;align-items:center}.margin-note h3{font-size:18px;line-height:1.25}.approach-heading .margin-note p{font-size:11px;line-height:1.6;margin:0}.approach .steps{gap:18px;margin-top:24px}.approach .step{padding-top:15px}.approach .step h3{font-size:22px}.approach .step p{font-size:12px}.approach .step-note{font-size:9px}.approach{padding-top:35px;padding-bottom:35px}.approach .section-label{margin-bottom:25px}.approach .approach-heading h2{font-size:34px}}
@media(max-width:370px){.margin-note{grid-template-columns:112px 1fr;gap:12px;padding-left:12px}.margin-note h3{font-size:17px}.approach-heading .margin-note p{font-size:10px}.approach .approach-heading h2{font-size:31px}}
