/* Shared paint tokens keep all sections and animation accents in the selected palette. */
html[data-theme="red"] {
  --paint-14141c:hsla(2,16.67%,9.41%,1.000);
  --paint-565760:hsla(2,5.49%,35.69%,1.000);
  --paint-075ecb:hsla(2,93.33%,41.18%,1.000);
  --paint-004498:hsla(2,100.00%,29.80%,1.000);
  --paint-f1f7ff:hsla(2,100.00%,97.25%,1.000);
  --paint-cfdeee:hsla(2,47.69%,87.25%,1.000);
  --paint-cce6ff:hsla(2,100.00%,90.00%,1.000);
  --paint-073363:hsla(2,86.79%,20.78%,1.000);
  --paint-abccec:hsla(2,63.11%,79.80%,1.000);
  --paint-90b7dc:hsla(2,52.05%,71.37%,1.000);
  --paint-b3d1eb:hsla(2,58.33%,81.18%,1.000);
  --paint-edf6ff:hsla(2,100.00%,96.47%,1.000);
  --paint-62616b:hsla(2,4.90%,40.00%,1.000);
  --paint-a4d1ff:hsla(2,100.00%,82.16%,1.000);
  --paint-d2e5fb:hsla(2,83.67%,90.39%,1.000);
  --paint-659bc9:hsla(2,48.08%,59.22%,1.000);
  --paint-acc5e0:hsla(2,45.61%,77.65%,1.000);
  --paint-a5c9ec:hsla(2,65.14%,78.63%,1.000);
  --paint-b1cce6:hsla(2,51.46%,79.80%,1.000);
  --paint-071526:hsla(2,68.89%,8.82%,1.000);
  --paint-4c6075:hsla(2,21.24%,37.84%,1.000);
  --paint-104f9580:hsla(2,80.61%,32.35%,0.502);
  --paint-040c19:hsla(2,72.41%,5.69%,1.000);
  --paint-082141:hsla(2,78.08%,14.31%,1.000);
  --paint-073462:hsla(2,86.67%,20.59%,1.000);
  --paint-5998e526:hsla(2,72.92%,62.35%,0.149);
  --paint-9ac9ff40:hsla(2,100.00%,80.20%,0.251);
  --paint-a9d3ff:hsla(2,100.00%,83.14%,1.000);
  --paint-51a7ff:hsla(2,100.00%,65.88%,1.000);
  --paint-71bbff:hsla(2,100.00%,72.16%,1.000);
  --paint-b0e0ff:hsla(2,100.00%,84.51%,1.000);
  --paint-54a9ff:hsla(2,100.00%,66.47%,1.000);
  --paint-75c2ff:hsla(2,100.00%,72.94%,1.000);
  --paint-d2e2f3:hsla(2,57.89%,88.82%,1.000);
  --paint-9dbbd9:hsla(2,44.12%,73.33%,1.000);
  --paint-278efb:hsla(2,96.36%,56.86%,1.000);
  --paint-368be6:hsla(2,77.88%,55.69%,1.000);
  --paint-8cd5ff:hsla(2,100.00%,77.45%,1.000);
  --paint-6faff568:hsla(2,87.01%,69.80%,0.408);
  --paint-0d2b4aee:hsla(2,70.11%,17.06%,0.933);
  --paint-06172bea:hsla(2,75.51%,9.61%,0.918);
  --paint-02091470:hsla(2,81.82%,4.31%,0.439);
  --paint-bde2ff17:hsla(2,100.00%,87.06%,0.090);
  --paint-679ddb30:hsla(2,61.70%,63.14%,0.188);
  --paint-76b8ff:hsla(2,100.00%,73.14%,1.000);
  --paint-8caccc:hsla(2,38.55%,67.45%,1.000);
  --paint-a8c9e9:hsla(2,59.63%,78.63%,1.000);
  --paint-66b7ff:hsla(2,100.00%,70.00%,1.000);
  --paint-e8f4ff:hsla(2,100.00%,95.49%,1.000);
  --paint-436582:hsla(2,31.98%,38.63%,1.000);
  --paint-62a9e9:hsla(2,75.42%,64.90%,1.000);
  --paint-79caff:hsla(2,100.00%,73.73%,1.000);
  --paint-51b3ff:hsla(2,100.00%,65.88%,1.000);
  --paint-f6fbff:hsla(2,100.00%,98.24%,1.000);
  --paint-b2d9ff:hsla(2,100.00%,84.90%,1.000);
  --paint-0754ad:hsla(2,92.22%,35.29%,1.000);
  --paint-d9eeff:hsla(2,100.00%,92.55%,1.000);
  --paint-5cadff:hsla(2,100.00%,68.04%,1.000);
  --paint-77baff6e:hsla(2,100.00%,73.33%,0.431);
  --paint-4b89c478:hsla(2,50.63%,53.14%,0.471);
  --paint-061a30:hsla(2,77.78%,10.59%,1.000);
  --paint-9dcfff:hsla(2,100.00%,80.78%,1.000);
  --paint-66a3e43b:hsla(2,70.00%,64.71%,0.231);
  --paint-16457466:hsla(2,68.12%,27.06%,0.400);
  --paint-0a234555:hsla(2,74.68%,15.49%,0.333);
  --paint-67afff:hsla(2,100.00%,70.20%,1.000);
  --paint-154576:hsla(2,69.78%,27.25%,1.000);
  --paint-90c7ff:hsla(2,100.00%,78.24%,1.000);
  --paint-f3f8ff:hsla(2,100.00%,97.65%,1.000);
  --paint-82c5ff:hsla(2,100.00%,75.49%,1.000);
  --paint-88caff:hsla(2,100.00%,76.67%,1.000);
  --paint-7eb5e333:hsla(2,64.33%,69.22%,0.200);
  --paint-b6daff:hsla(2,100.00%,85.69%,1.000);
  --paint-a0bad3:hsla(2,36.69%,72.75%,1.000);
  --paint-a6d8ff:hsla(2,100.00%,82.55%,1.000);
  --paint-d1e2f3:hsla(2,58.62%,88.63%,1.000);
  --paint-eff7ff:hsla(2,100.00%,96.86%,1.000);
  --paint-eaf4ff:hsla(2,100.00%,95.88%,1.000);
  --paint-f6faff:hsla(2,100.00%,98.24%,1.000);
  --paint-e5f2ff:hsla(2,100.00%,94.90%,1.000);
  --paint-b8d3f0:hsla(2,65.12%,83.14%,1.000);
  --paint-1671db:hsla(2,81.74%,47.25%,1.000);
  --paint-082340:hsla(2,77.78%,14.12%,1.000);
  --paint-0959aa:hsla(2,89.94%,35.10%,1.000);
  --paint-acdfff:hsla(2,100.00%,83.73%,1.000);
  --paint-87b9ee:hsla(2,75.18%,73.14%,1.000);
  --paint-536c84:hsla(2,22.79%,42.16%,1.000);
  --paint-b1d4ff:hsla(2,100.00%,84.71%,1.000);
  --paint-137add77:hsla(2,84.17%,47.06%,0.467);
  --paint-06152b:hsla(2,75.51%,9.61%,1.000);
  --paint-073a72:hsla(2,88.43%,23.73%,1.000);
  --paint-7bbcff0d:hsla(2,100.00%,74.12%,0.051);
  --paint-97c9ff:hsla(2,100.00%,79.61%,1.000);
  --paint-69a6e770:hsla(2,72.41%,65.88%,0.439);
  --paint-e0eaf6:hsla(2,55.00%,92.16%,1.000);
  --paint-075ecb1a:hsla(2,93.33%,41.18%,0.102);
  --paint-dce6f1:hsla(2,42.86%,90.39%,1.000);
  --paint-02132726:hsla(2,90.24%,8.04%,0.149);
  --paint-e6f1ff:hsla(2,100.00%,95.10%,1.000);
  --paint-c7ddf3:hsla(2,64.71%,86.67%,1.000);
  --paint-f5fafff5:hsla(2,100.00%,98.04%,0.961);
  --paint-0821410c:hsla(2,78.08%,14.31%,0.047);
  --paint-deedff:hsla(2,100.00%,93.53%,1.000);
  --paint-8dc5ff:hsla(2,100.00%,77.65%,1.000);
  --paint-168af3:hsla(2,90.20%,51.96%,1.000);
  --paint-082139:hsla(2,75.38%,12.75%,1.000);
  --paint-d7eaff:hsla(2,100.00%,92.16%,1.000);
  --paint-c1d8ef:hsla(2,58.97%,84.71%,1.000);
  --paint-08214103:hsla(2,78.08%,14.31%,0.012);
  --paint-80b6ed:hsla(2,75.17%,71.57%,1.000);
  --paint-dce8f5:hsla(2,55.56%,91.18%,1.000);
  --paint-168af344:hsla(2,90.20%,51.96%,0.267);
  --paint-6ebaff30:hsla(2,100.00%,71.57%,0.188);
  --paint-5cabff08:hsla(2,100.00%,68.04%,0.031);
  --paint-5cabff05:hsla(2,100.00%,68.04%,0.020);
  --paint-83c1ff:hsla(2,100.00%,75.69%,1.000);
  --paint-bdd9f5:hsla(2,73.68%,85.10%,1.000);
  --paint-e4f1ff:hsla(2,100.00%,94.71%,1.000);
  --paint-168af355:hsla(2,90.20%,51.96%,0.333);
  --paint-b8cde1:hsla(2,40.59%,80.20%,1.000);
  --paint-416488:hsla(2,35.32%,39.41%,1.000);
  --paint-102f50:hsla(2,66.67%,18.82%,1.000);
  --paint-09203a:hsla(2,73.13%,13.14%,1.000);
  --paint-294763:hsla(2,41.43%,27.45%,1.000);
  --paint-80c3ff:hsla(2,100.00%,75.10%,1.000);
  --paint-f5faff:hsla(2,100.00%,98.04%,1.000);
  --paint-0b2036:hsla(2,66.15%,12.75%,1.000);
  --paint-b0dcff:hsla(2,100.00%,84.51%,1.000);
  --paint-102b46:hsla(2,62.79%,16.86%,1.000);
  --paint-355575:hsla(2,37.65%,33.33%,1.000);
  --paint-193f64:hsla(2,60.00%,24.51%,1.000);
  --paint-9dd1ff:hsla(2,100.00%,80.78%,1.000);
}
html[data-theme="green"] {
  --paint-14141c:hsla(145,16.67%,9.41%,1.000);
  --paint-565760:hsla(145,5.49%,35.69%,1.000);
  --paint-075ecb:hsla(145,93.33%,41.18%,1.000);
  --paint-004498:hsla(145,100.00%,29.80%,1.000);
  --paint-f1f7ff:hsla(145,100.00%,97.25%,1.000);
  --paint-cfdeee:hsla(145,47.69%,87.25%,1.000);
  --paint-cce6ff:hsla(145,100.00%,90.00%,1.000);
  --paint-073363:hsla(145,86.79%,20.78%,1.000);
  --paint-abccec:hsla(145,63.11%,79.80%,1.000);
  --paint-90b7dc:hsla(145,52.05%,71.37%,1.000);
  --paint-b3d1eb:hsla(145,58.33%,81.18%,1.000);
  --paint-edf6ff:hsla(145,100.00%,96.47%,1.000);
  --paint-62616b:hsla(145,4.90%,40.00%,1.000);
  --paint-a4d1ff:hsla(145,100.00%,82.16%,1.000);
  --paint-d2e5fb:hsla(145,83.67%,90.39%,1.000);
  --paint-659bc9:hsla(145,48.08%,59.22%,1.000);
  --paint-acc5e0:hsla(145,45.61%,77.65%,1.000);
  --paint-a5c9ec:hsla(145,65.14%,78.63%,1.000);
  --paint-b1cce6:hsla(145,51.46%,79.80%,1.000);
  --paint-071526:hsla(145,68.89%,8.82%,1.000);
  --paint-4c6075:hsla(145,21.24%,37.84%,1.000);
  --paint-104f9580:hsla(145,80.61%,32.35%,0.502);
  --paint-040c19:hsla(145,72.41%,5.69%,1.000);
  --paint-082141:hsla(145,78.08%,14.31%,1.000);
  --paint-073462:hsla(145,86.67%,20.59%,1.000);
  --paint-5998e526:hsla(145,72.92%,62.35%,0.149);
  --paint-9ac9ff40:hsla(145,100.00%,80.20%,0.251);
  --paint-a9d3ff:hsla(145,100.00%,83.14%,1.000);
  --paint-51a7ff:hsla(145,100.00%,65.88%,1.000);
  --paint-71bbff:hsla(145,100.00%,72.16%,1.000);
  --paint-b0e0ff:hsla(145,100.00%,84.51%,1.000);
  --paint-54a9ff:hsla(145,100.00%,66.47%,1.000);
  --paint-75c2ff:hsla(145,100.00%,72.94%,1.000);
  --paint-d2e2f3:hsla(145,57.89%,88.82%,1.000);
  --paint-9dbbd9:hsla(145,44.12%,73.33%,1.000);
  --paint-278efb:hsla(145,96.36%,56.86%,1.000);
  --paint-368be6:hsla(145,77.88%,55.69%,1.000);
  --paint-8cd5ff:hsla(145,100.00%,77.45%,1.000);
  --paint-6faff568:hsla(145,87.01%,69.80%,0.408);
  --paint-0d2b4aee:hsla(145,70.11%,17.06%,0.933);
  --paint-06172bea:hsla(145,75.51%,9.61%,0.918);
  --paint-02091470:hsla(145,81.82%,4.31%,0.439);
  --paint-bde2ff17:hsla(145,100.00%,87.06%,0.090);
  --paint-679ddb30:hsla(145,61.70%,63.14%,0.188);
  --paint-76b8ff:hsla(145,100.00%,73.14%,1.000);
  --paint-8caccc:hsla(145,38.55%,67.45%,1.000);
  --paint-a8c9e9:hsla(145,59.63%,78.63%,1.000);
  --paint-66b7ff:hsla(145,100.00%,70.00%,1.000);
  --paint-e8f4ff:hsla(145,100.00%,95.49%,1.000);
  --paint-436582:hsla(145,31.98%,38.63%,1.000);
  --paint-62a9e9:hsla(145,75.42%,64.90%,1.000);
  --paint-79caff:hsla(145,100.00%,73.73%,1.000);
  --paint-51b3ff:hsla(145,100.00%,65.88%,1.000);
  --paint-f6fbff:hsla(145,100.00%,98.24%,1.000);
  --paint-b2d9ff:hsla(145,100.00%,84.90%,1.000);
  --paint-0754ad:hsla(145,92.22%,35.29%,1.000);
  --paint-d9eeff:hsla(145,100.00%,92.55%,1.000);
  --paint-5cadff:hsla(145,100.00%,68.04%,1.000);
  --paint-77baff6e:hsla(145,100.00%,73.33%,0.431);
  --paint-4b89c478:hsla(145,50.63%,53.14%,0.471);
  --paint-061a30:hsla(145,77.78%,10.59%,1.000);
  --paint-9dcfff:hsla(145,100.00%,80.78%,1.000);
  --paint-66a3e43b:hsla(145,70.00%,64.71%,0.231);
  --paint-16457466:hsla(145,68.12%,27.06%,0.400);
  --paint-0a234555:hsla(145,74.68%,15.49%,0.333);
  --paint-67afff:hsla(145,100.00%,70.20%,1.000);
  --paint-154576:hsla(145,69.78%,27.25%,1.000);
  --paint-90c7ff:hsla(145,100.00%,78.24%,1.000);
  --paint-f3f8ff:hsla(145,100.00%,97.65%,1.000);
  --paint-82c5ff:hsla(145,100.00%,75.49%,1.000);
  --paint-88caff:hsla(145,100.00%,76.67%,1.000);
  --paint-7eb5e333:hsla(145,64.33%,69.22%,0.200);
  --paint-b6daff:hsla(145,100.00%,85.69%,1.000);
  --paint-a0bad3:hsla(145,36.69%,72.75%,1.000);
  --paint-a6d8ff:hsla(145,100.00%,82.55%,1.000);
  --paint-d1e2f3:hsla(145,58.62%,88.63%,1.000);
  --paint-eff7ff:hsla(145,100.00%,96.86%,1.000);
  --paint-eaf4ff:hsla(145,100.00%,95.88%,1.000);
  --paint-f6faff:hsla(145,100.00%,98.24%,1.000);
  --paint-e5f2ff:hsla(145,100.00%,94.90%,1.000);
  --paint-b8d3f0:hsla(145,65.12%,83.14%,1.000);
  --paint-1671db:hsla(145,81.74%,47.25%,1.000);
  --paint-082340:hsla(145,77.78%,14.12%,1.000);
  --paint-0959aa:hsla(145,89.94%,35.10%,1.000);
  --paint-acdfff:hsla(145,100.00%,83.73%,1.000);
  --paint-87b9ee:hsla(145,75.18%,73.14%,1.000);
  --paint-536c84:hsla(145,22.79%,42.16%,1.000);
  --paint-b1d4ff:hsla(145,100.00%,84.71%,1.000);
  --paint-137add77:hsla(145,84.17%,47.06%,0.467);
  --paint-06152b:hsla(145,75.51%,9.61%,1.000);
  --paint-073a72:hsla(145,88.43%,23.73%,1.000);
  --paint-7bbcff0d:hsla(145,100.00%,74.12%,0.051);
  --paint-97c9ff:hsla(145,100.00%,79.61%,1.000);
  --paint-69a6e770:hsla(145,72.41%,65.88%,0.439);
  --paint-e0eaf6:hsla(145,55.00%,92.16%,1.000);
  --paint-075ecb1a:hsla(145,93.33%,41.18%,0.102);
  --paint-dce6f1:hsla(145,42.86%,90.39%,1.000);
  --paint-02132726:hsla(145,90.24%,8.04%,0.149);
  --paint-e6f1ff:hsla(145,100.00%,95.10%,1.000);
  --paint-c7ddf3:hsla(145,64.71%,86.67%,1.000);
  --paint-f5fafff5:hsla(145,100.00%,98.04%,0.961);
  --paint-0821410c:hsla(145,78.08%,14.31%,0.047);
  --paint-deedff:hsla(145,100.00%,93.53%,1.000);
  --paint-8dc5ff:hsla(145,100.00%,77.65%,1.000);
  --paint-168af3:hsla(145,90.20%,51.96%,1.000);
  --paint-082139:hsla(145,75.38%,12.75%,1.000);
  --paint-d7eaff:hsla(145,100.00%,92.16%,1.000);
  --paint-c1d8ef:hsla(145,58.97%,84.71%,1.000);
  --paint-08214103:hsla(145,78.08%,14.31%,0.012);
  --paint-80b6ed:hsla(145,75.17%,71.57%,1.000);
  --paint-dce8f5:hsla(145,55.56%,91.18%,1.000);
  --paint-168af344:hsla(145,90.20%,51.96%,0.267);
  --paint-6ebaff30:hsla(145,100.00%,71.57%,0.188);
  --paint-5cabff08:hsla(145,100.00%,68.04%,0.031);
  --paint-5cabff05:hsla(145,100.00%,68.04%,0.020);
  --paint-83c1ff:hsla(145,100.00%,75.69%,1.000);
  --paint-bdd9f5:hsla(145,73.68%,85.10%,1.000);
  --paint-e4f1ff:hsla(145,100.00%,94.71%,1.000);
  --paint-168af355:hsla(145,90.20%,51.96%,0.333);
  --paint-b8cde1:hsla(145,40.59%,80.20%,1.000);
  --paint-416488:hsla(145,35.32%,39.41%,1.000);
  --paint-102f50:hsla(145,66.67%,18.82%,1.000);
  --paint-09203a:hsla(145,73.13%,13.14%,1.000);
  --paint-294763:hsla(145,41.43%,27.45%,1.000);
  --paint-80c3ff:hsla(145,100.00%,75.10%,1.000);
  --paint-f5faff:hsla(145,100.00%,98.04%,1.000);
  --paint-0b2036:hsla(145,66.15%,12.75%,1.000);
  --paint-b0dcff:hsla(145,100.00%,84.51%,1.000);
  --paint-102b46:hsla(145,62.79%,16.86%,1.000);
  --paint-355575:hsla(145,37.65%,33.33%,1.000);
  --paint-193f64:hsla(145,60.00%,24.51%,1.000);
  --paint-9dd1ff:hsla(145,100.00%,80.78%,1.000);
}

html[data-color-theme] body,html[data-color-theme] .site-header,html[data-color-theme] .site-footer { color:#e8f4ff; color:var(--paint-e8f4ff,#e8f4ff); background:#071526; background:var(--paint-071526,#071526); }html[data-color-theme] { color-scheme:only dark; --ink:#e8f4ff; --ink:var(--paint-e8f4ff,#e8f4ff); --muted:#b8cde1; --muted:var(--paint-b8cde1,#b8cde1); --paper:#0b2036; --paper:var(--paint-0b2036,#0b2036); --white:#071526; --white:var(--paint-071526,#071526); --line:#294763; --line:var(--paint-294763,#294763); --brand:#83c1ff; --brand:var(--paint-83c1ff,#83c1ff); --brand-hover:#b0dcff; --brand-hover:var(--paint-b0dcff,#b0dcff); --focus:#83c1ff; --focus:var(--paint-83c1ff,#83c1ff); }html[data-color-theme] .site-header,html[data-color-theme] .language-picker,html[data-color-theme] .header-inner .main-nav,html[data-color-theme] .footer-bottom,html[data-color-theme] .service,html[data-color-theme] .service:last-child,html[data-color-theme] .service-points li,html[data-color-theme] .projects-footer { border-color:#294763; border-color:var(--paint-294763,#294763); }html[data-color-theme] .header-inner .brand { background:#fff; padding:8px; border-radius:8px; }html[data-color-theme] .main-nav a,html[data-color-theme] .language-trigger,html[data-color-theme] .text-link,html[data-color-theme] .process-number,html[data-color-theme] .service-number,html[data-color-theme] .expand-icon,html[data-color-theme] .back-top,html[data-color-theme] .section-heading .eyebrow,html[data-color-theme] .about-section .eyebrow { color:#83c1ff; color:var(--paint-83c1ff,#83c1ff); }html[data-color-theme] .main-nav a:hover,html[data-color-theme] .language-trigger:hover,html[data-color-theme] .text-link:hover { color:#b0dcff; color:var(--paint-b0dcff,#b0dcff); }html[data-color-theme] .language-options,html[data-color-theme] .portfolio-project,html[data-color-theme] .portfolio-count { color:#e8f4ff; color:var(--paint-e8f4ff,#e8f4ff); background:#102b46; background:var(--paint-102b46,#102b46); border-color:#355575; border-color:var(--paint-355575,#355575); }html[data-color-theme] .language-options a { color:#e8f4ff; color:var(--paint-e8f4ff,#e8f4ff); }html[data-color-theme] .language-options a:hover,html[data-color-theme] .language-options a:focus-visible,html[data-color-theme] .language-options a[aria-current="page"],html[data-color-theme] .portfolio-project summary:hover { color:#b0dcff; color:var(--paint-b0dcff,#b0dcff); background:#193f64; background:var(--paint-193f64,#193f64); }html[data-color-theme] .header-inner .menu-toggle { color:#b0dcff; color:var(--paint-b0dcff,#b0dcff); border-color:#355575; border-color:var(--paint-355575,#355575); background:#102b46; background:var(--paint-102b46,#102b46); }html[data-color-theme] .service[open] { background:linear-gradient(100deg,#102b46,#071526); background:linear-gradient(100deg,var(--paint-102b46,#102b46),var(--paint-071526,#071526)); }html[data-color-theme] .service-body p,html[data-color-theme] .service-points,html[data-color-theme] .about-copy p,html[data-color-theme] .process p,html[data-color-theme] .projects-footer > p,html[data-color-theme] .file-label,html[data-color-theme] .footer-top address,html[data-color-theme] .company-details,html[data-color-theme] .footer-bottom,html[data-color-theme] .portfolio-overview,html[data-color-theme] .portfolio-period,html[data-color-theme] .portfolio-body { color:#b8cde1; color:var(--paint-b8cde1,#b8cde1); }html[data-color-theme] .about-copy .large-copy,html[data-color-theme] .portfolio-title,html[data-color-theme] .timeline-year,html[data-color-theme] .timeline-story h4 { color:#e8f4ff; color:var(--paint-e8f4ff,#e8f4ff); }html[data-color-theme] .experience-section { background:linear-gradient(150deg,#0b2036,#102b46); background:linear-gradient(150deg,var(--paint-0b2036,#0b2036),var(--paint-102b46,#102b46)); }html[data-color-theme] .portfolio-client,html[data-color-theme] .portfolio-tech,html[data-color-theme] .portfolio-count,html[data-color-theme] .timeline-year small,html[data-color-theme] .timeline-story-tech { color:#9dd1ff; color:var(--paint-9dd1ff,#9dd1ff); }html[data-color-theme] .portfolio-tech { border-color:#355575; border-color:var(--paint-355575,#355575); }html[data-color-theme] .portfolio-toggle { stroke:#9dd1ff; stroke:var(--paint-9dd1ff,#9dd1ff); }html[data-color-theme] .timeline-nav { background:#102b46; background:var(--paint-102b46,#102b46); border-color:#355575; border-color:var(--paint-355575,#355575); }html[data-color-theme] .timeline-nav a,html[data-color-theme] .timeline-nav.is-tracked .timeline-nav-today { color:#b0dcff; color:var(--paint-b0dcff,#b0dcff); }html[data-color-theme] .timeline-nav a:hover,html[data-color-theme] .timeline-nav a:focus-visible,html[data-color-theme] .timeline-nav.is-tracked a:hover { background:#193f64; background:var(--paint-193f64,#193f64); color:#fff; }html[data-color-theme] .timeline-nav.is-tracked a[aria-current="location"] { background:#075ecb; background:var(--paint-075ecb,#075ecb); color:#fff; }html[data-color-theme] .timeline-year::after { background:#0b2036; background:var(--paint-0b2036,#0b2036); box-shadow:0 0 0 6px #0b2036; box-shadow:0 0 0 6px var(--paint-0b2036,#0b2036); }html[data-color-theme] .timeline-entry--milestone .timeline-year::after { box-shadow:0 0 0 6px #0b2036; box-shadow:0 0 0 6px var(--paint-0b2036,#0b2036); }html[data-color-theme] .timeline-story { background:linear-gradient(120deg,#102b46,#193f64); background:linear-gradient(120deg,var(--paint-102b46,#102b46),var(--paint-193f64,#193f64)); border-color:#355575; border-color:var(--paint-355575,#355575); color:#b8cde1; color:var(--paint-b8cde1,#b8cde1); }html[data-color-theme] .process > div { border-color:#355575; border-color:var(--paint-355575,#355575); }html[data-color-theme] ::selection { color:#fff; background:#075ecb; background:var(--paint-075ecb,#075ecb); }

/* White is the default, including when JavaScript is unavailable. */
html:not([data-color-theme]) .hero { color:#071526; background:linear-gradient(120deg,#fff,#f1f7ff); }
html:not([data-color-theme]) .hero h1 span { color:#075ecb; background:none; -webkit-text-fill-color:currentColor; }
html:not([data-color-theme]) .hero-intro,html:not([data-color-theme]) .hero-guidance,html:not([data-color-theme]) .trust-strip p:not(.trust-title),html:not([data-color-theme]) .sector-list { color:#4c6075; }
html:not([data-color-theme]) .hero-copy .eyebrow,html:not([data-color-theme]) .trust-title,html:not([data-color-theme]) .need-copy .eyebrow,html:not([data-color-theme]) .need-icon,html:not([data-color-theme]) .need-link .arrow-icon { color:#075ecb; }
html:not([data-color-theme]) .need-link { background:#fff; border-color:#cfdeee; }
html:not([data-color-theme]) .need-link:hover { background:#eaf4ff; border-color:#075ecb; }
html:not([data-color-theme]) .need-title { color:#071526; }
html:not([data-color-theme]) .sector-list li { color:#334f6b; background:#fff; border-color:#cfdeee; }
html:not([data-color-theme]) .trust-strip,html:not([data-color-theme]) .trust-strip > div + div { border-color:#cfdeee; }
@media print { html[data-color-theme] body { color:#071526; background:#fff; } }

html[data-color-theme] .circuit-board circle { stroke:var(--brand); fill:var(--paper); }

@media screen and (prefers-color-scheme:dark) {
html:not([data-theme]) body,html:not([data-theme]) .site-header,html:not([data-theme]) .site-footer { color:#e8f4ff; color:var(--paint-e8f4ff,#e8f4ff); background:#071526; background:var(--paint-071526,#071526); }html:not([data-theme]) { color-scheme:only dark; --ink:#e8f4ff; --ink:var(--paint-e8f4ff,#e8f4ff); --muted:#b8cde1; --muted:var(--paint-b8cde1,#b8cde1); --paper:#0b2036; --paper:var(--paint-0b2036,#0b2036); --white:#071526; --white:var(--paint-071526,#071526); --line:#294763; --line:var(--paint-294763,#294763); --brand:#83c1ff; --brand:var(--paint-83c1ff,#83c1ff); --brand-hover:#b0dcff; --brand-hover:var(--paint-b0dcff,#b0dcff); --focus:#83c1ff; --focus:var(--paint-83c1ff,#83c1ff); }html:not([data-theme]) .site-header,html:not([data-theme]) .language-picker,html:not([data-theme]) .header-inner .main-nav,html:not([data-theme]) .footer-bottom,html:not([data-theme]) .service,html:not([data-theme]) .service:last-child,html:not([data-theme]) .service-points li,html:not([data-theme]) .projects-footer { border-color:#294763; border-color:var(--paint-294763,#294763); }html:not([data-theme]) .header-inner .brand { background:#fff; padding:8px; border-radius:8px; }html:not([data-theme]) .main-nav a,html:not([data-theme]) .language-trigger,html:not([data-theme]) .text-link,html:not([data-theme]) .process-number,html:not([data-theme]) .service-number,html:not([data-theme]) .expand-icon,html:not([data-theme]) .back-top,html:not([data-theme]) .section-heading .eyebrow,html:not([data-theme]) .about-section .eyebrow { color:#83c1ff; color:var(--paint-83c1ff,#83c1ff); }html:not([data-theme]) .main-nav a:hover,html:not([data-theme]) .language-trigger:hover,html:not([data-theme]) .text-link:hover { color:#b0dcff; color:var(--paint-b0dcff,#b0dcff); }html:not([data-theme]) .language-options,html:not([data-theme]) .portfolio-project,html:not([data-theme]) .portfolio-count { color:#e8f4ff; color:var(--paint-e8f4ff,#e8f4ff); background:#102b46; background:var(--paint-102b46,#102b46); border-color:#355575; border-color:var(--paint-355575,#355575); }html:not([data-theme]) .language-options a { color:#e8f4ff; color:var(--paint-e8f4ff,#e8f4ff); }html:not([data-theme]) .language-options a:hover,html:not([data-theme]) .language-options a:focus-visible,html:not([data-theme]) .language-options a[aria-current="page"],html:not([data-theme]) .portfolio-project summary:hover { color:#b0dcff; color:var(--paint-b0dcff,#b0dcff); background:#193f64; background:var(--paint-193f64,#193f64); }html:not([data-theme]) .header-inner .menu-toggle { color:#b0dcff; color:var(--paint-b0dcff,#b0dcff); border-color:#355575; border-color:var(--paint-355575,#355575); background:#102b46; background:var(--paint-102b46,#102b46); }html:not([data-theme]) .service[open] { background:linear-gradient(100deg,#102b46,#071526); background:linear-gradient(100deg,var(--paint-102b46,#102b46),var(--paint-071526,#071526)); }html:not([data-theme]) .service-body p,html:not([data-theme]) .service-points,html:not([data-theme]) .about-copy p,html:not([data-theme]) .process p,html:not([data-theme]) .projects-footer > p,html:not([data-theme]) .file-label,html:not([data-theme]) .footer-top address,html:not([data-theme]) .company-details,html:not([data-theme]) .footer-bottom,html:not([data-theme]) .portfolio-overview,html:not([data-theme]) .portfolio-period,html:not([data-theme]) .portfolio-body { color:#b8cde1; color:var(--paint-b8cde1,#b8cde1); }html:not([data-theme]) .about-copy .large-copy,html:not([data-theme]) .portfolio-title,html:not([data-theme]) .timeline-year,html:not([data-theme]) .timeline-story h4 { color:#e8f4ff; color:var(--paint-e8f4ff,#e8f4ff); }html:not([data-theme]) .experience-section { background:linear-gradient(150deg,#0b2036,#102b46); background:linear-gradient(150deg,var(--paint-0b2036,#0b2036),var(--paint-102b46,#102b46)); }html:not([data-theme]) .portfolio-client,html:not([data-theme]) .portfolio-tech,html:not([data-theme]) .portfolio-count,html:not([data-theme]) .timeline-year small,html:not([data-theme]) .timeline-story-tech { color:#9dd1ff; color:var(--paint-9dd1ff,#9dd1ff); }html:not([data-theme]) .portfolio-tech { border-color:#355575; border-color:var(--paint-355575,#355575); }html:not([data-theme]) .portfolio-toggle { stroke:#9dd1ff; stroke:var(--paint-9dd1ff,#9dd1ff); }html:not([data-theme]) .timeline-nav { background:#102b46; background:var(--paint-102b46,#102b46); border-color:#355575; border-color:var(--paint-355575,#355575); }html:not([data-theme]) .timeline-nav a,html:not([data-theme]) .timeline-nav.is-tracked .timeline-nav-today { color:#b0dcff; color:var(--paint-b0dcff,#b0dcff); }html:not([data-theme]) .timeline-nav a:hover,html:not([data-theme]) .timeline-nav a:focus-visible,html:not([data-theme]) .timeline-nav.is-tracked a:hover { background:#193f64; background:var(--paint-193f64,#193f64); color:#fff; }html:not([data-theme]) .timeline-nav.is-tracked a[aria-current="location"] { background:#075ecb; background:var(--paint-075ecb,#075ecb); color:#fff; }html:not([data-theme]) .timeline-year::after { background:#0b2036; background:var(--paint-0b2036,#0b2036); box-shadow:0 0 0 6px #0b2036; box-shadow:0 0 0 6px var(--paint-0b2036,#0b2036); }html:not([data-theme]) .timeline-entry--milestone .timeline-year::after { box-shadow:0 0 0 6px #0b2036; box-shadow:0 0 0 6px var(--paint-0b2036,#0b2036); }html:not([data-theme]) .timeline-story { background:linear-gradient(120deg,#102b46,#193f64); background:linear-gradient(120deg,var(--paint-102b46,#102b46),var(--paint-193f64,#193f64)); border-color:#355575; border-color:var(--paint-355575,#355575); color:#b8cde1; color:var(--paint-b8cde1,#b8cde1); }html:not([data-theme]) .process > div { border-color:#355575; border-color:var(--paint-355575,#355575); }html:not([data-theme]) ::selection { color:#fff; background:#075ecb; background:var(--paint-075ecb,#075ecb); }


html:not([data-theme]) .hero { color:#fff; background:linear-gradient(118deg,#040c19,#082141,#073462); }
html:not([data-theme]) .hero h1 span { color:#83c1ff; }
html:not([data-theme]) .hero-intro,html:not([data-theme]) .hero-guidance,html:not([data-theme]) .trust-strip p:not(.trust-title) { color:#b8cde1; }
html:not([data-theme]) .need-link { background:#102b46; border-color:#355575; }
html:not([data-theme]) .need-title { color:#e8f4ff; }
}

/* Darker green keeps white text on active navigation readable. */
html[data-theme="green"] { --paint-075ecb:#08783e; --paint-004498:#07552e; }

/* Balanced red: a midpoint between muted and vivid red surfaces. */
html[data-theme="red"] {
 --paint-071526:#1d0808;
 --paint-0b2036:#2b0d0d;
 --paint-102b46:#391314;
 --paint-193f64:#571c1d;
 --paint-040c19:#1f0607;
 --paint-082141:#5b0e0f;
 --paint-073462:#9d1618;
 --paint-104f9580:#f733336f;
 --paint-075ecb:#ce2222;
 --paint-004498:#a8191b;
 --paint-80c3ff:#ff767b;
 --paint-278efb:#fa3345;
 --paint-06152b:#2b0508;
 --paint-073a72:#900e18;
 --paint-137add77:#ef334d88;
 --paint-082139:#410a10;
}
