:root{--color-page-bg: #d8e7ee;--color-panel-bg: #e7eeea;--color-white: #ffffff;--color-black: #000000;--color-ink: #111617;--color-heading: #231f20;--color-logo-dark: #15173d;--color-brand-blue: #5ca1b6;--color-brand-blue-muted: #a9c9d1;--color-brand-blue-line: #62a2b6;--color-techniques: #5b907e;--color-techniques-light-1: #ccdcd6;--color-techniques-light-2: #abc6bc;--color-techniques-light-3: #8db1a5;--color-techniques-light-4: #709e8e;--color-platforms: #dc7f6a;--color-platforms-light-1: #f6dace;--color-platforms-light-2: #efc0b0;--color-platforms-light-3: #e8a794;--color-platforms-light-4: #e1907a;--color-tools: #9e5b7b;--color-tools-light-1: #e3ccd7;--color-tools-light-2: #d0aabc;--color-tools-light-3: #bd8ba3;--color-tools-light-4: #ab6f8c;--color-languages: #638ca3;--color-languages-light-1: #cdd8e2;--color-languages-light-2: #aec0ce;--color-languages-light-3: #91abbd;--color-languages-light-4: #7699ae;--color-illustration-blue: #0d72b2;--color-illustration-blue-dark: #05619a;--color-illustration-grey: #638ca3;--color-illustration-sand: #b5afa0;--color-nav: var(--color-brand-blue);--color-nav-dark: var(--color-illustration-blue-dark);--color-dark: var(--color-ink);--color-dark-60: rgba(17, 22, 23, .6);--color-dark-20: rgba(17, 22, 23, .12);--color-accent: var(--color-illustration-blue);--color-lf: var(--color-languages);--color-techniques-light: var(--color-techniques-light-2);--color-platforms-light: var(--color-platforms-light-2);--color-tools-light: var(--color-tools-light-2);--color-lf-light: var(--color-languages-light-2);--font-family: "Plus Jakarta Sans", system-ui, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1.125rem;--font-size-md: 1.25rem;--font-size-lg: 1.375rem;--font-size-xl: 1.625rem;--font-size-2xl: 2.25rem;--nav-height: 52px;--panel-width: 380px;--radar-max-size: 1344px;--container-max: calc(var(--radar-max-size) + 2 * var(--page-padding));--page-padding: 24px;--radar-viewport-inset: calc(var(--nav-height) + var(--space-8) * 2 + var(--space-6));--radar-available-height: calc(100dvh - var(--radar-viewport-inset));--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-14: 56px;--space-15: 60px;--space-16: 64px;--font-size-2xs: .625rem;--font-size-ui-sm: .8125rem;--font-size-ui: .9375rem;--letter-spacing-display: -.03em;--letter-spacing-heading: -.02em;--letter-spacing-eyebrow: .12em;--letter-spacing-eyebrow-wide: .14em;--letter-spacing-label: .1em;--border-width-default: 1px;--border-width-accent: 4px;--site-container-max: 1400px;--site-header-height: 82px;--color-partner-detesters: #e16a7c;--color-partner-testcoders: #5a7282;--color-partner-techchamps: #b86b52;--ease-out: cubic-bezier(.25, .46, .45, .94);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--duration-fast: .18s;--duration-base: .3s;--duration-slow: .48s;--shadow-sm: 0 1px 3px rgba(17, 22, 23, .12);--shadow-md: 0 4px 16px rgba(17, 22, 23, .16);--shadow-lg: 0 8px 32px rgba(17, 22, 23, .2);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 20px;--radius-2xl: 16px;--radius-button: 10px;--radius-card-md: 14px;--radius-full: 9999px;--z-panel: 10;--z-overlay: 100;--z-modal: 200}:root{--site-header-offset: var(--site-header-height)}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:var(--color-page-bg);color:var(--color-dark);font-family:var(--font-family)}.site-main{position:relative;z-index:1;min-height:56vh}.site-main--radar{padding-bottom:0}blockquote,.wp-block-quote{border:0;border-left:4px solid var(--color-platforms);margin-left:0;margin-right:0;padding-left:var(--space-5)}.site-header{position:sticky;top:0;z-index:310;background:var(--color-nav);border-bottom:1px solid color-mix(in srgb,var(--color-white) 22%,transparent)}.site-header__inner{position:relative;max-width:var(--site-container-max);margin:0 auto;padding:0 clamp(16px,3vw,32px);min-height:var(--site-header-height);display:flex;align-items:center;justify-content:space-between}@media (min-width: 768px){.site-header__nav{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}}.site-header__brand{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;text-decoration:none;color:var(--color-white);flex-shrink:0;z-index:1;padding:var(--space-1) 0}.site-header__wordmark{display:block;height:clamp(38px,5.4vw,50px);width:auto;max-width:min(100%,min(286px,58vw));object-fit:contain;object-position:left center}.site-header__logo-tagline{font-size:12px;font-weight:500;color:var(--color-black);letter-spacing:.01em;max-width:18rem;line-height:1.25}.site-header__menu{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:4px}.site-header__menu>li>a{display:inline-flex;align-items:center;min-height:44px;color:color-mix(in srgb,var(--color-white) 70%,var(--color-brand-blue));text-decoration:none;font-size:13px;font-weight:600;letter-spacing:.03em;padding:8px 16px;white-space:nowrap;border-radius:var(--radius-md);transition:color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.site-header__menu>li>a:hover,.site-header__menu>li>a:focus-visible{color:var(--color-white);background:color-mix(in srgb,var(--color-white) 10%,transparent);outline:none}.site-header__menu>.current-menu-item>a,.site-header__menu>.is-active>a{color:var(--color-white);background:color-mix(in srgb,var(--color-brand-blue-muted) 48%,var(--color-brand-blue))}@media (max-width: 767px){.site-header__nav{display:none}body{padding-bottom:calc(58px + env(safe-area-inset-bottom,0px))}}@media (max-width: 900px){html.techradar-html-lock .site-main{z-index:320}html.techradar-html-lock .pdf-popup,html.techradar-html-lock .site-bottom-nav{display:none}}.site-bottom-nav{display:none}@media (max-width: 767px){.site-bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:310;background:var(--color-white);border-top:1px solid color-mix(in srgb,var(--color-dark) 12%,transparent);padding-bottom:env(safe-area-inset-bottom,0px);box-shadow:0 -2px 8px color-mix(in srgb,var(--color-dark) 8%,transparent)}.site-bottom-nav__item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:3px;padding:10px 4px 8px;text-decoration:none;color:color-mix(in srgb,var(--color-dark) 48%,transparent);font-size:10px;font-weight:600;letter-spacing:.02em;border-top:3px solid transparent;transition:color var(--duration-fast) var(--ease-out);-webkit-tap-highlight-color:transparent}.site-bottom-nav__item.is-active{color:var(--color-nav);border-top-color:var(--color-nav)}.site-bottom-nav__item:hover{color:var(--color-nav)}.site-bottom-nav__item:focus-visible{outline:2px solid var(--color-nav);outline-offset:-2px}.site-bottom-nav__icon{display:block;flex-shrink:0}}.site-footer{background:var(--color-nav);color:color-mix(in srgb,var(--color-white) 78%,var(--color-brand-blue))}.site-footer__inner{max-width:var(--site-container-max);margin:0 auto;padding:clamp(36px,6vw,52px) clamp(16px,3vw,32px) clamp(28px,4vw,40px)}.site-footer__grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1.05fr);gap:clamp(28px,5vw,48px);align-items:start}.site-footer__col{display:flex;flex-direction:column;gap:var(--space-4);text-align:left;align-items:flex-start;justify-self:stretch}.site-footer__brand-mark{display:inline-block;text-decoration:none;line-height:0}.site-footer__wordmark{display:block;height:clamp(40px,5.5vw,52px);width:auto;max-width:min(100%,260px);filter:brightness(0) invert(1)}.site-footer__intro{margin:0;max-width:22rem;font-size:var(--font-size-sm);line-height:1.55;color:color-mix(in srgb,var(--color-white) 78%,var(--color-brand-blue))}.site-footer__heading{margin:0;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:color-mix(in srgb,var(--color-white) 65%,var(--color-brand-blue))}.site-footer__nav .site-footer__menu{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2)}.site-footer__menu a{color:color-mix(in srgb,var(--color-white) 92%,var(--color-brand-blue));text-decoration:none;font-size:var(--font-size-sm);transition:color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.site-footer__menu a:hover,.site-footer__menu a:focus-visible{color:var(--color-white);outline:none}.site-footer__menu>.current-menu-item>a,.site-footer__menu>.is-active>a{font-weight:700}.site-footer__partner-logos{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-4)}.site-footer__partner-link{display:inline-flex;align-items:center;justify-content:flex-start;line-height:0;text-decoration:none;transition:opacity var(--duration-fast) var(--ease-out)}.site-footer__partner-link:hover,.site-footer__partner-link:focus-visible{opacity:.88;outline:none}.site-footer__partner-logo{display:block;height:40px;width:auto;max-width:min(200px,56vw);object-fit:contain;object-position:left center}.site-footer__partner-logo--tall{height:50px;max-width:min(180px,50vw)}.site-footer__sofius-link{display:inline-flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2);line-height:1.2;text-decoration:none;transition:opacity var(--duration-fast) var(--ease-out)}.site-footer__sofius-text{flex-shrink:0;font-size:var(--font-size-sm);font-weight:600;color:color-mix(in srgb,var(--color-white) 85%,var(--color-brand-blue))}.site-footer__sofius-link:hover,.site-footer__sofius-link:focus-visible{opacity:.88;outline:none}.site-footer__sofius-logo{display:block;height:clamp(13px,2.35vw,17px);width:auto;max-width:min(92px,36vw);object-fit:contain}.site-footer__divider{height:1px;margin:var(--space-8) 0 var(--space-5);background:color-mix(in srgb,var(--color-white) 22%,transparent);border:0}.site-footer__legal{margin:0;font-size:var(--font-size-sm);color:color-mix(in srgb,var(--color-white) 72%,var(--color-brand-blue))}@media (max-width: 767px){.site-footer__grid{grid-template-columns:1fr;gap:0}.site-footer__col+.site-footer__col{margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid color-mix(in srgb,var(--color-white) 22%,transparent)}.site-footer__partner-logo,.site-footer__partner-logo--tall{max-width:min(220px,85vw)}}.pdf-popup{position:fixed;bottom:clamp(16px,3vw,28px);right:clamp(16px,3vw,28px);z-index:400}.pdf-popup__trigger{display:inline-flex;align-items:center;gap:var(--space-2);padding:8px 16px 8px 14px;border:none;border-radius:999px;font-size:var(--font-size-sm);font-weight:700;letter-spacing:.02em;cursor:pointer;white-space:nowrap;text-decoration:none;transition:background var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.pdf-popup__trigger--float{background:var(--color-nav);color:var(--color-white);box-shadow:var(--shadow-md)}.pdf-popup__trigger--float:hover,.pdf-popup__trigger--float:focus-visible{background:color-mix(in srgb,var(--color-nav) 82%,var(--color-dark));box-shadow:var(--shadow-lg);outline:none}.pdf-popup__trigger--float:focus-visible{outline:2px solid var(--color-nav);outline-offset:3px}.pdf-popup__trigger--header{display:none;background:var(--color-white);color:var(--color-nav)}.pdf-popup__trigger--header:hover,.pdf-popup__trigger--header:focus-visible{background:color-mix(in srgb,var(--color-white) 88%,var(--color-nav));outline:none}.pdf-popup__trigger--header:focus-visible{outline:2px solid var(--color-white);outline-offset:2px}.pdf-popup__trigger-icon{font-size:1.1em;line-height:1}@media (max-width: 767px){.pdf-popup__trigger--float{display:none}.pdf-popup__trigger--header{display:inline-flex}}:is(.site-main--landing,.editor-styles-wrapper) .hp-section--brand,:is(.site-main--landing,.editor-styles-wrapper) .hero-block.kb-row-layout-wrap{background-color:var(--color-nav)!important}:is(.site-main--landing,.editor-styles-wrapper) .hp-section--page,:is(.site-main--landing,.editor-styles-wrapper) .why-we-built-this.kb-row-layout-wrap,:is(.site-main--landing,.editor-styles-wrapper) .who-is-it-for.kb-row-layout-wrap,:is(.site-main--landing,.editor-styles-wrapper) .the-team.kb-row-layout-wrap{background-color:var(--color-page-bg)!important}:is(.site-main--landing,.editor-styles-wrapper) .hp-section--panel,:is(.site-main--landing,.editor-styles-wrapper) .how-it-works.kb-row-layout-wrap,:is(.site-main--landing,.editor-styles-wrapper) .homepage-case.kb-row-layout-wrap,:is(.site-main--landing,.editor-styles-wrapper) .cta.kb-row-layout-wrap{background-color:var(--color-panel-bg)!important}@media (max-width: 767px){.site-main--landing .hp-section--brand.kb-row-layout-wrap>.kt-row-column-wrap,.site-main--landing .hp-section--page.kb-row-layout-wrap>.kt-row-column-wrap,.site-main--landing .hp-section--panel.kb-row-layout-wrap>.kt-row-column-wrap,.site-main--landing .hero-block.kb-row-layout-wrap>.kt-row-column-wrap,.site-main--landing .why-we-built-this.kb-row-layout-wrap>.kt-row-column-wrap,.site-main--landing .who-is-it-for.kb-row-layout-wrap>.kt-row-column-wrap,.site-main--landing .the-team.kb-row-layout-wrap>.kt-row-column-wrap,.site-main--landing .how-it-works.kb-row-layout-wrap>.kt-row-column-wrap,.site-main--landing .homepage-case.kb-row-layout-wrap>.kt-row-column-wrap,.site-main--landing .cta.kb-row-layout-wrap>.kt-row-column-wrap{padding:56px 16px!important}.site-main--landing .why-we-built-this:has(+.why-we-built-this)>.kt-row-column-wrap,.site-main--landing .homepage-case:has(+.homepage-case)>.kt-row-column-wrap{padding-bottom:0!important}.site-main--landing .why-we-built-this+.why-we-built-this>.kt-row-column-wrap,.site-main--landing .homepage-case+.homepage-case>.kt-row-column-wrap{padding-top:0!important}.why-we-built-this-four-points .kt-inside-inner-col{gap:var(--space-3)!important}.why-we-built-this-four-points .kb-row-layout-wrap>.kt-row-column-wrap,.why-we-built-this-four-points .kb-row-layout-wrap>.kb-row-layout-inner{gap:var(--space-3)!important}.who-four-columns.kb-row-layout-wrap>.kt-row-column-wrap,.who-four-columns.kb-row-layout-wrap>.kb-row-layout-inner{gap:var(--space-3)!important}.tag-3-columns.kb-row-layout-wrap>.kt-row-column-wrap{gap:var(--space-3)!important}}:is(.site-main--landing,.editor-styles-wrapper) .hp-eyebrow{color:var(--color-accent);font-size:var(--font-size-xs);font-weight:700;letter-spacing:var(--letter-spacing-eyebrow);text-transform:uppercase;margin:0 0 var(--space-4);line-height:1.4}:is(.site-main--landing,.editor-styles-wrapper) .hp-eyebrow--center{text-align:center}:is(.site-main--landing,.editor-styles-wrapper) .hp-eyebrow--muted{color:var(--color-dark-60);letter-spacing:var(--letter-spacing-label)}:is(.site-main--landing,.editor-styles-wrapper) .hero-block .hp-display,:is(.site-main--landing,.editor-styles-wrapper) .hero-block .hp-display-line{color:var(--color-white);font-size:clamp(36px,5vw,64px);font-weight:800;letter-spacing:var(--letter-spacing-display);line-height:1.05;margin:0 0 var(--space-6)}:is(.site-main--landing,.editor-styles-wrapper) .hero-block .hp-lead{color:color-mix(in srgb,var(--color-white) 70%,transparent);font-size:var(--font-size-base);font-weight:300;line-height:1.7;margin:0 0 var(--space-10)}:is(.site-main--landing,.editor-styles-wrapper) .hero-block .hp-tagline{color:color-mix(in srgb,var(--color-white) 45%,transparent);font-size:var(--font-size-2xs);font-weight:700;letter-spacing:var(--letter-spacing-eyebrow);text-transform:uppercase;margin:0 0 var(--space-4)}:is(.site-main--landing,.editor-styles-wrapper) .hero-block .hp-tagline strong,:is(.site-main--landing,.editor-styles-wrapper) .hero-block .hp-tagline span{color:var(--color-white);font-weight:700}:is(.site-main--landing,.editor-styles-wrapper) .hp-title{color:var(--color-heading);font-weight:800;letter-spacing:var(--letter-spacing-heading);line-height:1.1;margin:0 0 var(--space-6)}:is(.site-main--landing,.editor-styles-wrapper) .hp-title--lg{font-size:clamp(28px,3.5vw,48px)}:is(.site-main--landing,.editor-styles-wrapper) .hp-title--md{font-size:clamp(28px,3.5vw,44px)}:is(.site-main--landing,.editor-styles-wrapper) .hp-title--tag{font-size:clamp(24px,3vw,40px);margin-bottom:var(--space-15)}:is(.site-main--landing,.editor-styles-wrapper) .hp-title--center{text-align:center}:is(.site-main--landing,.editor-styles-wrapper) .hp-title--section{margin-bottom:var(--space-16)}:is(.site-main--landing,.editor-styles-wrapper) .hp-label{color:var(--color-dark-60);font-size:var(--font-size-sm);font-weight:700;letter-spacing:var(--letter-spacing-label);text-transform:uppercase;margin:0 0 var(--space-6);line-height:1.3}:is(.site-main--landing,.editor-styles-wrapper) .hp-card{background:var(--color-white);border:var(--border-width-default) solid var(--color-dark-20);border-radius:var(--radius-lg);padding:var(--space-6)}:is(.site-main--landing,.editor-styles-wrapper) .hp-card--compact{padding:var(--space-4) var(--space-5)}:is(.site-main--landing,.editor-styles-wrapper) .hp-card--spaced{margin-bottom:var(--space-4)}:is(.site-main--landing,.editor-styles-wrapper) .hp-card--stack{margin-bottom:var(--space-3)}:is(.site-main--landing,.editor-styles-wrapper) .hp-card--lg{border-radius:var(--radius-xl);padding:var(--space-8) var(--space-6)}:is(.site-main--landing,.editor-styles-wrapper) .hp-card-title{color:var(--color-heading);font-weight:700;margin:0 0 var(--space-2);line-height:1.3}:is(.site-main--landing,.editor-styles-wrapper) .hp-card-title--loose{margin-bottom:var(--space-3)}:is(.site-main--landing,.editor-styles-wrapper) .hp-quadrant-title{font-weight:700;margin:0 0 var(--space-1);line-height:1.3}:is(.site-main--landing,.editor-styles-wrapper) .hp-quadrant-title--techniques{color:var(--color-techniques)}:is(.site-main--landing,.editor-styles-wrapper) .hp-quadrant-title--tools{color:var(--color-tools)}:is(.site-main--landing,.editor-styles-wrapper) .hp-quadrant-title--languages{color:var(--color-languages)}:is(.site-main--landing,.editor-styles-wrapper) .hp-quadrant-title--platforms{color:var(--color-platforms)}:is(.site-main--landing,.editor-styles-wrapper) .hp-buttons--hero{margin-bottom:var(--space-14)}:is(.site-main--landing,.editor-styles-wrapper) .hp-buttons--spaced-top{margin-top:var(--space-16)}:is(.site-main--landing,.editor-styles-wrapper) .hero-block .hp-separator{margin-bottom:var(--space-6)}:is(.site-main--landing,.editor-styles-wrapper) .hp-btn .wp-block-button__link{border-radius:var(--radius-button);background:var(--color-accent);color:var(--color-white);font-size:var(--font-size-ui);font-weight:700;padding:var(--space-3) var(--space-8);border:none}:is(.site-main--landing,.editor-styles-wrapper) .hp-btn--wide .wp-block-button__link{padding-left:var(--space-8);padding-right:var(--space-8)}:is(.site-main--landing,.editor-styles-wrapper) .hp-btn--outline-techniques .wp-block-button__link{background:transparent;border:var(--border-width-default) solid var(--color-techniques);color:var(--color-techniques);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:600;padding:var(--space-2) var(--space-6)}:is(.site-main--landing,.editor-styles-wrapper) .tag-card-detesters.hp-card,:is(.site-main--landing,.editor-styles-wrapper) .tag-card-detesters{border-radius:var(--radius-xl);padding:var(--space-8);background:var(--color-white)}:is(.site-main--landing,.editor-styles-wrapper) .tag-card-testcoders.hp-card,:is(.site-main--landing,.editor-styles-wrapper) .tag-card-testcoders{border-radius:var(--radius-xl);padding:var(--space-8);background:var(--color-white)}:is(.site-main--landing,.editor-styles-wrapper) .tag-card-techchamps.hp-card,:is(.site-main--landing,.editor-styles-wrapper) .tag-card-techchamps{border-radius:var(--radius-xl);padding:var(--space-8);background:var(--color-white)}:is(.site-main--landing,.editor-styles-wrapper) .tag-card-detesters .hp-link{color:var(--color-techniques)}:is(.site-main--landing,.editor-styles-wrapper) .tag-card-testcoders .hp-link{color:var(--color-languages)}:is(.site-main--landing,.editor-styles-wrapper) .tag-card-techchamps .hp-link{color:var(--color-platforms)}:is(.site-main--landing,.editor-styles-wrapper) .hp-link{font-weight:600;text-decoration:none}:is(.site-main--landing,.editor-styles-wrapper) .hp-link:hover,:is(.site-main--landing,.editor-styles-wrapper) .hp-link:focus-visible{text-decoration:underline}:is(.site-main--landing,.editor-styles-wrapper) .hp-text-center{text-align:center}:is(.site-main--landing,.editor-styles-wrapper) .hp-sofius-link{color:color-mix(in srgb,var(--color-ink) 80%,transparent);text-decoration:none}:is(.site-main--landing,.editor-styles-wrapper) .hp-sofius-link:hover,:is(.site-main--landing,.editor-styles-wrapper) .hp-sofius-link:focus-visible{text-decoration:underline}:is(.site-main--landing,.editor-styles-wrapper) .hp-cta-wrap{padding-left:0;padding-right:0}:is(.site-main--landing,.editor-styles-wrapper) .cta .hp-title{color:var(--color-heading)}.how-it-works .hp-card{padding:var(--space-4) var(--space-5);margin-bottom:var(--space-3)}.how-it-works .hp-card:last-child{margin-bottom:0}.who-is-it-for .who-four-columns .hp-card{border-radius:var(--radius-xl);padding:var(--space-8) var(--space-6)}:is(.site-main--landing,.editor-styles-wrapper) .hp-tag-card-footer{margin:var(--space-4) 0 0}.hero-block{min-height:100vh;min-height:100dvh;overflow:hidden;position:relative}.hero-block:after{content:"";position:absolute;top:-30%;right:-10%;width:500px;height:500px;z-index:0;pointer-events:none;background:radial-gradient(circle,color-mix(in srgb,var(--color-platforms) 14%,transparent) 0%,transparent 70%)}.hero-block__radar-wrap{position:absolute;top:50%;right:-16%;z-index:0;width:min(82%,960px);aspect-ratio:1;margin:0;opacity:.95;pointer-events:none;transform:translateY(-50%)}.hero-block__radar-wrap .hero-block__radar-svg{display:block;width:100%;height:100%}.hero-block__gradient{position:absolute;top:0;bottom:0;z-index:1;pointer-events:none}.hero-block__gradient--right{right:0;width:32%;background:linear-gradient(to left,transparent,var(--color-nav) 80%)}.hero-block__gradient--left{left:0;width:60%;background:linear-gradient(to right,var(--color-nav) 45%,transparent)}.hero-block>.wp-block-html{margin:0;padding:0}.hero-block__content{position:relative;z-index:2}.hero-block__content .kt-inside-inner-col{max-width:650px}:is(.site-main--landing,.editor-styles-wrapper) .hero-block__content>.kt-inside-inner-col>.tag-logo-white img{width:auto;height:100px}.tag-logo-white img{filter:brightness(0) invert(1)}.tag-logo-ink img{max-height:90px;object-fit:contain}.tag-card-detesters{border-left:4px solid var(--color-techniques)!important}.tag-card-testcoders{border-left:4px solid var(--color-languages)!important}.tag-card-techchamps{border-left:4px solid var(--color-platforms)!important}.why-we-built-this-four-points .kt-inside-inner-col{display:flex;flex-direction:column;gap:var(--global-row-gutter-md, 2rem) var(--global-row-gutter-md, 2rem)}.why-we-built-this-four-points .kt-inside-inner-col .wp-block-group{flex:1;margin-bottom:0!important}.tag-3-columns .kt-inside-inner-col{display:flex;flex-direction:column;height:100%}.tag-3-columns .kt-inside-inner-col .wp-block-group{flex:1}.tag-3-columns .wp-block-group__inner-container{display:flex;flex-direction:column;height:100%}.tag-3-columns .wp-block-group__inner-container p:has(>a){margin-top:auto!important}@media (max-width: 767px){.hero-block__radar-wrap{right:-28%;width:min(105%,520px);opacity:.85}.hero-block__gradient--left{width:100%;background:linear-gradient(to right,var(--color-nav) 38%,transparent)}.hero-block__gradient--right{width:48%}.kb-row-layout-idhp_who_grid>.kb-row-layout-inner{flex-wrap:wrap}.kb-row-layout-idhp_who_grid>.kb-row-layout-inner>.wp-block-kadence-column{flex:0 0 50%!important;max-width:50%!important}}.hero-radar-tag-logos .kt-has-3-columns.kt-row-column-wrap{grid-template-columns:repeat(3,auto);justify-content:left;column-gap:16px}.hero-radar-tag-logos .tag-logo-white img{width:auto;height:50px;max-height:50px;object-fit:contain}.wp-block-separator.is-style-wide{margin-left:0;margin-right:0}p:empty{display:none}.margin-top-12{margin-top:var(--space-12)}.who-four-columns .kt-inside-inner-col,.who-four-columns .kt-inside-inner-col>div{height:100%}.kt-inside-inner-col:has(.case-radar-card){display:flex;flex-direction:column;height:100%}.kt-inside-inner-col:has(.case-radar-card)>.wp-block-shortcode{flex:1;display:flex;flex-direction:column}.case-radar-card{background:var(--color-page-bg);border-radius:16px;padding:24px;display:flex;flex-direction:column;flex:1}.case-radar-card__company{margin:0 0 16px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-dark-60)}.case-radar-card__list{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:8px;flex:1}.case-radar-card__item{display:flex;align-items:center;gap:12px;background:var(--color-white);border-radius:8px;padding:12px 16px}.case-radar-card__item:has(.case-radar-card__link){padding:0}.case-radar-card__link{display:flex;align-items:center;gap:12px;padding:12px 16px;width:100%;text-decoration:none;color:inherit;border-radius:8px;outline:2px solid transparent;outline-offset:-2px;transition:outline-color var(--duration-fast, .15s) var(--ease-out, ease)}.case-radar-card__link:hover,.case-radar-card__link:focus-visible{outline-color:var(--blip-color, var(--color-brand-blue))}.case-radar-card__dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.case-radar-card__dot--techniques{background:var(--color-techniques)}.case-radar-card__dot--platforms{background:var(--color-platforms)}.case-radar-card__dot--tools{background:var(--color-tools)}.case-radar-card__dot--languages-and-frameworks{background:var(--color-languages)}.case-radar-card__name{flex:1;font-size:15px;font-weight:600;color:var(--color-dark)}.case-radar-card__badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:3px 10px;border-radius:100px;color:var(--color-white);flex-shrink:0}.case-radar-card__badge--adopt{background:var(--color-techniques)}.case-radar-card__badge--trial{background:var(--color-languages)}.case-radar-card__badge--assess{background:var(--color-platforms)}.case-radar-card__badge--hold{background:var(--color-tools)}.case-radar-card__footer{margin:0;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-dark-60)}.cases-hero,.case-hero,.contact-hero{background:var(--color-brand-blue);padding:clamp(48px,8vw,80px) 0 clamp(40px,6vw,60px);position:relative;overflow:hidden}.cases-hero:after,.case-hero:after,.contact-hero:after{content:"";position:absolute;top:-30%;right:-10%;width:500px;height:500px;background:radial-gradient(circle,color-mix(in srgb,var(--color-platforms) 12%,transparent) 0%,transparent 70%);pointer-events:none}.cases-hero__inner,.case-hero__inner,.contact-hero__inner{max-width:var(--radar-max-size);margin:0 auto;padding:0 clamp(16px,4vw,60px);position:relative}.cases-hero__eyebrow,.case-hero__eyebrow,.contact-hero__eyebrow{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--color-white);margin:0 0 var(--space-4)}.cases-hero__title,.case-hero__title,.contact-hero__title{font-size:clamp(32px,5vw,52px);font-weight:800;color:var(--color-white);letter-spacing:-.03em;line-height:1.05;margin:0 0 var(--space-5);max-width:820px}.cases-hero__lead,.case-hero__summary,.contact-hero__lead{font-size:clamp(15px,2vw,18px);color:color-mix(in srgb,var(--color-white) 70%,transparent);line-height:1.7;margin:0;max-width:700px}.cases-hero__lead p,.contact-hero__lead p{font-size:inherit;color:inherit;line-height:inherit;margin:0}.cases-body{background:var(--color-page-bg);padding:clamp(40px,7vw,72px) 0}.cases-body__inner{max-width:var(--radar-max-size);margin:0 auto;padding:0 clamp(16px,4vw,60px)}.cases-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:var(--space-6);margin-bottom:clamp(40px,7vw,72px)}.cases-grid--single{grid-template-columns:1fr;max-width:720px;margin-left:auto;margin-right:auto}.case-card{background:var(--color-white);border:1px solid var(--color-dark-20);border-radius:var(--radius-lg);overflow:hidden;transition:transform var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out),border-color var(--duration-base) var(--ease-out)}.case-card:hover,.case-card:focus-within{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-nav)}.case-card__link{display:flex;flex-direction:column;gap:var(--space-5);padding:var(--space-8);text-decoration:none;color:inherit;height:100%}.case-card__link:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px;border-radius:var(--radius-lg)}.case-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4)}.case-card__eyebrow{font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-2)}.case-card__company{font-size:22px;font-weight:800;color:var(--color-ink);letter-spacing:-.015em;line-height:1.2;margin:0 0 var(--space-1)}.case-card__industry{font-size:var(--font-size-sm);color:var(--color-dark-60);font-weight:500}.case-card__arrow{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-md);background:var(--color-page-bg);color:var(--color-ink);transition:background var(--duration-fast) var(--ease-out)}.case-card:hover .case-card__arrow{background:var(--color-dark-20)}.case-card__summary{font-size:15px;color:var(--color-ink);line-height:1.65;margin:0;font-weight:400}.case-card__blips{display:flex;gap:var(--space-1);flex-wrap:wrap;padding-top:var(--space-3);border-top:1px solid var(--color-dark-20);margin-top:auto}.case-card__pill{display:inline-flex;align-items:center;gap:6px;background:var(--color-page-bg);padding:4px var(--space-3);border-radius:var(--radius-full);font-size:11.5px;font-weight:600;color:var(--color-ink)}.case-card__pill-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.case-card__pill--more{color:var(--color-dark-60);background:transparent}.cases-empty{color:var(--color-dark-60);font-style:italic;margin-bottom:var(--space-12)}.cases-cta{background:var(--color-white);border:1px dashed var(--color-dark-20);border-radius:20px;padding:clamp(32px,5vw,48px);text-align:center}.cases-cta__eyebrow{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--color-dark-60);margin:0 0 var(--space-4)}.cases-cta__title{font-size:26px;font-weight:800;color:var(--color-ink);letter-spacing:-.02em;margin:0 0 var(--space-4)}.cases-cta__body{font-size:15px;color:var(--color-dark-60);margin:0 auto var(--space-6);max-width:480px;line-height:1.7}.cases-cta__button{display:inline-flex;align-items:center;gap:var(--space-2);background:var(--color-accent);color:var(--color-white);text-decoration:none;border-radius:var(--radius-md);padding:12px var(--space-6);font-size:var(--font-size-sm);font-weight:700;transition:background var(--duration-fast) var(--ease-out)}.cases-cta__button:hover,.cases-cta__button:focus-visible{background:var(--color-illustration-blue-dark);outline:none}.case-hero__back{display:inline-flex;align-items:center;gap:var(--space-2);background:transparent;color:color-mix(in srgb,var(--color-white) 70%,transparent);text-decoration:none;font-size:12.5px;font-weight:700;letter-spacing:.04em;padding:4px 0;margin-bottom:var(--space-6);transition:color var(--duration-fast) var(--ease-out)}.case-hero__back:hover,.case-hero__back:focus-visible{color:var(--color-white);outline:none}.case-detail{background:var(--color-page-bg);padding:clamp(40px,7vw,72px) 0}.case-detail__inner{max-width:var(--radar-max-size);margin:0 auto;padding:0 clamp(16px,4vw,60px)}.case-detail__grid{display:grid;grid-template-columns:1fr 325px;gap:clamp(32px,5vw,56px);align-items:flex-start}.case-prose{min-width:0}.case-prose h2,.case-prose h3{color:var(--color-heading);font-weight:700;line-height:1.3;margin:var(--space-8) 0 var(--space-4)}.case-prose h2{font-size:var(--font-size-xl)}.case-prose h3{font-size:var(--font-size-lg)}.case-prose p{font-size:var(--font-size-base);line-height:1.7;color:var(--color-ink);margin:0 0 var(--space-5)}.case-prose ul,.case-prose ol{padding-left:var(--space-6);margin:0 0 var(--space-5)}.case-prose li{font-size:var(--font-size-base);line-height:1.7;color:var(--color-ink);margin-bottom:var(--space-2)}.case-prose a{color:var(--color-accent);font-weight:600;text-underline-offset:2px}.case-pull-quote{position:relative;margin:clamp(32px,5vw,56px) 0;padding:var(--space-10) clamp(24px,4vw,44px);background:var(--color-white);border-radius:18px;border:0;border-top:4px solid var(--color-platforms);box-shadow:var(--shadow-md)}.case-pull-quote__mark{position:absolute;top:-12px;left:40px;font-size:60px;color:var(--color-platforms);font-family:Georgia,serif;line-height:1;font-weight:700;-webkit-user-select:none;user-select:none}.case-pull-quote__text{font-size:clamp(17px,2.5vw,22px);font-weight:500;color:var(--color-ink);line-height:1.5;font-style:italic;letter-spacing:-.01em;margin:0 0 var(--space-5)}.case-pull-quote__attribution{display:block;font-size:12.5px;font-weight:700;color:var(--color-dark-60);letter-spacing:.08em;text-transform:uppercase;font-style:normal}.case-sidebar{display:flex;flex-direction:column;gap:var(--space-5);position:sticky;top:calc(var(--site-header-height) + 40px)}.case-sidebar__customer{background:var(--color-white);border:1px solid var(--color-dark-20);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm)}.case-sidebar__eyebrow{font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--color-dark-60);margin:0 0 var(--space-3)}.case-sidebar__company{font-size:18px;font-weight:800;color:var(--color-ink);margin:0 0 var(--space-4);line-height:1.2}.case-sidebar__blurb{font-size:13px;color:var(--color-dark-60);line-height:1.6;margin:0 0 var(--space-5)}.case-sidebar__divider{height:1px;border:0;background:var(--color-dark-20);margin:var(--space-4) 0}.case-sidebar__blips{display:flex;flex-direction:column;gap:var(--space-3)}.case-sidebar__blip{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-page-bg);border:1px solid var(--color-dark-20);border-radius:var(--radius-md);text-decoration:none;color:inherit;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.case-sidebar__blip:hover,.case-sidebar__blip:focus-visible{background:var(--color-white);border-color:var(--blip-color, var(--color-accent));outline:none}.case-sidebar__blip-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.case-sidebar__blip-info{flex:1;min-width:0}.case-sidebar__blip-name{display:block;font-size:13px;font-weight:700;color:var(--color-ink);line-height:1.2;margin-bottom:2px}.case-sidebar__blip-quadrant{display:block;font-size:11px;color:var(--color-dark-60);line-height:1.2;text-transform:capitalize}.case-sidebar__ring{flex-shrink:0;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:3px var(--space-3);border-radius:var(--radius-full);color:var(--color-white)}.case-sidebar__ring--adopt{background:var(--color-techniques)}.case-sidebar__ring--trial{background:var(--color-languages)}.case-sidebar__ring--assess{background:var(--color-platforms)}.case-sidebar__ring--hold{background:var(--color-tools)}.case-sidebar__help{background:var(--color-brand-blue);border-radius:var(--radius-lg);padding:var(--space-6);color:var(--color-white)}.case-sidebar__help-eyebrow{font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:color-mix(in srgb,var(--color-white) 45%,transparent);margin:0 0 var(--space-3)}.case-sidebar__help-title{font-size:17px;font-weight:800;color:var(--color-white);margin:0 0 var(--space-3);line-height:1.25}.case-sidebar__help-body{font-size:13px;color:color-mix(in srgb,var(--color-white) 70%,transparent);line-height:1.6;margin:0 0 var(--space-4)}.case-sidebar__help-cta{display:block;width:100%;background:var(--color-accent);color:var(--color-white);text-decoration:none;text-align:center;border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font-size:13px;font-weight:700;transition:background var(--duration-fast) var(--ease-out)}.case-sidebar__help-cta:hover,.case-sidebar__help-cta:focus-visible{background:var(--color-illustration-blue-dark);outline:none}.contact-body{background:var(--color-page-bg);padding:clamp(40px,7vw,72px) 0}.contact-body__inner{max-width:var(--radar-max-size);margin:0 auto;padding:0 clamp(16px,4vw,60px)}.contact-body__grid{display:grid;grid-template-columns:1.6fr 1fr;gap:clamp(28px,4vw,48px);align-items:flex-start}.contact-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:var(--space-8)}.contact-picker__card{position:relative;background:transparent;border:1px solid var(--color-dark-20);border-radius:14px;padding:20px 18px;text-align:left;cursor:pointer;font-family:var(--font-family);color:inherit;display:flex;flex-direction:column;gap:10px;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.contact-picker__card:hover{background:var(--color-white);border-color:var(--color-dark-40, rgba(17, 22, 23, .4))}.contact-picker__card--active{background:var(--color-white);border-color:var(--intent-color);box-shadow:var(--shadow-md)}.contact-picker__card--active:hover{border-color:var(--intent-color)}.contact-picker__card:focus-visible{outline:2px solid var(--intent-color, var(--color-accent));outline-offset:2px}.contact-picker__accent{display:none;position:absolute;top:0;left:16px;right:16px;height:3px;background:var(--intent-color);border-radius:0 0 4px 4px}.contact-picker__card--active .contact-picker__accent{display:block}.contact-picker__card-top{display:flex;align-items:center;justify-content:space-between}.contact-picker__badge{font-size:11px;font-weight:800;letter-spacing:.14em;color:var(--color-dark-40, rgba(17, 22, 23, .4));font-family:var(--font-family)}.contact-picker__card--active .contact-picker__badge{color:var(--intent-color)}.contact-picker__check{display:none;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--intent-color);flex-shrink:0}.contact-picker__card--active .contact-picker__check{display:inline-flex}.contact-picker__title{font-size:15px;font-weight:800;color:var(--color-ink);line-height:1.25;letter-spacing:-.005em}.contact-picker__desc{font-size:12.5px;color:var(--color-dark-60);line-height:1.5}.contact-form-wrap{background:var(--color-white);border-radius:20px;padding:clamp(24px,4vw,40px);box-shadow:var(--shadow-md);--form-accent: var(--color-platforms)}.contact-form-wrap[data-intent=pdf]{--form-accent: var(--color-platforms)}.contact-form-wrap[data-intent=help]{--form-accent: var(--color-techniques)}.contact-form-wrap[data-intent=partner]{--form-accent: var(--color-languages)}.contact-form-wrap[data-intent=case]{--form-accent: var(--color-tools)}.contact-form-wrap__head{display:flex;align-items:center;gap:var(--space-3);margin-bottom:10px}.contact-form-wrap__badge{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:7px;background:var(--form-accent);color:var(--color-white);font-size:11px;font-weight:800;letter-spacing:.06em;flex-shrink:0}.contact-form-wrap__title{font-size:22px;font-weight:800;color:var(--color-ink);letter-spacing:-.01em;margin:0;line-height:1.2}.contact-form-wrap__intro{font-size:var(--font-size-sm);color:var(--color-dark-60);margin:0 0 var(--space-6);line-height:1.6;max-width:620px}.contact-form-wrap__sub,.contact-form-wrap__notice{font-size:var(--font-size-sm);color:var(--color-dark-60);margin:0 0 var(--space-8);line-height:1.55}.contact-form-wrap__privacy{font-size:var(--font-size-xs);color:var(--color-dark-60);margin:var(--space-4) 0 0;line-height:1.5}.contact-form-wrap__privacy a{color:var(--form-accent);text-underline-offset:2px}.contact-form-wrap .wpcf7{margin-top:0}.contact-form-wrap .wpcf7 p{margin-bottom:var(--space-5)}.contact-form-wrap .wpcf7 label{display:block;font-size:12px;font-weight:700;color:var(--color-dark-60);letter-spacing:.03em;margin-bottom:var(--space-2)}.contact-form-wrap .wpcf7 label abbr{text-decoration:none;color:var(--form-accent);margin-left:2px}.contact-form-wrap .wpcf7 .wpcf7-form-control-wrap{display:block;margin-top:var(--space-1)}.contact-form-wrap .wpcf7 input[type=text],.contact-form-wrap .wpcf7 input[type=email],.contact-form-wrap .wpcf7 input[type=tel],.contact-form-wrap .wpcf7 textarea,.contact-form-wrap .wpcf7 select{width:100%;background:var(--color-page-bg);border:1.5px solid var(--color-dark-20);border-radius:10px;padding:11px 14px;font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-ink);outline:none;transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.contact-form-wrap .wpcf7 input[type=text]:focus,.contact-form-wrap .wpcf7 input[type=email]:focus,.contact-form-wrap .wpcf7 input[type=tel]:focus,.contact-form-wrap .wpcf7 textarea:focus,.contact-form-wrap .wpcf7 select:focus{border-color:var(--form-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--form-accent) 18%,transparent)}.contact-form-wrap .wpcf7 textarea{resize:vertical;min-height:120px}.contact-form-wrap .wpcf7 input[type=submit]{display:inline-flex;align-items:center;justify-content:center;background:var(--form-accent);color:var(--color-white);border:none;border-radius:var(--radius-md);padding:13px var(--space-6);font-family:var(--font-family);font-size:14.5px;font-weight:700;cursor:pointer;margin-top:var(--space-3);width:100%;transition:filter var(--duration-fast) var(--ease-out)}.contact-form-wrap .wpcf7 input[type=submit]:hover,.contact-form-wrap .wpcf7 input[type=submit]:focus-visible{filter:brightness(.9);outline:none}.contact-form-wrap .wpcf7-response-output{border:0;border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);margin-top:var(--space-4);font-size:var(--font-size-sm);font-weight:600}.contact-form-wrap .wpcf7-mail-sent-ok{background:color-mix(in srgb,var(--color-techniques) 12%,transparent);color:var(--color-techniques);border-left:4px solid var(--color-techniques)}.contact-form-wrap .wpcf7-mail-sent-ng,.contact-form-wrap .wpcf7-spam-blocked,.contact-form-wrap .wpcf7-validation-errors,.contact-form-wrap .wpcf7-acceptance-missing{background:color-mix(in srgb,var(--color-platforms) 10%,transparent);color:color-mix(in srgb,var(--color-platforms) 75%,var(--color-ink));border-left:4px solid var(--color-platforms)}.contact-form-wrap .wpcf7 .wpcf7-not-valid-tip{font-size:var(--font-size-xs);color:var(--color-platforms);margin-top:var(--space-1)}.contact-partner-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:var(--space-6)}.contact-partner-picker__card{background:var(--color-page-bg);border:1.5px solid var(--color-dark-20);border-radius:10px;padding:14px 12px;cursor:pointer;display:flex;flex-direction:column;align-items:flex-start;gap:8px;font-family:var(--font-family);text-align:left;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.contact-partner-picker__card:hover{border-color:var(--color-dark-40, rgba(17, 22, 23, .4))}.contact-partner-picker__card--active{background:var(--color-white);border-color:var(--partner-color)}.contact-partner-picker__card--active:hover{border-color:var(--partner-color)}.contact-partner-picker__card:focus-visible{outline:2px solid var(--partner-color, var(--color-accent));outline-offset:2px}.contact-partner-picker__card img{height:36px;width:auto;object-fit:contain;display:block}.contact-partner-picker__email{font-size:12px;color:var(--color-dark-60);line-height:1.4}.contact-form-wrap .cf7-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.contact-form-wrap .cf7-row>p{margin-bottom:0}.contact-sidebar{display:flex;flex-direction:column;gap:var(--space-4);position:sticky;top:calc(var(--site-header-height, 82px) + 32px)}.contact-sidebar__invite{background:var(--color-brand-blue);border-radius:var(--radius-card-md);padding:22px 22px 18px;color:var(--color-white)}.contact-sidebar__invite-eyebrow{font-size:10.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:color-mix(in srgb,var(--color-white) 65%,transparent);margin:0 0 var(--space-2)}.contact-sidebar__invite-title{font-size:16px;font-weight:800;color:var(--color-white);margin:0 0 var(--space-2);line-height:1.3}.contact-sidebar__invite-body{font-size:13px;color:color-mix(in srgb,var(--color-white) 78%,transparent);line-height:1.55;margin:0}.contact-sidebar__partners{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.contact-partner-card__top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-2)}.contact-partner-card__dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.contact-partner-card[data-partner=detesters] .contact-partner-card__dot{background:var(--color-partner-detesters)}.contact-partner-card[data-partner=testcoders] .contact-partner-card__dot{background:var(--color-partner-testcoders)}.contact-partner-card[data-partner=techchamps] .contact-partner-card__dot{background:var(--color-partner-techchamps)}.contact-partners__eyebrow{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--color-dark-60);margin:0 0 var(--space-5)}.contact-partners__list{display:flex;flex-direction:column;gap:var(--space-4)}.contact-partner-card{background:var(--color-white);border:1px solid var(--color-dark-20);border-radius:var(--radius-card-md);padding:var(--space-5) clamp(var(--space-4),3vw,var(--space-6));transition:transform var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out),border-color var(--duration-base) var(--ease-out)}.contact-partner-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.contact-partner-card[data-partner=detesters]:hover{border-color:var(--color-partner-detesters)}.contact-partner-card[data-partner=testcoders]:hover{border-color:var(--color-partner-testcoders)}.contact-partner-card[data-partner=techchamps]:hover{border-color:var(--color-partner-techchamps)}.contact-partner-card__logo{margin-bottom:var(--space-3);line-height:0}.contact-partner-card__logo img{height:36px;width:auto;object-fit:contain}.contact-partner-card__blurb{font-size:var(--font-size-ui-sm);color:var(--color-dark-60);line-height:1.5;margin:0 0 var(--space-3)}.contact-partner-card__links{display:flex;flex-direction:column;gap:var(--space-1)}.contact-partner-card__email,.contact-partner-card__website{display:inline-flex;align-items:center;gap:5px;font-size:var(--font-size-ui-sm);font-weight:600;text-decoration:none;transition:opacity var(--duration-fast) var(--ease-out)}.contact-partner-card__email:hover,.contact-partner-card__website:hover{opacity:.75}.contact-partner-card[data-partner=detesters] .contact-partner-card__email{color:var(--color-partner-detesters)}.contact-partner-card[data-partner=testcoders] .contact-partner-card__email{color:var(--color-partner-testcoders)}.contact-partner-card[data-partner=techchamps] .contact-partner-card__email{color:var(--color-partner-techchamps)}.contact-partner-card__website{color:var(--color-dark-60)}@media (max-width: 767px){.case-detail__grid{grid-template-columns:1fr}.case-sidebar{position:static}.contact-picker{display:flex;flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-left:calc(-1*clamp(16px,4vw,60px));margin-right:calc(-1*clamp(16px,4vw,60px));padding-left:clamp(16px,4vw,60px);padding-right:16px;scrollbar-width:none}.contact-picker::-webkit-scrollbar{display:none}.contact-picker__card{flex:0 0 calc(100vw - 64px);scroll-snap-align:start}.contact-body__grid{grid-template-columns:1fr}.contact-sidebar{position:static}.cases-grid{grid-template-columns:1fr}.contact-partner-picker{grid-template-columns:1fr 1fr}}@media (max-width: 600px){.contact-partner-picker{grid-template-columns:1fr}}.cookie-banner{position:fixed;inset:auto 0 0 0;z-index:410;padding:var(--space-4) clamp(16px,3vw,32px) calc(var(--space-4) + env(safe-area-inset-bottom,0px));pointer-events:none}.cookie-banner[hidden]{display:none!important}.cookie-banner:not([hidden]){pointer-events:auto}.cookie-banner__inner{max-width:var(--site-container-max);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);padding:var(--space-5) var(--space-6);background:var(--color-white);border:1px solid color-mix(in srgb,var(--color-brand-blue) 40%,transparent);border-radius:var(--radius-lg);box-shadow:0 -8px 32px color-mix(in srgb,var(--color-dark) 10%,transparent),0 0 0 1px color-mix(in srgb,var(--color-white) 60%,transparent) inset;transform:translateY(calc(100% + var(--space-4)));opacity:0;transition:transform var(--duration-base) var(--ease-out),opacity var(--duration-base) var(--ease-out)}.cookie-banner--visible .cookie-banner__inner{transform:translateY(0);opacity:1}.cookie-banner__text{margin:0;flex:1;min-width:0;font-size:var(--font-size-sm);line-height:1.6;color:var(--color-ink)}.cookie-banner__text a{color:var(--color-accent);font-weight:600;text-decoration:underline;text-underline-offset:2px}.cookie-banner__text a:hover,.cookie-banner__text a:focus-visible{color:var(--color-illustration-blue-dark)}.cookie-banner__actions{display:flex;flex-shrink:0;align-items:center;gap:var(--space-3)}.cookie-banner__btn{-webkit-appearance:none;appearance:none;margin:0;border:0;cursor:pointer;font-family:inherit;font-size:var(--font-size-sm);font-weight:700;line-height:1.2;border-radius:var(--radius-md);padding:12px var(--space-5);white-space:nowrap;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.cookie-banner__btn--accept{background:var(--color-accent);color:var(--color-white)}.cookie-banner__btn--accept:hover,.cookie-banner__btn--accept:focus-visible{background:var(--color-illustration-blue-dark);outline:none}.cookie-banner__btn--decline{background:transparent;color:var(--color-ink);border:1px solid color-mix(in srgb,var(--color-dark) 18%,transparent)}.cookie-banner__btn--decline:hover,.cookie-banner__btn--decline:focus-visible{background:color-mix(in srgb,var(--color-page-bg) 70%,var(--color-white));outline:none}.cookie-banner__btn:focus-visible{outline:2px solid var(--color-nav);outline-offset:2px}@media (max-width: 720px){.cookie-banner__inner{flex-direction:column;align-items:stretch;gap:var(--space-4);padding:var(--space-5)}.cookie-banner__actions{flex-direction:column-reverse;width:100%}.cookie-banner__btn{width:100%;justify-content:center;text-align:center}}@media (prefers-reduced-motion: reduce){.cookie-banner__inner{transition:none}}.privacy-hero{position:relative;overflow:hidden;background:var(--color-brand-blue);color:var(--color-white);padding:72px 0 88px}.privacy-hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 85% -10%,color-mix(in srgb,var(--color-platforms) 18%,transparent) 0%,transparent 60%);pointer-events:none}.privacy-hero__inner{position:relative;z-index:1;max-width:var(--radar-max-size);margin:0 auto;padding:0 clamp(16px,3vw,60px);display:grid;grid-template-columns:1.4fr 1fr;gap:var(--space-15);align-items:end}.privacy-hero__eyebrow{display:inline-flex;align-items:center;gap:var(--space-2);font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#ffffffbf;background:#ffffff1a;padding:6px 12px;border-radius:var(--radius-full);border:1px solid rgba(255,255,255,.22);margin-bottom:22px}.privacy-hero__eyebrow-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--color-white);flex-shrink:0}.privacy-hero__title{font-size:clamp(40px,5vw,64px);font-weight:800;letter-spacing:var(--letter-spacing-heading);line-height:1.04;margin:0 0 22px;text-wrap:balance;color:var(--color-white)}.privacy-hero__lead{font-size:17px;line-height:1.7;color:#ffffffdb;max-width:580px;margin:0;text-wrap:pretty}.privacy-hero__meta{background:#ffffff1a;border:1px solid rgba(255,255,255,.22);border-radius:14px;padding:22px 24px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.privacy-hero__meta dl{display:grid;grid-template-columns:1fr 1fr;gap:16px 24px;margin:0}.privacy-hero__meta dt{font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#ffffff8c;margin-bottom:4px}.privacy-hero__meta dd{font-size:14px;font-weight:600;color:var(--color-white);margin:0}.privacy-hero__meta .full{grid-column:1 / -1}.privacy-body{padding:0}.privacy-body__inner{max-width:var(--radar-max-size);margin:0 auto;padding:var(--space-16) clamp(16px,3vw,60px) 96px;display:grid;grid-template-columns:260px 1fr;gap:var(--space-16);align-items:start}.privacy-toc-collapse>summary{display:none}.privacy-toc-collapse{position:sticky;top:calc(var(--site-header-height) + 24px);align-self:start}.privacy-toc{font-family:var(--font-family)}.privacy-toc__label{font-size:10.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--color-dark-60);margin-bottom:14px;padding-left:14px}.privacy-toc ol{list-style:none;counter-reset:toc;padding:0;margin:0}.privacy-toc li{counter-increment:toc}.privacy-toc a{display:flex;align-items:baseline;gap:12px;padding:9px 14px;border-radius:var(--radius-md);font-size:13.5px;font-weight:500;color:var(--color-dark-60);text-decoration:none;line-height:1.4;border-left:2px solid transparent;transition:color var(--duration-fast),background var(--duration-fast),border-left-color var(--duration-fast)}.privacy-toc a:before{content:counter(toc,decimal-leading-zero);font-size:10.5px;font-weight:700;color:color-mix(in srgb,var(--color-ink) 40%,transparent);letter-spacing:.06em;font-variant-numeric:tabular-nums;min-width:18px;flex-shrink:0}.privacy-toc a:hover{color:var(--color-ink);background:color-mix(in srgb,var(--color-ink) 6%,transparent)}.privacy-toc a.is-active{color:var(--color-ink);background:var(--color-white);border-left-color:var(--color-accent);font-weight:600;box-shadow:var(--shadow-sm)}.privacy-toc a.is-active:before{color:var(--color-accent)}.privacy-content{max-width:760px;min-width:0}.privacy-section-num{display:inline-flex;align-items:center;gap:10px;font-size:11px;font-weight:800;letter-spacing:var(--letter-spacing-eyebrow-wide);text-transform:uppercase;color:var(--color-accent);margin-top:var(--space-14);margin-bottom:10px}.privacy-section-num:first-child{margin-top:0}.privacy-section-num:after{content:"";width:28px;height:1px;background:var(--color-accent);opacity:.4}.privacy-content>h2{font-size:30px;font-weight:800;letter-spacing:var(--letter-spacing-heading);line-height:1.15;color:var(--color-heading);margin:0 0 18px;text-wrap:balance;scroll-margin-top:calc(var(--site-header-height) + 24px)}.privacy-content>h3{font-size:17px;font-weight:700;color:var(--color-heading);margin:28px 0 10px;letter-spacing:-.005em}.privacy-content>p{font-size:15.5px;line-height:1.78;color:var(--color-ink);margin-bottom:16px;text-wrap:pretty}.privacy-content>p.is-muted{color:var(--color-dark-60);font-size:14.5px}.privacy-content a{color:var(--color-accent);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;text-decoration-color:color-mix(in srgb,var(--color-accent) 40%,transparent)}.privacy-content a:hover{text-decoration-color:var(--color-accent)}.privacy-content>ul{margin:0 0 18px;padding-left:0;list-style:none}.privacy-content>ul li{font-size:15.5px;line-height:1.7;color:var(--color-ink);padding-left:26px;position:relative;margin-bottom:10px}.privacy-content>ul li:before{content:"";position:absolute;left:6px;top:11px;width:6px;height:6px;border-radius:50%;background:var(--color-brand-blue)}.privacy-content>ul li strong{font-weight:700;color:var(--color-heading)}.privacy-intro{background:var(--color-white);border:1px solid var(--color-dark-20);border-radius:18px;padding:28px 32px;margin-bottom:var(--space-12);display:grid;grid-template-columns:56px 1fr;gap:22px;align-items:start}.privacy-intro__icon{width:56px;height:56px;border-radius:14px;background:color-mix(in srgb,var(--color-accent) 12%,transparent);color:var(--color-accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}.privacy-intro__title{font-size:17px;font-weight:800;margin:0 0 8px;color:var(--color-heading);letter-spacing:-.005em}.privacy-intro__body{font-size:14.5px;line-height:1.7;color:var(--color-dark-60);margin:0}.privacy-intro__body a{color:var(--color-accent);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;text-decoration-color:color-mix(in srgb,var(--color-accent) 40%,transparent)}.privacy-intro__body a:hover{text-decoration-color:var(--color-accent)}.privacy-chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:8px 0 18px;padding:0;list-style:none}.privacy-content .privacy-chips li{font-size:12px;font-weight:600;color:var(--color-heading);display:inline-flex;align-items:center;gap:6px;background:var(--color-white);border:1px solid var(--color-dark-20);border-radius:var(--radius-full);padding:6px 14px;position:static;margin-bottom:0}.privacy-content .privacy-chips li:before{display:none}.privacy-chips .dot{width:7px;height:7px;border-radius:50%;display:inline-block;flex-shrink:0}.wp-block-table.privacy-table{border:1px solid var(--color-dark-20);border-radius:var(--radius-card-md);margin:8px 0 20px;background:var(--color-white)}.wp-block-table.privacy-table table{width:100%;border-collapse:separate;border-spacing:0;margin:0}.privacy-table th,.privacy-table td{text-align:left;padding:14px 18px;font-size:13.5px;line-height:1.55;vertical-align:top;border:none;border-bottom:1px solid var(--color-dark-20)}.privacy-table tbody tr:last-child td{border-bottom:none}.privacy-table thead th{background:var(--color-panel-bg)}.privacy-table th{font-weight:700;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--color-dark-60)}.privacy-table td:first-child{font-weight:600;color:var(--color-heading);width:36%}.wp-block-table.privacy-table thead th:first-child{border-top-left-radius:calc(var(--radius-card-md) - 1px)}.wp-block-table.privacy-table thead th:last-child{border-top-right-radius:calc(var(--radius-card-md) - 1px)}.wp-block-table.privacy-table tbody tr:last-child td:first-child{border-bottom-left-radius:calc(var(--radius-card-md) - 1px)}.wp-block-table.privacy-table tbody tr:last-child td:last-child{border-bottom-right-radius:calc(var(--radius-card-md) - 1px)}.privacy-callout{background:var(--color-panel-bg);border:1px solid var(--color-dark-20);border-left:3px solid var(--color-brand-blue);border-radius:var(--radius-lg);padding:18px 22px;margin:18px 0 22px}.privacy-callout p{font-size:14.5px;color:var(--color-ink);margin:0;line-height:1.7}.privacy-callout p strong{font-weight:700;color:var(--color-heading)}.privacy-rights-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:12px 0 16px;padding:0;list-style:none}.privacy-right{background:var(--color-white);border:1px solid var(--color-dark-20);border-radius:var(--radius-lg);padding:16px 18px}.privacy-content .privacy-rights-grid .privacy-right{padding-left:18px;position:static;margin-bottom:0;font-size:inherit;line-height:inherit;color:inherit}.privacy-content .privacy-rights-grid .privacy-right:before{display:none}.privacy-right h4{font-size:14px;font-weight:700;color:var(--color-heading);margin:0 0 6px;display:flex;align-items:center;gap:var(--space-2)}.privacy-right h4 .num{font-size:10px;letter-spacing:.1em;color:var(--color-accent);font-weight:800;background:color-mix(in srgb,var(--color-accent) 12%,transparent);padding:2px 7px;border-radius:5px}.privacy-right p{font-size:13px;line-height:1.6;color:var(--color-dark-60);margin:0}.privacy-cta{background:var(--color-brand-blue);border-radius:18px;padding:36px 40px;color:var(--color-white);display:grid;grid-template-columns:1fr auto;gap:var(--space-8);align-items:center;margin-top:var(--space-16);position:relative;overflow:hidden}.privacy-cta:after{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--color-platforms) 30%,transparent) 0%,transparent 70%);pointer-events:none}.privacy-cta__title{font-size:22px;font-weight:800;letter-spacing:-.01em;margin:0 0 8px;color:var(--color-white)}.privacy-cta__lead{font-size:14.5px;color:#fffc;line-height:1.6;max-width:480px;margin:0}.privacy-cta .privacy-cta__btn{position:relative;z-index:1;display:inline-flex;align-items:center;gap:var(--space-2);background:var(--color-accent);color:var(--color-white);border:none;border-radius:var(--radius-button);padding:13px 22px;font-family:var(--font-family);font-size:14px;font-weight:700;cursor:pointer;text-decoration:none;transition:transform var(--duration-fast) var(--ease-out);white-space:nowrap}.privacy-cta .privacy-cta__btn:hover{transform:translateY(-1px);text-decoration:none}@media (max-width: 1024px){.privacy-hero__inner,.privacy-body__inner{grid-template-columns:1fr;gap:var(--space-8);padding-left:var(--space-8);padding-right:var(--space-8)}.privacy-toc-collapse{position:static}.privacy-cta{grid-template-columns:1fr}}@media (max-width: 720px){.privacy-hero{padding:48px 0 64px}.privacy-content>h2{font-size:24px}.privacy-rights-grid{grid-template-columns:1fr}.privacy-cta{padding:28px}.privacy-intro{grid-template-columns:1fr;gap:var(--space-4)}.privacy-toc-collapse>summary{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;font-family:var(--font-family);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-ink);cursor:pointer;list-style:none;background:var(--color-white);border:1px solid var(--color-dark-20);border-radius:var(--radius-md);margin-bottom:var(--space-2)}.privacy-toc-collapse>summary::-webkit-details-marker{display:none}.privacy-toc-collapse>summary:after{content:"\25be";font-size:14px;color:var(--color-dark-60)}.privacy-toc-collapse[open]>summary{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom:none}.privacy-toc-collapse[open]>summary:after{content:"\25b4"}.privacy-toc-collapse>.privacy-toc{border:1px solid var(--color-dark-20);border-top:none;border-radius:0 0 var(--radius-md) var(--radius-md);padding:8px 0;background:var(--color-white)}.privacy-toc__label{display:none}}@media print{.privacy-toc,.privacy-toc-collapse,.privacy-cta,.site-footer__nav{display:none!important}.privacy-body__inner{display:block;padding:0}.privacy-content{max-width:100%}.privacy-hero{background:#fff;color:#000;padding:24px 0}.privacy-hero__title,.privacy-hero__lead,.privacy-hero__eyebrow{color:#000}.privacy-hero__meta{background:#f5f5f5;border-color:#ccc;-webkit-backdrop-filter:none;backdrop-filter:none}.privacy-hero__meta dt,.privacy-hero__meta dd{color:#000}}
