/* V22 — Swiss capacity network, adapted from V19 */
#lp-map.v22m-section{position:relative;z-index:1;isolation:isolate;width:100%;padding:122px max(48px,calc((100vw - 1320px)/2)) 132px;overflow:hidden;background:linear-gradient(180deg,#f8fafb,#edf3f5);color:#101e46}
#lp-map.v22m-section::before{content:"";position:absolute;z-index:-1;inset:0;opacity:.42;background-image:radial-gradient(rgba(16,30,70,.13) .75px,transparent .75px);background-size:23px 23px;mask-image:radial-gradient(ellipse 64% 72% at 76% 51%,#000,transparent 78%)}
.v22m-inner{display:grid;grid-template-columns:.67fr 1.33fr;align-items:center;gap:72px;width:min(1320px,100%);margin:auto}
.v22m-kicker{display:inline-flex;align-items:center;gap:9px;margin-bottom:18px;color:#087b72;font:600 9px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:1.25px;text-transform:uppercase}.v22m-kicker::before{content:"";width:28px;height:1px;background:#16b8a6}
.v22m-copy h2{margin:0;color:#101e46;font-family:inherit;font-size:clamp(43px,4.6vw,64px);font-weight:200;line-height:1.04;letter-spacing:-2.4px}.v22m-copy h2 em{color:#168fbd;font-style:normal}
.v22m-copy>p{max-width:500px;margin:24px 0 0;color:#66758b;font-size:13.5px;font-weight:300;line-height:1.78}
.v22m-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:40px}.v22m-stats div{min-height:72px;padding:3px 20px 0;border-left:1px solid rgba(16,30,70,.13)}.v22m-stats div:first-child{padding-left:0;border-left:0}.v22m-stats strong,.v22m-stats small{display:block}.v22m-stats strong{font-size:29px;font-weight:300;letter-spacing:-1px}.v22m-stats small{margin-top:7px;color:#8290a3;font-size:8.5px;line-height:1.45}
.v22m-canvas{position:relative;min-height:0;aspect-ratio:3/2}
.v22m-map-svg{position:absolute;z-index:1;inset:0;width:100%;height:100%;overflow:visible}.v22m-country{fill:url(#v22m-country);stroke:rgba(16,30,70,.07);stroke-width:1;filter:drop-shadow(0 25px 24px rgba(16,30,70,.13));opacity:0;transform:translateY(8px);transform-origin:center}.v22m-country-dots{fill:url(#v22m-dots);opacity:0}.v22m-cantons{fill:none;stroke:rgba(255,255,255,.69);stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;opacity:0}.v22m-section.v22m-in .v22m-country{animation:v22m-country-in .8s cubic-bezier(.2,.8,.2,1) forwards}.v22m-section.v22m-in .v22m-country-dots{animation:v22m-dots-in .8s .28s ease forwards}.v22m-section.v22m-in .v22m-cantons{animation:v22m-cantons-in .9s .38s ease forwards}@keyframes v22m-country-in{to{opacity:1;transform:none}}@keyframes v22m-dots-in{to{opacity:.72}}@keyframes v22m-cantons-in{to{opacity:.7}}
.v22m-links path{fill:none;stroke:url(#v22m-gradient);stroke-width:1.45;stroke-linecap:round;stroke-dasharray:4 8;opacity:0;vector-effect:non-scaling-stroke}.v22m-section.v22m-in .v22m-links path{animation:v22m-link-in .8s ease both,v22m-link-flow 4.8s linear infinite;animation-delay:var(--delay),calc(var(--delay) + .8s)}@keyframes v22m-link-in{from{opacity:0}to{opacity:.48}}@keyframes v22m-link-flow{from{stroke-dashoffset:0}to{stroke-dashoffset:-72}}
.v22m-node{position:absolute;left:var(--x);top:var(--y);z-index:3;display:grid;justify-items:center;gap:2px;transform:translate(-50%,-50%) scale(.82);opacity:0;filter:blur(2px)}.v22m-section.v22m-in .v22m-node{animation:v22m-node 1.15s cubic-bezier(.2,.75,.25,1) forwards;animation-delay:var(--delay)}@keyframes v22m-node{45%{filter:blur(0)}to{opacity:1;filter:blur(0);transform:translate(-50%,-50%) scale(1)}}
.v22m-node i{position:relative;display:grid;place-items:center;width:28px;height:28px;border:4px solid rgba(255,255,255,.93);border-radius:50%;background:#b9c7ce;box-shadow:0 8px 20px rgba(16,30,70,.21);color:#fff;font:600 6.5px/1 ui-monospace,SFMono-Regular,Menlo,monospace;font-style:normal;transition:transform .3s}.v22m-node.active i{width:39px;height:39px;border-width:5px;background:linear-gradient(135deg,#16b8a6,#1c9fcf);box-shadow:0 0 0 8px rgba(22,184,166,.1),0 12px 26px rgba(16,30,70,.2)}.v22m-node.active i::after{content:"";position:absolute;inset:-9px;border:1px solid rgba(22,184,166,.3);border-radius:50%;animation:v22m-pulse 3s ease-out infinite}@keyframes v22m-pulse{to{inset:-38px;opacity:0}}
.v22m-node span{padding:5px 8px;border:1px solid rgba(16,30,70,.08);border-radius:999px;background:rgba(255,255,255,.9);box-shadow:0 7px 16px rgba(16,30,70,.09);color:#101e46;font-size:7.5px;white-space:nowrap}.v22m-node:hover i{transform:scale(1.1)}
.v22m-legend{position:absolute;right:4%;bottom:2%;display:flex;align-items:center;gap:14px;padding:9px 12px;border:1px solid rgba(16,30,70,.08);border-radius:999px;background:rgba(255,255,255,.74);box-shadow:0 10px 25px rgba(16,30,70,.07);backdrop-filter:blur(10px);color:#77869a;font-size:7.5px}.v22m-legend span{display:flex;align-items:center;gap:6px}.v22m-legend i{width:6px;height:6px;border-radius:50%;background:#b9c7ce}.v22m-legend span:first-child i{background:#16b8a6}
@media(max-width:1000px){.v22m-inner{grid-template-columns:1fr;gap:35px}.v22m-copy{max-width:720px}.v22m-canvas{width:min(820px,100%);margin:auto}}
@media(max-width:760px){#lp-map.v22m-section{padding:82px 20px 92px}.v22m-copy h2{font-size:42px;letter-spacing:-1.7px}.v22m-copy>p{font-size:12.5px}.v22m-stats{margin-top:27px}.v22m-stats div{padding-left:12px}.v22m-canvas{width:calc(100% + 20px);margin:5px -10px 0}.v22m-node i{width:25px;height:25px;border-width:4px}.v22m-node.active i{width:31px;height:31px}.v22m-node span{display:none}.v22m-legend{right:3%;bottom:-4%}}
/* More breathing room for the following editorial story. */
#lp-recommend{padding-top:118px;padding-bottom:126px;background:#fff}
/* A calmer pause after the process navigation before the next chapter starts. */
@media(min-width:761px){#lp-how .v203-sticky{padding-bottom:68px}#lp-how .v203-journey-nav{min-height:88px}}
@media(min-width:761px){#lp-how .v203-track.is-nudging{transition-duration:1.1s}}
@media(max-width:760px){#lp-recommend{padding-top:82px;padding-bottom:90px}}
@media(prefers-reduced-motion:reduce){.v22m-country,.v22m-country-dots,.v22m-cantons,.v22m-links path,.v22m-node,.v22m-node.active i::after{animation:none!important}.v22m-country,.v22m-country-dots,.v22m-cantons,.v22m-node{opacity:1}.v22m-links path{opacity:.42}.v22m-country{transform:none}.v22m-node{filter:none;transform:translate(-50%,-50%) scale(1)}}
