@font-face{font-family:newsreader;src:url(/_next/static/media/40164bd1114cf93c-s.woff2) format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:newsreader;src:url(/_next/static/media/20a89129d86db5a3-s.woff2) format("woff2");font-display:swap;font-weight:600;font-style:normal}@font-face{font-family:newsreader Fallback;src:local("Arial");ascent-override:76.71%;descent-override:27.66%;line-gap-override:0.00%;size-adjust:95.82%}.__className_999d08{font-family:newsreader,newsreader Fallback}.__variable_999d08{--font-newsreader:"newsreader","newsreader Fallback"}@font-face{font-family:inter;src:url(/assets/fonts/inter-latin-400-700-e85d1dc9.woff2) format("woff2");font-display:swap;font-weight:400 700;font-style:normal}@font-face{font-family:inter Fallback;src:local("Arial");ascent-override:89.79%;descent-override:22.36%;line-gap-override:0%;size-adjust:107.89%}:root{--font-inter:"inter","inter Fallback"}

/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:host,:root{--spacing:.25rem;--container-xs:20rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--radius-sm:var(--radius-sm);--radius-md:var(--radius-md);--radius-lg:var(--radius-lg);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-body);--default-mono-font-family:var(--font-mono-family)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.absolute,.sr-only{position:absolute}.fixed{position:fixed}.static{position:static}.isolate{isolation:isolate}.z-50{z-index:50}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.hidden{display:none}.inline-flex{display:inline-flex}.size-2\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.w-fit{width:fit-content}.max-w-xs{max-width:var(--container-xs)}.grow{flex-grow:1}.origin-\(--transform-origin\){transform-origin:var(--transform-origin)}.translate-y-\[calc\(-50\%-2px\)\]{--tw-translate-y:calc(-50% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-45{rotate:45deg}.resize{resize:both}.items-center{align-items:center}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.rounded-\[2px\]{border-radius:2px}.rounded-md{border-radius:var(--radius-md)}.bg-foreground{background-color:var(--foreground)}.fill-foreground{fill:var(--foreground)}.px-3{padding-inline:calc(var(--spacing) * 3)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-background{color:var(--background)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.paused{animation-play-state:paused}.running{animation-play-state:running}.has-data-\[slot\=kbd\]\:pr-1\.5:has([data-slot=kbd]){padding-right:calc(var(--spacing) * 1.5)}.data-closed\:animate-out[data-closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-closed\:fade-out-0[data-closed]{--tw-exit-opacity:0}.data-closed\:zoom-out-95[data-closed]{--tw-exit-scale:.95}.data-open\:animate-in[data-open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-open\:fade-in-0[data-open]{--tw-enter-opacity:0}.data-open\:zoom-in-95[data-open]{--tw-enter-scale:.95}.data-\[side\=bottom\]\:top-1[data-side=bottom]{top:calc(var(--spacing) * 1)}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=inline-end\]\:top-1\/2\![data-side=inline-end]{top:50%!important}.data-\[side\=inline-end\]\:-left-1[data-side=inline-end]{left:calc(var(--spacing) * -1)}.data-\[side\=inline-end\]\:-translate-y-1\/2[data-side=inline-end]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=inline-end\]\:slide-in-from-left-2[data-side=inline-end]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=inline-start\]\:top-1\/2\![data-side=inline-start]{top:50%!important}.data-\[side\=inline-start\]\:-right-1[data-side=inline-start]{right:calc(var(--spacing) * -1)}.data-\[side\=inline-start\]\:-translate-y-1\/2[data-side=inline-start]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=inline-start\]\:slide-in-from-right-2[data-side=inline-start]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=left\]\:top-1\/2\![data-side=left]{top:50%!important}.data-\[side\=left\]\:-right-1[data-side=left]{right:calc(var(--spacing) * -1)}.data-\[side\=left\]\:-translate-y-1\/2[data-side=left]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=right\]\:top-1\/2\![data-side=right]{top:50%!important}.data-\[side\=right\]\:-left-1[data-side=right]{left:calc(var(--spacing) * -1)}.data-\[side\=right\]\:-translate-y-1\/2[data-side=right]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=top\]\:-bottom-2\.5[data-side=top]{bottom:calc(var(--spacing) * -2.5)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}:is(.\*\*\:data-\[slot\=kbd\]\:relative *)[data-slot=kbd]{position:relative}:is(.\*\*\:data-\[slot\=kbd\]\:isolate *)[data-slot=kbd]{isolation:isolate}:is(.\*\*\:data-\[slot\=kbd\]\:z-50 *)[data-slot=kbd]{z-index:50}:is(.\*\*\:data-\[slot\=kbd\]\:rounded-sm *)[data-slot=kbd]{border-radius:var(--radius-sm)}.data-\[state\=delayed-open\]\:animate-in[data-state=delayed-open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=delayed-open\]\:fade-in-0[data-state=delayed-open]{--tw-enter-opacity:0}.data-\[state\=delayed-open\]\:zoom-in-95[data-state=delayed-open]{--tw-enter-scale:.95}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}:root{color-scheme:light;--theme-background:#fafafa;--theme-surface:#fff;--theme-surface-elevated:#f5f5f7;--theme-text:#171717;--theme-text-muted:#4d4d4d;--theme-text-subtle:#5c687e;--theme-primary:#7c5ebf;--theme-primary-text:#fff;--theme-accent:#c4a8ff;--theme-link:#6048a3;--theme-link-hover:#3d2670;--theme-border:#ebebeb;--theme-focus-ring:#7c5ebf;--theme-success:#0f766e;--theme-warning:#a16207;--theme-danger:#b42318;--theme-shadow:0 18px 48px #17171714;--theme-shadow-soft:0 1px 2px #17171714;--font-body:var(--font-inter),ui-sans-serif,system-ui,sans-serif;--font-display-family:var(--font-newsreader),Georgia,serif;--font-mono-family:ui-monospace,SFMono-Regular,Menlo,monospace;--measure:68ch;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-full:9999px;--space-section:clamp(4rem,9vw,6rem);--motion-fast:.12s;--motion-base:.18s;--motion-slow:.42s;--motion-ease:cubic-bezier(.2,0,0,1);--motion-linear-like:cubic-bezier(.25,.46,.45,.94);--background:var(--theme-background);--foreground:var(--theme-text);--card:var(--theme-surface);--card-foreground:var(--theme-text);--popover:var(--theme-surface);--popover-foreground:var(--theme-text);--muted:var(--theme-surface-elevated);--muted-foreground:var(--theme-text-muted);--border:var(--theme-border);--input:var(--theme-border);--ring:var(--theme-focus-ring);--destructive:var(--theme-danger);--brand-primary:#7c5ebf;--brand-primary-fg:#fff;--brand-accent:var(--theme-primary);--brand-surface:var(--theme-surface);--brand-text:var(--theme-text);--brand-muted:var(--theme-text-muted);--success:var(--theme-success);--warning:var(--theme-warning);--danger:var(--theme-danger)}@media (prefers-color-scheme:dark){:root{color-scheme:dark;--theme-background:#0a0612;--theme-surface:#14092a;--theme-surface-elevated:#1e0f3d;--theme-text:#e4e4ec;--theme-text-muted:#c4b5e8;--theme-text-subtle:#9a8eb8;--theme-primary:#7c5ebf;--theme-primary-text:#fff;--theme-accent:#c4a8ff;--theme-link:#c4a8ff;--theme-link-hover:#e4e4ec;--theme-border:#2a1a4d;--theme-focus-ring:#c4a8ff;--theme-success:#7dd3c7;--theme-warning:#f8c96c;--theme-danger:#ffb4ab;--theme-shadow:0 18px 48px #00000052;--theme-shadow-soft:0 1px 2px #0000005c;--brand-accent:var(--theme-primary);--brand-surface:var(--theme-surface);--brand-text:var(--theme-text);--brand-muted:var(--theme-text-muted)}}.light{--theme-background:#fafafa;--theme-surface:#fff;--theme-surface-elevated:#f5f5f7;--theme-text:#171717;--theme-text-muted:#4d4d4d;--theme-text-subtle:#5c687e;--theme-primary:#7c5ebf;--theme-primary-text:#fff;--theme-accent:#c4a8ff;--theme-link:#6048a3;--theme-link-hover:#3d2670;--theme-border:#ebebeb;--theme-focus-ring:#7c5ebf;--theme-success:#0f766e;--theme-warning:#a16207;--theme-danger:#b42318;--theme-shadow:0 18px 48px #17171714;--theme-shadow-soft:0 1px 2px #17171714}.dark{color-scheme:dark;--theme-background:#0a0612;--theme-surface:#14092a;--theme-surface-elevated:#1e0f3d;--theme-text:#e4e4ec;--theme-text-muted:#c4b5e8;--theme-text-subtle:#9a8eb8;--theme-primary:#7c5ebf;--theme-primary-text:#fff;--theme-accent:#c4a8ff;--theme-link:#c4a8ff;--theme-link-hover:#e4e4ec;--theme-border:#2a1a4d;--theme-focus-ring:#c4a8ff;--theme-success:#7dd3c7;--theme-warning:#f8c96c;--theme-danger:#ffb4ab;--theme-shadow:0 18px 48px #00000052;--theme-shadow-soft:0 1px 2px #0000005c}[data-brand=jhinx],[data-brand=omakase]{--brand-primary:#7c5ebf;--brand-primary-fg:#fff;--brand-accent:var(--theme-primary);--brand-surface:var(--theme-surface);--brand-text:var(--theme-text);--brand-muted:var(--theme-text-muted)}[data-brand=kanade]{--brand-primary:#cf7f47;--brand-primary-fg:#070807;--brand-accent:#5aa8c9;--brand-surface:#101614;--brand-text:#f2f1e9;--brand-muted:#a6aaa2}[data-brand=shirase]{--brand-primary:#6b46c1;--brand-primary-fg:#fff;--brand-accent:#d4a24c;--brand-surface:#151222;--brand-text:#f7f2e8;--brand-muted:#b8adc8}:root{--nav-focus-ring:var(--theme-focus-ring);--nav-focus-width:2px;--nav-focus-offset:3px;--nav-active-bg:var(--theme-primary)}@supports (color:color-mix(in lab,red,red)){:root{--nav-active-bg:color-mix(in srgb,var(--theme-primary) 12%,transparent)}}:root{--nav-hover-bg:var(--theme-text)}@supports (color:color-mix(in lab,red,red)){:root{--nav-hover-bg:color-mix(in srgb,var(--theme-text) 6%,transparent)}}:root{--nav-hover-border:var(--theme-text)}@supports (color:color-mix(in lab,red,red)){:root{--nav-hover-border:color-mix(in srgb,var(--theme-text) 12%,var(--theme-border))}}:root{--nav-disabled-opacity:.45}:where(a,button,input,textarea,select,[tabindex]):focus{outline:none}:where(a,button,input,textarea,select,[tabindex]):focus-visible{outline:var(--nav-focus-width) solid var(--nav-focus-ring);outline-offset:var(--nav-focus-offset)}:where(a,button,input,textarea,select){transition:color var(--motion-fast) var(--motion-linear-like),background-color var(--motion-fast) var(--motion-linear-like),border-color var(--motion-fast) var(--motion-linear-like),box-shadow var(--motion-fast) var(--motion-linear-like),transform var(--motion-fast) var(--motion-linear-like)}:where([aria-disabled=true]),:where(button,input,textarea,select):disabled{cursor:not-allowed;opacity:var(--nav-disabled-opacity)}.archive-record,.back-link,.blog-row,.button,.icon-button,.interactive,.nav-command,.preview-control,.project-row,.service-ledger-row,.site-footer a,.site-header nav a,.track-list button{border-radius:var(--radius-md)}.interactive[data-active=true],.preview-control[data-active=true],.site-header nav a[aria-current=page]{background:var(--nav-active-bg);color:var(--theme-text)}*{box-sizing:border-box;border-color:var(--theme-border)}html{scroll-behavior:smooth}body,html{min-height:100%;overflow-x:clip}body{background:repeating-linear-gradient(180deg,#ffffff05 0 1px,transparent 1px 5px),linear-gradient(120deg,var(--theme-primary),transparent 26rem),linear-gradient(240deg,var(--theme-accent),transparent 30rem),var(--theme-background);margin:0}@supports (color:color-mix(in lab,red,red)){body{background:repeating-linear-gradient(180deg,#ffffff05 0 1px,transparent 1px 5px),linear-gradient(120deg,color-mix(in srgb,var(--theme-primary) 10%,transparent),transparent 26rem),linear-gradient(240deg,color-mix(in srgb,var(--theme-accent) 8%,transparent),transparent 30rem),var(--theme-background)}}body{color:var(--theme-text);font-family:var(--font-body);letter-spacing:0;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}body>*{position:relative}.site-footer,main{z-index:1;position:relative}.site-atmosphere{--site-atmosphere-position:center;--site-atmosphere-size:cover;z-index:0;background:url(/generated/brief-24/world/observatory-garden.webp) var(--site-atmosphere-position) /var(--site-atmosphere-size) no-repeat,radial-gradient(ellipse at 50% 38%,#38126e6b,transparent 56%),var(--theme-background);opacity:.42;pointer-events:none;position:fixed;inset:0;overflow:hidden}.site-atmosphere:after{background:repeating-linear-gradient(180deg,#ffffff0b 0 1px,transparent 1px 6px),radial-gradient(circle at 48% 28%,#902aff29,transparent 32%),linear-gradient(180deg,#04020847,var(--theme-background) 92%);content:"";position:absolute;inset:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}::selection{background:var(--theme-primary)}@supports (color:color-mix(in lab,red,red)){::selection{background:color-mix(in srgb,var(--theme-primary) 36%,transparent)}}.font-display,h1,h2,h3{font-family:var(--font-display-family);letter-spacing:0}h1,h2,h3,p{text-wrap:pretty}.jhinx-logo{align-items:center;gap:10px;display:inline-flex}.jhinx-logo__mark{border-radius:3px}.jhinx-logo__text{color:var(--theme-text);font-size:14px;font-weight:650}.site-header{z-index:40;border-bottom:1px solid var(--theme-border);background:var(--theme-background);position:sticky;top:0}@supports (color:color-mix(in lab,red,red)){.site-header{background:color-mix(in srgb,var(--theme-background) 88%,transparent)}}.site-header{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.archive-ledger,.archive-stories,.concept-grid,.concept-hero,.concept-index__hero,.concept-note,.concept-proof,.concept-showcase,.concept-split,.concept-switcher,.home-lower-archive,.home-process-story,.home-service-ledger,.home-toolchain-spotlight,.ops-grid,.ops-hero,.ops-projects,.page-shell,.proof-rail,.section-band,.site-footer__inner,.site-header__inner{width:min(1120px,100% - 32px);margin-inline:auto}.site-header__inner{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:20px;min-height:64px;display:grid}.site-header nav{justify-content:center;gap:2px;display:flex}.icon-button,.nav-command,.site-header button,.site-header nav a{border-radius:var(--radius-full);min-height:36px;color:var(--theme-text-muted);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:14px;line-height:1;display:inline-flex}.icon-button:hover,.nav-command:hover,.site-header button:hover,.site-header nav a:hover{border-color:var(--nav-hover-border);background:var(--nav-hover-bg);color:var(--theme-text)}.site-header__actions{align-items:center;gap:4px;display:flex}.cursor-eye{pointer-events:none;filter:drop-shadow(0 0 14px #8f32ff38);flex:none;width:84px;height:46px;margin-left:8px;display:block}@media (max-width:640px){.cursor-eye{width:64px;height:36px}}.project-lead__copy>p:not(.mono-label){color:var(--theme-text-muted);margin:28px 0 0;font-size:1.04rem;line-height:1.7}.service-visual--editorial p:not(.mono-label){color:#f3eef9c7;max-width:54ch}@media (max-width:900px){.services-editorial .service-group__header .mono-label{order:2}}.button{border-radius:var(--radius-full);border:1px solid #0000;justify-content:center;align-items:center;gap:9px;min-height:42px;padding:0 18px;font-size:14px;font-weight:650;display:inline-flex;position:relative;overflow:hidden}.button.primary{background:var(--theme-primary);color:var(--theme-primary-text)}.button.primary:after{content:"";opacity:0;background:linear-gradient(110deg,#0000 20%,#ffffff47 42%,#0000 58%);position:absolute;inset:0;transform:translate(-120%)}.button.primary:hover:after{opacity:1;transition:transform var(--motion-slow) var(--motion-ease),opacity var(--motion-base);transform:translate(120%)}.button.secondary{border-color:var(--theme-border);background:var(--theme-surface);color:var(--theme-text)}.button.secondary:hover{border-color:var(--theme-text-muted)}.mono-label{color:var(--theme-text-subtle);font-family:var(--font-mono-family);letter-spacing:0;text-transform:uppercase;font-size:12px}.not-found h1{max-width:870px;color:var(--theme-text);margin:14px 0 0;font-size:clamp(3.25rem,7vw,4rem);font-weight:600;line-height:1}.archive-hero__copy p:not(.mono-label),.concept-hero__copy p:not(.mono-label),.concept-index__hero p:not(.mono-label),.home-archive-hero .hero-section__copy p:not(.mono-label),.ops-hero__copy p:not(.mono-label){max-width:var(--measure);color:var(--theme-text-muted);margin:22px 0 0;font-size:1.06rem;line-height:1.72}.home-archive-hero .hero-section__copy p:not(.mono-label){color:#fffffff0;font-weight:520}.home-archive-hero .button.secondary{color:#fffffff0;background:#08030fc7;border-color:#ffffff38}.hero-built-with .mono-label{color:#ffffffb8;margin:0;font-size:.72rem}.home-process-story p:not(.mono-label){max-width:var(--measure);color:var(--theme-text-muted);line-height:1.66}.section-band.editorial p:not(.mono-label),.section-heading p:not(.mono-label){max-width:var(--measure);color:var(--theme-text-muted);line-height:1.65}.page-shell{padding:clamp(3.5rem,8vw,6rem) 0}.page-shell.detail{max-width:1120px}.service-visual p:not(.mono-label){color:var(--theme-text-muted);line-height:1.65}.service-group__header p:not(.mono-label){color:var(--theme-text-muted);margin:0;line-height:1.55}.preview-page>p:not(.mono-label){max-width:var(--measure);color:var(--theme-text-muted);margin:18px 0 0;line-height:1.65}@media (max-width:920px){.not-found h1{font-size:clamp(2.65rem,13vw,3.3rem)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.showcase-heading p:not(.mono-label){max-width:68ch;color:var(--theme-text-muted);margin:0;font-size:1rem;line-height:1.65}.home-ops-brief__copy p:not(.mono-label){max-width:68ch;color:var(--theme-text-muted);margin:0;font-size:1rem;line-height:1.7}.page-shell.project-story{padding-top:clamp(1.35rem,3vw,2.15rem);padding-bottom:clamp(3.5rem,8vw,6rem)}.project-story__intro>p:not(.mono-label){max-width:38rem;color:var(--theme-text-muted);margin:22px 0 0;font-size:1.05rem;line-height:1.68}.project-story__signal>*{margin:0}.project-story__chapters>.mono-label{margin:0 0 1rem}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}html{scroll-padding-top:90px}body{background:#0c0b10;color:#efeae2}body:after,body:before{display:none}.dark,:root{--theme-background:#0c0b10;--theme-surface:#151119;--theme-surface-elevated:#211b2b;--theme-text:#efeae2;--theme-text-muted:#b9acd0;--theme-text-subtle:#aaa3b2;--theme-border:#302a39;--font-display:var(--font-newsreader),Georgia,serif}.page-shell{padding:65px 32px 80px}.light body{background:#f3efe8;color:#2a2132}.light .page-shell{--theme-background:#f3efe8;--theme-text:#2a2132;--theme-text-muted:#54465e;--theme-text-subtle:#665872;--theme-border:#d4c9dc;--theme-surface:#e9e2ed}@media(max-width:760px){.page-shell{padding:36px 22px 55px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.page-shell{width:100%;max-width:1312px}.project-story__intro>p:not(.mono-label){font-size:14px;line-height:1.9}.project-story .button{border-radius:0;font-size:11px;padding:13px 18px}.project-story .button.primary{background:#ded3e7;color:#24172e;border-color:#ded3e7}.light .obs-service-cover .mono-label{color:#c6b9ce}.light .page-shell{--theme-accent:#765a8a}.story-feature p:not(.mono-label){font-size:14px;line-height:1.9;color:var(--theme-text-subtle);margin:16px 0;max-width:440px}.atelier-scroll-picture{position:absolute;inset:0;overflow:hidden}.atelier-scroll-picture[data-motion=active]>img,.atelier-scroll-picture[data-motion=active]>video{transform:translateY(var(--picture-drift,0)) scale(1.07)}.atelier-motion-toggle{display:grid;place-items:center;background:none;border:0;color:var(--room-ink);padding:8px;cursor:pointer}.atelier-motion-toggle[aria-pressed=true]{opacity:.55}.atelier-motion-toggle:disabled{cursor:default}@media(max-width:760px){.atelier-motion-toggle{padding:6px}}@media(prefers-reduced-motion:reduce){.atelier-scroll-picture>img{transform:none!important}}.dark,:root{--room-paper:#151218;--room-ink:#eee8dd;--room-muted:#b4a9b5;--room-line:#3b323d;--room-accent:#c8aac7;--theme-background:var(--room-paper);--theme-surface:#211b24;--theme-surface-elevated:#2b2330;--theme-text:var(--room-ink);--theme-text-muted:#c9bbcb;--theme-text-subtle:var(--room-muted);--theme-border:var(--room-line)}body{background:var(--room-paper);color:var(--room-ink)}.light{--room-paper:#eee8dd;--room-ink:#2b2230;--room-muted:#655766;--room-line:#c7b9c6;--room-accent:#795372}.light body{background:var(--room-paper);color:var(--room-ink)}.light .page-shell{--theme-background:var(--room-paper);--theme-text:var(--room-ink);--theme-text-muted:#594a5e;--theme-text-subtle:var(--room-muted);--theme-border:var(--room-line);--theme-surface:#e5dce5}.page-shell{max-width:1440px;padding:65px 60px 80px}:focus-visible{outline:2px solid var(--room-accent);outline-offset:5px}::selection{background:#bca2bf;color:#1d1720}@media(max-width:1050px){.page-shell{padding-inline:32px}}@media(max-width:760px){.page-shell{padding:37px 22px 55px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}.dark,.light,:root{--pf-paper:#f5f5f0;--pf-ink:#202521;--pf-muted:#59645e;--pf-line:#cdd2c9;--pf-blue:#244ac7;--theme-background:#f5f5f0;--theme-surface:#ebeee7;--theme-surface-elevated:#fff;--theme-text:#202521;--theme-text-muted:#59645e;--theme-text-subtle:#59645e;--theme-border:#cdd2c9;--room-paper:#f5f5f0;--room-ink:#202521;--room-muted:#59645e;--room-line:#cdd2c9;--room-accent:#244ac7;--personal-bg:#f5f5f0;--personal-ink:#202521;--personal-muted:#59645e;--personal-line:#cdd2c9;--personal-accent:#244ac7;--background:#f5f5f0;--foreground:#202521;--font-body:var(--font-inter),Arial,sans-serif}body{background:var(--pf-paper);color:var(--pf-ink)}.pf-footer,.pf-header,.pf-main,body{font-family:var(--font-inter),Arial,sans-serif}.pf-footer,.pf-header,.pf-main{letter-spacing:0}.pf-footer h2,.pf-main h1,.pf-main h2,.pf-main h3{font-family:var(--font-inter),Arial,sans-serif;font-weight:500;letter-spacing:-.055em;color:inherit;margin:0}.pf-main h1{font-size:clamp(48px,6.3vw,94px);line-height:1.04}.pf-footer h2,.pf-main h2{font-size:clamp(32px,3.5vw,50px);line-height:1.12}.pf-main h3{font-size:27px;line-height:1.18;letter-spacing:-.04em}.pf-main p{line-height:1.65}.pf-footer a,.pf-footer a:hover,.pf-header a,.pf-main a,.pf-main a:hover{text-decoration:none}.pf-footer :focus-visible,.pf-header :focus-visible,.pf-main :focus-visible{outline:3px solid var(--pf-blue);outline-offset:5px}.pf-wrap{max-width:1440px;padding-inline:clamp(22px,5.3vw,88px);margin-inline:auto}.pf-eyebrow{font-size:11px!important;line-height:1.5!important;font-weight:600;letter-spacing:.105em;text-transform:uppercase;color:var(--pf-muted);margin:0}.pf-header{position:sticky;top:0;z-index:70;background:var(--pf-paper);border-bottom:1px solid var(--pf-line)}.pf-header-inner{max-width:1440px;margin:auto;padding:0 clamp(22px,5.3vw,88px);height:88px;display:flex;align-items:center;gap:34px}.pf-header .jhinx-logo{display:flex;align-items:center;gap:10px}.pf-header .jhinx-logo__text{font-size:21px;letter-spacing:-.045em;color:var(--pf-ink)}.pf-header nav{display:flex;align-items:center;gap:32px;margin-left:auto;font-size:14px}.pf-header nav a{padding-block:12px}.pf-header nav a[aria-current=page]{color:var(--pf-blue)}.pf-github,.pf-nav-contact{display:flex;align-items:center;gap:8px}.pf-github{border-left:1px solid var(--pf-line);padding-left:26px;font-size:13px;min-height:44px}.pf-menu{display:none}.pf-skip{position:absolute;left:22px;top:-100px;padding:12px;color:white}.pf-skip:focus{top:10px}.pf-hero{padding-top:42px;padding-bottom:67px}.pf-hero-top{display:flex;justify-content:space-between;gap:24px}.pf-hero-top>span{font-size:12px;color:var(--pf-muted)}.pf-hero-heading{margin-top:66px;display:grid;grid-template-columns:1fr 300px;gap:40px;align-items:end}.pf-hero h1{font-size:clamp(50px,5.7vw,82px)}.pf-hero h1 span,.pf-route-hero h1 span{color:var(--pf-blue)}.pf-hero-heading>p{font-size:16px;color:var(--pf-muted);margin:0 0 3px}.pf-hero-bottom{display:flex;align-items:center;gap:42px;margin-top:42px}.pf-hero-bottom>p{line-height:1.65;margin:0}.pf-hero-bottom>p,.pf-hero-note{font-size:12px;color:var(--pf-muted)}.pf-hero-note{margin-left:auto;line-height:1.6;text-align:right}.pf-button{justify-content:space-between;gap:30px;padding:14px 20px;background:var(--pf-ink);color:white!important;border:1px solid var(--pf-ink);transition:background .2s}.pf-button,.pf-text-link{display:inline-flex;align-items:center;font-size:13px;font-weight:500}.pf-text-link{gap:10px;min-height:40px}.pf-text-link:hover{color:var(--pf-blue)}.pf-section-heading{display:flex;justify-content:space-between;align-items:start;gap:40px;margin-bottom:32px}.pf-section-heading>.pf-eyebrow{padding-top:11px}.pf-section-heading>p:not(.pf-eyebrow){max-width:380px;font-size:15px;color:var(--pf-muted);margin:0}.pf-section-heading h2{margin-top:22px}.pf-featured{padding-bottom:90px;scroll-margin-top:110px}.pf-work-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px 32px}.pf-card{min-width:0}.pf-card-image{display:block}.pf-card-image,.pf-visual{position:relative;overflow:hidden}.pf-visual{aspect-ratio:1.5;display:flex;align-items:center;justify-content:center;background:#e2e7e0}.pf-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .5s ease}.pf-visual-web{padding:26px 26px 0;background:#dce4dd;align-items:flex-start}.pf-visual-web img{height:auto;min-height:100%;object-fit:cover;box-shadow:0 12px 32px #15291b18}.pf-visual-automation{padding:26px 26px 0;background:#e3e7ed;align-items:flex-start}.pf-visual-automation img{height:auto;min-height:100%;object-fit:cover;box-shadow:0 12px 32px #15291b18}.pf-image-arrow{position:absolute;right:16px;bottom:16px;width:42px;height:42px;display:grid;place-items:center;background:var(--pf-paper);color:var(--pf-ink);border:1px solid #20252126}.pf-card-meta{display:flex;justify-content:space-between;gap:20px;margin:20px 0 12px;font-size:10px;line-height:1.5;text-transform:uppercase;letter-spacing:.055em;color:var(--pf-muted)}.pf-card-meta>span:last-child{text-align:right}.pf-card h3{max-width:530px}.pf-card>p{max-width:540px;font-size:14px;margin:14px 0 17px}.pf-card>p,.pf-stack{color:var(--pf-muted)}.pf-stack{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:11px}.pf-stack span{padding-top:8px}.pf-capabilities,.pf-stack span{border-top:1px solid var(--pf-line)}.pf-capabilities{background:#e8ece4;border-bottom:1px solid var(--pf-line);padding:70px 0 78px}.pf-capabilities .pf-section-heading h2{margin:0;width:66%}.pf-areas{display:grid;grid-template-columns:repeat(3,1fr);margin-top:56px}.pf-areas article{padding:0 30px;border-left:1px solid #bfc7bc;display:flex;flex-direction:column}.pf-areas article:first-child{padding-left:0;border:0}.pf-areas article:last-child{padding-right:0}.pf-number{font-size:12px;color:var(--pf-muted);margin-bottom:32px}.pf-areas h3{max-width:290px}.pf-areas p{font-size:14px;color:var(--pf-muted);margin:20px 0 26px;flex:1}.pf-areas small{font-size:11px;color:var(--pf-muted);margin-bottom:20px}.pf-section{padding-top:85px;padding-bottom:90px}.pf-visual-api{background:#263b32;color:#edf3e9}.pf-visual-mcp{background:#dedff1;color:#2b3262}.pf-contract{width:76%;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.pf-contract>span{font-size:12px;letter-spacing:.08em}.pf-contract>div{display:flex;align-items:center;gap:32px;margin:36px 0}.pf-contract b,.pf-contract strong{font-size:clamp(38px,5vw,72px);font-weight:400;line-height:1}.pf-contract b{color:#d8beb0}.pf-contract strong{color:#cbefac}.pf-contract i{font-size:30px;font-style:normal}.pf-contract>p{font-size:13px;margin:0 0 22px}.pf-contract>small{font-size:10px;opacity:.85}.pf-contract .pf-code{display:flex;flex-direction:column;align-items:start;gap:14px;margin:30px 0}.pf-code code{font-size:clamp(16px,2vw,27px);padding:8px 0;border-bottom:1px solid #8085a4}.pf-flow{width:75%;font-size:13px}.pf-flow>span{display:block;font-size:11px;letter-spacing:.07em;margin-bottom:22px}.pf-flow>div{border-bottom:1px solid #b1bdb0;display:flex;gap:20px;padding:11px 0}.pf-flow>div>span{margin-left:auto}.pf-flow>small{display:block;margin-top:20px;color:var(--pf-muted);font-size:10px}.pf-about-strip,.pf-practice{display:grid;grid-template-columns:1fr 2fr;gap:40px;padding-top:65px;padding-bottom:75px;border-top:1px solid var(--pf-line)}.pf-about-strip>div>p,.pf-practice>div>p{font-size:16px;max-width:640px;color:var(--pf-muted);margin:25px 0}.pf-practice-links{margin-top:32px}.pf-practice-links a{border-top:1px solid var(--pf-line);display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 0;font-size:18px;letter-spacing:-.025em}.pf-practice-links a>span{font-size:12px;color:var(--pf-muted);letter-spacing:0}.pf-about-strip{padding-bottom:95px}.pf-footer{background:#202a23;color:#f1f4eb;padding:65px 0 0;scroll-margin-top:90px}.pf-footer .pf-eyebrow{color:#c2cec0}.pf-contact{display:grid;grid-template-columns:1.3fr 1fr;gap:100px;padding:30px 0 65px}.pf-contact h2{font-size:clamp(36px,4.4vw,64px)}.pf-contact p{font-size:15px;line-height:1.65;max-width:370px;color:#c2cec0;margin:0 0 24px}.pf-footer .pf-button{background:#e5efcf;color:#202a23!important;border-color:#e5efcf}.pf-footer .pf-button:hover{background:white}.pf-footer-bottom{border-top:1px solid #52604f;display:flex;justify-content:space-between;align-items:center;gap:30px;padding:24px 0;font-size:11px;color:#c2cec0}.pf-footer-bottom>div{display:flex;flex-wrap:wrap;gap:24px}.pf-footer-bottom a{padding-block:10px}.pf-route-hero{padding-top:65px;padding-bottom:58px}.pf-route-hero>.pf-eyebrow{margin:0 0 28px}.pf-route-hero>h1{max-width:1000px}.pf-route-hero>p:not(.pf-eyebrow){max-width:650px;margin:28px 0 0;font-size:18px;color:var(--pf-muted)}.pf-index{padding-bottom:100px}.pf-filters{display:flex;border-top:1px solid var(--pf-line);border-bottom:1px solid var(--pf-line);gap:10px;padding:15px 0;flex-wrap:wrap}.pf-filters button{display:flex;gap:22px;align-items:center;background:transparent;padding:13px 16px;border:0;color:var(--pf-muted);font:inherit;font-size:13px;cursor:pointer}.pf-filters button[aria-pressed=true]{background:var(--pf-ink);color:white}.pf-filters button>span{font-size:10px}.pf-result{font-size:11px;color:var(--pf-muted);margin:20px 0 30px}.pf-evidence{border-left:3px solid var(--pf-blue);padding-left:25px}.pf-about{padding-bottom:90px}.pf-about-columns{display:grid;grid-template-columns:1fr 1fr;gap:90px;border-top:1px solid var(--pf-line);padding-top:50px}.pf-about-columns h2{font-size:32px;margin-bottom:22px}.pf-about-columns dd,.pf-about-columns p{font-size:16px;color:var(--pf-muted);line-height:1.75}.pf-about-columns p{margin:0 0 24px}.pf-about-columns dt{font-size:11px;text-transform:uppercase;letter-spacing:.07em;margin-bottom:8px}.pf-about-columns dd{margin:0 0 25px}.pf-about-columns dl{margin-bottom:42px}.pf-lab{padding-bottom:85px}.pf-lab-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;padding:45px 0;border-block:1px solid var(--pf-line)}.pf-lab-grid h2{font-size:24px}.pf-lab-grid p{font-size:14px;color:var(--pf-muted);margin:18px 0 0}.pf-lab-note{padding:48px 0}.pf-lab-note>p:not(.pf-eyebrow){max-width:650px;color:var(--pf-muted)}@media(hover:hover){.pf-card-image:hover img{transform:translateY(-4px)}.pf-card-image:hover .pf-image-arrow{background:var(--pf-ink);color:white}}@media(min-width:1800px){.pf-header-inner,.pf-wrap{max-width:1600px}.pf-hero h1{font-size:94px}}@media(max-width:1100px){.pf-hero-heading{grid-template-columns:1fr}.pf-hero-heading>p{max-width:550px}.pf-hero h1{font-size:clamp(55px,7.5vw,80px)}.pf-card-meta{flex-direction:column;gap:4px}.pf-card-meta>span:last-child{text-align:left}.pf-contact{gap:45px}.pf-areas article{padding-inline:20px}.pf-header nav,.pf-header-inner{gap:20px}}@media(max-width:760px){.pf-header-inner{height:72px;gap:17px}.pf-header nav{display:none;position:absolute;left:0;right:0;top:72px;background:var(--pf-paper);border-bottom:1px solid var(--pf-line);padding:22px;flex-direction:column;align-items:stretch;gap:0}.pf-header nav.is-open{display:flex}.pf-header nav a{padding:15px 8px}.pf-github{margin-left:auto;padding-left:0;border:0}.pf-github>span{display:none}.pf-menu{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--pf-line);background:transparent;color:var(--pf-ink)}.pf-hero{padding-top:27px;padding-bottom:44px}.pf-hero-top{flex-direction:column;gap:9px}.pf-hero-top>span{font-size:11px}.pf-hero-heading{margin-top:36px;gap:26px}.pf-hero h1{font-size:clamp(43px,8.9vw,64px);letter-spacing:-.058em}.pf-hero-heading>p{font-size:15px}.pf-hero-bottom{gap:20px;margin-top:27px;align-items:start;flex-wrap:wrap}.pf-hero-bottom>p{display:none}.pf-hero-note{font-size:10px;align-self:center}.pf-section-heading{gap:22px;align-items:start}.pf-section-heading>.pf-text-link{font-size:11px;gap:4px}.pf-featured{padding-bottom:52px}.pf-work-grid{grid-template-columns:1fr;gap:38px}.pf-visual{aspect-ratio:1.45}.pf-visual-automation,.pf-visual-web{padding:17px 17px 0}.pf-card h3{font-size:26px}.pf-card-meta{flex-direction:row;gap:12px;margin-top:17px;font-size:9px}.pf-card-meta>span:last-child{text-align:right;max-width:50%}.pf-capabilities{padding:45px 0}.pf-capabilities .pf-section-heading{flex-direction:column;gap:23px}.pf-capabilities .pf-section-heading h2{width:100%}.pf-areas{grid-template-columns:1fr;margin-top:32px;gap:28px}.pf-areas article,.pf-areas article:first-child,.pf-areas article:last-child{padding:25px 0 0;border:0;border-top:1px solid #bfc7bc}.pf-number{margin-bottom:18px}.pf-areas h3{max-width:100%;font-size:25px}.pf-areas p{margin:16px 0 20px}.pf-areas small{margin-bottom:10px}.pf-section{padding-top:45px;padding-bottom:50px}.pf-section>.pf-section-heading{flex-direction:column;gap:22px}.pf-about-strip,.pf-practice{grid-template-columns:1fr;gap:24px;padding-top:35px;padding-bottom:45px}.pf-practice-links a{font-size:17px;align-items:start;flex-direction:column;gap:6px}.pf-about-strip>div>p,.pf-practice>div>p{font-size:15px}.pf-footer{padding-top:40px}.pf-contact{grid-template-columns:1fr;gap:25px;padding:25px 0 35px}.pf-footer-bottom{align-items:start;flex-direction:column;gap:10px}.pf-footer-bottom>div{gap:14px}.pf-route-hero{padding-top:38px;padding-bottom:35px}.pf-route-hero>h1{font-size:clamp(40px,9vw,62px)}.pf-route-hero>p:not(.pf-eyebrow){font-size:16px}.pf-filters{gap:6px}.pf-filters button{font-size:11px;padding:12px 10px;gap:10px}.pf-index{padding-bottom:50px}.pf-contract{width:80%}.pf-contract>div{margin:28px 0}.pf-contract b,.pf-contract strong{font-size:60px}.pf-code code{font-size:22px}.pf-about-columns{grid-template-columns:1fr;gap:35px;padding-top:32px}.pf-lab-grid{grid-template-columns:1fr;padding:30px 0;gap:28px}.pf-main{overflow-wrap:break-word}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pf-footer *,.pf-header *,.pf-main *{animation:none!important;transition:none!important}.pf-card-image:hover img{transform:none}}.dark,:root{color-scheme:dark;--pf-paper:#151a19;--pf-ink:#eff1e9;--pf-muted:#b1bab3;--pf-line:#3d4741;--pf-blue:#a7baff;--pf-section:#202823;--pf-frame:#303b34;--pf-frame-alt:#303841;--pf-action:#dce8c0;--pf-action-ink:#1b261e}.light{color-scheme:light;--pf-paper:#f5f5f0;--pf-ink:#202521;--pf-muted:#59645e;--pf-line:#cdd2c9;--pf-blue:#244ac7;--pf-section:#e8ece4;--pf-frame:#dce4dd;--pf-frame-alt:#e3e7ed;--pf-action:#202521}.dark,.light,:root{--theme-background:var(--pf-paper);--theme-surface:var(--pf-section);--theme-surface-elevated:var(--pf-section);--theme-text:var(--pf-ink);--theme-text-muted:var(--pf-muted);--theme-text-subtle:var(--pf-muted);--theme-border:var(--pf-line);--room-paper:var(--pf-paper);--room-ink:var(--pf-ink);--room-muted:var(--pf-muted);--room-line:var(--pf-line);--room-accent:var(--pf-blue);--personal-bg:var(--pf-paper);--personal-ink:var(--pf-ink);--personal-muted:var(--pf-muted);--personal-line:var(--pf-line);--personal-accent:var(--pf-blue);--background:var(--pf-paper);--foreground:var(--pf-ink)}.pf-button:hover{background:var(--pf-blue);border-color:var(--pf-blue)}.pf-capabilities{background:var(--pf-section)}.pf-areas article{border-color:var(--pf-line)}.pf-visual-web{background:var(--pf-frame)}.pf-visual-automation{background:var(--pf-frame-alt)}.pf-visual-hub,.pf-visual-workflow{background:var(--pf-section);color:var(--pf-ink)}.pf-flow>div{border-color:var(--pf-line)}.pf-filters button[aria-pressed=true]{background:var(--pf-action);color:var(--pf-action-ink)}.pf-theme{width:40px;height:40px;flex-shrink:0;display:grid;place-items:center;border:1px solid var(--pf-line);background:transparent;color:var(--pf-ink);cursor:pointer}.pf-theme-moon{display:none}.light .pf-theme-moon{display:block}.light .pf-theme-sun{display:none}.pf-visual-mcp .pf-contract>small{color:#2b3262}.pf-header-inner{gap:24px}.pf-github{padding-left:22px}.pf-lab.pf-main h2{font-family:var(--font-inter),Arial,sans-serif}@media(max-width:760px){.pf-header-inner{gap:10px}.pf-header .jhinx-logo__text{font-size:19px}.pf-github{padding-left:0;min-width:32px;justify-content:center}.pf-theme{width:38px;height:40px}.pf-menu{width:40px;height:40px}}.pf-websites-nav{display:flex;gap:7px;align-items:center;color:var(--pf-action)!important}.light .pf-websites-nav{color:var(--pf-blue)!important}.pf-header nav{gap:24px}.pf-header-inner{gap:20px}.pf-landing{display:grid;grid-template-columns:.88fr 1.22fr;gap:clamp(35px,4.5vw,75px);padding-top:64px;padding-bottom:66px;align-items:center}.pf-landing-copy h1{font-size:clamp(44px,4.8vw,69px);line-height:1.04;letter-spacing:-.055em;margin:27px 0}.pf-landing-copy h1 span{color:var(--pf-blue)}.pf-landing-lead{font-size:16px;color:var(--pf-muted);max-width:480px;margin:0}.pf-landing-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;margin-top:30px}.pf-landing-note{font-size:11px;color:var(--pf-muted);max-width:350px;margin:23px 0 0;line-height:1.65}.pf-stage-label{display:flex;justify-content:space-between;gap:15px;font-size:10px;letter-spacing:.06em;color:var(--pf-muted);margin-bottom:16px}.pf-stage-label>span:last-child{letter-spacing:0}.pf-design-window{border:1px solid var(--pf-line);border-radius:7px;overflow:hidden;background:var(--pf-section);box-shadow:0 24px 50px #0002}.pf-window-bar{height:35px;padding:0 14px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.06em;color:var(--pf-muted)}.pf-window-bar>span:first-child{display:flex;gap:5px}.pf-window-bar i{display:block;width:5px;height:5px;border-radius:50%;background:var(--pf-muted);opacity:.5}.pf-design-preview{display:block;position:relative;overflow:hidden;aspect-ratio:1.44;background:var(--pf-section)}.pf-design-preview img{display:block;width:100%;height:100%;object-fit:contain;animation:none}.pf-preview-open{position:absolute;right:20px;bottom:20px;display:flex;align-items:center;gap:20px;padding:14px 18px;background:#17241d;color:#f3f5ee;font-size:12px;box-shadow:0 6px 20px #0003;transition:background .2s}.pf-design-preview:hover .pf-preview-open{background:#284938}.pf-design-selector{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:17px;border-top:1px solid var(--pf-line)}.pf-design-selector button{display:flex;align-items:center;text-align:left;gap:10px;padding:13px 8px;border:0;border-bottom:1px solid var(--pf-line);background:transparent;color:var(--pf-muted);font:inherit;font-size:11px;cursor:pointer;transition:color .2s,background .2s}.pf-design-selector button>span{font-size:9px;color:var(--pf-muted)}.pf-design-selector button[aria-pressed=true]{color:var(--pf-ink);background:var(--pf-section);box-shadow:inset 0 -2px var(--pf-blue)}.pf-design-selector button:hover{color:var(--pf-ink)}.pf-design-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:28px}.pf-design-heading h2{margin-top:18px;font-size:38px}.pf-design-heading p:not(.pf-eyebrow){font-size:15px;max-width:620px;color:var(--pf-muted);margin:18px 0 0}.pf-design-heading>.pf-button{flex-shrink:0}.pf-design-showcase:not(.is-compact) .pf-design-selector{grid-template-columns:repeat(6,1fr)}.pf-design-showcase:not(.is-compact) .pf-design-preview{aspect-ratio:1.8}.pf-design-showcase:not(.is-compact) .pf-design-preview img{object-fit:cover;object-position:top}.pf-design-description{display:flex;gap:40px;justify-content:space-between;align-items:center;padding:25px 0 35px;border-bottom:1px solid var(--pf-line)}.pf-design-description p{max-width:650px;font-size:14px;color:var(--pf-muted);margin:0}.pf-design-description strong{display:block;font-size:17px;color:var(--pf-ink);font-weight:500;margin-bottom:6px}.pf-value-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;border-top:1px solid var(--pf-line);padding-top:30px;padding-bottom:35px}.pf-value-strip article>span{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--pf-muted)}.pf-value-strip h2{font-size:22px;letter-spacing:-.035em;line-height:1.3;margin:14px 0 10px}.pf-value-strip p{font-size:13px;line-height:1.7;color:var(--pf-muted);margin:0;max-width:360px}.pf-tools-section{padding-top:70px}.pf-capabilities .pf-section-heading h2{width:auto;margin-top:20px}.pf-card-image{border:1px solid var(--pf-line);border-radius:6px;transition:transform .3s,box-shadow .3s}.pf-visual-automation,.pf-visual-web{padding:0!important;aspect-ratio:1.44;background:var(--pf-section);align-items:center}.pf-visual-automation img,.pf-visual-web img{width:100%;height:100%;min-height:0;object-fit:contain;box-shadow:none}.pf-card-image:hover img{transform:none}.pf-image-arrow{display:none}.pf-card-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:23px;padding-top:15px;border-top:1px solid var(--pf-line)}.pf-demo-link{display:inline-flex;align-items:center;gap:10px;min-height:42px;font-size:12px;font-weight:500;color:var(--pf-action)}.light .pf-demo-link{color:var(--pf-blue)}.pf-index-tools{margin-top:55px}.pf-index-tools:empty{display:none}.pf-practice{margin-top:60px}@media(hover:hover){.pf-card-image:hover{transform:translateY(-3px);box-shadow:0 12px 35px #0002}}@media(min-width:1800px){.pf-landing-copy h1{font-size:80px}.pf-landing{padding-top:85px;padding-bottom:80px}}@media(max-width:1100px){.pf-header nav{gap:16px}.pf-github,.pf-header nav{font-size:12px}.pf-header-inner{gap:15px}.pf-github{padding-left:15px}.pf-landing{gap:35px}.pf-landing-copy h1{font-size:48px}.pf-design-heading{align-items:start;flex-direction:column;gap:22px}}@media(max-width:900px){.pf-landing{grid-template-columns:1fr;padding-top:40px;gap:36px}.pf-landing-copy h1{font-size:clamp(48px,8vw,72px);max-width:650px}.pf-landing-lead{max-width:650px}.pf-landing-actions{margin-top:23px}.pf-landing-note{max-width:none}.pf-landing-stage{max-width:760px;width:100%}.pf-landing-copy h1 br:last-of-type{display:none}.pf-landing-copy h1 span:after{content:" ";white-space:pre}.pf-value-strip{gap:25px}}@media(max-width:760px){.pf-header nav{gap:0}.pf-header-inner{gap:10px}.pf-github{padding-left:0}.pf-landing{padding-top:28px;padding-bottom:36px;gap:30px}.pf-landing-copy h1{font-size:clamp(44px,10vw,62px);margin:22px 0}.pf-landing-copy h1 br:last-of-type{display:block}.pf-landing-lead{font-size:15px}.pf-landing-actions{gap:10px 16px}.pf-landing-actions .pf-button{gap:17px;font-size:12px}.pf-landing-note{font-size:10px;margin-top:15px}.pf-stage-label{font-size:9px}.pf-window-bar{padding:0 10px;font-size:8px;height:30px;gap:8px}.pf-preview-open{right:10px;bottom:10px;font-size:11px;padding:11px 13px;gap:10px}.pf-design-selector{margin-top:10px}.pf-design-selector button{font-size:10px;gap:5px;padding:13px 5px}.pf-design-showcase:not(.is-compact) .pf-design-selector{grid-template-columns:repeat(3,1fr)}.pf-design-showcase:not(.is-compact) .pf-design-preview{aspect-ratio:1.44}.pf-design-heading h2{font-size:31px}.pf-design-heading p:not(.pf-eyebrow){font-size:14px}.pf-design-description{align-items:start;flex-direction:column;gap:15px}.pf-value-strip{grid-template-columns:1fr;gap:25px;padding-top:28px;padding-bottom:15px}.pf-value-strip article{padding-bottom:20px;border-bottom:1px solid var(--pf-line)}.pf-value-strip h2{font-size:22px}.pf-tools-section{padding-top:38px}.pf-card-actions{align-items:start;flex-direction:column;gap:6px;margin-top:18px;padding-top:10px}.pf-card-actions a{min-height:38px}.pf-practice{margin-top:0}}@media(prefers-reduced-motion:reduce){.pf-design-preview img{animation:none}.pf-card-image:hover{transform:none}.pf-card-image,.pf-design-selector button,.pf-preview-open{transition:none}}.pf-showcase-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:42px;color:var(--pf-muted);font-size:11px}.pf-showcase-playback{display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:0 10px;background:transparent;border:0;color:var(--pf-ink);font:inherit;cursor:pointer}.pf-picture-layer,.pf-picture-stack{position:absolute;inset:0;display:block}.pf-picture-layer{background:var(--pf-section);opacity:0;z-index:0;transition:opacity 1.2s cubic-bezier(.22,.61,.36,1);pointer-events:none}.pf-picture-layer.is-previous{opacity:1;z-index:1}.pf-picture-layer.is-current{opacity:1;z-index:2}.pf-preview-open{z-index:3}@media(prefers-reduced-motion:reduce){.pf-picture-layer{transition:none}}.pf-route-hero{padding-top:32px;padding-bottom:28px}.pf-route-hero>h1{font-size:clamp(34px,4vw,54px)}.pf-route-hero>.pf-eyebrow{margin-bottom:14px}.pf-route-hero>p:not(.pf-eyebrow){margin-top:16px;font-size:16px;max-width:760px}.pf-filters{padding:8px 0}.pf-result{margin:14px 0 20px}.pf-index-tools{margin-top:28px}.pf-work-grid{gap:36px 28px}.pf-card-meta{margin-top:15px}.pf-card-actions{margin-top:14px}.pf-index .pf-design-showcase{display:grid;grid-template-columns:.7fr 1fr;column-gap:32px}.pf-index .pf-design-heading{grid-column:1;grid-row:1/5;display:block;margin:0}.pf-index .pf-design-heading h2{font-size:30px;margin-top:10px}.pf-index .pf-design-heading>.pf-button{margin-top:24px}.pf-index .pf-design-selector,.pf-index .pf-design-window,.pf-index .pf-showcase-controls{grid-column:2}.pf-index .pf-design-description{grid-column:1/-1;padding:16px 0}.pf-index .pf-design-selector{grid-template-columns:repeat(3,1fr)!important}@media(max-width:760px){.pf-route-hero{padding-top:24px;padding-bottom:22px}.pf-index .pf-design-showcase{grid-template-columns:1fr}.pf-index .pf-design-description,.pf-index .pf-design-heading,.pf-index .pf-design-selector,.pf-index .pf-design-window,.pf-index .pf-showcase-controls{grid-column:1;grid-row:auto}.pf-index .pf-design-heading{margin-bottom:20px}.pf-index .pf-design-heading>.pf-button{margin-top:16px}}.pf-service-paths{scroll-margin-top:110px}.pf-service-paths article{display:flex;flex-direction:column;gap:12px}.pf-service-paths article h2{font-size:25px}.pf-service-paths article p{margin:0}.pf-service-paths .pf-text-link{margin-top:auto;padding-top:12px;font-size:13px}.pf-service-paths .pf-service-scope{font-size:12px}.pf-enquiry-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(32px,6vw,100px);padding:18px 0 50px}.pf-enquiry-layout h2{font-size:28px;margin-bottom:20px}.pf-enquiry-layout aside{border-left:1px solid var(--pf-line);padding-left:30px}.pf-enquiry-layout aside p,.pf-enquiry-layout li{color:var(--pf-muted);font-size:14px;line-height:1.7}.pf-enquiry-layout ul{list-style:disc;padding-left:18px}.pf-enquiry-layout li+li{margin-top:12px}.pf-enquiry-form{display:flex;flex-direction:column;gap:18px;position:relative}.pf-form-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px}.pf-enquiry-form label{display:flex;flex-direction:column;gap:8px;font-size:14px}.pf-enquiry-form input,.pf-enquiry-form select,.pf-enquiry-form textarea{width:100%;border:1px solid var(--pf-line);border-radius:4px;background:var(--pf-section);color:var(--pf-ink);padding:12px;font:inherit;min-height:48px}.pf-enquiry-form textarea{resize:vertical}.pf-enquiry-form :is(input,select,textarea,button):focus-visible{outline:2px solid var(--pf-blue);outline-offset:3px}.pf-enquiry-form .pf-form-help{font-size:12px;line-height:1.6;color:var(--pf-muted);margin:0}.pf-enquiry-form .pf-button{align-self:flex-start}.pf-enquiry-form button:disabled{cursor:default;opacity:.7}.pf-form-status{min-height:2.8em;font-size:14px;line-height:1.6;margin:0}.pf-form-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}@media(max-width:760px){.pf-enquiry-layout{grid-template-columns:1fr;gap:28px}.pf-enquiry-layout aside{border-left:0;border-top:1px solid var(--pf-line);padding:24px 0 0}.pf-form-pair{grid-template-columns:1fr}.pf-enquiry-layout h2{font-size:25px}}.pf-visual.pf-visual-excel{aspect-ratio:2.2!important;padding:16px;align-items:flex-start;background:#fff}.pf-visual.pf-visual-excel img{width:100%;height:auto;min-height:0;object-fit:fill;object-position:top;transform:none}.pf-service-field{display:flex;flex-direction:column;gap:8px}.pf-service-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:52px;padding:12px 15px;border:1px solid var(--pf-line);border-radius:4px;background:var(--pf-section);color:var(--pf-ink);font:inherit;font-size:14px;text-align:left;cursor:pointer}.pf-service-trigger[data-placeholder]{color:var(--pf-muted)}.pf-service-trigger[data-popup-open]{border-color:var(--pf-blue)}.pf-service-chevron{display:flex;color:var(--pf-blue)}.pf-service-trigger[data-popup-open] .pf-service-chevron{transform:rotate(180deg)}.pf-service-positioner{z-index:100;width:var(--anchor-width);max-width:calc(100vw - 32px)}.pf-service-popup{background:var(--pf-paper);color:var(--pf-ink);border:1px solid var(--pf-line);border-radius:6px;padding:6px;box-shadow:0 14px 36px #0003;font-family:var(--font-inter),Arial,sans-serif;max-height:var(--available-height);overflow:auto}.pf-service-option{display:grid;grid-template-columns:24px 1fr 20px;align-items:center;gap:12px;padding:13px 12px;border-radius:3px;cursor:pointer;outline:none;border:1px solid transparent}.pf-service-option+.pf-service-option{margin-top:2px}.pf-service-number{font-size:10px;color:var(--pf-muted);font-family:monospace}.pf-service-copy{display:flex;flex-direction:column;gap:3px;font-size:14px;line-height:1.4}.pf-service-detail{font-size:12px;color:var(--pf-muted)}.pf-service-option[data-selected]{background:var(--pf-section)}.pf-service-option[data-highlighted]{background:var(--pf-section);border-color:var(--pf-blue)}.pf-service-check,.pf-service-option[data-highlighted] .pf-service-number{color:var(--pf-blue)}.pf-service-trigger:focus-visible{outline:2px solid var(--pf-blue);outline-offset:3px}@media(max-width:760px){.pf-service-option{padding:12px 8px;gap:8px}.pf-service-copy{font-size:13px}.pf-service-detail{font-size:11px}}.pf-skip{color:var(--pf-paper)!important;background:var(--pf-ink)}.pf-rework-opening{grid-template-columns:.78fr 1.22fr;gap:clamp(32px,4vw,70px);padding-top:42px;padding-bottom:38px}.pf-rework-opening .pf-landing-copy{padding-top:clamp(32px,5vw,80px)}.pf-rework-opening .pf-landing-copy h1{font-size:clamp(40px,4.4vw,68px);line-height:1.07}.pf-rework-opening .pf-stage-label{padding-bottom:12px;border-bottom:1px solid var(--pf-line)}.pf-rework-opening .pf-design-window{border-radius:0;box-shadow:none}.pf-rework-opening .pf-window-bar{display:none}.pf-rework-opening .pf-design-preview{aspect-ratio:1.44}.pf-rework-opening .pf-preview-open{right:14px;bottom:14px}.pf-featured-caption{display:grid;grid-template-columns:1fr 1fr;gap:16px 28px;padding:22px 0;border-bottom:1px solid var(--pf-line)}.pf-featured-caption .pf-eyebrow{font-size:9px;line-height:1.6;margin:0 0 8px}.pf-featured-caption h2{font-size:clamp(26px,2.6vw,39px);line-height:1.05}.pf-featured-caption>p{color:var(--pf-muted);font-size:12px;line-height:1.7;margin:0}.pf-featured-caption>.pf-text-link{grid-column:1/-1;width:max-content;font-size:11px}.pf-rework-opening .pf-design-selector{margin-top:0;border-top:0}.pf-rework-opening .pf-design-selector button{min-height:44px;font-size:10px;gap:9px}.pf-rework-opening .pf-showcase-controls{font-size:10px}.pf-chapter-nav{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--pf-line)}.pf-chapter-nav a{display:flex;align-items:center;gap:14px;min-height:74px;padding:16px 22px;font-size:12px}.pf-chapter-nav a+a{border-left:1px solid var(--pf-line)}.pf-chapter-nav a>span{font-size:10px;color:var(--pf-muted)}.pf-chapter-nav a>svg{margin-left:auto}.pf-chapter-nav a:hover{background:var(--pf-section)}.pf-chapter-nav a:focus-visible{outline:2px solid var(--pf-blue);outline-offset:-4px}#practice,#selected-work,#services{scroll-margin-top:100px}.pf-service-paths{padding-top:52px;padding-bottom:64px}.pf-service-paths article>span{display:block;margin-bottom:30px}.pf-service-paths h2{max-width:300px}.pf-tools-section{padding-top:78px}.pf-work-card{border-radius:0}.pf-practice-links a{min-height:70px}@supports(animation-timeline:view()){.pf-tools-section .pf-card-image{animation:pf-image-settle linear both;animation-timeline:view();animation-range:entry 0 entry 100%}@keyframes pf-image-settle{0%{transform:translateY(10px)}to{transform:none}}}@media(max-width:1000px){.pf-rework-opening{gap:30px;grid-template-columns:.85fr 1.15fr}.pf-rework-opening .pf-landing-copy{padding-top:35px}.pf-featured-caption{gap:14px}.pf-chapter-nav a{padding-inline:14px;font-size:11px}}@media(max-width:760px){.pf-rework-opening{grid-template-columns:1fr;padding-top:24px;gap:30px}.pf-rework-opening .pf-landing-copy{padding-top:0}.pf-rework-opening .pf-landing-copy h1{font-size:clamp(40px,9vw,62px);margin-block:18px}.pf-rework-opening .pf-landing-lead{font-size:14px}.pf-rework-opening .pf-landing-actions{margin-top:22px}.pf-featured-caption{grid-template-columns:1fr;padding-block:18px}.pf-featured-caption>.pf-text-link{grid-column:auto}.pf-chapter-nav{grid-template-columns:1fr}.pf-chapter-nav a{min-height:56px;padding-inline:0}.pf-chapter-nav a+a{border-left:0;border-top:1px solid var(--pf-line)}.pf-service-paths{padding-top:32px}.pf-service-paths article>span{margin-bottom:15px}.pf-tools-section{padding-top:50px}}@media(prefers-reduced-motion:reduce){.pf-tools-section .pf-card-image{animation:none!important;transform:none!important}}.pf-preview-unavailable{z-index:5;align-content:center;color:var(--pf-ink);font-size:16px}.pf-preview-open{z-index:6}.pf-bench-invitation{display:block;border-block:1px solid var(--pf-line);padding:22px 0;margin-top:30px;max-width:420px}.pf-bench-invitation>strong{display:block;font-size:28px;line-height:1.15;letter-spacing:-.045em;margin:12px 0}.pf-bench-invitation>span:last-child{display:block;font-size:11px;line-height:1.6;color:var(--pf-muted);margin-top:12px}.pf-invitation-proof{display:grid;grid-template-columns:1.5fr 1fr 1fr 19px;align-items:center;gap:10px;padding:12px 0;border-block:1px solid var(--pf-line);color:var(--pf-blue)}.pf-invitation-proof>span{display:flex;flex-direction:column;gap:5px}.pf-invitation-proof small{font-size:9px;color:var(--pf-muted)}.pf-invitation-proof code{font-size:12px}.pf-bench-invitation:hover>strong{color:var(--pf-blue)}.pf-design-selector{height:132px;min-height:132px;overflow-y:auto;align-content:start;grid-auto-rows:44px}.pf-design-selector button{height:44px}.pf-featured-caption{min-height:200px;align-content:start}.pf-design-description{min-height:115px}@media(max-width:760px){.pf-bench-invitation{margin-top:22px;padding:18px 0;max-width:none}.pf-bench-invitation>strong{font-size:25px}.pf-featured-caption{min-height:250px}.pf-design-description{min-height:160px}}#main-content[tabindex="-1"]:focus{outline:none}.pf-inline-arrow{display:inline-block;vertical-align:-.16em;flex-shrink:0;width:1em;height:1em}.pf-showcase-status{min-height:20px;margin:8px 0 0;font-size:11px;line-height:1.6;color:var(--pf-muted)}.pf-showcase-status a{display:inline-flex;align-items:center;gap:4px;text-decoration:underline}.pf-preview-unavailable{position:absolute;inset:0;z-index:4;display:grid;place-content:center;text-align:center;background:var(--pf-section);color:var(--pf-muted);font-size:13px;line-height:1.6;padding:24px}.pf-design-selector button[data-pending=true]{text-decoration:underline;text-decoration-style:dotted;text-underline-offset:5px}.dark,:root{--pf-paper:#19151f;--pf-ink:#f6f5f2;--pf-muted:#d1ced5;--pf-line:#4c4059;--pf-blue:#c5adeb;--pf-section:#251e2e;--pf-frame:#31283b;--pf-frame-alt:#382d43;--pf-action:#decef2;--pf-action-ink:#271935}.light{--pf-paper:#f7f4f8;--pf-ink:#2e2537;--pf-muted:#685b74;--pf-line:#cec5d5;--pf-blue:#684198;--pf-section:#eee8f2;--pf-frame:#e4dcea;--pf-frame-alt:#e8deee;--pf-action:#4b3164;--pf-action-ink:#ffffff}:root:not(.light) .pf-invitation-proof small{font-size:11px}:root:not(.light) .pf-invitation-proof code{font-size:14px;font-weight:600;color:var(--pf-ink)}:root:not(.light) .pf-bench-invitation>span:last-child{font-size:13px}.pf-personal-signature{position:relative;padding-left:34px;line-height:1.9!important}.pf-personal-signature>span{position:absolute;left:0;top:-2px;color:var(--pf-blue);font-size:25px;font-weight:400}.pf-rework-opening .pf-landing-copy{padding-top:45px}.pf-rework-opening .pf-landing-copy h1{margin-top:26px;font-size:clamp(41px,4.4vw,67px);letter-spacing:-.062em;line-height:1.075}.pf-rework-opening .pf-landing-lead{max-width:37ch;line-height:1.75}.pf-rework-opening .pf-stage-label{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:9px}.pf-rework-opening .pf-featured-caption{grid-template-columns:.8fr 1.2fr;padding-block:19px}.pf-rework-opening .pf-featured-caption>.pf-text-link{grid-column:1/-1;min-height:28px}.pf-chapter-nav{margin-top:6px}.pf-chapter-nav a{padding-block:18px}.pf-service-paths{padding-block:45px 52px}.pf-service-paths article>span{margin-bottom:16px}.pf-service-paths article h2{font-size:24px}.pf-service-paths .pf-service-scope{max-width:39ch}.pf-tools-section{border-top:1px solid var(--pf-line);padding-top:58px;padding-bottom:48px}.pf-tools-section .pf-section-heading{align-items:end;margin-bottom:38px}.pf-tools-section .pf-section-heading h2{margin-top:20px}.pf-tools-section .pf-section-heading h2>span{color:var(--pf-muted)}.pf-selected-engineering{align-items:start;gap:48px}.pf-selected-engineering .pf-card{min-width:0}.pf-selected-engineering .pf-card-image{display:flex;align-items:center;background:var(--pf-section);aspect-ratio:1.7}.pf-selected-engineering .pf-visual{width:100%;height:100%;aspect-ratio:auto}.pf-selected-engineering .pf-visual-excel{aspect-ratio:auto!important;align-items:center;background:#fff;padding:18px}.pf-selected-engineering .pf-visual-api{background:#34283f;color:#eee5f5}.pf-selected-engineering .pf-contract>div{margin:24px 0}.pf-selected-engineering .pf-contract>p{margin-bottom:15px}.pf-selected-engineering .pf-contract strong{color:#c3dec6}.pf-selected-engineering .pf-card-meta{flex-direction:column;gap:6px}.pf-selected-engineering .pf-card-meta>span:last-child{text-align:left;text-transform:none;letter-spacing:0}.pf-selected-engineering .pf-card h3{font-size:clamp(27px,2.4vw,35px);max-width:520px}.pf-work-index-link{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:40px;padding-block:18px;border-top:1px solid var(--pf-line)}.pf-work-index-link>span{color:var(--pf-muted);font-size:12px}.pf-practice{padding-top:45px;padding-bottom:50px}.pf-practice-links a{min-height:74px}.pf-practice-links a>.pf-practice-name{display:flex;gap:22px;align-items:center;font-size:19px;color:var(--pf-ink)}.pf-practice-name small{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px;color:var(--pf-muted)}.pf-about-strip{padding-block:44px 60px}.pf-footer{background:var(--pf-section);color:var(--pf-ink)}.pf-footer .pf-eyebrow,.pf-footer p,.pf-footer-bottom{color:var(--pf-muted)}.pf-footer-bottom{border-color:var(--pf-line)}.pf-footer .pf-button{background:var(--pf-action);border-color:var(--pf-action);color:var(--pf-action-ink)!important}.pf-footer .pf-button:hover{background:var(--pf-blue);border-color:var(--pf-blue)}@media(max-width:1000px){.pf-rework-opening .pf-landing-copy{padding-top:25px}.pf-selected-engineering{gap:28px}}@media(max-width:760px){.pf-rework-opening .pf-landing-copy{padding-top:0}.pf-personal-signature{padding-left:30px;font-size:10px!important}.pf-rework-opening .pf-landing-copy h1{font-size:clamp(41px,9.8vw,66px);margin-top:22px}.pf-rework-opening .pf-featured-caption{grid-template-columns:1fr;gap:12px}.pf-service-paths{padding-block:32px}.pf-tools-section{padding-top:36px;padding-bottom:28px}.pf-tools-section .pf-section-heading{align-items:start}.pf-selected-engineering{gap:42px}.pf-work-index-link{margin-top:28px}.pf-practice-links a,.pf-work-index-link{align-items:start;flex-direction:column;gap:10px}.pf-practice-links a>.pf-practice-name{gap:14px;font-size:18px}.pf-practice-links a>span:last-child{margin-left:28px}.pf-about-strip,.pf-practice{padding-block:32px 38px}}.pf-rework-opening{grid-template-areas:"statement stage" "intro stage" "bench stage";grid-template-rows:auto auto auto;row-gap:0;align-items:start}.pf-rework-opening .pf-landing-statement{grid-area:statement;min-width:0}.pf-rework-opening .pf-landing-stage{grid-area:stage;min-width:0;align-self:center}.pf-rework-opening .pf-landing-intro{grid-area:intro;min-width:0}.pf-rework-opening>.pf-bench-invitation{grid-area:bench;min-width:0}.pf-selected-engineering .pf-card-image:has(.pf-visual-excel){aspect-ratio:1131/622}.pf-selected-engineering .pf-visual-excel{position:relative;overflow:hidden;padding:0}.pf-selected-engineering .pf-visual-excel img{position:absolute;width:140.053%;height:auto;max-width:none;left:-2.122%;top:-6.431%;object-fit:fill}.pf-proof-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0;padding:16px 0;border-block:1px solid var(--pf-line)}.pf-proof-strip>div{min-width:0}.pf-proof-strip span{display:block;font-size:11px;color:var(--pf-muted);margin-bottom:7px}.pf-proof-strip strong{display:block;font-size:13px;line-height:1.5;font-weight:500;color:var(--pf-ink);overflow-wrap:anywhere}.pf-contact-proof{list-style:none;padding:0;margin:26px 0}.pf-contact-proof li{padding:18px 0;border-top:1px solid var(--pf-line)}.pf-contact-proof li>span{font-size:11px;color:var(--pf-blue)}.pf-contact-proof h3{font-size:19px;letter-spacing:-.025em;margin:10px 0 8px}.pf-contact-proof li p{margin:0}@media(max-width:760px){.pf-rework-opening{grid-template-areas:"statement" "stage" "intro" "bench";grid-template-columns:1fr;row-gap:25px;padding-top:28px}.pf-rework-opening .pf-landing-statement h1{margin-bottom:0}.pf-rework-opening .pf-landing-stage{align-self:start}.pf-rework-opening .pf-landing-intro .pf-landing-actions{margin-top:22px}.pf-rework-opening>.pf-bench-invitation{margin-top:0}.pf-proof-strip{gap:10px}}@media(max-width:360px){.pf-proof-strip{grid-template-columns:1fr;gap:14px}.pf-proof-strip>div{display:grid;grid-template-columns:52px 1fr;gap:10px;align-items:baseline}.pf-proof-strip span{margin-bottom:0}}.pf-technology-header{background:var(--pf-paper);border-bottom-color:color-mix(in srgb,var(--pf-line) 62%,transparent)}.pf-technology-header .pf-header-inner{height:72px;gap:26px}.pf-technology-header .jhinx-logo__text{font-size:20px;font-weight:600;letter-spacing:-.05em}.pf-technology-header nav{gap:26px}.pf-technology-header .pf-websites-nav{color:var(--pf-muted)}.pf-technology-header .pf-nav-contact{padding:10px 14px;border:1px solid var(--pf-line);border-radius:6px;background:var(--pf-section);min-height:44px}.pf-technology-header .pf-nav-contact:hover{border-color:var(--pf-blue)}.pf-technology-header .pf-github{padding-left:22px}.pf-technology-header .pf-theme{border-radius:6px}.pf-technology-footer{padding-top:clamp(54px,7vw,100px);border-top:1px solid var(--pf-line)}.pf-technology-footer .pf-contact{align-items:end;grid-template-columns:1.25fr 1fr;gap:clamp(40px,8vw,110px);padding-top:28px;padding-bottom:clamp(50px,7vw,90px)}.pf-technology-footer .pf-contact h2{font-size:clamp(38px,4.6vw,68px);letter-spacing:-.055em;line-height:1.07}.pf-technology-footer .pf-contact p{max-width:40ch}.pf-technology-footer .pf-button{border-radius:6px}.pf-technology-footer .pf-contact .pf-footer-process{margin:18px 0 0;font-size:12px;line-height:1.6}.pf-technology-footer .pf-footer-bottom{min-height:84px;font-size:12px;line-height:1.5}@media (max-width:1000px) and (min-width:761px){.pf-technology-header .pf-header-inner,.pf-technology-header nav{gap:18px}.pf-technology-header .pf-github{padding-left:16px}}@media (max-width:760px){.pf-technology-header .pf-header-inner{height:68px;gap:12px}.pf-technology-header .pf-menu{border-radius:6px}.pf-technology-header nav.is-open{top:68px;gap:8px;border-bottom:1px solid var(--pf-line)}.pf-technology-header nav a{min-height:44px}.pf-technology-header .pf-nav-contact{padding-inline:14px;margin-top:4px}.pf-technology-footer .pf-contact{grid-template-columns:1fr;gap:28px}.pf-technology-footer .pf-footer-bottom{gap:18px;align-items:start}.pf-technology-footer .pf-footer-bottom>div{gap:10px 22px}}.pf-technology-home .pf-tech-opening{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);grid-template-areas:"statement intro" "gallery rail";gap:46px 56px;padding-top:64px;padding-bottom:56px}.pf-technology-home .pf-tech-statement{grid-area:statement;min-width:0}.pf-technology-home .pf-tech-statement h1{font-size:clamp(42px,4.5vw,67px);line-height:1.1;letter-spacing:-.055em;margin-top:26px;max-width:850px;text-wrap:balance}.pf-technology-home .pf-tech-statement h1 span{color:var(--pf-blue)}.pf-technology-home .pf-tech-mobile-contact{display:none}.pf-technology-home .pf-tech-intro{grid-area:intro;min-width:0;align-self:end;padding-bottom:4px}.pf-technology-home .pf-landing-lead{font-size:15px;line-height:1.8;max-width:40ch}.pf-technology-home .pf-landing-actions{gap:6px 20px;margin-top:24px}.pf-technology-home .pf-button{background:var(--pf-action);border-color:var(--pf-action);color:var(--pf-action-ink)!important;border-radius:5px;gap:18px;min-height:48px}.pf-technology-home .pf-button:hover{background:var(--pf-blue);border-color:var(--pf-blue)}.pf-technology-home .pf-landing-note{margin-top:15px;font-size:11px}.pf-technology-home .pf-tech-gallery{grid-area:gallery;min-width:0}.pf-technology-home .pf-tech-section-label{display:flex;justify-content:space-between;gap:16px;color:var(--pf-muted);font-size:10px;line-height:1.6;padding:0 0 14px;letter-spacing:.035em}.pf-technology-home .pf-tech-section-label>span:first-child{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.pf-technology-home .pf-design-window{border-radius:8px;background:var(--pf-frame);box-shadow:0 16px 40px #0002,inset 0 1px 0 #ffffff08}.pf-technology-home .pf-window-bar{height:30px;font-size:9px;background:var(--pf-frame)}.pf-technology-home .pf-design-preview{aspect-ratio:1.6}.pf-technology-home .pf-featured-caption{grid-template-columns:.8fr 1.2fr;gap:12px 24px;min-height:160px;padding-block:22px}.pf-technology-home .pf-featured-caption h2{font-size:32px;letter-spacing:-.045em}.pf-technology-home .pf-featured-caption>p{font-size:13px;line-height:1.7}.pf-technology-home .pf-featured-caption>.pf-text-link{font-size:12px}.pf-technology-home .pf-design-selector{margin-top:0;grid-template-columns:repeat(3,minmax(0,1fr));border-top:0}.pf-technology-home .pf-design-selector button{font-size:11px;gap:8px}.pf-technology-home .pf-showcase-controls{font-size:11px}.pf-technology-home .pf-tech-rail{grid-area:rail;min-width:0;padding:30px 0 0 28px;border-left:1px solid var(--pf-line)}.pf-technology-home .pf-tech-rail h2{font-size:clamp(26px,2.6vw,36px);letter-spacing:-.045em;line-height:1.2;margin-top:23px}.pf-technology-home .pf-tech-rail>p:not(.pf-eyebrow){font-size:14px;line-height:1.8;color:var(--pf-muted);margin:20px 0 12px;max-width:36ch}.pf-technology-home .pf-bench-invitation{max-width:none;margin-top:34px;padding-block:24px;border-bottom:0}.pf-technology-home .pf-bench-invitation>strong{font-size:31px;margin-block:17px}.pf-technology-home .pf-bench-invitation>span:last-child{font-size:12px!important;line-height:1.8}@media(min-width:1800px){.pf-technology-home .pf-tech-opening{grid-template-columns:minmax(0,750px) minmax(0,1fr)}}@media(max-width:1100px){.pf-technology-home .pf-tech-opening{gap:36px 30px}.pf-technology-home .pf-tech-rail{padding-left:22px}.pf-technology-home .pf-tech-statement h1{font-size:clamp(40px,4.6vw,56px)}.pf-technology-home .pf-tech-section-label>span:last-child{max-width:20ch;text-align:right}.pf-technology-home .pf-tech-rail h2{font-size:28px}.pf-technology-home .pf-invitation-proof{grid-template-columns:1.5fr 1fr 1fr;gap:10px}.pf-technology-home .pf-invitation-proof>svg{display:none}}@media(max-width:760px){.pf-technology-home .pf-tech-opening{grid-template-columns:1fr;grid-template-areas:"statement" "gallery" "intro" "rail";padding-top:28px;padding-bottom:32px;gap:26px}.pf-technology-home .pf-tech-statement h1{font-size:clamp(34px,8.6vw,58px);margin-top:20px;max-width:650px;text-wrap:wrap}.pf-technology-home .pf-tech-section-label{font-size:9px;padding-bottom:10px}.pf-technology-home .pf-design-preview{aspect-ratio:1.44}.pf-technology-home .pf-featured-caption{min-height:210px;grid-template-columns:1fr;padding-block:18px;gap:10px}.pf-technology-home .pf-featured-caption h2{font-size:28px}.pf-technology-home .pf-featured-caption>p{font-size:12px}.pf-technology-home .pf-design-selector button{font-size:10px}.pf-technology-home .pf-tech-intro{padding:0}.pf-technology-home .pf-landing-lead{max-width:55ch;font-size:15px}.pf-technology-home .pf-landing-actions{margin-top:20px}.pf-technology-home .pf-tech-rail{border-left:0;border-top:1px solid var(--pf-line);padding:26px 0 0}.pf-technology-home .pf-tech-rail h2{font-size:30px}.pf-technology-home .pf-tech-rail>p:not(.pf-eyebrow){max-width:55ch}.pf-technology-home .pf-bench-invitation{margin-top:24px}.pf-technology-home .pf-invitation-proof{grid-template-columns:1.5fr 1fr 1fr 19px}.pf-technology-home .pf-invitation-proof>svg{display:block}}@media(prefers-reduced-motion:reduce){.pf-technology-home .pf-button{transition:none}}.pf-technology-home .pf-chapter-nav{margin-top:0;background:var(--pf-section);border-block:1px solid var(--pf-line)}.pf-technology-home .pf-chapter-nav a{min-height:66px;padding-inline:22px;font-size:12px}.pf-technology-home .pf-tech-services{padding-top:72px;padding-bottom:72px}.pf-technology-home .pf-tech-section-heading{display:grid;grid-template-columns:1fr 2fr 1.25fr;gap:32px;align-items:start;margin-bottom:40px}.pf-technology-home .pf-tech-section-heading>.pf-eyebrow{padding-top:9px}.pf-technology-home .pf-tech-section-heading h2{font-size:clamp(30px,3.2vw,44px);line-height:1.17;letter-spacing:-.045em}.pf-technology-home .pf-tech-section-heading h2 span{color:var(--pf-muted)}.pf-technology-home .pf-tech-section-heading>p:last-child{font-size:14px;line-height:1.8;color:var(--pf-muted);margin:5px 0 0}.pf-technology-home .pf-service-paths{display:block;border-top:0;padding:0}.pf-technology-home .pf-service-paths article{display:grid;grid-template-columns:1fr 1.15fr 1.5fr;gap:12px 32px;padding:28px 0 30px;border-top:1px solid var(--pf-line);align-items:start}.pf-technology-home .pf-service-paths article>span{grid-column:1;grid-row:1/4;margin:4px 0 0;color:var(--pf-blue);font-size:11px;line-height:1.7}.pf-technology-home .pf-service-paths article h2{grid-column:2;grid-row:1/3;margin:0;max-width:13ch;font-size:28px;line-height:1.22;letter-spacing:-.04em}.pf-technology-home .pf-service-paths article>p{grid-column:3;max-width:none;font-size:14px;line-height:1.8}.pf-technology-home .pf-service-paths article .pf-service-scope{font-size:12px}.pf-technology-home .pf-service-paths article>.pf-text-link{grid-column:2/4;justify-self:start;margin:0;padding:0;min-height:44px;font-size:13px}.pf-technology-home .pf-tech-engineering-surface{background:var(--pf-section);border-block:1px solid var(--pf-line)}.pf-technology-home .pf-tools-section{border-top:0;padding-block:64px}.pf-technology-home .pf-tools-section .pf-section-heading{margin-bottom:36px;align-items:end}.pf-technology-home .pf-tools-section .pf-section-heading h2{font-size:clamp(32px,3.4vw,48px);margin-top:18px;line-height:1.17}.pf-technology-home .pf-selected-engineering{gap:48px}.pf-technology-home .pf-selected-engineering .pf-card-image{border-radius:6px}.pf-technology-home .pf-selected-engineering .pf-card h3{font-size:30px;line-height:1.25;letter-spacing:-.04em}.pf-technology-home .pf-selected-engineering .pf-card-meta{margin-top:22px;font-size:10px;line-height:1.6;gap:7px}.pf-technology-home .pf-selected-engineering .pf-card>p{font-size:14px;line-height:1.8}.pf-technology-home .pf-selected-engineering .pf-proof-strip{padding-block:18px;margin-block:22px}.pf-technology-home .pf-selected-engineering .pf-stack span{border-top:0;padding-top:0}.pf-technology-home .pf-selected-engineering .pf-card-actions{padding-top:14px;margin-top:22px}.pf-technology-home .pf-work-index-link{margin-top:40px}.pf-technology-home .pf-practice{padding-block:72px;margin-top:0;grid-template-columns:1fr 3.25fr;gap:32px;border-top:0}.pf-technology-home .pf-practice h2{font-size:clamp(32px,3.4vw,46px);line-height:1.17}.pf-technology-home .pf-practice>div>p{max-width:52ch;font-size:15px;line-height:1.8;color:var(--pf-muted)}.pf-technology-home .pf-practice-links{margin-top:32px}.pf-technology-home .pf-practice-links a{min-height:82px;transition:color .18s}.pf-technology-home .pf-practice-links a:hover .pf-practice-name{color:var(--pf-blue)}.pf-technology-home .pf-about-strip{grid-template-columns:1fr 3.25fr;gap:32px;padding-block:48px 72px}.pf-technology-home .pf-about-strip h2{font-size:clamp(30px,3vw,40px);line-height:1.2}.pf-technology-home .pf-about-strip>div>p{max-width:65ch;font-size:15px;line-height:1.8}@media(max-width:1000px){.pf-technology-home .pf-tech-section-heading{grid-template-columns:1fr 2fr;gap:20px}.pf-technology-home .pf-tech-section-heading>p:last-child{grid-column:2;max-width:45ch}.pf-technology-home .pf-service-paths article{grid-template-columns:.7fr 1.1fr 1.5fr;gap:14px 24px}.pf-technology-home .pf-service-paths article h2{font-size:25px}.pf-technology-home .pf-selected-engineering{gap:28px}.pf-technology-home .pf-selected-engineering .pf-card h3{font-size:27px}}@media(max-width:760px){.pf-technology-home .pf-tech-mobile-contact{display:inline-flex;min-height:44px;margin-top:13px;font-size:13px}.pf-technology-home .pf-chapter-nav a{min-height:56px;padding-inline:16px}.pf-technology-home .pf-tech-services{padding-block:40px}.pf-technology-home .pf-tech-section-heading{display:block;margin-bottom:28px}.pf-technology-home .pf-tech-section-heading>.pf-eyebrow{padding-top:0;margin-bottom:18px}.pf-technology-home .pf-tech-section-heading h2{font-size:32px}.pf-technology-home .pf-tech-section-heading>p:last-child{margin-top:18px;max-width:50ch}.pf-technology-home .pf-service-paths article{display:flex;gap:13px;padding-block:24px;border-bottom:0}.pf-technology-home .pf-service-paths article>span{margin:0}.pf-technology-home .pf-service-paths article h2{font-size:26px;max-width:24ch}.pf-technology-home .pf-service-paths article>.pf-text-link{padding-top:0;min-height:44px;margin-top:2px}.pf-technology-home .pf-tools-section{padding-block:40px}.pf-technology-home .pf-tools-section .pf-section-heading h2{font-size:33px}.pf-technology-home .pf-selected-engineering{gap:40px}.pf-technology-home .pf-selected-engineering .pf-card h3{font-size:28px}.pf-technology-home .pf-work-index-link{margin-top:28px}.pf-technology-home .pf-about-strip,.pf-technology-home .pf-practice{grid-template-columns:1fr;gap:20px;padding-block:40px}.pf-technology-home .pf-about-strip h2,.pf-technology-home .pf-practice h2{font-size:32px}.pf-technology-home .pf-practice-links a{min-height:88px}.pf-technology-home .pf-practice-links{margin-top:24px}}@media(prefers-reduced-motion:reduce){.pf-technology-home .pf-practice-links a{transition:none}}.dark,:root{--pf-paper:#131018;--pf-ink:#f5f1f8;--pf-muted:#b7afc2;--pf-line:#38303f;--pf-blue:#c8a9f1;--pf-section:#1d1726;--pf-frame:#282030;--pf-action:#d4b8f6;--pf-action-ink:#251534}.light{--pf-paper:#f8f6fa;--pf-ink:#271e31;--pf-muted:#665a72;--pf-line:#d9cfdf;--pf-blue:#71449a;--pf-section:#efebf3;--pf-frame:#e5dfeb;--pf-action:#57327a;--pf-action-ink:#fff}html{scroll-padding-top:100px}.pf-header-inner,.pf-wrap{max-width:1536px;padding-inline:clamp(20px,5vw,88px)}.pf-header.pf-technology-header{background:var(--pf-paper);border-bottom:1px solid var(--pf-line)}.pf-technology-header .pf-header-inner{height:82px;gap:28px}.pf-technology-header nav{gap:28px;font-size:13px}.pf-technology-header .pf-nav-contact{background:transparent;border-color:var(--pf-line);border-radius:3px;padding-inline:18px}.pf-header nav a:not(.pf-nav-contact){position:relative}.pf-header nav a[aria-current=page]:after{content:"";position:absolute;height:2px;background:var(--pf-blue);inset:auto 0 4px}.pf-technology-header .pf-github{padding-left:24px}.pf-button{border-radius:3px!important;background:var(--pf-action);border-color:var(--pf-action);color:var(--pf-action-ink)!important;gap:34px;min-height:50px}.pf-button:hover{background:var(--pf-ink);color:var(--pf-paper)!important;border-color:var(--pf-ink)}.pf-text-link{min-height:44px;gap:12px}.jd-collection-link svg,.jd-text-row>svg,.pf-text-link svg{flex-shrink:0;transition:transform .2s}@media(hover:hover){.jd-collection-link a:hover svg,.pf-text-link:hover svg{transform:translate(2px,-2px)}}.jd-home h1,.jd-home h2,.jd-home h3{font-weight:500;letter-spacing:-.055em}.jd-hero{padding-top:34px;padding-bottom:0}.jd-hero-top{display:flex;justify-content:space-between;align-items:start;gap:30px}.jd-hero .pf-personal-signature{display:block;padding:0;font-size:10px;line-height:1.8;letter-spacing:.095em;margin:0;color:var(--pf-muted)}.jd-discipline{font-size:12px;line-height:1.6;text-align:right;color:var(--pf-muted)}.jd-hero-body{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(36px,4vw,72px);align-items:center;padding:28px 0 32px}.jd-hero h1{font-size:clamp(54px,6.25vw,100px);line-height:1.025;letter-spacing:-.065em;margin:0;max-width:none}.jd-hero h1 span{color:var(--pf-blue)}.jd-hero-intro{padding-bottom:3px}.jd-hero-intro .pf-landing-lead{font-size:14px;line-height:1.7;color:var(--pf-muted);margin:0 0 18px;max-width:35ch}.jd-hero-intro .pf-text-link{display:flex;width:fit-content;margin-top:9px;font-size:12px}.jd-hero-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--pf-line);padding:21px 0;font-size:10px;color:var(--pf-muted)}.jd-hero-bottom>span:first-child{display:flex;gap:13px;align-items:center;letter-spacing:.02em}.jd-hero-bottom i{width:3px;height:3px;border-radius:50%;background:var(--pf-blue)}.jd-section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:34px}.jd-practice .pf-eyebrow,.jd-section-heading .pf-eyebrow{margin:0 0 24px;color:var(--pf-muted);font-size:10px}.jd-home h2{font-size:clamp(32px,3.1vw,48px);line-height:1.12;margin:0}.jd-home h2 span{color:var(--pf-muted)}.jd-section-heading>p{max-width:330px;color:var(--pf-muted);font-size:14px;line-height:1.8;margin:0 0 4px}.jd-selected{padding-top:32px;padding-bottom:78px;scroll-margin-top:95px}.jd-project-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:36px;align-items:start}.jd-project{min-width:0}.jd-project-roam{padding-top:76px}.jd-project-image{display:block;position:relative;overflow:hidden;background:var(--pf-section);border:1px solid var(--pf-line);aspect-ratio:16/10}.jd-project-image img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transition:transform .5s ease}.jd-project-roam .jd-project-image{aspect-ratio:144/100}.jd-project-roam .jd-project-image img{object-position:50% 0}.jd-image-action{position:absolute;bottom:16px;right:16px;display:grid;place-items:center;height:42px;width:42px;border:1px solid #ffffff50;background:#151119e8;color:#fff;border-radius:50%}@media(hover:hover){.jd-project-image:hover img{transform:scale(1.025)}.jd-project-image:hover .jd-image-action{background:var(--pf-action);color:var(--pf-action-ink)}}.jd-project-title{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-top:21px}.jd-project h3{font-size:28px;margin:0;line-height:1.2}.jd-project-title>span{color:var(--pf-muted);font-size:10px;text-align:right}.jd-project>p{max-width:55ch;color:var(--pf-muted);font-size:13px;line-height:1.8;margin:14px 0 9px}.jd-project-links{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.jd-project-links .pf-text-link{font-size:12px}.jd-project-links>span{font-size:9px;color:var(--pf-muted)}.jd-collection-link{border-top:1px solid var(--pf-line);margin-top:42px;padding-top:24px;display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:12px;color:var(--pf-muted)}.jd-collection-link a{display:flex;align-items:center;gap:16px;color:var(--pf-ink);min-height:44px}.jd-underneath{padding:80px 0;background:var(--pf-section);border-block:1px solid var(--pf-line)}.jd-tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:44px}.jd-tool{border:1px solid var(--pf-line);padding:30px;background:var(--pf-paper);min-width:0;display:flex;flex-direction:column;align-items:start}.jd-tool-label{display:flex;align-items:center;gap:12px;width:100%;color:var(--pf-blue);font-size:10px}.jd-tool-label>span:last-child{margin-left:auto;font-family:ui-monospace,monospace;color:var(--pf-muted)}.jd-tool h3{font-size:clamp(23px,2.2vw,32px);line-height:1.2;margin:30px 0 13px}.jd-tool>p{font-size:13px;line-height:1.8;color:var(--pf-muted);max-width:46ch;margin:0 0 16px}.jd-tool .pf-text-link{font-size:12px;margin-top:auto}.jd-tool-stack{display:grid;grid-template-columns:1fr;gap:24px}.jd-tool-featured{padding:34px}.jd-event-model{width:100%;padding:45px 0 34px;border-bottom:1px solid var(--pf-line);color:var(--pf-muted)}.jd-event-model>code,.jd-event-model>span{font-family:ui-monospace,monospace;font-size:10px}.jd-event-model>div{display:flex;align-items:center;gap:45px;margin:24px 0}.jd-event-model>div>span{font-size:80px;line-height:1;letter-spacing:-.07em;color:var(--pf-ink);font-weight:400}.jd-event-model>div>span:last-child{color:var(--pf-blue)}.jd-event-model small{font-size:11px;letter-spacing:0;margin-top:12px}.jd-event-model small,.jd-scope{display:block;color:var(--pf-muted)}.jd-scope{font-size:10px;margin-top:14px}.jd-text-row{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--pf-line);margin-top:28px;padding:24px 0 0;gap:25px;color:var(--pf-muted);font-size:12px}.jd-text-row>span{display:flex;gap:24px;flex-wrap:wrap}.jd-text-row strong{font-weight:500;color:var(--pf-ink)}.jd-text-row:hover{color:var(--pf-blue)}.jd-practice{padding-block:92px;display:grid;grid-template-columns:1fr 1fr;gap:100px}.jd-practice-lead{max-width:38ch;color:var(--pf-muted);font-size:15px;line-height:1.85;margin:24px 0 15px}.jd-principles article{display:flex;gap:24px;border-top:1px solid var(--pf-line);padding:24px 0}.jd-principles article>span{font-size:10px;color:var(--pf-blue);padding-top:5px;font-family:ui-monospace,monospace}.jd-principles h3{font-size:20px;letter-spacing:-.035em;margin:0 0 9px}.jd-principles p{font-size:13px;line-height:1.8;max-width:42ch;color:var(--pf-muted);margin:0}.jd-context{display:flex;justify-content:space-between;gap:22px;flex-wrap:wrap;padding-block:22px;font-size:10px;color:var(--pf-muted);border-top:1px solid var(--pf-line)}.jd-context a{display:flex;align-items:center;gap:14px;min-height:30px}.jd-context>span{align-self:center}.pf-visual-dictation{background:var(--pf-section);color:var(--pf-ink);padding:34px}.jd-dictation-visual{width:100%;display:grid;gap:22px}.jd-dictation-visual>small,.jd-dictation-visual>span{font-size:10px;color:var(--pf-muted);letter-spacing:.04em}.jd-dictation-visual>div{display:flex;align-items:center;gap:6px;height:50px;color:var(--pf-blue)}.jd-dictation-visual i{display:block;background:currentColor;width:5px;height:20px;border-radius:3px}.jd-dictation-visual i:nth-child(3n){height:42px}.jd-dictation-visual i:nth-child(4n){height:30px}.jd-dictation-visual i:nth-child(5n){height:12px}.jd-dictation-visual p{font-size:24px;letter-spacing:-.04em;max-width:24ch;line-height:1.35}.pf-technology-footer{background:var(--pf-section);padding-top:70px}.pf-technology-footer .pf-contact{padding-bottom:60px;gap:100px}.pf-technology-footer .pf-contact h2{font-size:clamp(38px,5vw,74px);font-weight:500;line-height:1.05}.pf-technology-footer .pf-contact p{font-size:14px;color:var(--pf-muted)}.pf-technology-footer .pf-eyebrow,.pf-technology-footer .pf-footer-bottom{color:var(--pf-muted)}.pf-route-hero{padding-top:70px}.pf-route-hero h1{letter-spacing:-.06em;font-weight:500}.pf-filters button{border-radius:3px;min-height:44px}.pf-card-image,.pf-design-window{border-radius:3px}@media(min-width:1700px){.jd-hero h1{font-size:108px}.jd-hero-body{grid-template-columns:minmax(0,1fr) 320px}}@media(max-width:1100px) and (min-width:761px){.jd-hero-body{grid-template-columns:minmax(0,1fr) 255px;gap:28px}.jd-hero h1{font-size:6.1vw}.jd-hero-intro .pf-landing-lead{font-size:13px}.jd-hero-body{padding-block:40px}.jd-hero-top{margin-bottom:10px}.jd-practice{gap:50px}.pf-technology-header .pf-header-inner,.pf-technology-header nav{gap:18px}.jd-project-title{display:block}.jd-project-title>span{display:block;text-align:left;margin-top:8px}}@media(max-width:760px){html{scroll-padding-top:84px}.pf-technology-header .pf-header-inner{height:68px;gap:12px}.pf-technology-header nav.is-open{top:68px}.pf-technology-header .pf-github{padding-left:12px}.jd-hero{padding-top:30px}.jd-discipline,.jd-hero .pf-personal-signature{font-size:10px}.jd-hero-body{grid-template-columns:1fr;gap:26px;padding:35px 0 30px}.jd-hero h1{font-size:clamp(35px,7.7vw,57px);line-height:1.08;letter-spacing:-.06em}.jd-hero-intro .pf-landing-lead{font-size:14px;max-width:47ch;margin-bottom:20px;line-height:1.75}.jd-hero-intro .pf-text-link{display:inline-flex;margin:0 0 0 18px;font-size:11px}.jd-hero-intro .pf-button{font-size:12px;min-height:46px;padding-inline:16px;gap:20px}.jd-hero-bottom{font-size:9px;flex-wrap:wrap;gap:9px;padding-block:18px}.jd-hero-bottom>span:first-child{gap:10px}.jd-hero-bottom>span:last-child{font-size:10px}.jd-selected{padding-top:30px;padding-bottom:45px}.jd-section-heading{gap:20px;align-items:end;margin-bottom:24px}.jd-practice .pf-eyebrow,.jd-section-heading .pf-eyebrow{font-size:9px;margin-bottom:18px}.jd-home h2{font-size:31px;line-height:1.15}.jd-selected .jd-section-heading h2{font-size:clamp(23px,5.7vw,36px)}.jd-section-heading>.pf-text-link{font-size:11px;gap:7px;white-space:nowrap}.jd-project-grid{grid-template-columns:1fr;gap:35px}.jd-project-roam{padding:0}.jd-project-image{aspect-ratio:16/10}.jd-project-roam .jd-project-image{aspect-ratio:144/100}.jd-project-title{margin-top:16px;gap:12px}.jd-project h3{font-size:26px}.jd-project-title>span{font-size:10px;max-width:135px}.jd-project>p{font-size:13px;margin-top:11px}.jd-project-links{gap:0 12px}.jd-project-links>span{font-size:10px}.jd-collection-link{margin-top:30px;display:block;font-size:11px}.jd-collection-link a{margin-top:7px;font-size:12px}.jd-underneath{padding:46px 0}.jd-underneath .jd-section-heading{display:block}.jd-section-heading>p{margin-top:20px;font-size:13px;max-width:43ch}.jd-tool-grid{grid-template-columns:1fr;margin-top:28px;gap:16px}.jd-tool,.jd-tool-featured{padding:23px}.jd-tool-stack{gap:16px}.jd-tool h3{font-size:26px;margin-top:24px}.jd-event-model{padding-block:32px}.jd-event-model>div{gap:36px}.jd-event-model>div>span{font-size:70px}.jd-tool>p{font-size:13px}.jd-text-row{font-size:12px;line-height:1.7;margin-top:24px}.jd-text-row>span{gap:7px;display:grid}.jd-practice{grid-template-columns:1fr;gap:32px;padding-block:48px}.jd-practice-lead{font-size:14px}.jd-principles article{gap:20px;padding-block:22px}.jd-context{gap:12px;flex-direction:column;font-size:10px;padding-block:24px}.jd-context>span{align-self:start}.pf-technology-footer{padding-top:44px}.pf-technology-footer .pf-contact{gap:28px;padding-top:22px;padding-bottom:40px}}@media(max-width:365px){.jd-hero-intro .pf-text-link{display:flex;margin:5px 0 0}.jd-section-heading{gap:10px}.jd-project-title>span{font-size:8px;max-width:120px}.jd-home h2{font-size:28px}}@media(prefers-reduced-motion:reduce){.jd-home *,.pf-text-link svg{transition:none!important;animation:none!important}html{scroll-behavior:auto}}