:root {
  --ink: #1d1d1f;
  --muted: #6e6e73;
  --paper: #f5f5f7;
  --white: #fff;
  --line: #dedee3;
  --blue: #0071e3;
  --lime: #b8e986;
  --coral: #ff6b58;
  --sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", "Segoe UI", Arial, sans-serif;
  --display: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Helvetica Neue", "Segoe UI", Arial, sans-serif;
}
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; font-family: var(--sans); background: #f5f5f7; color: #1d1d1f; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
img, svg { max-width: 100%; }
.wrap { width: min(1240px, calc(100% - 64px)); margin-right: auto; margin-left: auto; }
.site-header { position: sticky; z-index: 20; top: 0; height: 66px; border-bottom: 1px solid rgba(29,29,31,.1); background: rgba(250,250,252,.84); backdrop-filter: saturate(160%) blur(20px); }
.site-header .nav { width: min(1240px, calc(100% - 64px)); min-height: 68px; display: flex; align-items: center; justify-content: space-between; gap: 24px; margin: 0 auto; }
.wordmark { font-family: var(--display); font-size: 21px; }
.button { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; padding: 0 16px; border: 1px solid #0071e3; border-radius: 8px; font-size: 12px; font-weight: 700; text-align: center; text-decoration: none; }
.button-primary, .button-secondary { border-color: #aeb1b8; background: #bfc1c6; color: #16171a; }
.button-primary:hover, .button-secondary:hover { border-color: #a4a7ae; background: #aeb1b8; color: #111216; }
.button + .button { border-color: #0071e3; background: #0071e3; color: #fff; }
.button + .button:hover { border-color: #0063c7; background: #0063c7; color: #fff; }
.button:disabled, button:disabled { opacity: .55; cursor: not-allowed; }
.nav-links { color: #45454b; font-size: 12px; }
.nav-cta, .button { border-radius: 8px; }
.button-primary, .button-secondary { background: #bfc1c6; border-color: #aeb1b8; color: #16171a; }
.button-primary:hover, .button-secondary:hover { background: #aeb1b8; border-color: #a4a7ae; color: #111216; }
.hero { padding-top: 70px; }
h1, h2, h3 { font-family: var(--display); }
.workflow { border-radius: 13px; box-shadow: 0 22px 64px rgba(29,29,31,.14); }
.workflow-head { position: relative; padding-top: 17px; }
.workflow-head::before { content: ""; position: absolute; top: 0; left: 0; width: 8px; height: 8px; border-radius: 50%; background: #ff5f57; box-shadow: 14px 0 #febc2e, 28px 0 #28c840; }
.trust-band { background: rgba(255,255,255,.55); }
.approach-panel { overflow: hidden; border-radius: 13px; background: #1d1d1f; }
.approach-copy, .steps { background: transparent; }
.capability { padding-top: 30px; }
.service-card { border-radius: 12px; }
.contact-form { border-radius: 12px; box-shadow: 0 6px 24px rgba(29,29,31,.04); }
.contact-form input, .contact-form select, .contact-form textarea { border-radius: 7px; }
.service-card h3 a { text-decoration: none; }
.home-catalog-search { display: flex; align-items: center; gap: 10px; margin-left: auto; }
.home-catalog-search > div { display: flex; min-height: 40px; border: 1px solid #d6d6dc; border-radius: 8px; background: white; overflow: hidden; }
.home-catalog-search input { width: 195px; padding: 0 10px; border: 0; background: transparent; font: 11px var(--sans); }
.home-catalog-search button { width: 40px; border: 0; background: #0071e3; color: white; font-size: 19px; cursor: pointer; }
.platform-pillars { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.platform-pillars > article, .platform-principle-grid > article { padding: 22px; border: 1px solid #e0e0e5; border-radius: 10px; background: white; }
.platform-pillars > article > span { color: #0071e3; font-size: 10px; font-weight: 700; }
.platform-pillars h2, .platform-principles h2 { margin: 14px 0 10px; font: 600 21px var(--display); }
.platform-pillars p, .platform-principle-grid p { color: #66666e; font-size: 11px; line-height: 1.7; }
.platform-pillars a { color: #0071e3; font-size: 10px; font-weight: 700; }
.platform-principles { margin-top: 60px; padding-top: 35px; border-top: 1px solid #dedee4; }
.platform-principles > h2 { max-width: 650px; font-size: 30px; }
.platform-principle-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 22px; }
.platform-principle-grid h3 { margin: 0 0 9px; font: 600 14px var(--display); }
.approach-roadmap { display: grid; gap: 12px; }
.approach-roadmap > article { display: grid; grid-template-columns: 165px 1fr; gap: 22px; padding: 23px; border: 1px solid #e0e0e5; border-radius: 10px; background: white; }
.approach-roadmap > article > span { color: #0071e3; font-size: 10px; font-weight: 700; }
.approach-roadmap h2 { margin: 0 0 9px; font: 600 20px var(--display); }
.approach-roadmap p, .approach-roadmap li { color: #65656d; font-size: 11px; line-height: 1.7; }
.approach-roadmap ul { display: flex; flex-wrap: wrap; gap: 8px 25px; margin: 12px 0 0; padding-left: 16px; }
.nav-cta:hover, .button:hover { transition: transform .16s ease, background .16s ease, box-shadow .16s ease; box-shadow: 0 3px 10px rgba(29,29,31,.1); }
@media (max-width: 620px) { .home-catalog-search { width: 100%; justify-content: space-between; margin: 6px 0; }.home-catalog-search input { width: min(55vw, 260px); }.platform-pillars, .platform-principle-grid { grid-template-columns: 1fr; }.approach-roadmap > article { grid-template-columns: 1fr; gap: 10px; }.approach-roadmap ul { display: grid; gap: 5px; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; } }