/* Original process and location diagrams; existing Manrope / silver-blue system. */
.flow-diagram{margin:36px 0;padding:26px 28px;background:var(--surface,#fff);border:1px solid var(--line,#c6d0df);border-radius:18px;overflow:hidden}
.flow-caption{display:flex;justify-content:space-between;gap:16px;align-items:center;font-size:13px;color:var(--muted,#536174)}
.flow-replay{font:inherit;color:var(--accent,#2854c5);background:none;border:0;cursor:pointer;padding:8px 0;white-space:nowrap}
.flow-nodes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;padding:0;margin:30px 0 22px;gap:16px}
.flow-nodes li{position:relative;min-width:0}
.flow-nodes li:not(:last-child)::after{content:"";position:absolute;top:18px;left:38px;width:calc(100% - 20px);height:2px;background:var(--line,#c6d0df);transform-origin:left}
.flow-port{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line,#c6d0df);border-radius:50%;color:var(--accent,#2854c5);font-size:13px;margin-bottom:14px}
.flow-nodes strong{display:block;font-size:14px;line-height:1.5;font-weight:600;max-width:140px}
.flow-diagram figcaption{font-size:12px;color:var(--muted,#536174);line-height:1.6;max-width:65ch}
.flow-diagram.is-running .flow-port{animation:port-illuminate 2.8s ease calc(var(--step)*.45s) both}
.flow-diagram.is-running li:not(:last-child)::after{animation:path-illuminate 1.2s ease calc(var(--step)*.45s) both}
@keyframes port-illuminate{0%,100%{background:transparent;box-shadow:none}24%,65%{background:#2854c5;color:#fff;box-shadow:0 0 0 6px #2854c51a}}
@keyframes path-illuminate{0%{transform:scaleX(0)}70%{background:#2854c5}100%{transform:scaleX(1)}}
.technology-links>p{max-width:60ch;color:var(--muted,#536174)}
.source-notes{margin:48px 0;padding:24px 0;border-top:1px solid var(--line,#c6d0df)}
.source-notes h2{font-size:18px!important}.source-notes p{font-size:13px!important}.source-notes a{display:block;margin-top:10px;font-size:14px;text-decoration:underline;text-underline-offset:4px}
.scenario-notice{padding:20px 24px;border-left:3px solid var(--accent,#2854c5);background:var(--surface,#fff);font-size:14px!important}
.expansion-heading{display:grid;grid-template-columns:1.4fr 1fr;column-gap:8%;align-items:end}.expansion-heading .section-kicker{grid-column:1/-1}.expansion-heading h2{font-size:clamp(32px,4.3vw,62px);line-height:1.1;letter-spacing:-.045em;margin:12px 0 28px}.expansion-heading>p:last-child{color:var(--muted,#536174);line-height:1.75;margin-bottom:28px}
.entry-offers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:30px 0 65px;border-top:1px solid var(--line,#c6d0df);border-bottom:1px solid var(--line,#c6d0df)}
.entry-offer{display:flex;flex-direction:column;align-items:start;text-decoration:none;padding:32px 28px 36px;transition:background .2s}.entry-offer:first-child{padding-left:0}.entry-offer+.entry-offer{border-left:1px solid var(--line,#c6d0df)}.entry-offer:hover{background:var(--surface,#fff)}.entry-index{color:var(--accent,#2854c5);font-size:13px}.entry-offer h3{font-size:24px;line-height:1.25;letter-spacing:-.035em;max-width:18ch;margin:22px 0 14px}.entry-offer p{line-height:1.7;font-size:15px;color:var(--muted,#536174);margin-bottom:28px}.entry-offer .text-link{margin-top:auto}
.capability-paths{display:grid;grid-template-columns:1fr 1fr;gap:10%;margin-bottom:55px}.capability-paths h3{font-size:26px;letter-spacing:-.03em}.capability-paths p{line-height:1.75;color:var(--muted,#536174);max-width:55ch;margin:15px 0 24px}
.sovereignty-strip{background:#142b4b;color:#eef4ff;border-radius:18px;padding:35px 40px;display:grid;grid-template-columns:1.1fr 1fr;gap:12px 8%;align-items:center}.sovereignty-strip h3{font-size:28px;line-height:1.25;letter-spacing:-.03em;margin:0;grid-row:span 2;max-width:22ch}.sovereignty-strip p{color:#c5d4e9;line-height:1.65;margin:0}.sovereignty-strip a{color:#fff;font-size:14px;line-height:1.6}.scenario-link{margin-top:28px}
.directory .detail-faq{margin-top:70px}.directory .directory-grid{margin-bottom:65px}.directory-item p{overflow-wrap:anywhere}
.contact-intro{padding-top:65px;padding-bottom:48px}.contact-intro h1{font-size:clamp(44px,7vw,98px);line-height:1.02;letter-spacing:-.065em;margin:35px 0 24px}.contact-intro .detail-lead{max-width:65ch}
.location-network{background:#142b4b;color:#edf3ff;border-radius:26px;overflow:hidden;padding:0;position:relative}.network-visual{position:relative;color:#c9dcff;background:radial-gradient(ellipse at 50% 50%,#264c76 0%,#142b4b 70%)}.network-visual svg{display:block;width:100%;height:auto;min-height:240px}.network-visual svg text{font-family:inherit;font-size:15px;fill:#c9dcff;stroke:none;letter-spacing:.02em}.network-visual .network-wordmark{font-size:25px;font-weight:600;letter-spacing:-.04em;fill:#f5f8ff}.network-coordinate{position:absolute;left:4%;top:24px;color:#b4c7e1;font-size:11px;letter-spacing:.05em}.network-coordinate span{display:block;margin-top:7px;font-size:13px}.network-route{stroke:#8fbaff;stroke-width:1.8;stroke-dasharray:7 7}.network-route.secondary{stroke:#6a8bb6;stroke-width:1}.network-visual.is-running .network-route{animation:network-route 4.2s linear both}.city-pulse{fill:#91b7f826;stroke:#91b7f8;stroke-width:1}.network-visual.is-running .city-pulse{animation:city-pulse 3.8s ease both}.city-node.is-selected{color:#fff}.city-node.is-selected .city-pulse{fill:#b1d3ff55;stroke:#fff}
@keyframes network-route{from{stroke-dashoffset:120;opacity:.25}to{stroke-dashoffset:0;opacity:1}}
@keyframes city-pulse{0%{opacity:.25}45%{opacity:1;stroke-width:4}100%{opacity:.65;stroke-width:1}}
.location-content{padding:26px 40px 38px;background:#102540}.network-note{font-size:12px;color:#b4c7e1;margin:0 0 22px}.location-buttons{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.location-buttons button{font:inherit;font-size:14px;cursor:pointer;background:transparent;border:1px solid #526d8c;color:#e3ecfa;display:flex;gap:8px;justify-content:space-between;align-items:center;border-radius:8px;padding:13px 12px}.location-buttons button[aria-pressed=true]{background:#edf3ff;color:#142b4b;border-color:#edf3ff}.location-buttons button:hover{border-color:#c9dcff}.location-details{display:grid;grid-template-columns:1fr 2fr;gap:30px;margin-top:32px;min-height:65px}.location-details h2{font-size:28px;line-height:1.3;letter-spacing:-.03em;margin:0}.location-details p{line-height:1.7;color:#c7d5e9;font-size:15px;max-width:58ch;margin:0}
.contact-start{display:grid;grid-template-columns:1.5fr 1fr;gap:9%;padding-top:85px;padding-bottom:65px}.contact-start h2{font-size:clamp(28px,3.5vw,44px);line-height:1.16;letter-spacing:-.04em;max-width:20ch;margin:0 0 24px}.contact-start p{line-height:1.8;max-width:58ch;color:var(--muted,#536174)}.contact-start aside{border-left:1px solid var(--line,#c6d0df);padding-left:35px}.contact-start aside h2{font-size:21px;letter-spacing:-.02em;max-width:none}.contact-start ol{padding-left:20px;line-height:1.8;font-size:15px}.contact-start li{margin-bottom:16px}.contact-start .contact-actions{display:flex;flex-wrap:wrap;gap:20px;align-items:center;margin:30px 0 18px}.contact-start .contact-hint{font-size:12px;max-width:64ch}.contact-faq{padding-bottom:85px;max-width:1000px}.footer-technology{display:flex;flex-wrap:wrap;gap:16px 28px;padding:25px 0;border-top:1px solid var(--line,#c6d0df);font-size:13px}.footer-technology strong{margin-right:15px}.footer-technology a{text-decoration:none}.footer-technology a:hover{text-decoration:underline}
button:focus-visible,a:focus-visible{outline:3px solid #7699e8;outline-offset:5px}
[data-motion=reduce] .flow-diagram *,[data-motion=reduce] .flow-diagram *::after,[data-motion=reduce] .network-visual *{animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){.flow-diagram *,.flow-diagram *::after,.network-visual *{animation:none!important;transition:none!important}}
@media(max-width:1000px){.location-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}.contact-start{gap:5%}.entry-offer{padding:25px 18px}.entry-offer h3{font-size:21px}}
@media(max-width:767px){.expansion-heading,.capability-paths,.sovereignty-strip,.contact-start{grid-template-columns:1fr}.expansion-heading{gap:0}.entry-offers{grid-template-columns:1fr;margin:15px 0 40px}.entry-offer,.entry-offer:first-child{padding:25px 0}.entry-offer+.entry-offer{border-left:0;border-top:1px solid var(--line,#c6d0df)}.entry-offer h3{max-width:25ch;margin-top:14px}.entry-offer p{margin-bottom:20px}.capability-paths{gap:35px}.sovereignty-strip{padding:28px;gap:20px}.sovereignty-strip h3{grid-row:auto}.flow-diagram{padding:20px 18px}.flow-caption{align-items:start;gap:12px}.flow-caption>span{max-width:17ch}.flow-nodes{grid-template-columns:1fr 1fr;gap:26px 18px}.flow-nodes li:nth-child(2)::after{display:none}.flow-nodes strong{max-width:150px}.contact-intro{padding-top:35px;padding-bottom:30px}.contact-intro h1{font-size:clamp(42px,10vw,68px)}.location-network{width:calc(100% - 32px);border-radius:18px}.network-visual svg{min-height:210px}.network-coordinate{top:14px}.location-content{padding:22px}.location-buttons{grid-template-columns:1fr 1fr}.location-buttons button{font-size:13px}.location-details{grid-template-columns:1fr;gap:10px;min-height:125px}.location-details h2{font-size:24px}.location-details p{font-size:14px}.contact-start{padding-top:55px;gap:40px}.contact-start aside{border-left:0;border-top:1px solid var(--line,#c6d0df);padding:30px 0 0}.contact-start .button{white-space:normal;text-align:left;line-height:1.5}.contact-faq{padding-bottom:55px}}
