/* V15.4: original cascade order retained; historical files remain untouched. */
/* assets/homepage-v3.css */
/* V8 — one continuous path, from the way of working to the freedom to continue. */
.homepage-v3 .hero-v3{--teaser-type:clamp(34px,3vw,50px);--teaser-height:calc(var(--teaser-type)*3.12 + 42px);padding:0}
.homepage-v3 .hero-opening{height:calc(100svh - 100px - var(--teaser-height));min-height:480px;display:flex;flex-direction:column;justify-content:center;gap:clamp(54px,8svh,116px);padding-top:clamp(28px,5svh,80px);padding-bottom:clamp(28px,5svh,80px)}
.homepage-v3 .hero-v3 .studio-title{margin:0;flex-shrink:0}
.homepage-v3 .hero-v3 .hero-bottom{grid-template-columns:minmax(0,1.4fr) minmax(280px,.9fr);gap:55px;align-items:end}
.homepage-v3 .hero-copy{max-width:660px;margin-left:18%;padding:0}
.homepage-v3 .hero-positioning{font-size:clamp(22px,1.85vw,27px);font-weight:550;line-height:1.38;letter-spacing:-.03em;max-width:540px;margin:0}
.homepage-v3 .hero-v3 .hero-actions{padding:0}
.homepage-v3 .hero-v3 .brand-showcase-copy{top:18px;bottom:auto;max-width:40%}
.homepage-v3 .hero-v3 .brand-showcase-copy>p{font-size:var(--teaser-type);line-height:1.04}

.homepage-v3 .intro-section{padding:110px 0 0}
.homepage-v3 .process-composition{position:relative;min-height:710px;isolation:isolate;padding-bottom:150px}
.homepage-v3 .process-composition h2{font-size:clamp(52px,6.3vw,96px);line-height:1.03;letter-spacing:-.065em;position:relative}
.homepage-v3 .process-composition h2 span{display:block;width:max-content;max-width:100%;background:var(--paper)}
.homepage-v3 .process-composition h2 span+span{margin:28px 0 0 25%}
.homepage-v3 .process-trace{position:absolute;inset:0;width:100%;height:100%;z-index:-1;overflow:visible}
.homepage-v3 .process-explanation{max-width:440px;margin:126px 0 0 13%;background:var(--paper);position:relative}
.homepage-v3 .process-explanation p{font-size:18px;line-height:1.65;color:var(--muted)}
.homepage-v3 .process-explanation .text-link{margin-top:26px}

.homepage-v3 .expertise-section{padding:0;border:0;overflow:visible;view-timeline-name:--expertise;view-timeline-axis:block}
.homepage-v3 .journey-composition{position:relative;height:clamp(1460px,185svh,2200px);isolation:isolate}
.homepage-v3 .journey-path{position:absolute;inset:0;height:100%;width:100%;pointer-events:none;z-index:-1}
.homepage-v3 .journey-intro{position:absolute;left:53%;top:4%;font-size:clamp(34px,3.9vw,58px);letter-spacing:-.045em;line-height:1.12;max-width:490px}
.homepage-v3 .journey-analysis{position:absolute;left:15%;top:16%;width:67%;max-width:830px}
.homepage-v3 .journey-analysis h3{font-size:clamp(26px,2.9vw,40px);line-height:1.16;letter-spacing:-.045em;max-width:650px}
.homepage-v3 .journey-sentence{font-size:17px;line-height:1.5;color:#c3d2bf;margin:20px 0 0;max-width:500px}
.homepage-v3 .analysis-signals{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:33px 55px;padding:0;margin:48px 0 0}
.homepage-v3 .analysis-signals li{position:relative;font-size:clamp(18px,1.6vw,24px);line-height:1.4;color:#d0dbc6;padding-left:24px;max-width:395px}
.homepage-v3 .analysis-signals li:nth-child(even){transform:translateY(25px)}
.homepage-v3 .signal-mark{position:absolute;left:0;top:13px;width:9px;height:1px;background:#abc092}
.homepage-v3 .signal-mark:after{content:'';position:absolute;left:4px;top:-4px;height:9px;width:1px;background:inherit}
.homepage-v3 .discipline-note{display:inline-flex;align-items:center;gap:25px;margin-top:65px;padding-bottom:9px;border-bottom:1px solid #789580;font-size:15px;color:#dce6d2;transition:color .2s ease,border-color .2s ease}
.homepage-v3 .discipline-note:hover,.homepage-v3 .discipline-note:focus-visible{color:var(--lime);border-color:var(--lime)}
.homepage-v3 .journey-realisation{position:absolute;left:37%;width:51%;top:54%}
.homepage-v3 .journey-realisation h3{font-size:clamp(38px,4.2vw,62px);font-weight:500;line-height:1.04;letter-spacing:-.055em;margin:0 0 38px}
.homepage-v3 .realisation-rail{border-bottom:1px solid #4b6559}
.homepage-v3 .realisation-rail a{position:relative;display:grid;grid-template-columns:25px minmax(0,1fr) 25px;gap:20px;align-items:center;border-top:1px solid #4b6559;padding:22px 8px 22px 0;transition:background-color .3s ease,color .3s ease}
.homepage-v3 .route-number{font-size:13px;color:#a7bba5;align-self:start;padding-top:5px}
.homepage-v3 .route-content{transition:transform .3s ease}
.homepage-v3 .route-content strong{display:block;font-size:clamp(21px,2vw,29px);font-weight:500;line-height:1.24;letter-spacing:-.04em}
.homepage-v3 .route-content small{display:block;font-size:16px;line-height:1.5;color:#b5c8b3;margin-top:7px}
.homepage-v3 .route-arrow{font-size:24px;color:#a7bba5;transition:transform .3s ease}
.homepage-v3 .realisation-rail a:hover,.homepage-v3 .realisation-rail a:focus-visible{background:var(--lime);color:var(--ink)}
.homepage-v3 .realisation-rail a:is(:hover,:focus-visible) :is(.route-number,.route-content small,.route-arrow){color:var(--petrol)}
.homepage-v3 .realisation-rail a:is(:hover,:focus-visible) .route-content{transform:translateX(3px)}
.homepage-v3 .realisation-rail a:is(:hover,:focus-visible) .route-arrow{transform:translate(2px,-2px)}

/* People — equal portrait frames on three staggered architectural rails. */
.homepage-v3 .people-section{padding:112px 0 104px;background:var(--paper);color:var(--ink)}
.homepage-v3 .people-opening{display:flex;align-items:flex-end;gap:72px;margin-bottom:72px}
.homepage-v3 .people-opening:after{content:"";height:1px;background:var(--line);flex:1;margin-bottom:9px}
.homepage-v3 .people-opening h2{font-size:clamp(46px,5.2vw,76px);font-weight:500;line-height:1.06;letter-spacing:-.06em;margin:0;flex-shrink:0}
.homepage-v3 .people-series{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 48px;width:88%;max-width:1184px;margin:0 auto}
.homepage-v3 .person-portrait{min-width:0;margin:0;position:relative}
.homepage-v3 .person-portrait:nth-child(3n+2){margin-top:72px}
.homepage-v3 .person-portrait:nth-child(3n){margin-top:32px}
.homepage-v3 .person-image{position:relative;aspect-ratio:4/5;overflow:hidden;background:#d8ddcf}
.homepage-v3 .person-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .65s cubic-bezier(.2,.65,.2,1)}
.homepage-v3 .person-context{position:absolute;inset:auto 0 0;margin:0;padding:16px 18px;border-top:2px solid var(--lime);background:var(--ink);color:#fbfaf5;font-size:16px;line-height:1.45;letter-spacing:-.02em;opacity:0;transform:translateY(6px);pointer-events:none;transition:opacity .25s ease,transform .25s ease}
.homepage-v3 .person-portrait:focus-visible{outline:2px solid var(--petrol);outline-offset:7px}
.homepage-v3 .person-portrait:focus .person-context{opacity:1;transform:none}
.homepage-v3 .person-portrait:focus figcaption:before{width:100%}
.homepage-v3 .person-portrait figcaption{position:relative;padding-top:21px;border-top:1px solid var(--line);margin-top:18px}
.homepage-v3 .person-portrait figcaption:before{content:"";position:absolute;top:-1px;left:0;width:36px;height:2px;background:#8ca374;transition:width .45s ease,background-color .45s ease}
.homepage-v3 .person-portrait h3{font-size:clamp(21px,1.65vw,25px);font-weight:550;letter-spacing:-.035em;line-height:1.25;margin:0}
.homepage-v3 .person-portrait figcaption p{font-size:16px;line-height:1.5;letter-spacing:-.02em;color:#4a6154;margin:8px 0 0;max-width:none}
.homepage-v3 .person-portrait figcaption p span{white-space:nowrap}
@media(hover:hover){
 .homepage-v3 .person-portrait:hover .person-context{opacity:1;transform:none}
 .homepage-v3 .person-portrait:hover .person-image img{transform:scale(1.018)}
 .homepage-v3 .person-portrait:hover figcaption:before{width:100%;background:#8ca374}
}
@media(max-width:1000px){
 .homepage-v3 .people-section{padding:88px 0}
 .homepage-v3 .people-opening{gap:40px;margin-bottom:56px}
 .homepage-v3 .people-series{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 32px;width:100%}
 .homepage-v3 .person-portrait:nth-child(n){margin-top:0}
 .homepage-v3 .person-portrait:nth-child(even){margin-top:64px}
}
@media(max-width:600px){
 .homepage-v3 .people-section{padding:72px 0 60px}
 .homepage-v3 .people-opening{gap:20px;margin-bottom:42px}
 .homepage-v3 .people-opening:after{display:none}
 .homepage-v3 .people-opening h2{font-size:46px}
 .homepage-v3 .people-series{grid-template-columns:minmax(0,1fr);gap:44px}
 .homepage-v3 .person-portrait:nth-child(n){margin-top:0}
 .homepage-v3 .person-portrait figcaption{padding-top:17px;margin-top:15px}
 .homepage-v3 .person-portrait h3{font-size:23px}
 .homepage-v3 .person-portrait figcaption p{max-width:none}
}
@media(prefers-reduced-motion:reduce){
 .homepage-v3 .person-image img,.homepage-v3 .person-portrait figcaption:before,.homepage-v3 .person-context{transition:none}
 .homepage-v3 .person-portrait:hover .person-image img{transform:none}
}

/* Practice — seven operating domains around one shared platform. */
.homepage-v3 .dhs-origin{padding:135px 0 120px}
.homepage-v3 .practice-opening h2{font-size:clamp(52px,5.5vw,82px);line-height:1.05;letter-spacing:-.06em;max-width:1140px}
.homepage-v3 .practice-opening>p{font-size:18px;line-height:1.65;max-width:650px;margin:42px 7% 0 auto}
.homepage-v3 .practice-evidence{background:#e9edcd;padding:.04em .16em .10em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.homepage-v3 .system-landscape{position:relative;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:230px 270px 270px 230px;gap:0;margin:82px 0 32px;isolation:isolate}
.homepage-v3 .system-network{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;overflow:visible}
.homepage-v3 .system-network path{stroke:#9bad97;stroke-width:1;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset 1.35s cubic-bezier(.25,.5,.35,1) .25s,stroke .25s ease,stroke-width .25s ease,opacity .25s ease}
.homepage-v3 .system-hub{grid-column:5/9;grid-row:2/4;align-self:start;justify-self:center;width:260px;max-width:100%;margin-top:80px;position:relative;text-align:center}
.homepage-v3 .system-centre{width:162px;margin:0 auto;position:relative;background:var(--paper);padding:12px 6px 15px}
.homepage-v3 .system-mark{display:block;width:100%;height:auto;color:var(--petrol)}
.homepage-v3 .system-node{position:relative;display:block;align-self:start;min-width:0;padding:0 0 18px;background:var(--paper);color:var(--ink);text-decoration:none;outline-offset:9px}
.homepage-v3 .system-node:before{content:'';position:absolute;left:-17px;top:3px;width:6px;height:6px;border:1px solid #91a78c;background:var(--paper);transition:opacity .18s ease,background .25s ease,border-color .25s ease}
.homepage-v3 .system-node:is(:hover,:focus-visible):before{background:var(--lime);border-color:#6f8d48}
.homepage-v3 .system-node:focus-visible{outline:2px solid #61845d}
.homepage-v3 .node-crm{grid-column:1/5;grid-row:1;margin-right:18px}
.homepage-v3 .node-planning{grid-column:8/12;grid-row:1;margin-top:32px}
.homepage-v3 .node-hr{grid-column:2/5;grid-row:2;margin-top:10px;margin-right:18px}
.homepage-v3 .node-voorraad{grid-column:9/13;grid-row:2;margin-top:46px}
.homepage-v3 .node-financieel{grid-column:1/5;grid-row:3;margin-top:36px;margin-right:18px}
.homepage-v3 .node-data{grid-column:9/13;grid-row:3;margin-top:62px}
.homepage-v3 .node-ai{grid-column:5/9;grid-row:4;margin-top:10px}
.homepage-v3 .system-node h3{position:relative;font-size:clamp(25px,2.25vw,34px);font-weight:550;line-height:1.15;letter-spacing:-.045em;margin:0;padding-right:24px}
.homepage-v3 .system-cue{position:absolute;right:0;top:3px;color:#66815f;font-size:20px;font-weight:400;transition:transform .25s ease,color .25s ease}
.homepage-v3 .system-node:is(:hover,:focus-visible) .system-cue{color:var(--petrol);transform:translate(2px,-2px)}
.homepage-v3 .system-summary{font-size:15px;line-height:1.6;color:#536b57;margin:14px 0 0;transition:opacity .18s ease}
.homepage-v3 .system-detail{margin-top:16px;transition:opacity .25s ease,transform .25s ease}
.homepage-v3 .system-context{font-size:16px;line-height:1.5;color:var(--petrol);margin:0;max-width:43ch}
.homepage-v3 .system-cta{display:inline-flex;align-items:baseline;gap:14px;font-size:16px;font-weight:700;line-height:1.4;margin-top:18px;padding-bottom:5px;border-bottom:2px solid #789148;text-decoration:none}
.homepage-v3 .system-cta>span{font-size:18px;flex-shrink:0}
.homepage-v3 .practice-close{padding-top:20px;display:flex;justify-content:flex-end}
@media(hover:hover) and (min-width:901px){
 .homepage-v3 .system-node{height:212px}
 .homepage-v3 .system-detail{position:absolute;top:44px;left:0;right:0;margin:0;opacity:0;transform:translateY(6px);pointer-events:none}
 .homepage-v3 .system-node:is(:hover,:focus):before{opacity:0}
 .homepage-v3 .system-node:is(:hover,:focus) .system-summary{opacity:0}
 .homepage-v3 .system-node:is(:hover,:focus) h3{font-size:16px;line-height:1.35;letter-spacing:-.01em;color:#526c58}
 .homepage-v3 .system-node:is(:hover,:focus) .system-cue{opacity:0;transform:none}
 .homepage-v3 .system-node:is(:hover,:focus) .system-detail{opacity:1;transform:none;pointer-events:auto}
 .homepage-v3 .system-context{font-size:clamp(23px,2vw,29px);line-height:1.2;letter-spacing:-.035em;max-width:27ch}
}
.homepage-v3 .system-landscape:has(.system-node:is(:hover,:focus-visible)) .system-network path{opacity:.24}
.homepage-v3 .system-landscape:has(.node-crm:is(:hover,:focus-visible)) .system-network .path-crm{opacity:1;stroke:#a1bd58;stroke-width:3}
.homepage-v3 .system-landscape:has(.node-planning:is(:hover,:focus-visible)) .system-network .path-planning{opacity:1;stroke:#a1bd58;stroke-width:3}
.homepage-v3 .system-landscape:has(.node-hr:is(:hover,:focus-visible)) .system-network .path-hr{opacity:1;stroke:#a1bd58;stroke-width:3}
.homepage-v3 .system-landscape:has(.node-voorraad:is(:hover,:focus-visible)) .system-network .path-voorraad{opacity:1;stroke:#a1bd58;stroke-width:3}
.homepage-v3 .system-landscape:has(.node-financieel:is(:hover,:focus-visible)) .system-network .path-financieel{opacity:1;stroke:#a1bd58;stroke-width:3}
.homepage-v3 .system-landscape:has(.node-data:is(:hover,:focus-visible)) .system-network .path-data{opacity:1;stroke:#a1bd58;stroke-width:3}
.homepage-v3 .system-landscape:has(.node-ai:is(:hover,:focus-visible)) .system-network .path-ai{opacity:1;stroke:#a1bd58;stroke-width:3}
.homepage-v3.motion-ready .system-hub{transition:opacity .4s ease}
.homepage-v3.motion-ready .system-node{transition:opacity .45s ease,translate .45s ease;transition-delay:calc(.85s + var(--domain-order)*.10s)}
.homepage-v3.motion-ready .system-landscape:not(.is-in):not(:focus-within) .system-hub{opacity:0}
.homepage-v3.motion-ready .system-landscape:not(.is-in):not(:focus-within) .system-node{opacity:0;translate:0 12px}
.homepage-v3.motion-ready .system-landscape:not(.is-in):not(:focus-within) .system-network path{stroke-dashoffset:1}
@media(max-width:1200px) and (min-width:901px){
 .homepage-v3 .system-node h3{font-size:25px}
 .homepage-v3 .system-landscape{grid-template-rows:250px 285px 285px 240px}
 .homepage-v3 .system-hub{margin-top:80px;width:210px}
 .homepage-v3 .node-hr{grid-column:1/5;margin-left:25px}
 .homepage-v3 .system-cta{gap:7px}
}
@media(max-width:900px){
 .homepage-v3 .dhs-origin{padding:100px 0}
 .homepage-v3 .practice-opening h2{font-size:55px}
 .homepage-v3 .practice-opening>p{margin:32px 0 0;max-width:630px}
 .homepage-v3 .system-landscape{display:block;margin:60px 0 40px;padding-left:43px}
 .homepage-v3 .system-network{display:none}
 .homepage-v3 .system-landscape:before{content:'';position:absolute;top:55px;bottom:20px;left:13px;width:1px;background:#a5b69a;z-index:-1}
 .homepage-v3 .system-hub{justify-self:start;width:auto;max-width:440px;margin:0 0 50px;text-align:left;display:flex;align-items:center;gap:30px}
 .homepage-v3 .system-hub:before{content:'';position:absolute;left:-30px;top:55px;width:30px;height:1px;background:#a5b69a}
 .homepage-v3 .system-centre{width:108px;flex-shrink:0;margin:0;padding:0;background:var(--paper)}
 .homepage-v3 .system-node{margin:0 0 42px;max-width:610px;padding:0 0 25px}
 .homepage-v3 .system-node:before{left:-34px;top:4px;width:7px;height:7px}
 .homepage-v3 .system-node h3{font-size:30px}
 .homepage-v3 .system-detail{opacity:1;transform:none;margin-top:16px}
 .homepage-v3 .system-context{max-width:44ch}
 .homepage-v3 .system-cta{font-size:16px}
 .homepage-v3.motion-ready .system-node{transition-delay:0s}
}
@media(max-width:600px){
 .homepage-v3 .dhs-origin{padding:87px 0}
 .homepage-v3 .practice-opening h2{font-size:clamp(38px,10vw,54px)}
 .homepage-v3 .practice-opening>p{font-size:16px;line-height:1.65;margin-top:30px}
 .homepage-v3 .system-landscape{padding-left:27px;margin-top:42px}
 .homepage-v3 .system-landscape:before{left:4px}
 .homepage-v3 .system-hub{gap:24px;margin-bottom:46px}
 .homepage-v3 .system-hub:before{left:-23px;width:23px}
 .homepage-v3 .system-centre{width:87px}
 .homepage-v3 .system-node{margin-bottom:34px}
 .homepage-v3 .system-node:before{left:-27px}
 .homepage-v3 .system-node h3{font-size:27px}
 .homepage-v3 .system-summary{margin-top:12px}
 .homepage-v3 .practice-close{justify-content:flex-start;padding-top:18px}
}
@media(prefers-reduced-motion:reduce){
 .homepage-v3 .system-landscape :is(.system-hub,.system-node,.system-summary,.system-detail,.system-cue,.system-network path),.homepage-v3 .system-node:before{transition:none}
}

.homepage-v3 .continuity-section{padding:105px 0 80px;overflow:visible}
.homepage-v3 .continuity-section>div>h2{font-size:clamp(51px,5.5vw,82px);font-weight:500;line-height:1.05;letter-spacing:-.06em;margin:0 0 22px;text-align:center}
.homepage-v3 .freedom-intro{font-size:18px;line-height:1.6;color:#3f5b49;text-align:center;margin:0 0 45px}
.homepage-v3 .freedom-story{position:relative;width:100%;max-width:1200px;aspect-ratio:1200/640;margin:0 auto}
.homepage-v3 .freedom-stage{position:absolute;left:0;width:1px;height:17%;pointer-events:none}
.homepage-v3 .freedom-stage[data-freedom-stage="open"]{top:0}
.homepage-v3 .freedom-stage[data-freedom-stage="shared"]{top:17%}
.homepage-v3 .freedom-stage[data-freedom-stage="connected"]{top:34%}
.homepage-v3 .freedom-object{position:absolute;inset:0;pointer-events:none}
.homepage-v3 .freedom-architecture{position:absolute;left:32.5%;top:5px;width:35%;height:auto;overflow:visible}
.homepage-v3 .freedom-leaders{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.homepage-v3 .freedom-leaders path{stroke:#8ca385;stroke-width:1;vector-effect:non-scaling-stroke;transition:stroke .7s ease,stroke-width .7s ease}
.homepage-v3 .freedom-object :is(.freedom-gate,.freedom-middle,.freedom-shell,.freedom-top,.freedom-connections){transition:transform .9s cubic-bezier(.2,.65,.2,1),opacity .7s ease;transform-box:fill-box;transform-origin:center}
.homepage-v3 .freedom-connections path{stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset 1s ease}
.homepage-v3 .freedom-story[data-state="open"] .freedom-gate{transform:translate(-60px,25px)}
.homepage-v3 .freedom-story[data-state="open"] .freedom-middle{opacity:0;transform:translateY(18px)}
.homepage-v3 .freedom-story[data-state="open"] .freedom-top{transform:translateY(-18px)}
.homepage-v3 .freedom-story[data-state="open"] .freedom-connections,.homepage-v3 .freedom-story[data-state="shared"] .freedom-connections{opacity:0}
.homepage-v3 .freedom-story[data-state="open"] .freedom-connections path,.homepage-v3 .freedom-story[data-state="shared"] .freedom-connections path{stroke-dashoffset:1}
.homepage-v3 .freedom-principle{position:absolute;width:27%;padding:0;outline-offset:10px;z-index:1}
.homepage-v3 .freedom-transfer{left:0;top:14%}
.homepage-v3 .freedom-shared{right:0;top:14%}
.homepage-v3 .freedom-service{left:53%;top:67.2%;width:36%}
.homepage-v3 .freedom-index{display:block;font-size:12px;color:#536f52;line-height:1;margin-bottom:17px}
.homepage-v3 .freedom-principle h3{font-family:var(--sans);font-size:clamp(29px,2.4vw,35px);font-weight:550;line-height:1.12;letter-spacing:-.05em;margin:0 0 18px}
.homepage-v3 .freedom-principle p{font-size:16px;line-height:1.65;color:#3f5b49;max-width:365px}
.homepage-v3 .freedom-principle h3 span{white-space:nowrap}
.homepage-v3 .freedom-trigger{display:block;position:relative;width:100%;border:0;padding:0 22px 0 0;background:none;color:inherit;font:inherit;line-height:inherit;letter-spacing:inherit;text-align:left;cursor:pointer;transition:color .2s ease}
.homepage-v3 .freedom-trigger:after{content:'↗';position:absolute;right:0;top:.2em;font-size:16px;font-weight:400;color:#536f52;transition:transform .2s ease}
.homepage-v3 .freedom-trigger:focus-visible{outline:2px solid #456b48;outline-offset:7px}
.homepage-v3 .freedom-ready .freedom-trigger{color:#47634f}
.homepage-v3 .freedom-ready .freedom-trigger[aria-expanded="true"]{color:var(--petrol,#142f29)}
.homepage-v3 .freedom-trigger[aria-expanded="true"]:after{transform:rotate(45deg);color:#456b48}
.homepage-v3 .freedom-principle p[hidden]{display:none}
.homepage-v3 .freedom-ready .freedom-principle p:not([hidden]){animation:freedom-detail-in .22s ease both}
@keyframes freedom-detail-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
.homepage-v3 .freedom-principle:before{content:'';position:absolute;left:25px;top:5px;width:0;height:2px;background:#819c3d;transition:width .7s ease}
.homepage-v3 .freedom-story[data-detail="open"] .freedom-transfer:before,.homepage-v3 .freedom-story[data-detail="shared"] .freedom-shared:before,.homepage-v3 .freedom-story[data-detail="connected"] .freedom-service:before{width:60px}
.homepage-v3 .freedom-story[data-state="open"] .leader-open,.homepage-v3 .freedom-story[data-state="shared"] .leader-shared,.homepage-v3 .freedom-story[data-state="connected"] .leader-connected{stroke:#75933c;stroke-width:2}
@media(max-width:1100px){
 .homepage-v3 .continuity-section>div>h2,.homepage-v3 .freedom-intro{text-align:left}
 .homepage-v3 .freedom-story{aspect-ratio:auto;max-width:720px}
 .homepage-v3 .freedom-stage,.homepage-v3 .freedom-leaders{display:none}
 .homepage-v3 .freedom-object{position:relative;inset:auto;width:320px;height:320px;margin:0 auto 30px}
 .homepage-v3 .freedom-architecture{left:0;top:0;width:100%}
 .homepage-v3 .freedom-principle{position:relative;left:auto;right:auto;top:auto;width:100%;padding:24px 0 35px 32px;border-left:1px solid #9eb397}
 .homepage-v3 .freedom-index{position:absolute;left:-7px;top:30px;background:var(--sage,#dfe6d8);padding:4px 0;margin:0}
 .homepage-v3 .freedom-principle:before{left:0;top:34px;width:15px;height:1px;background:#9eb397}
 .homepage-v3 .freedom-story[data-detail] .freedom-principle:before{width:15px}
 .homepage-v3 .freedom-principle p{max-width:590px}
}

.homepage-v3 .contact-band{padding:117px 0 123px}
.homepage-v3 .contact-band-inner{display:block}
.homepage-v3 .contact-content{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:55px;align-items:end;margin-left:0}
.homepage-v3 .contact-content h2{font-size:clamp(63px,7.15vw,106px);font-weight:500;line-height:1.03;letter-spacing:-.06em;max-width:1050px}
.homepage-v3 .contact-content h2 em{display:block;margin-left:11%;white-space:nowrap}
.homepage-v3 .contact-band .button{position:static;margin:0 0 5px;white-space:nowrap}

/* Enhancement only: without JS, every stage is already visible and complete. */
.homepage-v3.motion-ready [data-reveal]{opacity:.15;translate:0 20px;transition:opacity .8s cubic-bezier(.2,.65,.2,1),translate .8s cubic-bezier(.2,.65,.2,1)}
.homepage-v3.motion-ready [data-reveal].is-in,.homepage-v3.motion-ready [data-reveal]:focus-within{opacity:1;translate:0 0}
@supports(animation-timeline:--expertise){
 @media(min-width:901px) and (prefers-reduced-motion:no-preference){
  .homepage-v3.motion-ready .journey-progress{stroke-dasharray:1;animation:allprime-path linear both;animation-timeline:--expertise;animation-range:entry 65% exit 72%}
 }
}
@keyframes allprime-path{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}

@media(max-width:1200px){
 .homepage-v3 .hero-v3 .hero-bottom{gap:32px;grid-template-columns:1.15fr 1fr}
 .homepage-v3 .hero-copy{margin-left:9%}
 .homepage-v3 .process-composition h2{font-size:6.6vw}
 .homepage-v3 .journey-analysis{left:15%;width:72%}
 .homepage-v3 .analysis-signals{gap:30px 35px}
 .homepage-v3 .contact-content{grid-template-columns:1fr;gap:48px}
 .homepage-v3 .contact-band .button{justify-self:end}
}
@media(max-height:800px) and (min-width:901px){
 .homepage-v3 .hero-opening{gap:52px;padding-block:24px}
 .homepage-v3 .hero-positioning{font-size:23px}
}
@media(max-width:900px){
 .homepage-v3 .hero-opening{height:auto;min-height:0;padding-top:66px;padding-bottom:85px;gap:75px}
 .homepage-v3 .hero-copy{margin-left:0}
 .homepage-v3 .hero-v3 .hero-bottom{grid-template-columns:1.3fr .9fr;gap:30px;align-items:start}
 .homepage-v3 .hero-v3 .hero-actions{align-items:flex-end;flex-direction:column}
 .homepage-v3 .hero-v3 .brand-showcase-copy{top:24px}
 .homepage-v3 .intro-section{padding-top:92px}
 .homepage-v3 .process-composition{min-height:660px;padding-bottom:130px}
 .homepage-v3 .process-composition h2{font-size:clamp(45px,6.5vw,60px)}
 .homepage-v3 .process-composition h2 span+span{margin-left:14%;margin-top:23px}
 .homepage-v3 .process-explanation{margin:95px 0 0 5%;max-width:420px}
 .homepage-v3 .journey-composition{height:auto;min-height:0;padding:90px 0 100px 50px}
 .homepage-v3 .journey-composition:before{content:'';position:absolute;left:10px;top:0;bottom:0;width:1px;background:#69866a}
 .homepage-v3 .journey-path{display:none}
 .homepage-v3 .journey-intro{position:relative;left:auto;top:auto;font-size:46px;margin-bottom:70px}
 .homepage-v3 .journey-analysis,.homepage-v3 .journey-realisation{position:relative;left:auto;top:auto;width:auto;max-width:none}
 .homepage-v3 .journey-analysis:before,.homepage-v3 .journey-realisation:before{content:'';position:absolute;width:9px;height:9px;left:-44px;top:15px;background:#c9df8b}
 .homepage-v3 .journey-analysis h3{font-size:30px}
 .homepage-v3 .analysis-signals{gap:27px 30px;margin-top:37px}
 .homepage-v3 .analysis-signals li{font-size:19px}
 .homepage-v3 .journey-realisation{margin:100px 0 0 9%}
 .homepage-v3 .journey-realisation:before{left:calc(-44px - 10%)}
 .homepage-v3 .journey-realisation h3{font-size:42px;max-width:480px}
 .homepage-v3 .continuity-section{padding:100px 0 80px}
 .homepage-v3 .continuity-section>div>h2{font-size:58px}
 .homepage-v3 .freedom-principle h3{font-size:31px}
 .homepage-v3 .freedom-intro{margin-bottom:35px}
 .homepage-v3 .contact-content h2{font-size:76px}
}
@media(max-width:600px){
 .homepage-v3 .hero-opening{padding-top:52px;padding-bottom:60px;gap:54px}
 .homepage-v3 .hero-v3 .hero-bottom{grid-template-columns:1fr;gap:31px}
 .homepage-v3 .hero-positioning{font-size:21px;max-width:330px}
 .homepage-v3 .hero-v3 .hero-actions{flex-direction:row;align-items:center;justify-content:flex-start}
 .homepage-v3 .hero-v3 .brand-showcase-copy{top:22px;max-width:52%}
 .homepage-v3 .hero-v3 .brand-showcase-copy>p{font-size:28px}
 .homepage-v3 .hero-v3 .brand-showcase{height:275px}
 .homepage-v3 .intro-section{padding-top:85px}
 .homepage-v3 .process-composition{min-height:575px;padding-bottom:140px}
 .homepage-v3 .process-composition h2{font-size:clamp(35px,9.5vw,52px);line-height:1.08}
 .homepage-v3 .process-composition h2 span+span{margin:20px 0 0 5%}
 .homepage-v3 .process-trace{opacity:.7}
 .homepage-v3 .process-explanation{max-width:290px;margin:92px 0 0}
 .homepage-v3 .process-explanation p{font-size:16px}
 .homepage-v3 .journey-composition{padding:75px 0 85px 27px}
 .homepage-v3 .journey-composition:before{left:2px}
 .homepage-v3 .journey-intro{font-size:38px;max-width:275px;margin-bottom:60px}
 .homepage-v3 .journey-analysis h3{font-size:28px}
 .homepage-v3 .journey-sentence{font-size:16px}
 .homepage-v3 .analysis-signals{grid-template-columns:1fr;gap:26px;margin-top:36px}
 .homepage-v3 .analysis-signals li{font-size:19px;padding-left:20px}
 .homepage-v3 .analysis-signals li:nth-child(even){transform:none}
 .homepage-v3 .discipline-note{font-size:15px;margin-top:36px;gap:18px}
 .homepage-v3 .journey-analysis:before,.homepage-v3 .journey-realisation:before{left:-29px;top:11px}
 .homepage-v3 .journey-realisation{margin:88px 0 0}
 .homepage-v3 .journey-realisation h3{font-size:38px;margin-bottom:33px}
 .homepage-v3 .realisation-rail a{grid-template-columns:19px minmax(0,1fr) 18px;gap:10px;padding:23px 0}
 .homepage-v3 .route-number{font-size:12px}
 .homepage-v3 .route-content strong{font-size:21px}
 .homepage-v3 .route-content small{font-size:15px}
 .homepage-v3 .route-arrow{font-size:21px}
 .homepage-v3 .continuity-section{padding:88px 0 75px}
 .homepage-v3 .continuity-section>div>h2{font-size:clamp(41px,10.7vw,57px);margin-bottom:22px}
 .homepage-v3 .freedom-intro{font-size:17px;margin-bottom:20px;max-width:330px}
 .homepage-v3 .freedom-object{width:280px;height:280px;margin-bottom:20px}
 .homepage-v3 .freedom-principle h3{font-size:33px;margin-bottom:18px}
 .homepage-v3 .freedom-principle p{font-size:16px}
 .homepage-v3 .contact-band{padding:86px 0 94px}
 .homepage-v3 .contact-content{grid-template-columns:1fr;gap:45px}
 .homepage-v3 .contact-content h2{font-size:clamp(47px,12.2vw,68px)}
 .homepage-v3 .contact-content h2 em{margin-left:7%;white-space:normal}
 .homepage-v3 .contact-band .button{justify-self:end}
}
@media(prefers-reduced-motion:reduce){
 .homepage-v3 [data-reveal]{opacity:1;translate:none;transform:none}
 .homepage-v3 .journey-progress{animation:none;stroke-dashoffset:0}
 .homepage-v3 :is(.route-content,.route-arrow,.realisation-rail a,.freedom-object g,.freedom-connections path,.freedom-principle:before){transition:none}
 .homepage-v3 :is(.freedom-leaders path,.freedom-trigger,.freedom-trigger:after){transition:none}
 .homepage-v3 .freedom-ready .freedom-principle p:not([hidden]){animation:none}
}
.footer-functional{grid-template-columns:1fr 1fr}.footer-functional .footer-links{justify-self:end;grid-column:2;min-width:300px}
/* Genuine case-study screenshots are captured from data-free UI states. */
.dhs-origin-heading h1{font-size:clamp(42px,5.4vw,82px);line-height:1.08;margin-top:25px}.dhs-origin-heading h1 em{color:var(--petrol)}.case-next-step{padding:60px 0 85px}.case-next-step h2{font-size:clamp(35px,4vw,60px)}.case-next-step>p{max-width:650px;margin:22px 0;font-size:17px}
.dhs-case .page-intro{grid-template-columns:1fr}.dhs-case .page-intro>p{max-width:830px}.dhs-case .fact-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.case-chapter{padding:70px 0;border-top:1px solid var(--line)}.case-chapter-heading{display:grid;grid-template-columns:1fr 2.4fr;gap:55px;margin-bottom:33px}.case-chapter h2{font-size:clamp(34px,4.2vw,61px);line-height:1.09;max-width:830px}.case-chapter-content{display:grid;grid-template-columns:1fr 2.4fr;gap:55px}.case-chapter-content>div{grid-column:2}.case-chapter-content p{font-size:16px;line-height:1.75;max-width:800px}.case-chapter-content p+p{margin-top:20px}.case-chapter-content h3{font-size:14px;font-weight:700;letter-spacing:0;margin:27px 0 9px}.case-chapter-content .case-result{border-left:2px solid #728b61;padding-left:22px;margin-top:28px;color:var(--petrol)}.real-screen{margin:38px 0 0;padding:26px;background:#243b40}.real-screen img{width:100%;height:auto;display:block;border:1px solid #aec3b133}.real-screen figcaption{font-size:11px;line-height:1.6;color:#d7e0d3;margin-top:16px;max-width:760px}.case-photo-note{font-size:12px;line-height:1.7;color:var(--muted);border-top:1px solid var(--line);padding-top:23px;margin-top:40px}.case-story-nav{display:flex;flex-wrap:wrap;gap:10px 25px;padding:27px 0;border-bottom:1px solid var(--line);font-size:12px}.case-story-nav a{padding:7px 0}.case-story-nav a:hover{text-decoration:underline}.case-chapter{scroll-margin-top:30px}

@media(max-width:900px){.case-chapter-heading,.case-chapter-content{grid-template-columns:1fr;gap:23px}.case-chapter-content>div{grid-column:1}.footer-functional{grid-template-columns:1fr 1fr}.footer-functional .footer-links{min-width:0;justify-self:end}}
@media(max-width:600px){.footer-functional{grid-template-columns:1fr}.footer-functional .footer-links{grid-column:1;justify-self:start}.dhs-case .fact-strip{grid-template-columns:1fr}.case-chapter{padding:42px 0}.case-chapter h2{font-size:35px}.case-chapter-content p{font-size:15px}.real-screen{padding:12px;margin-top:27px}.real-screen figcaption{font-size:10px;margin-top:11px}.case-story-nav{font-size:11px;gap:6px 17px}}

/* assets/navigation-v14.css */
/* One additional navigation destination; existing menu and sticky behavior retained. */
@media(min-width:901px){.site-header .site-nav{gap:clamp(18px,2vw,30px);white-space:nowrap}.site-header .site-nav .nav-contact{margin-left:12px}.site-header .header-inner{gap:28px}}
.site-header:has(.static-header){height:auto;min-height:100px}.static-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:24px}.static-navigation{display:flex;flex-wrap:wrap;gap:12px 24px;font-size:16px}.static-navigation a{padding-block:10px}.static-navigation [aria-current]{text-decoration:underline;text-underline-offset:6px}
@media(max-width:900px){.static-header{display:block}.static-navigation{margin-top:18px;gap:4px 22px}.static-navigation a{min-height:44px}}
/* Keep the architectural phrase intact; the underline is also visible on touch. */
.brand-showcase-copy .home-free-link{color:inherit;font:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.16em;text-decoration-color:rgb(224 242 148 / 50%);transition:text-decoration-color .2s}.brand-showcase-copy .home-free-link:hover,.brand-showcase-copy .home-free-link:focus-visible{text-decoration-color:currentColor;text-decoration-thickness:2px}.brand-showcase-copy .home-free-link:focus-visible{outline:2px solid currentColor;outline-offset:7px}
@media(min-width:901px) and (max-width:1100px){.site-header .site-nav{gap:18px}.site-header .header-inner{gap:20px}.site-header .site-nav .nav-contact{margin-left:4px;gap:16px}}

/* Keep the longer transferability label within the existing header. */
@media(min-width:901px) and (max-width:1200px){.site-header .site-nav{gap:16px}.site-header .header-inner{gap:18px}.site-header .site-nav .nav-contact{margin-left:0;gap:12px}}

/* assets/coherence-v150.css */
/* V15: one solution vocabulary, the existing architectural composition. */
.homepage-v3 .hero-positioning{max-width:620px;text-wrap:balance}
@media(min-width:901px){.homepage-v3 .journey-composition{height:clamp(1620px,198svh,2380px)}}
.homepage-v3 .journey-realisation h3{text-wrap:balance}
/* A persistent trace of the designed target, above the ways to realise it. */
.aanpak-v149 .a150-selector{padding-top:44px;min-width:0}
.aanpak-v149 .a150-details{position:relative;min-width:0}
.aanpak-v149 .a150-target{display:flex;align-items:center;width:max-content;max-width:100%;height:24px;margin:0 0 20px;padding-inline:13px;border-inline:1px solid #819681;font-size:16px;line-height:1.3;color:#466451;transform-origin:50% 50%}
.aanpak-v149 .a150-selector .a142-capability{font-size:17px;line-height:1.4;gap:12px;margin:26px 0 0;padding-bottom:7px;justify-content:flex-start;max-width:100%}
.aanpak-v149 .a142-solutions{padding-bottom:clamp(48px,calc(100svh - 826px),234px)}
.aanpak-v149 .a150-route-ghost{position:absolute;pointer-events:none;z-index:3;margin:0;min-height:0}
.aanpak-v149 .a150-study-trace{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;z-index:2}
.aanpak-v149 .a150-study-trace line{stroke:#819681;stroke-width:1}
.aanpak-v149 .a150-study-trace circle{fill:#819681}
.aanpak-v149 .a150-transfer-trace{position:absolute;top:-56px;left:0;width:100%;height:90px;pointer-events:none;overflow:visible}
.aanpak-v149 .a150-transfer-trace path{fill:none;stroke:#819681;stroke-width:1;vector-effect:non-scaling-stroke}
.aanpak-v149 .a150-transfer-trace path+path{opacity:.35}
@media(max-width:900px){.aanpak-v149 .a142-solutions{padding-bottom:80px}}
@media(max-width:700px){
 .aanpak-v149 .a150-selector{padding-top:0}
 .aanpak-v149 .a150-selector .a142-capability{margin-top:18px;font-size:16px}
 .aanpak-v149 .a150-target{margin-bottom:20px;font-size:15px}
 .aanpak-v149 .a142-solutions{padding-bottom:72px}
 .aanpak-v149 .a150-transfer-trace{height:62px;top:-35px}
}
@media(prefers-reduced-motion:reduce){.aanpak-v149 .a150-target,.aanpak-v149 .a150-transfer-trace{transform:none!important}}

.homepage-v3 .a150-compound{white-space:nowrap}
@media(max-width:700px){.aanpak-v149 .a150-details{margin-top:32px}}

/* assets/coherence-v151.css */
/* V15.1: the approved composition, connected through one evolving geometry. */
.homepage-v3 .hero-positioning{max-width:660px;text-wrap:pretty}
.homepage-v3 .hero-positioning>span{display:block}
@media(min-width:1101px){.homepage-v3 .hero-v3 .hero-bottom{grid-template-columns:minmax(0,1.65fr) minmax(240px,.65fr);gap:42px}}
.aanpak-v149 .a150-selector{padding-top:0}
/* Removing the micro-label releases 44px above the explorer; retain its chapter framing below. */
.aanpak-v149 .a142-solutions{padding-bottom:clamp(92px,calc(100svh - 782px),278px)}
.a151-flow{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:0}
.a151-flow path{fill:none;stroke:#819980;stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}
.a151-flow .a151-hero-path{stroke:#d8ec8a}
.a151-flow .a151-carrier rect{stroke:#597760;stroke-width:1;fill:#dfe5d9;vector-effect:non-scaling-stroke}
.a151-flow .a151-carrier rect:nth-child(2){fill:#cbd8c3}
.a151-flow .a151-carrier rect:nth-child(3){fill:#b5c9af}
.a151-flow .a151-carrier rect:nth-child(4){fill:#12433b}
.a151-motion .a142-thread::before{display:none}
.a151-motion .a142-reality .container,.a151-motion .a142-future>.container,.a151-motion .a142-solutions>.container{position:relative;z-index:1}
.a151-motion .a142-question{position:relative;z-index:1}
.a151-motion .a142-rail span{width:100%;height:3px;transform:scaleX(var(--a151-reach,0));transform-origin:left center;transition:transform 230ms cubic-bezier(.2,.65,.3,1)}
.a151-motion .a142-marker{transition:transform 220ms,opacity 180ms,background-color 180ms}
.a151-motion [data-area]:not([aria-pressed=true]) .a142-marker{opacity:var(--a151-point,1);transform:scale(var(--a151-point-scale,1))}
.a151-motion .a146-future:not(.is-clear) .a146-shape{transform-box:fill-box;transform-origin:center;transform:scale(.025)}
.a151-motion .a146-future:not(.is-clear) .a146-piece{opacity:0}
.a151-motion .a146-future .a146-shape{transform-box:fill-box;transform-origin:center;transition:fill 180ms,stroke 180ms,transform 180ms}
.a151-motion .a146-piece{transition:transform 180ms,background-color 180ms,border-color 180ms}
.a151-motion .a146-future[data-active=work] .shape-work,.a151-motion .piece-work[aria-pressed=true]{transform:translate(3px,3px)}
.a151-motion .a146-future[data-active=process] .shape-process,.a151-motion .piece-process[aria-pressed=true]{transform:translate(-3px,3px)}
.a151-motion .a146-future[data-active=information] .shape-information,.a151-motion .piece-information[aria-pressed=true]{transform:translate(3px,-3px)}
.a151-motion .a146-future[data-active=decision] .shape-decision,.a151-motion .piece-decision[aria-pressed=true]{transform:translate(-3px,-3px)}
.a151-anchors{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.a151-anchors line{stroke:#819980;stroke-width:1.5;vector-effect:non-scaling-stroke}
.a151-anchors circle{fill:#819980;stroke:#123d35;stroke-width:1;vector-effect:non-scaling-stroke}
.a151-route-echo{position:absolute;pointer-events:none;border:1px solid #819980;background:#e7ebdf;z-index:2}
.a151-motion .a150-transfer-trace{height:110px;top:-56px}
@media(max-width:900px){.aanpak-v149 .a142-solutions{padding-bottom:124px}}
@media(max-width:700px){
 .homepage-v3 .hero-positioning{max-width:350px}
 .homepage-v3 .hero-positioning>span+span{margin-top:10px}
 .aanpak-v149 .a142-solutions{padding-bottom:116px}
 .a151-flow path{stroke-width:1.25}
 .a151-motion .a142-rail span{display:block}
 .a151-motion .a150-transfer-trace{height:76px;top:-35px}
}
@media(prefers-reduced-motion:reduce){
 .a151-flow{display:none}
 .a151-motion .a146-future:not(.is-clear) .a146-shape{transform:none}
 .a151-motion .a146-future:not(.is-clear) .a146-piece{opacity:1}
 .a151-motion .a146-shape,.a151-motion .a146-piece{transform:none!important;transition:none!important}
}

/* assets/coherence-v152.css */
/* V15.2 — real reading distance, continuous architectural connections. */
.homepage-v3 .a152-process-close{position:relative;display:flex;justify-content:flex-end;align-items:center;min-height:100px;padding-block:20px 36px}
.homepage-v3 .a152-process-close::before{content:'';position:absolute;left:50%;top:0;bottom:0;width:1px;background:#aac090}
.homepage-v3 .a152-process-close .text-link{margin:0;position:relative;background:transparent;color:#eef0e4;border-color:#829580}
.aanpak-v149 .a152-waterfall{position:relative;margin-top:0}
.aanpak-v149 .a152-waterfall .a142-points{display:block;position:relative}
.aanpak-v149 .a152-step{position:relative;margin-left:calc(var(--step)*3.5%);display:grid;grid-template-columns:minmax(240px,.9fr) minmax(0,1.5fr);gap:clamp(32px,5vw,80px);align-items:start;min-height:166px;padding-bottom:54px}
.aanpak-v149 .a152-step button{width:auto;min-height:58px;padding:12px 0 12px 42px;font-size:19px;line-height:1.35;align-self:start;justify-self:stretch;transition:color 200ms}
.aanpak-v149 .a152-step .a142-area-label{display:block;max-width:285px;text-wrap:balance}
.aanpak-v149 .a152-step .a142-marker{position:absolute;top:20px;left:7px;width:10px;height:10px;font-size:0;border:0;border-radius:50%;background:var(--ink);opacity:1;transform:none}
.aanpak-v149 .a152-step [aria-pressed=true] .a142-marker{background:var(--lime);outline:1px solid var(--ink);transform:scale(2.1);box-shadow:0 0 0 4px #dfe5d9}
.aanpak-v149 .a152-step [aria-pressed=true] .a142-area-label{font-size:1.09em;font-weight:675}
.aanpak-v149 .a152-answer{font-size:clamp(25px,2.3vw,34px);line-height:1.3;letter-spacing:-.035em;max-width:640px;margin:7px 0 0;opacity:0;transform:translateX(-10px);text-wrap:balance;transition:opacity 220ms,transform 240ms}
.aanpak-v149 .a152-step[data-seen=true] .a152-answer{opacity:.65;transform:none}
.aanpak-v149 .a152-step:has([aria-pressed=true]) .a152-answer{opacity:1;transform:none}
.a152-waterfall-line{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.a152-waterfall-line path{fill:none;stroke:#819980;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.a152-waterfall-line .a152-rail-active{stroke:#214e3e;stroke-width:2;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 240ms ease-out}
.aanpak-v149 .a142-reality h2{margin-bottom:64px}
.aanpak-v149 .a142-reality .a142-continue{margin-top:0}
.aanpak-v149 .a-future-composition{grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);gap:clamp(44px,5vw,76px)}
.aanpak-v149 .a-future-narrative{max-width:560px}
.aanpak-v149 .a-future-narrative>p{font-size:clamp(23px,1.8vw,27px);line-height:1.4;text-wrap:pretty}
.aanpak-v149 .a-future-narrative>.a-future-design{font-size:clamp(19px,1.48vw,22px);line-height:1.55;color:#435d53}
.aanpak-v149 .a-future-narrative>p+p{margin-top:34px}
.aanpak-v149 .a142-capability{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:17px 16px;border:1px solid #829580;border-left:3px solid #9ab16c;margin-top:28px;font-size:16px;text-decoration:none;max-width:100%;transition:background-color 180ms,border-color 180ms}
.aanpak-v149 .a142-capability span{font-size:23px;color:var(--petrol)}
.aanpak-v149 .a142-capability:hover,.aanpak-v149 .a142-capability:focus-visible{background:#e6ebdd;border-color:var(--petrol)}
.a152-motion .a151-flow path,.a152-motion .a150-transfer-trace path{stroke:#819980;stroke-width:1.5}
.a152-motion .a151-flow .a151-hero-path{stroke:#d8ec8a}
.a152-motion .a151-carrier{pointer-events:none}
.a152-motion .a151-flow .a152-solution-spine{stroke:#819980}
@media(max-width:1100px){
 .aanpak-v149 .a152-step{grid-template-columns:minmax(220px,.9fr) minmax(0,1.3fr);gap:30px;margin-left:calc(var(--step)*2.5%);min-height:168px}
 .aanpak-v149 .a152-step button{font-size:18px}
 .aanpak-v149 .a-future-composition{gap:30px}
}
@media(max-width:700px){
 .homepage-v3 .a152-process-close{min-height:95px;padding-block:16px 36px}
 .homepage-v3 .a152-process-close::before{left:50%;opacity:.5}
 .aanpak-v149 .a142-reality h2{margin-bottom:42px}
 .aanpak-v149 .a152-step{margin-left:0;padding:0 0 44px 35px;display:block;min-height:232px}
 .aanpak-v149 .a152-step button{position:static;display:block;min-height:76px;padding:7px 0 10px;font-size:18px;text-align:left;width:100%}
 .aanpak-v149 .a152-step .a142-area-label{display:block;max-width:100%;text-wrap:pretty}
 .aanpak-v149 .a152-step .a142-marker{top:15px;left:7px}
 .aanpak-v149 .a152-step [aria-pressed=true] .a142-marker{transform:scale(1.9)}
 .aanpak-v149 .a152-answer{font-size:24px;line-height:1.35;margin:10px 0 0;max-width:100%;text-wrap:pretty;transform:translateY(5px)}
 .aanpak-v149 .a152-step[data-seen=true] .a152-answer,.aanpak-v149 .a152-step:has([aria-pressed=true]) .a152-answer{transform:none}
 .aanpak-v149 .a-future-composition{gap:0}
 .aanpak-v149 .a-future-narrative>p{font-size:22px;line-height:1.4}
 .aanpak-v149 .a-future-narrative>.a-future-design{font-size:18px;line-height:1.55}
 .aanpak-v149 .a-future-narrative>p+p{margin-top:30px}
 .aanpak-v149 .a142-capability{margin-top:18px;margin-bottom:32px;padding:14px 15px}
 .a152-motion .a151-flow path,.a152-motion .a150-transfer-trace path{stroke-width:1.5}
}
@media(prefers-reduced-motion:reduce){
 .aanpak-v149 .a152-answer{opacity:1;transform:none;transition:none}
 .a152-waterfall-line .a152-rail-active{transition:none}
}
/* Continue the existing mobile/tablet path through the closing link band. */
@media(min-width:701px) and (max-width:900px){.homepage-v3 .a152-process-close::before{left:10px}}
@media(max-width:700px){.homepage-v3 .a152-process-close::before{left:2px}}

/* assets/coherence-v153.css */
/* V15.3: concise Home journey, equal Future copy and a stable sales action. */
.homepage-v3 .process-explanation{max-width:790px;width:87%}
.homepage-v3 .process-explanation p>span{display:block}
.homepage-v3 .journey-composition{height:auto;padding-top:0;padding-bottom:110px}
.homepage-v3 .a153-process-path{position:relative;height:700px}
.a153-home-path{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.a153-home-path path{stroke:#476356;stroke-width:1.5;vector-effect:non-scaling-stroke}
.a153-home-path .a153-home-progress{stroke:#d8ed97;stroke-width:2;stroke-dasharray:1;stroke-dashoffset:0}
.homepage-v3 .a153-milestone{position:absolute;margin:0;font-size:clamp(32px,3.5vw,54px);line-height:1.14;letter-spacing:-.04em;font-weight:500;max-width:620px;color:#e6eadf;text-wrap:balance;transition:color 220ms,transform 260ms}
.a153-milestone::before{content:'';position:absolute;width:8px;height:8px;border:1px solid #9eaf96;background:#142d28;border-radius:50%;top:.5em;left:-28px;transition:background-color 220ms,transform 220ms}
.homepage-v3 .a153-milestone[data-milestone="0"]{top:166px;left:12%}
.homepage-v3 .a153-milestone[data-milestone="1"]{top:367px;left:30%;max-width:56%}
.homepage-v3 .a153-milestone[data-milestone="2"]{top:572px;left:31%}
.homepage-v3 .a153-milestone.is-current{color:#d8ed97;transform:translateX(3px)}
.a153-milestone.is-current::before{background:#d8ed97;transform:scale(1.4)}
.homepage-v3 .a153-process-close{display:flex;justify-content:flex-end;padding:12px 0 76px;position:relative}
.homepage-v3 .a153-process-close .text-link{color:#eef0e4;border-color:#829580;margin:0}
.homepage-v3 .journey-realisation{position:relative;left:auto;top:auto;width:63%;margin-left:auto;padding-top:90px}
.homepage-v3 .journey-realisation::before{content:'';position:absolute;left:-8%;top:0;bottom:0;width:1px;background:#476356}
.homepage-v3 .journey-realisation h3{max-width:800px}
.aanpak-v149 .a-future-narrative>p{font-size:clamp(22px,1.74vw,25px);font-weight:500;line-height:1.46;color:var(--ink);letter-spacing:-.018em;margin:0;text-wrap:pretty}
.aanpak-v149 .a-future-narrative>p+p{margin-top:42px}
.aanpak-v149 .a-future-narrative{max-width:540px}
.aanpak-v149 .a153-solution-action{display:flex;justify-content:flex-end;margin-top:24px}
.aanpak-v149 .a153-solution-action .button{background:var(--petrol);color:var(--cream);min-height:54px}
.aanpak-v149 .a142-solutions{padding-bottom:clamp(20px,calc(100svh - 880px),180px)}
.aanpak-v149 .a153-realisation{position:relative}
.a153-transfer{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:1}
.a153-transfer path{fill:none;stroke:#819980;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
@media(max-width:1000px){.aanpak-v149 .a-future-narrative>p{font-size:20px}.aanpak-v149 .a-future-narrative>p+p{margin-top:32px}}
@media(max-width:900px){
 .homepage-v3 .process-explanation{width:auto;max-width:100%}
 .homepage-v3 .journey-composition{padding:0 0 85px}
 .homepage-v3 .journey-composition::before{display:none}
 .homepage-v3 .a153-process-path{height:650px}
 .homepage-v3 .a153-milestone{font-size:36px}
 .homepage-v3 .a153-milestone[data-milestone="0"]{top:152px}
 .homepage-v3 .a153-milestone[data-milestone="1"]{top:337px;left:21%;max-width:64%}
 .homepage-v3 .a153-milestone[data-milestone="2"]{top:530px}
 .homepage-v3 .journey-realisation{width:85%;padding-top:65px}
 .aanpak-v149 .a142-solutions{padding-bottom:72px}
}
@media(max-width:700px){
 .homepage-v3 .process-explanation p>span+span{margin-top:10px}
 .homepage-v3 .a153-process-path{height:590px;margin-left:14px}
 .homepage-v3 .a153-milestone{font-size:30px;max-width:80%;left:14%!important}
 .homepage-v3 .a153-milestone[data-milestone="0"]{top:96px}
 .homepage-v3 .a153-milestone[data-milestone="1"]{top:267px;max-width:80%}
 .homepage-v3 .a153-milestone[data-milestone="2"]{top:443px}
 .homepage-v3 .a153-process-close{padding:0 0 48px}
 .homepage-v3 .journey-realisation{width:89%;margin-left:11%;padding-top:65px}
 .aanpak-v149 .a-future-narrative{display:block;order:1}
 .aanpak-v149 .a-future-narrative>p{font-size:20px;line-height:1.46}
 .aanpak-v149 .a-future-narrative>p+p{margin-top:30px}
 .aanpak-v149 .a153-solution-action{justify-content:stretch;margin-top:24px}
 .aanpak-v149 .a153-solution-action .button{width:100%}
}
@media(prefers-reduced-motion:reduce){.a153-milestone,.a153-milestone::before{transition:none!important;transform:none!important}.a153-transfer path{stroke-dashoffset:0!important}}
.aanpak-v149{position:relative}
.aanpak-v149>.a151-flow{z-index:0}
.homepage-v3 .a153-milestone[data-milestone="1"]::before{left:auto;right:-28px}
@media(max-width:700px){.homepage-v3 .a153-milestone[data-milestone="1"]::before{left:-28px;right:auto}}
.aanpak-v149 .a153-solution-action .button{color:#f6f5ef;font-size:16px}
@media(min-width:901px){.aanpak-v149 .a142-future{padding-bottom:clamp(122px,calc(100svh - 800px),290px)}}
@media(prefers-reduced-motion:reduce){.a153-home-progress{stroke-dashoffset:0!important;animation:none!important}}
@media(min-width:901px){.aanpak-v149 .a142-future{padding-bottom:clamp(138px,calc(100svh - 784px),306px)}}
@media(min-width:701px) and (max-width:900px){.aanpak-v149 .a142-future{padding-bottom:clamp(174px,calc(100svh - 686px),344px)}}
/* Normalise dash distances with the Home SVG's responsive coordinate system. */
.a153-home-path .a153-home-progress{vector-effect:none}
@media(prefers-reduced-motion:reduce){.a153-home-path .a153-home-progress{stroke-dasharray:none!important}}

/* V15.4: three complete numbered stops, in the same architectural language. */
.homepage-v3 .process-explanation{max-width:850px;width:87%}
.homepage-v3 .a153-process-path{height:auto;position:relative;padding:110px 0 48px;margin-left:0}
.a154-home-stops{list-style:none;margin:0;padding:0;display:grid;gap:104px}
.homepage-v3 .a154-home-stop{position:relative;display:grid;grid-template-columns:32px minmax(0,1fr);gap:24px;width:60%;margin-left:11%;color:#e6eadf}
.homepage-v3 .a154-home-stop:nth-child(2){margin-left:34%;width:62%}
.homepage-v3 .a154-home-stop:nth-child(3){margin-left:17%;width:65%}
.a154-number{font-size:18px;line-height:32px;position:relative;z-index:1;background:#142d28;text-align:center;color:#b9cba7;align-self:start;transition:color 200ms}
.homepage-v3 .a154-home-stop h2{font-size:clamp(36px,3.35vw,48px);font-weight:500;line-height:1.14;letter-spacing:-.04em;max-width:800px;margin:0;text-wrap:balance;transition:color 200ms}
.homepage-v3 .a154-home-stop p{font-size:20px;line-height:1.5;color:#c8d4c2;max-width:620px;margin:20px 0 0;text-wrap:pretty}
.homepage-v3 .a154-home-stop.is-current h2,.homepage-v3 .a154-home-stop.is-current .a154-number{color:#d8ed97}
.a154-home-path{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.a154-home-path path{fill:none;stroke:#476356;stroke-width:1.5;stroke-linecap:round}
.a154-home-path .a154-progress{stroke:#bfd889;stroke-width:1.5}
.homepage-v3 .a153-process-close{padding:0 0 64px}
.homepage-v3 .a153-process-close .text-link{font-size:17px;padding-bottom:12px}
.homepage-v3 .journey-realisation{width:70%;padding-top:70px}
.homepage-v3 .journey-realisation h3{font-size:clamp(40px,4vw,58px)}
@media(max-width:1000px){.homepage-v3 .a154-home-stop{width:80%;margin-left:6%}.homepage-v3 .a154-home-stop:nth-child(2){width:77%;margin-left:20%}.homepage-v3 .a154-home-stop:nth-child(3){width:82%;margin-left:10%}.homepage-v3 .journey-realisation{width:87%}}
@media(max-width:700px){
 .homepage-v3 .process-explanation{width:auto}
 .homepage-v3 .a153-process-path{padding:64px 0 42px}
 .a154-home-stops{gap:72px}
 .homepage-v3 .a154-home-stop,.homepage-v3 .a154-home-stop:nth-child(2),.homepage-v3 .a154-home-stop:nth-child(3){width:100%;margin:0;grid-template-columns:28px minmax(0,1fr);gap:17px}
 .homepage-v3 .a154-home-stop h2{font-size:30px;line-height:1.18;text-wrap:pretty}
 .homepage-v3 .a154-home-stop p{font-size:18px;line-height:1.5;margin-top:18px}
 .a154-number{font-size:16px;line-height:28px}
 .homepage-v3 .a153-process-close{padding:0 0 44px}
 .homepage-v3 .journey-realisation{width:89%;padding-top:44px;margin-top:36px}
 .homepage-v3 .journey-realisation h3{font-size:38px}
}
@media(prefers-reduced-motion:reduce){.a154-home-stop h2,.a154-number{transition:none!important}.a154-home-path .a154-progress{stroke-dasharray:none!important}}

/* The five solutions answer the third question inside the same story. */
.homepage-v3 .a154-home-stop:nth-child(3){width:73%;margin-left:17%}
.homepage-v3 .a154-home-stop .journey-realisation{position:relative;inset:auto;width:100%;max-width:none;margin:36px 0 0;padding:0}
.homepage-v3 .a154-home-stop .journey-realisation::before{content:none}
.homepage-v3 .a154-home-stop .a153-process-close{display:flex;justify-content:flex-start;margin-top:30px;padding:0}
.homepage-v3 .a154-home-stop .a153-process-close .text-link{font-size:17px}
.homepage-v3 .a153-process-path{padding-bottom:68px}
.homepage-v3 .a154-home-stop:nth-child(3) h2{max-width:800px}
@media(max-width:1000px){.homepage-v3 .a154-home-stop:nth-child(3){width:84%;margin-left:10%}}
@media(max-width:700px){.homepage-v3 .a154-home-stop:nth-child(3){width:100%;margin-left:0}.homepage-v3 .a154-home-stop .journey-realisation{margin-top:30px}.homepage-v3 .realisation-rail a{grid-template-columns:19px minmax(0,1fr) 18px;gap:8px}.homepage-v3 .a154-home-stop .a153-process-close{margin-top:26px}.homepage-v3 .a153-process-path{padding-bottom:46px}}
@media(max-width:700px){.homepage-v3 .a154-home-stop .realisation-rail a{grid-template-columns:19px minmax(0,1fr) 24px}.homepage-v3 .a154-home-stop .route-arrow{font-size:22px;text-align:right}}

/* V15.6: line remains visible at joins and around numbered anchors. */
.homepage-v3 .process-trace path{stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.homepage-v3 .process-trace-active{stroke-width:1.5}
.homepage-v3 .a154-home-path path{stroke:#6c896b}
.homepage-v3 .a154-number{background:transparent}
.homepage-v3 .a154-home-path .a154-progress{stroke:#bfd889}

/* Remove only the solution-option number column; story anchors remain. */
.homepage-v3 .a154-home-stop .realisation-rail a{grid-template-columns:minmax(0,1fr) 24px}

/* V3.10: connected ownership composition, small page link at its natural close. */
.homepage-v3 .h310-ownership-close{display:flex;justify-content:flex-end;padding-top:20px}.homepage-v3 .h310-ownership-close .h39-ownership-link{margin:0;padding:14px 0;gap:27px;font-size:16px;line-height:1.4;min-height:48px}.homepage-v3 .freedom-shell,.homepage-v3 .freedom-top,.homepage-v3 .freedom-middle,.homepage-v3 .freedom-gate{stroke:#688361;stroke-width:.65;stroke-linejoin:round}.homepage-v3 .freedom-top{stroke:#9eb57a}.homepage-v3 .h310-dossier{transform-origin:50% 65%;transition:transform 350ms,opacity 250ms}.homepage-v3 .freedom-story[data-detail=shared] .h310-dossier{transform:translate(9px,-5px)}.homepage-v3 .freedom-story[data-detail=connected] .h310-dossier{transform:translate(3px,0)}
@media(max-width:700px){.homepage-v3 .h310-ownership-close{padding-top:25px;padding-bottom:8px}.homepage-v3 .h310-ownership-close .h39-ownership-link{font-size:15px;gap:24px}.homepage-v3 .freedom-object{margin-top:12px;margin-bottom:34px}.homepage-v3 .freedom-principle{padding-top:28px;padding-bottom:38px}.homepage-v3 .freedom-principle p{line-height:1.65}.homepage-v3 .ownership-section .freedom-intro{margin-top:22px;margin-bottom:30px}}
@media(prefers-reduced-motion:reduce){.homepage-v3 .h310-dossier{transition:none}}

.o311-object{display:block;width:100%;height:auto;overflow:visible;color:#173f35}.o311-object text,.o311-network-core text{font-family:Manrope,sans-serif;font-size:20px;letter-spacing:-.5px;fill:#173f35}.o311-ground{fill:#91a685;opacity:.16}.o311-top{fill:#c4d3b5;stroke:#8fa47d;stroke-width:.9}.o311-product-top{fill:#dfeaaa;stroke:#99ad7b;stroke-width:.9}.o311-side{fill:#94ad8c;stroke:#829c76;stroke-width:.9}.o311-base{fill:#163f35;stroke:#719369;stroke-width:.9}.o311-paper{fill:#f4f3e9;stroke:#88a178;stroke-width:.9}.o311-object .o311-white,.o311-network-core .o311-white{fill:#f1f3df}.o311-base-line{fill:none;stroke:#7d9c78;stroke-width:1}.o311-signal{fill:#ddea9d}.o311-support{fill:none;stroke:#a1b18b;stroke-width:1}.o311-rule{fill:none;stroke:#98aa86;stroke-width:1}.o311-app-surface{fill:#e0e6d5;stroke:#acbb97;stroke-width:.6}.o311-data{fill:#dce8c0;stroke:#85a170;stroke-width:1}.o311-access{fill:none;stroke:#779563;stroke-width:1.3}.o311-knowledge-lines path{stroke:#a4b490;stroke-width:3}.o311-knowledge-lines path.is-active{stroke:#597f42;stroke-width:5}.o311-product,.o311-knowledge,.o311-foundation{transition:transform 420ms cubic-bezier(.22,.65,.3,1);transform-box:view-box}.o311-object[data-pose=knowledge] .o311-product{transform:translate(20px,-25px)}.o311-object[data-pose=knowledge] .o311-knowledge{transform:translate(-22px,9px)}.o311-object[data-pose=people] .o311-product{transform:translate(20px,-22px)}.o311-object[data-pose=people] .o311-knowledge{transform:translate(-14px,5px)}.o311-people{fill:none;stroke:#88a078;stroke-width:1.2}.o311-locations text{font-size:15px;fill:#cbd9bd}.o311-locations path{fill:none;stroke:#88a078;stroke-width:1}.o311-object[data-pose=people] .o311-people{opacity:1}
@media(prefers-reduced-motion:reduce){.o311-product,.o311-knowledge,.o311-foundation{transition:none}}

.homepage-v3 .freedom-architecture{width:42%;left:28%;top:12px}.homepage-v3 .freedom-story[data-state=open] .o311-knowledge{transform:translate(-22px,9px)}.homepage-v3 .freedom-story[data-state=open] .o311-product{transform:translate(20px,-20px)}.homepage-v3 .freedom-story[data-state=shared] .o311-knowledge{transform:translate(-10px,0)}.homepage-v3 .freedom-story[data-state=connected] .o311-product{transform:translate(0,-8px)}
@media(max-width:700px){.homepage-v3 .freedom-architecture{width:100%;left:0;top:0}.homepage-v3 .h310-ownership-close{margin-top:37px}.homepage-v3 .system-node{scroll-margin-top:110px}}

@media(max-width:520px){.homepage-v3 .freedom-architecture text{font-size:24px}}


@media(max-width:700px){.homepage-v3 .realisation-rail a{padding:24px 4px;transition:background-color 420ms,color 420ms}.homepage-v3 .realisation-rail .route-content small{display:none}.homepage-v3 .realisation-rail .route-content strong{font-size:20px;line-height:1.4}.homepage-v3.motion-ready .realisation-rail [data-reveal]{transition:opacity 1100ms cubic-bezier(.2,.65,.3,1),translate 1100ms cubic-bezier(.2,.65,.3,1),background-color 420ms,color 420ms}}
@media(prefers-reduced-motion:reduce){.homepage-v3 .realisation-rail a{transition:none}}
