@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/bricolagegrotesque/v9/3y9H6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiawDFXplDs.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/bricolagegrotesque/v9/3y9H6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiawDVXplDs.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/bricolagegrotesque/v9/3y9H6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiawA1Xp.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/bricolagegrotesque/v9/3y9H6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiawDFXplDs.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/bricolagegrotesque/v9/3y9H6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiawDVXplDs.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/bricolagegrotesque/v9/3y9H6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiawA1Xp.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/bricolagegrotesque/v9/3y9H6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiawDFXplDs.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/bricolagegrotesque/v9/3y9H6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiawDVXplDs.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/bricolagegrotesque/v9/3y9H6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiawA1Xp.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/ibmplexsans/v23/zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxTKYbABA.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/ibmplexsans/v23/zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxaKYbABA.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/ibmplexsans/v23/zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxdKYbABA.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/ibmplexsans/v23/zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxRKYbABA.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/ibmplexsans/v23/zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxQKYbABA.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/ibmplexsans/v23/zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxeKYY.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/ibmplexsans/v23/zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxTKYbABA.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/ibmplexsans/v23/zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxaKYbABA.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/ibmplexsans/v23/zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxdKYbABA.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/ibmplexsans/v23/zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxRKYbABA.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/ibmplexsans/v23/zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxQKYbABA.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/ibmplexsans/v23/zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxeKYY.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/ibmplexsans/v23/zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxTKYbABA.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/ibmplexsans/v23/zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxaKYbABA.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/ibmplexsans/v23/zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxdKYbABA.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/ibmplexsans/v23/zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxRKYbABA.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/ibmplexsans/v23/zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxQKYbABA.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/ibmplexsans/v23/zYXzKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1syxeKYY.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,*:before,*:after{box-sizing:border-box}body{margin:0}img,svg{max-width:100%;display:block}button,input,textarea,select{font:inherit;color:inherit}button{background:none;border:none;cursor:pointer}:focus-visible{outline:var(--focus-ring) solid var(--accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root{--font-body: "IBM Plex Sans", "Segoe UI", system-ui, sans-serif;--font-display: "Bricolage Grotesque", "Trebuchet MS", "Segoe UI", sans-serif;--fs-display: clamp(30px, 3.2vw, 44px);--fs-h2: clamp(26px, 2.5vw, 34px);--fs-h3: 24px;--fs-h4: 20px;--fs-h5: 18px;--fs-lead: clamp(17px, 1.3vw, 19px);--fs-body: 16px;--fs-sm: 15px;--fs-xs: 14px;--fs-2xs: 13px;--fs-3xs: 9px;--lh-tight: 1.05;--lh-title: 1.1;--lh-body: 1.55;--ls-tight: -.03em;--ls-title: -.02em;--ls-eyebrow: .1em;--ls-brand: .07em;--measure-article: 720px;--ls-brand2: .32em;--radius-card: 24px;--radius-md: 20px;--radius-sm: 16px;--radius-xs: 12px;--radius-pill: 999px;--space-1: 4px;--space-2: 8px;--space-3: 10px;--space-4: 12px;--space-5: 14px;--space-6: 16px;--space-7: 20px;--space-8: 24px;--space-9: 28px;--space-10: 32px;--space-11: 40px;--space-12: 48px;--space-13: 64px;--wrap-max: 1312px;--wrap-pad: clamp(20px, 4.5vw, 64px);--wrap-pad-xs: 16px;--section-pad: clamp(56px, 6.5vw, 96px);--grid-cols: 12;--grid-gap: 20px;--nav-h: 80px;--anchor-offset: 96px;--control-h: 48px;--field-h: 50px;--icon-btn-size: 40px;--tap-min: 44px;--focus-ring: 2px;--transition-theme: .25s;--transition-ui: .15s;--stage-client: #11d5ff;--stage-analysis: #7452ff;--stage-development: #2084fe;--stage-deployment: #2dd4a0;--stage-qualification: #f5b83d;--stage-support: #ff6b8a;--stage-qualification-text: #f5b83d;--stage-ink-dark: #04101f;--stage-ink-light: #ffffff;--bg: #060c1a;--card: #0b1428;--card2: #122040;--ink: #eaf0fa;--muted: #b4c0d8;--muted2: #8b9bba;--rule: #243252;--accent: #11d5ff;--accent-ink: #04101f;--grad: linear-gradient(90deg, #11d5ff 0%, #2084fe 100%);--grad2: linear-gradient(135deg, #11d5ff 0%, #2084fe 100%);--input: #060c1a;--shadow: 0 30px 80px rgba(0, 0, 0, .45);--scrim: rgba(2, 6, 16, .7);--danger: #ff6b8a;--danger-soft: rgba(255, 107, 138, .12)}.theme-dark{--bg: #060c1a;--card: #0b1428;--card2: #122040;--ink: #eaf0fa;--muted: #b4c0d8;--muted2: #8b9bba;--rule: #243252;--accent: #11d5ff;--accent-ink: #04101f;--grad: linear-gradient(90deg, #11d5ff 0%, #2084fe 100%);--grad2: linear-gradient(135deg, #11d5ff 0%, #2084fe 100%);--input: #060c1a;--shadow: 0 30px 80px rgba(0, 0, 0, .45);--scrim: rgba(2, 6, 16, .7);--danger: #ff6b8a;--danger-soft: rgba(255, 107, 138, .12)}.theme-light{--bg: #e9edf4;--card: #f5f8fc;--card2: #dde4f0;--ink: #0b1a3a;--muted: #4d5a78;--muted2: #596683;--rule: #cdd5e3;--accent: #1566d6;--accent-ink: #ffffff;--grad: linear-gradient(90deg, #1566d6 0%, #404afa 100%);--grad2: linear-gradient(135deg, #2084fe 0%, #404afa 100%);--input: #eef2f8;--shadow: 0 30px 80px rgba(11, 26, 58, .12);--scrim: rgba(11, 26, 58, .5);--stage-qualification-text: #a06a00;--danger: #c22a45;--danger-soft: rgba(194, 42, 69, .08)}:root{--admin-sidebar-bg: #0b1428;--admin-sidebar-fg: #b4c0d8;--admin-sidebar-active-bg: #122040;--admin-topbar-bg: #0b1428;--admin-border: #243252}.theme-dark{--admin-sidebar-bg: #0b1428;--admin-sidebar-fg: #b4c0d8;--admin-sidebar-active-bg: #122040;--admin-topbar-bg: #0b1428;--admin-border: #243252}.theme-light{--admin-sidebar-bg: #ffffff;--admin-sidebar-fg: #4d5a78;--admin-sidebar-active-bg: #e3ebf7;--admin-topbar-bg: #ffffff;--admin-border: #cdd5e3}html{scroll-behavior:auto;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-body);transition:background var(--transition-theme),color var(--transition-theme)}body{background:var(--bg);color:var(--ink);min-height:100vh}.display,h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:var(--ls-title);margin:0}h1,.display{font-size:var(--fs-display);line-height:var(--lh-tight);letter-spacing:var(--ls-tight);font-weight:800;text-wrap:pretty}h2{font-size:var(--fs-h2);line-height:var(--lh-tight);letter-spacing:var(--ls-tight);font-weight:800}h3{font-size:var(--fs-h3);line-height:var(--lh-title);font-weight:700}h4{font-size:var(--fs-h4);line-height:var(--lh-title);font-weight:700}h5{font-family:var(--font-display);font-size:var(--fs-h5);line-height:var(--lh-title);letter-spacing:var(--ls-title);font-weight:700;margin:0}p{margin:0}.lead{font-size:var(--fs-lead);line-height:var(--lh-body);color:var(--muted);text-wrap:pretty}.body{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--muted)}.eyebrow{font-size:var(--fs-xs);font-weight:600;letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--accent)}.muted{color:var(--muted)}.muted-2{color:var(--muted2)}a{color:var(--accent);text-decoration:none}a:hover{opacity:.8}:target,[id]{scroll-margin-top:var(--anchor-offset)}.wrap{max-width:var(--wrap-max);margin:0 auto;padding-left:var(--wrap-pad);padding-right:var(--wrap-pad)}.section{padding-top:var(--section-pad);padding-bottom:var(--section-pad)}.grid{display:grid;grid-template-columns:repeat(var(--grid-cols),minmax(0,1fr));gap:var(--grid-gap)}.services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--grid-gap)}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--space-6);flex-wrap:wrap}.section-sub{font-size:var(--fs-sm);color:var(--muted2)}.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-13)}.chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.card{background:var(--card);border-radius:var(--radius-card);padding:var(--space-11);display:flex;flex-direction:column;gap:var(--space-7)}.card-2{background:var(--card2);border-radius:var(--radius-card)}.rule{border:0;border-top:1px solid var(--rule);margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);padding:15px 26px;border-radius:var(--radius-pill);font-weight:600;font-size:var(--fs-body);cursor:pointer;min-height:var(--control-h);border:1px solid transparent}.btn-primary{background:var(--grad);color:var(--accent-ink)}.btn-solid{background:var(--accent);color:var(--accent-ink)}.btn-ghost{border-color:var(--rule);color:var(--ink)}.icon-btn{width:var(--icon-btn-size);height:var(--icon-btn-size);min-width:var(--tap-min);min-height:var(--tap-min);border-radius:var(--radius-pill);background:var(--card);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.icon-btn:hover{box-shadow:inset 0 0 0 1px var(--accent)}.pill{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);border-radius:var(--radius-pill);background:var(--card);color:var(--muted);font-size:var(--fs-2xs);font-weight:600}.chip{font-size:var(--fs-body);font-weight:500;padding:18px var(--space-7);background:var(--card);border-radius:var(--radius-sm)}.seg{display:flex;background:var(--card);border-radius:var(--radius-pill);padding:var(--space-1);font-size:var(--fs-2xs);font-weight:600}.seg>*{padding:7px var(--space-5);border-radius:var(--radius-pill);cursor:pointer;color:var(--muted2);min-width:var(--tap-min);min-height:var(--tap-min);text-align:center}.seg>.on{background:var(--ink);color:var(--bg)}.tabs{display:flex;background:var(--input);border-radius:var(--radius-pill);padding:var(--space-1)}.tabs>*{flex:1;text-align:center;padding:var(--space-3);border-radius:var(--radius-pill);font-size:var(--fs-xs);font-weight:600;cursor:pointer;color:var(--muted2)}.tabs>.on{background:var(--ink);color:var(--bg)}.input{width:100%;min-height:var(--field-h);padding:var(--space-5) 18px;border:1px solid transparent;border-radius:var(--radius-pill);background:var(--input);color:var(--ink);font-size:var(--fs-sm)}.input:focus{outline:none;border-color:var(--accent)}.input::placeholder{color:var(--muted2)}textarea.input{min-height:140px;resize:vertical;border-radius:var(--radius-md)}.show-mobile{display:none}@media(max-width:1000px){.hide-mobile{display:none}.show-mobile{display:block;border-top:1px solid var(--rule);margin-top:var(--space-2);padding-top:var(--space-5)}.services-grid,.grid{grid-template-columns:minmax(0,1fr)}.two-col{grid-template-columns:minmax(0,1fr);gap:var(--space-11)}.card{padding:var(--space-9)}}@media(max-width:560px){.chips{grid-template-columns:minmax(0,1fr)}}@media(max-width:420px){.wrap{padding-left:var(--wrap-pad-xs);padding-right:var(--wrap-pad-xs)}.seg>*{padding:7px var(--space-3)}}.news-content{max-width:var(--measure-article);font-size:var(--fs-lead);line-height:1.7;color:var(--muted)}.news-content p,.news-content li{text-align:justify;text-wrap:pretty;hyphens:auto;overflow-wrap:break-word}.news-content figcaption,.news-content blockquote p{text-align:left;hyphens:manual}.news-content>*+*{margin-top:var(--space-7)}.news-content h2,.news-content h3,.news-content h4{font-family:var(--font-display);letter-spacing:var(--ls-title);color:var(--ink);margin-top:var(--space-12);margin-bottom:var(--space-5)}.news-content h2{font-size:var(--fs-h3);line-height:var(--lh-title);font-weight:700}.news-content h3{font-size:var(--fs-h4);line-height:var(--lh-title);font-weight:700}.news-content h4{font-size:var(--fs-h5);line-height:var(--lh-title);font-weight:600}.news-content p,.news-content ul,.news-content ol{margin:0}.news-content ul,.news-content ol{padding-left:var(--space-9)}.news-content li+li{margin-top:var(--space-3)}.news-content strong{color:var(--ink);font-weight:600}.news-content a{color:var(--accent);text-decoration:none}.news-content a:hover{text-decoration:underline}.news-content a:focus-visible{outline:var(--focus-ring) solid var(--accent);outline-offset:2px}.news-content blockquote{margin:0;padding-left:var(--space-7);border-left:3px solid var(--accent);color:var(--ink);font-size:var(--fs-lead)}.news-content img,.news-content figure img{max-width:100%;height:auto;border-radius:var(--radius-sm)}.news-content figure{margin:0}.news-content figcaption{margin-top:var(--space-3);font-size:var(--fs-xs);color:var(--muted2)}.news-content code{background:var(--card2);border-radius:var(--radius-xs);padding:2px var(--space-2);font-size:var(--fs-sm)}.news-content pre{background:var(--card2);border-radius:var(--radius-sm);padding:var(--space-7);overflow-x:auto;max-width:100%}.news-content pre code{background:none;padding:0}.news-content table{display:block;width:max-content;max-width:100%;overflow-x:auto;border-collapse:collapse;font-size:var(--fs-sm)}.news-content th,.news-content td{border:1px solid var(--rule);padding:var(--space-4) var(--space-6);text-align:left}.news-content th{color:var(--ink);font-weight:600;background:var(--card2)}.news-content hr{border:0;border-top:1px solid var(--rule)}app-about-page p,app-about-page li,app-case-studies-page p,app-case-studies-page li,app-case-studies-teaser p,app-consulting-page p,app-consulting-page li,app-development-page p,app-development-page li,app-infrastructure-page p,app-infrastructure-page li,app-other-it-services-page p,app-other-it-services-page li,app-legal-notice-page p,app-legal-notice-page li,app-privacy-policy-page p,app-privacy-policy-page li,app-cookie-policy-page p,app-cookie-policy-page li,app-how-we-build .build-note{text-align:justify;text-wrap:pretty;hyphens:auto;overflow-wrap:break-word}app-about-page p.eyebrow,app-case-studies-page p.eyebrow,app-consulting-page p.eyebrow,app-development-page p.eyebrow,app-infrastructure-page p.eyebrow,app-other-it-services-page p.eyebrow,app-legal-notice-page p.eyebrow,app-privacy-policy-page p.eyebrow,app-cookie-policy-page p.eyebrow,app-legal-notice-page p.updated,app-privacy-policy-page p.updated,app-cookie-policy-page p.updated,app-legal-notice-page p.links,app-privacy-policy-page p.links,app-cookie-policy-page p.links{text-align:left;hyphens:manual}:is(app-about-page,app-case-studies-page,app-case-studies-teaser,app-consulting-page,app-development-page,app-infrastructure-page,app-other-it-services-page,app-legal-notice-page,app-privacy-policy-page,app-cookie-policy-page,app-how-we-build) :is(h1,h2,h3,h4,h5,h6,.display,.eyebrow,.section-sub,.field-label,.option-head,.milestone-name,.outcome-label,.profile-label,.everyday-label,figcaption){text-align:left;hyphens:manual}
