/* ==========================================================================
   JFX APEX — Design system
   Obsidian / Bone / Dune / Signal · Geist + Instrument Serif · hairline grid
   Mobile-first. No framework. ~1 request.
   ========================================================================== */

:root {
	--ink: #0A0B0D;
	--ink-2: #111316;
	--ink-3: #1A1D21;
	--bone: #F4F1EA;
	--bone-2: #ECE7DC;
	--paper: #FBFAF6;
	--sand: #CDBB9C;
	--signal: #FF5B24;
	--signal-soft: rgba(255, 91, 36, .12);
	--muted-l: #5C5850;
	--muted-d: rgba(244, 241, 234, .66);
	--line-l: rgba(10, 11, 13, .12);
	--line-d: rgba(244, 241, 234, .12);

	--f-sans: "Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
	--f-serif: "Instrument Serif", "Iowan Old Style", Georgia, serif;
	--f-mono: "Geist Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;

	--gutter: 16px;
	--maxw: 1320px;
	--header-h: 64px;
	--sec-y: clamp(72px, 11vw, 148px);
	--radius: 6px;
	--ease: cubic-bezier(.2, .7, .1, 1);
}
@media (min-width: 640px) { :root { --gutter: 24px; } }
@media (min-width: 1100px) { :root { --gutter: 40px; --header-h: 76px; } }

/* ---------- Reset ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: calc(var(--header-h) + 16px); }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
body {
	margin: 0; background: var(--bone); color: var(--ink);
	font-family: var(--f-sans); font-size: 17px; line-height: 1.6; font-weight: 400;
	-webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-rendering: optimizeLegibility;
	font-feature-settings: "ss01" 1;
}
img, svg, video { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: .2em; }
p, ul, ol, figure, h1, h2, h3, h4 { margin: 0; }
:where(ul[class], ol[class]) { list-style: none; padding: 0; }
button, input, select, textarea { font: inherit; color: inherit; }
:focus-visible { outline: 2px solid var(--signal); outline-offset: 3px; border-radius: 2px; }
::selection { background: var(--signal); color: var(--ink); }
.skip-link { position: absolute; left: 12px; top: -60px; z-index: 200; background: var(--signal); color: var(--ink); padding: 10px 16px; border-radius: 999px; font-weight: 600; text-decoration: none; }
.skip-link:focus { top: 12px; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }

/* ---------- Type ---------- */
h1, h2, h3, h4 { font-weight: 560; letter-spacing: -.028em; line-height: 1.06; text-wrap: balance; }
h2 { font-size: clamp(2rem, 1.2rem + 3.6vw, 3.75rem); letter-spacing: -.035em; line-height: 1.02; }
h3 { font-size: clamp(1.15rem, 1rem + .5vw, 1.4rem); letter-spacing: -.02em; line-height: 1.2; }
em { font-family: var(--f-serif); font-style: italic; font-weight: 400; letter-spacing: -.01em; }
h1 em, h2 em { padding-right: .04em; }
.jfx-h1 { font-size: clamp(2.5rem, 1.4rem + 5.2vw, 5.4rem); letter-spacing: -.045em; line-height: .98; font-weight: 560; max-width: 16ch; }
.jfx-h1.is-xl { font-size: clamp(2.9rem, 1.2rem + 7.4vw, 7.6rem); max-width: 11ch; line-height: .93; }
.jfx-eyebrow {
	font-family: var(--f-mono); font-size: 12px; line-height: 1.4; letter-spacing: .12em; text-transform: uppercase;
	display: inline-flex; align-items: center; gap: 10px; margin-bottom: 22px; color: var(--muted-l);
}
.jfx-eyebrow::before { content: ""; width: 7px; height: 7px; background: var(--signal); flex: none; }
.jfx-lead { font-size: clamp(1.06rem, .98rem + .45vw, 1.3rem); line-height: 1.55; max-width: 58ch; margin-top: 26px; color: var(--muted-l); }
.jfx-sub { font-size: clamp(1.02rem, .97rem + .25vw, 1.15rem); line-height: 1.6; max-width: 62ch; color: var(--muted-l); }
.jfx-sub + .jfx-sub { margin-top: 18px; }
.jfx-sub.is-strong { color: var(--ink); font-weight: 500; }
.jfx-note { font-size: 15px; color: var(--muted-l); margin-top: 28px; max-width: 70ch; }
.jfx-note a, .jfx-sub a { text-decoration: underline; }

/* ---------- Layout ---------- */
.jfx-container { width: 100%; max-width: calc(var(--maxw) + var(--gutter) * 2); margin-inline: auto; padding-inline: var(--gutter); }
.jfx-section { padding-block: var(--sec-y); position: relative; }
.jfx-section.is-tight { padding-top: 0; }
.jfx-section.is-light + .jfx-section.is-light.is-tight { padding-top: 0; }
.is-light { background: var(--bone); color: var(--ink); }
.is-light.is-alt { background: var(--bone-2); }
.is-dark { background: var(--ink); color: var(--bone); }
.is-dark .jfx-eyebrow, .jfx-hero .jfx-eyebrow, .jfx-cta .jfx-eyebrow, .site-footer .jfx-eyebrow { color: var(--muted-d); }
.is-dark .jfx-sub, .is-dark .jfx-lead, .is-dark .jfx-note { color: var(--muted-d); }
.is-dark .jfx-sub.is-strong { color: var(--bone); }
.jfx-eyebrow.is-signal { color: var(--signal) !important; }

.jfx-head { margin-bottom: clamp(36px, 5vw, 64px); max-width: 900px; }
.jfx-head h2 { max-width: 20ch; }
.jfx-head .jfx-sub { margin-top: 20px; }

.jfx-split { display: grid; gap: 32px; }
.jfx-split-head h2 { max-width: 16ch; }
.jfx-split-body > * + * { margin-top: 24px; }
.jfx-split + .jfx-grid { margin-top: clamp(40px, 6vw, 72px); }
@media (min-width: 960px) {
	.jfx-split { grid-template-columns: 5fr 7fr; gap: clamp(40px, 6vw, 96px); align-items: start; }
	.jfx-split.is-wide { grid-template-columns: 6fr 6fr; }
	.jfx-split.is-founder { grid-template-columns: 4fr 7fr; align-items: center; }
	.jfx-split.is-form { grid-template-columns: 5fr 6fr; }
	.jfx-split-head .wp-block-buttons { margin-top: 32px; }
}

/* ---------- Buttons ---------- */
.wp-block-buttons { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 36px; }
.wp-block-buttons.is-center { justify-content: center; margin-top: 48px; }
.jfx-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 36px; }
.wp-block-button__link, .jfx-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px;
	min-height: 52px; padding: 0 24px; border-radius: 999px; border: 1px solid transparent;
	font-size: 16px; font-weight: 560; letter-spacing: -.01em; line-height: 1; text-decoration: none; cursor: pointer;
	transition: background-color .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease), transform .25s var(--ease);
	-webkit-tap-highlight-color: transparent; white-space: nowrap;
}
.wp-block-button__link::after, .jfx-btn.is-primary::after {
	content: ""; width: 16px; height: 16px; flex: none; background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat;
	transition: transform .25s var(--ease);
}
.wp-block-button__link:hover::after, .jfx-btn.is-primary:hover::after { transform: translateX(3px); }
.is-style-primary .wp-block-button__link, .jfx-btn.is-primary { background: var(--signal); color: var(--ink); }
.is-style-primary .wp-block-button__link:hover, .jfx-btn.is-primary:hover { background: var(--bone); }
.is-light .is-style-primary .wp-block-button__link:hover, .jfx-form .jfx-btn.is-primary:hover { background: var(--ink); color: var(--bone); }
.is-style-ghost .wp-block-button__link, .jfx-btn.is-ghost { background: transparent; color: inherit; border-color: currentColor; border-color: color-mix(in srgb, currentColor 30%, transparent); }
.is-style-ghost .wp-block-button__link::after, .is-style-ghost-dark .wp-block-button__link::after { display: none; }
.is-style-ghost .wp-block-button__link:hover, .jfx-btn.is-ghost:hover { border-color: currentColor; }
.is-style-ghost-dark .wp-block-button__link { background: var(--ink); color: var(--bone); }
.is-style-ghost-dark .wp-block-button__link:hover { background: var(--signal); color: var(--ink); }
.jfx-btn.is-wa { background: #1FAF55; color: #fff; }
.jfx-btn.is-wa:hover { background: #17964a; }
.jfx-btn.is-sm { min-height: 42px; padding: 0 18px; font-size: 14.5px; }
.jfx-btn.is-sm::after { width: 14px; height: 14px; }
.jfx-btn.is-block { width: 100%; }
.jfx-btn .ico { width: 20px; height: 20px; }
@media (max-width: 480px) {
	.jfx-hero .wp-block-buttons, .jfx-actions { flex-direction: column; align-items: stretch; }
	.jfx-hero .wp-block-button__link, .jfx-actions .jfx-btn { width: 100%; }
}

/* ---------- Header ---------- */
.site-header {
	position: fixed; inset: 0 0 auto; z-index: 100; height: var(--header-h); color: var(--bone);
	border-bottom: 1px solid transparent; transition: border-color .3s;
}
/* Blur lives on a pseudo-element: backdrop-filter on the header itself would trap the fixed mobile menu inside it. */
.site-header::before { content: ""; position: absolute; inset: 0; z-index: -1; background: rgba(10, 11, 13, .72); -webkit-backdrop-filter: saturate(160%) blur(16px); backdrop-filter: saturate(160%) blur(16px); transition: background-color .3s; }
.site-header.is-scrolled { border-bottom-color: var(--line-d); }
.site-header.is-scrolled::before, .menu-open .site-header::before { background: rgba(10, 11, 13, .92); }
.admin-bar .site-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .site-header { top: 46px; } }
.header-inner { height: 100%; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.brand { display: flex; align-items: center; flex: none; position: relative; z-index: 2; }
.brand img { width: 132px; height: auto; }
@media (min-width: 1100px) { .brand img { width: 150px; } }
.header-actions { display: flex; align-items: center; gap: 10px; position: relative; z-index: 2; }
.header-cta { display: none; }
@media (min-width: 640px) { .header-cta { display: inline-flex; } }

.menu-toggle { display: inline-flex; align-items: center; gap: 10px; height: 42px; padding: 0 14px 0 16px; border-radius: 999px; border: 1px solid var(--line-d); background: transparent; color: var(--bone); cursor: pointer; font-size: 14px; font-weight: 500; }
.menu-toggle-icon { width: 16px; height: 10px; position: relative; display: inline-block; }
.menu-toggle-icon i { position: absolute; left: 0; right: 0; height: 1.5px; background: currentColor; border-radius: 2px; transition: transform .3s var(--ease), top .3s var(--ease); }
.menu-toggle-icon i:first-child { top: 1px; }
.menu-toggle-icon i:last-child { top: 7.5px; }
.menu-open .menu-toggle-icon i:first-child { top: 4.25px; transform: rotate(45deg); }
.menu-open .menu-toggle-icon i:last-child { top: 4.25px; transform: rotate(-45deg); }

/* Mobile navigation: full-height sheet */
.primary-nav {
	position: fixed; inset: var(--header-h) 0 0 0; background: var(--ink); overflow-y: auto; overscroll-behavior: contain;
	padding: 8px var(--gutter) calc(32px + env(safe-area-inset-bottom));
	visibility: hidden; opacity: 0; transform: translateY(-8px); transition: opacity .3s var(--ease), transform .3s var(--ease), visibility 0s .3s;
}
.admin-bar .primary-nav { top: calc(var(--header-h) + 46px); }
.menu-open .primary-nav { visibility: visible; opacity: 1; transform: none; transition-delay: 0s; }
.menu-open { overflow: hidden; }
.nav-list { list-style: none; margin: 0; padding: 0; }
.nav-item { border-bottom: 1px solid var(--line-d); position: relative; display: flex; flex-wrap: wrap; align-items: center; }
.nav-link { flex: 1; display: block; padding: 18px 0; font-size: 26px; font-weight: 520; letter-spacing: -.03em; text-decoration: none; }
.nav-item.is-current > .nav-link { color: var(--signal); }
.nav-toggle-sub { width: 48px; height: 48px; border: 0; background: transparent; color: var(--bone); cursor: pointer; display: grid; place-items: center; }
.nav-toggle-sub span { width: 14px; height: 14px; position: relative; }
.nav-toggle-sub span::before, .nav-toggle-sub span::after { content: ""; position: absolute; left: 0; right: 0; top: 50%; height: 1.5px; background: currentColor; transition: transform .3s var(--ease); }
.nav-toggle-sub span::after { transform: rotate(90deg); }
.nav-toggle-sub[aria-expanded="true"] span::after { transform: rotate(0); }
.nav-panel { flex-basis: 100%; display: none; padding: 0 0 16px; }
.nav-item.is-open > .nav-panel { display: block; }
.nav-sub { list-style: none; margin: 0; padding: 0; }
.nav-sub-link { display: block; padding: 10px 0; text-decoration: none; color: var(--muted-d); }
.nav-sub-link:hover, .nav-sub-link[aria-current] { color: var(--bone); }
.nav-sub-title { display: block; font-size: 17px; color: var(--bone); }
.nav-sub-desc { display: block; font-size: 13.5px; color: var(--muted-d); margin-top: 2px; }
.nav-mobile-extra { display: grid; gap: 10px; margin-top: 28px; }
.nav-mobile-addr { font-family: var(--f-mono); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: var(--muted-d); margin-top: 12px; }

@media (min-width: 1100px) {
	.menu-toggle, .nav-mobile-extra { display: none; }
	.primary-nav { position: static; inset: auto; background: none; overflow: visible; padding: 0; visibility: visible; opacity: 1; transform: none; margin-left: auto; }
	.nav-list { display: flex; align-items: center; gap: 4px; }
	.nav-item { border: 0; flex-wrap: nowrap; }
	.nav-link { font-size: 15px; font-weight: 450; letter-spacing: -.01em; padding: 10px 14px; border-radius: 999px; color: rgba(244, 241, 234, .82); transition: color .2s, background-color .2s; }
	.nav-link:hover, .nav-item:focus-within > .nav-link { color: var(--bone); background: rgba(244, 241, 234, .06); }
	.nav-item.is-current > .nav-link { color: var(--bone); }
	.nav-item.is-current > .nav-link::after { content: ""; display: block; height: 2px; width: 14px; background: var(--signal); margin: 4px auto -6px; border-radius: 2px; }
	.nav-toggle-sub { display: none; }
	.nav-panel {
		display: block; position: absolute; top: calc(100% + 14px); left: 50%; width: 560px; margin-left: -280px;
		background: rgba(17, 19, 22, .98); border: 1px solid var(--line-d); border-radius: 10px; padding: 12px;
		opacity: 0; visibility: hidden; transform: translateY(6px); transition: opacity .2s var(--ease), transform .2s var(--ease), visibility 0s .2s;
		box-shadow: 0 30px 80px -20px rgba(0, 0, 0, .6);
	}
	.nav-panel::before { content: ""; position: absolute; inset: -16px 0 auto; height: 16px; }
	.nav-item.has-sub:hover > .nav-panel, .nav-item.has-sub:focus-within > .nav-panel { opacity: 1; visibility: visible; transform: none; transition-delay: 0s; }
	.nav-sub { display: grid; grid-template-columns: 1fr 1fr; gap: 2px; }
	.nav-sub-link { padding: 12px 14px; border-radius: 6px; transition: background-color .2s; }
	.nav-sub-link:hover { background: rgba(244, 241, 234, .06); }
	.nav-sub-title { font-size: 14.5px; font-weight: 500; }
	.nav-sub-desc { font-size: 12.5px; }
}

/* ---------- Hero ---------- */
.site-main { display: block; }
.jfx-hero {
	position: relative; overflow: hidden; background: var(--ink); color: var(--bone);
	padding-top: calc(var(--header-h) + clamp(40px, 8vw, 112px)); padding-bottom: clamp(64px, 9vw, 120px);
	isolation: isolate;
}
.jfx-hero::before { /* signal glow */
	content: ""; position: absolute; z-index: -1; width: 900px; height: 900px; right: -320px; top: -420px;
	background: radial-gradient(closest-side, rgba(255, 91, 36, .22), rgba(255, 91, 36, 0));
	pointer-events: none;
}
.jfx-hero::after { /* measured grid */
	content: ""; position: absolute; inset: 0; z-index: -2; pointer-events: none;
	background-image: linear-gradient(to right, rgba(244, 241, 234, .045) 1px, transparent 1px);
	background-size: calc((min(100vw, var(--maxw) + var(--gutter) * 2) - var(--gutter) * 2) / 6) 100%;
	background-position: center top;
	-webkit-mask: linear-gradient(to bottom, #000 40%, transparent); mask: linear-gradient(to bottom, #000 40%, transparent);
}
.jfx-hero .jfx-lead { color: var(--muted-d); }
.jfx-hero h1 em { color: var(--bone); }
.jfx-hero.is-slim { padding-bottom: clamp(48px, 6vw, 80px); }
.jfx-hero-meta { display: flex; flex-wrap: wrap; gap: 8px 18px; margin-top: 30px; font-family: var(--f-mono); font-size: 12px; letter-spacing: .06em; text-transform: uppercase; color: var(--muted-d); }
.jfx-hero-meta span { display: inline-flex; align-items: center; gap: 8px; }
.jfx-hero-meta span::before { content: ""; width: 5px; height: 5px; border-radius: 50%; background: var(--signal); }

.jfx-hero.is-home { padding-bottom: 0; }
.jfx-hero-grid { display: grid; gap: 56px; padding-bottom: clamp(56px, 8vw, 104px); }
@media (min-width: 1024px) {
	.jfx-hero.is-home { min-height: min(100svh, 980px); display: flex; flex-direction: column; justify-content: space-between; }
	.jfx-hero-grid { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); align-items: center; gap: 40px; margin-block: auto; }
}
.jfx-hero-visual { position: relative; }

/* Breadcrumbs */
.jfx-crumbs ol { list-style: none; padding: 0; margin: 0 0 28px; display: flex; flex-wrap: wrap; gap: 6px; font-size: 13px; color: var(--muted-d); }
.jfx-crumbs li { display: inline-flex; align-items: center; gap: 6px; }
.jfx-crumbs li + li::before { content: "/"; opacity: .45; }
.jfx-crumbs a { text-decoration: none; }
.jfx-crumbs a:hover { color: var(--bone); }
.jfx-crumbs [aria-current] { color: var(--bone); }

/* Growth-system visual */
.jfx-sys { position: relative; max-width: 560px; margin-inline: auto; border: 1px solid var(--line-d); border-radius: 10px; background: linear-gradient(180deg, rgba(244, 241, 234, .03), rgba(244, 241, 234, 0)); padding: 10px; }
.jfx-sys::after { content: "HOW IT WORKS"; position: absolute; left: 16px; bottom: -11px; padding: 2px 8px; background: var(--ink); font-family: var(--f-mono); font-size: 10px; letter-spacing: .14em; color: var(--muted-d); }
.sys { width: 100%; height: auto; overflow: visible; }
.sys-grid { fill: none; stroke: rgba(244, 241, 234, .05); stroke-width: 1; }
.sys-path { fill: none; stroke: rgba(244, 241, 234, .2); stroke-width: 1.2; stroke-dasharray: 3 5; }
.sys-path.is-out { stroke: rgba(255, 91, 36, .5); stroke-dasharray: none; }
.sys-dot { fill: var(--bone); }
.sys-dot.is-hot { fill: var(--signal); }
.sys-chip rect { fill: var(--ink-2); stroke: rgba(244, 241, 234, .18); }
.sys-chip text, .sys-pill-t, .sys-out text { font-family: var(--f-sans); fill: var(--bone); text-anchor: middle; }
.sys-chip text { font-size: 13px; font-weight: 450; }
.sys-core > rect:first-child { fill: #121418; stroke: rgba(255, 91, 36, .55); }
.sys-core-label { font-family: var(--f-mono); font-size: 11px; letter-spacing: .16em; fill: var(--sand); }
.sys-live { fill: var(--signal); animation: sysPulse 1.8s ease-in-out infinite; transform-origin: 404px 244px; }
.sys-pill { fill: var(--ink-3); stroke: rgba(244, 241, 234, .12); }
.sys-pill-t { font-size: 12.5px; }
.sys-out rect { fill: rgba(255, 91, 36, .1); stroke: var(--signal); }
.sys-out text { font-size: 16px; font-weight: 600; letter-spacing: -.01em; }
@keyframes sysPulse { 0%, 100% { opacity: 1; } 50% { opacity: .25; } }

/* Ticker */
.jfx-ticker { position: relative; display: flex; overflow: hidden; border-top: 1px solid var(--line-d); padding-block: 22px; -webkit-mask: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); mask: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); }
.jfx-ticker ul { display: flex; flex: none; gap: 0; margin: 0; padding: 0; list-style: none; animation: ticker 48s linear infinite; }
.jfx-ticker li { flex: none; display: inline-flex; align-items: center; gap: 28px; padding-right: 28px; font-family: var(--f-mono); font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--muted-d); white-space: nowrap; }
.jfx-ticker li::after { content: ""; width: 6px; height: 6px; background: rgba(255, 91, 36, .8); transform: rotate(45deg); }
@keyframes ticker { to { transform: translateX(-100%); } }

/* ---------- Cards / grid ---------- */
/* Hairline grid: borders on cells (not a gap trick) so incomplete rows stay clean. */
.jfx-grid { display: grid; grid-template-columns: 1fr; gap: 0; border-top: 1px solid var(--line-l); border-left: 1px solid var(--line-l); }
.jfx-grid > * { border-right: 1px solid var(--line-l); border-bottom: 1px solid var(--line-l); }
.is-dark .jfx-grid, .is-dark .jfx-grid > * { border-color: var(--line-d); }
@media (min-width: 640px) {
	.jfx-grid.cols-2, .jfx-grid.cols-3, .jfx-grid.cols-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1024px) {
	.jfx-grid.cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.jfx-grid.cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
.jfx-card, .jfx-svc {
	position: relative; background: var(--bone); padding: clamp(24px, 3vw, 36px); display: flex; flex-direction: column; gap: 12px; min-height: 100%;
	transition: background-color .35s var(--ease);
}
.is-alt .jfx-card, .is-alt .jfx-svc { background: var(--bone-2); }
.is-dark .jfx-card { background: var(--ink); }
.jfx-card-tag { font-family: var(--f-mono); font-size: 11.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--muted-l); margin-bottom: 10px; }
.is-dark .jfx-card-tag { color: var(--muted-d); }
.jfx-card-title { font-size: clamp(1.2rem, 1.05rem + .55vw, 1.5rem); line-height: 1.18; font-weight: 560; letter-spacing: -.025em; }
.jfx-card-title a { text-decoration: none; }
.jfx-card-title a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.jfx-card-text { color: var(--muted-l); font-size: 15.5px; line-height: 1.55; }
.is-dark .jfx-card-text { color: var(--muted-d); }
.jfx-card.is-linked::before, .jfx-svc::before {
	content: ""; position: absolute; top: clamp(24px, 3vw, 36px); right: clamp(24px, 3vw, 36px); width: 18px; height: 18px; background: currentColor; opacity: .35;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17L17 7M8 7h9v9'/%3E%3C/svg%3E") center/contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17L17 7M8 7h9v9'/%3E%3C/svg%3E") center/contain no-repeat;
	transition: transform .35s var(--ease), opacity .35s, background-color .35s;
}
.jfx-card.is-linked:hover, .jfx-svc:hover { background: var(--paper); }
.jfx-card.is-linked:hover::before, .jfx-svc:hover::before { opacity: 1; background: var(--signal); transform: translate(2px, -2px); }
.jfx-card.is-linked:hover .jfx-card-title, .jfx-svc:hover .jfx-card-title { text-decoration: underline; text-decoration-color: var(--signal); text-underline-offset: .18em; text-decoration-thickness: 1.5px; }
.jfx-card.is-linked .jfx-card-title, .jfx-svc .jfx-card-title { padding-right: 32px; }
@media (hover: hover) and (pointer: fine) {
	.jfx-card.is-linked, .jfx-svc { background-image: radial-gradient(420px circle at var(--mx, -500px) var(--my, -500px), rgba(255, 91, 36, .07), transparent 60%); }
}
.jfx-grid.is-compact .jfx-card { padding: clamp(22px, 2.4vw, 30px); }
.jfx-grid.is-compact .jfx-card-title { font-size: 1.12rem; }
.jfx-grid.is-compact .jfx-card-text { font-size: 15px; }
.jfx-grid.is-compact .jfx-card-tag { margin-bottom: 4px; }

/* Services grid on home: larger first card */
@media (min-width: 1024px) {
	.jfx-grid.is-services .jfx-card { min-height: 280px; }
	.jfx-grid.is-services .jfx-card-text { margin-top: auto; }
	.jfx-grid.is-industries .jfx-card { min-height: 240px; }
	.jfx-grid.is-industries .jfx-card-text { margin-top: auto; }
}
.jfx-grid.is-industries .jfx-card:first-child { background: var(--ink); color: var(--bone); }
.jfx-grid.is-industries .jfx-card:first-child .jfx-card-tag { color: var(--signal); }
.jfx-grid.is-industries .jfx-card:first-child .jfx-card-text { color: var(--muted-d); }
.jfx-grid.is-industries .jfx-card:first-child:hover { background: var(--ink-2); }
.jfx-grid.is-principles { margin-top: clamp(40px, 6vw, 72px); }
.jfx-grid.is-principles .jfx-card-tag { color: var(--signal); }
.jfx-grid.is-capabilities .jfx-card { min-height: 220px; }
.jfx-grid.is-capabilities .jfx-card-text { font-size: 16px; max-width: 46ch; }
.jfx-grid.is-why .jfx-card-tag { display: none; }
.jfx-grid.is-why .jfx-card::after { content: ""; width: 10px; height: 10px; background: var(--signal); order: -1; margin-bottom: 14px; clip-path: polygon(0 100%, 35% 0, 65% 0, 100% 100%); }
.jfx-grid.is-leaks .jfx-card-tag { color: var(--signal); }

/* Services hub */
.jfx-stage-head { display: grid; gap: 10px; margin-bottom: clamp(32px, 5vw, 56px); }
@media (min-width: 960px) { .jfx-stage-head { grid-template-columns: 120px 5fr 6fr; align-items: end; gap: 32px; } .jfx-stage-head .jfx-sub { margin-left: auto; } }
.jfx-stage-num { font-family: var(--f-serif); font-style: italic; font-size: clamp(3rem, 6vw, 5.5rem); line-height: .8; color: var(--signal); }
.jfx-mini { list-style: none; padding: 0; margin: 12px 0 0; display: grid; gap: 7px; border-top: 1px solid var(--line-l); padding-top: 16px; }
.jfx-mini li { font-size: 14.5px; display: flex; gap: 10px; align-items: baseline; color: var(--muted-l); }
.jfx-mini li::before { content: ""; width: 5px; height: 5px; background: var(--signal); flex: none; transform: translateY(-2px); }
.jfx-svc .jfx-card-text { margin-bottom: 4px; }

/* ---------- Steps ---------- */
.jfx-steps { display: grid; gap: 0; counter-reset: s; border-top: 1px solid var(--line-l); }
.is-dark .jfx-steps { border-color: var(--line-d); }
.jfx-step { padding: 26px 0; border-bottom: 1px solid var(--line-l); display: grid; grid-template-columns: 56px 1fr; column-gap: 12px; }
.is-dark .jfx-step { border-color: var(--line-d); }
.jfx-step-num { font-family: var(--f-mono); font-size: 13px; color: var(--signal); grid-row: span 2; padding-top: 4px; }
.jfx-step-title { font-size: 1.25rem; }
.jfx-step-text { color: var(--muted-l); font-size: 15.5px; margin-top: 8px; }
.is-dark .jfx-step-text, .jfx-hero .jfx-step-text { color: var(--muted-d); }
@media (min-width: 900px) {
	.jfx-steps { grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 0; gap: 0 28px; }
	.jfx-steps.is-five { grid-template-columns: repeat(5, minmax(0, 1fr)); }
	.jfx-step { display: block; border-bottom: 0; border-top: 1px solid var(--line-l); padding: 26px 0 0; position: relative; }
	.is-dark .jfx-step { border-top-color: var(--line-d); }
	.jfx-step::before { content: ""; position: absolute; top: -1px; left: 0; width: 36px; height: 2px; background: var(--signal); transform-origin: left; }
	.jfx-step-num { display: block; margin-bottom: 36px; padding: 0; }
}
.jfx-steps.is-mini { margin-top: 36px; grid-template-columns: 1fr !important; border-top: 1px solid var(--line-d); gap: 0; }
.jfx-steps.is-mini .jfx-step { display: grid; grid-template-columns: 44px 1fr; padding: 18px 0; border-top: 0; border-bottom: 1px solid var(--line-d); }
.jfx-steps.is-mini .jfx-step::before { display: none; }
.jfx-steps.is-mini .jfx-step-num { margin: 0; }
.jfx-steps.is-mini .jfx-step-title { font-size: 1.05rem; }
.jfx-steps.is-mini .jfx-step-text { font-size: 14.5px; margin-top: 4px; }

/* ---------- Chips & lists ---------- */
.jfx-chips { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; padding: 0; }
.jfx-chips li { padding: 9px 14px; border: 1px solid var(--line-l); border-radius: 999px; font-size: 14.5px; line-height: 1.2; background: rgba(255, 255, 255, .35); }
.jfx-chips.is-dark li, .is-dark .jfx-chips li { border-color: var(--line-d); background: rgba(244, 241, 234, .03); color: var(--bone); }
.jfx-ticks { list-style: none; padding: 0; display: grid; gap: 0; border-top: 1px solid var(--line-l); }
.jfx-ticks li { display: flex; gap: 14px; padding: 14px 0; border-bottom: 1px solid var(--line-l); font-size: 16px; }
.jfx-ticks li::before { content: ""; width: 18px; height: 18px; flex: none; margin-top: 3px; background: var(--signal);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/contain no-repeat; }
.jfx-ticks.is-dark, .is-dark .jfx-ticks { border-color: var(--line-d); }
.jfx-ticks.is-dark li, .is-dark .jfx-ticks li { border-color: var(--line-d); }
.jfx-ticks.is-large li { font-size: 16.5px; line-height: 1.55; padding: 20px 0; color: var(--muted-d); }
.jfx-ticks.is-large strong { color: var(--bone); font-weight: 560; }

/* Industry journey flow */
.jfx-flow { list-style: none; padding: 0; margin: 0; display: grid; gap: 0; counter-reset: f; }
.jfx-flow li { position: relative; display: flex; align-items: center; gap: 16px; padding: 16px 0 16px 0; border-bottom: 1px solid var(--line-d); font-size: 18px; font-weight: 500; letter-spacing: -.01em; }
.jfx-flow .jf-n { font-family: var(--f-mono); font-size: 12px; color: var(--signal); width: 28px; }
.jfx-flow li:last-child { color: var(--signal); }
@media (min-width: 1024px) {
	.jfx-flow { grid-template-columns: repeat(7, minmax(0, 1fr)); border-top: 1px solid var(--line-d); }
	.jfx-flow li { flex-direction: column; align-items: flex-start; gap: 40px; padding: 22px 16px 22px 0; border-bottom: 0; font-size: 16px; }
	.jfx-flow li::before { content: ""; position: absolute; top: -5px; left: 0; width: 9px; height: 9px; border-radius: 50%; background: var(--ink); border: 1.5px solid var(--signal); }
	.jfx-flow li:last-child::before { background: var(--signal); }
}

/* ---------- Patient journey ---------- */
.jfx-journey { list-style: none; padding: 0; margin: 0; position: relative; display: grid; gap: 0; }
.jfx-journey::before { content: ""; position: absolute; left: 7px; top: 8px; bottom: 8px; width: 1px; background: var(--line-d); }
.jfx-journey::after { content: ""; position: absolute; left: 6px; top: 0; width: 3px; height: 80px; border-radius: 3px; background: linear-gradient(to bottom, transparent, var(--signal)); animation: journeyY 5s var(--ease) infinite; }
.jfx-journey-step { position: relative; padding: 0 0 36px 44px; }
.jj-node { position: absolute; left: 0; top: 4px; width: 15px; height: 15px; border-radius: 50%; background: var(--ink); border: 1.5px solid rgba(244, 241, 234, .5); }
.jfx-journey-step:last-child .jj-node { background: var(--signal); border-color: var(--signal); box-shadow: 0 0 0 6px rgba(255, 91, 36, .18); }
.jj-num { display: block; font-family: var(--f-mono); font-size: 12px; color: var(--signal); margin-bottom: 6px; }
.jj-title { font-size: 1.25rem; }
.jj-text { color: var(--muted-d); font-size: 15px; margin-top: 8px; max-width: 46ch; }
.jj-tools { font-family: var(--f-mono); font-size: 11.5px; letter-spacing: .06em; text-transform: uppercase; color: var(--sand); margin-top: 12px; }
@keyframes journeyY { from { transform: translateY(0); opacity: 0; } 15% { opacity: 1; } 85% { opacity: 1; } to { transform: translateY(calc(var(--jh, 900px) - 80px)); opacity: 0; } }
@media (min-width: 1100px) {
	.jfx-journey { grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 0 20px; padding-top: 40px; }
	.jfx-journey::before { left: 0; right: 0; top: 7px; bottom: auto; width: auto; height: 1px; }
	.jfx-journey::after { left: 0; top: 6px; width: 120px; height: 3px; background: linear-gradient(to right, transparent, var(--signal)); animation: journeyX 5.5s var(--ease) infinite; }
	.jfx-journey-step { padding: 0; }
	.jj-node { top: -40px; }
	.jj-title { font-size: 1.05rem; }
	.jj-text { font-size: 14px; }
	.jj-tools { font-size: 10.5px; line-height: 1.6; }
}
@keyframes journeyX { from { transform: translateX(0); opacity: 0; } 12% { opacity: 1; } 88% { opacity: 1; } to { transform: translateX(calc(var(--jw, 1200px) - 120px)); opacity: 0; } }

/* ---------- FAQ ---------- */
.jfx-faq { border-top: 1px solid var(--line-l); }
.jfx-faq-item { border-bottom: 1px solid var(--line-l); }
.jfx-faq-item summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: flex-start; gap: 24px; padding: 24px 0; font-size: clamp(1.05rem, 1rem + .35vw, 1.25rem); font-weight: 520; letter-spacing: -.015em; line-height: 1.35; }
.jfx-faq-item summary::-webkit-details-marker { display: none; }
.jfx-faq-item summary::after { content: ""; width: 22px; height: 22px; flex: none; margin-top: 2px; border-radius: 50%; border: 1px solid var(--line-l); background:
	linear-gradient(currentColor, currentColor) center/10px 1.5px no-repeat,
	linear-gradient(currentColor, currentColor) center/1.5px 10px no-repeat; transition: transform .3s var(--ease), background-color .3s; }
.jfx-faq-item[open] summary::after { transform: rotate(45deg); background-color: var(--signal); border-color: var(--signal); }
.jfx-faq-item p { color: var(--muted-l); padding: 0 48px 26px 0; max-width: 70ch; }
.jfx-faq-wrap .jfx-split-head h2 { max-width: 12ch; }

/* ---------- CTA band ---------- */
.jfx-cta { position: relative; overflow: hidden; background: var(--ink); color: var(--bone); padding-block: clamp(88px, 12vw, 176px); isolation: isolate; }
.jfx-cta-inner { max-width: 980px; }
.jfx-cta-title { font-size: clamp(2.4rem, 1.2rem + 5.6vw, 6rem); line-height: .96; letter-spacing: -.045em; max-width: 14ch; }
.jfx-cta-text { color: var(--muted-d); font-size: clamp(1.02rem, .97rem + .3vw, 1.2rem); max-width: 56ch; margin-top: 26px; }
.jfx-cta-mark { position: absolute; z-index: -1; right: -8vw; bottom: -2px; width: min(62vw, 760px); aspect-ratio: 48 / 38; opacity: .9;
	background: linear-gradient(to bottom, var(--signal) 0 18.4%, #16181C 18.4% 100%);
	clip-path: polygon(0 100%, 42.5% 0, 57.5% 0, 100% 100%, 76% 100%, 50% 30%, 24% 100%); }
@media (max-width: 767px) { .jfx-cta-mark { opacity: .55; width: 90vw; right: -30vw; } }

/* ---------- Founder ---------- */
.jfx-founder { display: grid; gap: 18px; max-width: 420px; }
.founder-media { position: relative; aspect-ratio: 4 / 5; border-radius: 8px; overflow: hidden; background: var(--ink-3); border: 1px solid var(--line-d); display: grid; place-items: center; }
.founder-media img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(.2) contrast(1.05); }
.founder-mono { font-family: var(--f-serif); font-style: italic; font-size: clamp(6rem, 18vw, 10rem); line-height: 1; color: var(--bone); letter-spacing: -.04em; position: relative; }
.founder-mono::after { content: ""; position: absolute; left: 50%; top: -.34em; width: .34em; height: .27em; transform: translateX(-50%); background: linear-gradient(to bottom, var(--signal) 0 22%, rgba(244,241,234,.9) 22% 100%); clip-path: polygon(0 100%, 40% 0, 60% 0, 100% 100%, 78% 100%, 50% 38%, 22% 100%); }
.founder-media::after { content: ""; position: absolute; inset: 0; background-image: linear-gradient(to right, rgba(244, 241, 234, .05) 1px, transparent 1px), linear-gradient(to bottom, rgba(244, 241, 234, .05) 1px, transparent 1px); background-size: 40px 40px; pointer-events: none; }
.jfx-founder figcaption { display: grid; gap: 4px; }
.founder-name { font-size: 1.2rem; font-weight: 560; letter-spacing: -.02em; }
.founder-role { font-family: var(--f-mono); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: var(--muted-d); }
.founder-link { font-size: 14px; margin-top: 6px; }

/* ---------- Facts ---------- */
.jfx-facts { display: grid; grid-template-columns: 1fr; border-top: 1px solid var(--line-l); }
.jfx-facts p { display: grid; gap: 4px; padding: 18px 0; border-bottom: 1px solid var(--line-l); font-size: 1.1rem; font-weight: 500; }
.jfx-facts span { font-family: var(--f-mono); font-size: 11.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--muted-l); font-weight: 400; }
@media (min-width: 768px) { .jfx-facts { grid-template-columns: repeat(3, 1fr); column-gap: 32px; } }

/* ---------- Contact & forms ---------- */
.jfx-hero.is-contact .jfx-split { align-items: start; }
.jfx-contact-cards { list-style: none; padding: 0; margin: 32px 0 0; display: grid; gap: 1px; background: var(--line-d); border: 1px solid var(--line-d); border-radius: 8px; overflow: hidden; }
.jfx-contact-cards a { display: grid; grid-template-columns: 40px 1fr auto; grid-template-rows: auto auto; column-gap: 14px; align-items: center; padding: 16px 18px; background: var(--ink); text-decoration: none; transition: background-color .2s; }
.jfx-contact-cards a:hover { background: var(--ink-2); }
.cc-icon { grid-row: span 2; width: 40px; height: 40px; border-radius: 50%; display: grid; place-items: center; border: 1px solid var(--line-d); color: var(--signal); }
.cc-label { font-family: var(--f-mono); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--muted-d); }
.cc-value { font-size: 15.5px; color: var(--bone); grid-column: 2; }
.cc-go { grid-row: 1 / span 2; grid-column: 3; font-size: 13px; color: var(--muted-d); }
@media (max-width: 420px) { .cc-go { display: none; } .jfx-contact-cards a { grid-template-columns: 40px 1fr; } }
.is-thanks .jfx-contact-cards { max-width: 560px; }

.jfx-form { background: var(--paper); color: var(--ink); border-radius: 12px; padding: clamp(20px, 3.4vw, 36px); box-shadow: 0 40px 100px -40px rgba(0, 0, 0, .55); position: relative; }
.f-title { font-weight: 560; font-size: 1.2rem; margin-bottom: 18px; }
.f-grid { display: grid; gap: 14px; }
@media (min-width: 560px) { .f-grid { grid-template-columns: 1fr 1fr; } }
.f-field { display: grid; gap: 6px; }
.f-field label, .f-needs legend { font-size: 13.5px; font-weight: 500; color: #34322e; }
.f-field label span[aria-hidden] { color: var(--signal); }
.f-opt { color: var(--muted-l); font-weight: 400; }
.jfx-form input[type="text"], .jfx-form input[type="tel"], .jfx-form input[type="email"], .jfx-form select, .jfx-form textarea {
	width: 100%; min-height: 50px; padding: 12px 14px; border: 1px solid rgba(10, 11, 13, .18); border-radius: 8px; background: #fff; font-size: 16px; line-height: 1.3;
	transition: border-color .2s, box-shadow .2s; -webkit-appearance: none; appearance: none;
}
.jfx-form select { background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230A0B0D' stroke-width='1.6'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 12px center/18px no-repeat; padding-right: 40px; }
.jfx-form textarea { min-height: 96px; resize: vertical; }
.jfx-form input:focus, .jfx-form select:focus, .jfx-form textarea:focus { outline: none; border-color: var(--ink); box-shadow: 0 0 0 3px rgba(255, 91, 36, .25); }
.jfx-form ::placeholder { color: #9a958c; }
.f-needs { border: 0; padding: 0; margin: 18px 0 14px; }
.f-needs legend { margin-bottom: 10px; padding: 0; }
.f-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.f-chip { position: relative; cursor: pointer; }
.f-chip input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.f-chip span { display: inline-flex; align-items: center; min-height: 40px; padding: 0 14px; border: 1px solid rgba(10, 11, 13, .18); border-radius: 999px; font-size: 14px; background: #fff; transition: all .2s; user-select: none; }
.f-chip input:checked + span { background: var(--ink); color: var(--bone); border-color: var(--ink); }
.f-chip input:focus-visible + span { outline: 2px solid var(--signal); outline-offset: 2px; }
.f-foot { display: grid; gap: 14px; margin-top: 20px; }
.f-submit { width: 100%; min-height: 56px; font-size: 16.5px; }
.f-note { font-size: 13px; color: var(--muted-l); line-height: 1.5; }
.f-note a { text-decoration: underline; }
.f-alert { background: #fff1ec; border: 1px solid rgba(255, 91, 36, .5); color: #7a2a0e; padding: 12px 14px; border-radius: 8px; margin-bottom: 16px; font-size: 14.5px; }
.f-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.f-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; padding: 4px; background: var(--bone-2); border-radius: 999px; margin-bottom: 20px; }
.f-tabs button { min-height: 42px; padding: 0 8px; white-space: nowrap; border: 0; border-radius: 999px; background: transparent; font-size: 14.5px; font-weight: 520; cursor: pointer; color: var(--muted-l); }
.f-tabs button[aria-pressed="true"] { background: var(--ink); color: var(--bone); }
.jfx-form.is-sending .f-submit { opacity: .6; pointer-events: none; }

/* ---------- Prose ---------- */
.jfx-prose { max-width: 740px; }
.jfx-prose > * + * { margin-top: 1.1em; }
.jfx-prose h2 { font-size: clamp(1.5rem, 1.2rem + 1.2vw, 2.1rem); margin-top: 2em; }
.jfx-prose h3 { margin-top: 1.6em; }
.jfx-prose ul, .jfx-prose ol { padding-left: 1.2em; }
.jfx-prose li + li { margin-top: .5em; }
.jfx-prose a { text-decoration: underline; text-decoration-color: var(--signal); }
.jfx-prose img { border-radius: 8px; }
.jfx-prose p, .jfx-prose li { color: #2c2a26; }

/* ---------- Footer ---------- */
.site-footer { position: relative; overflow: hidden; background: var(--ink); color: var(--bone); padding-top: clamp(72px, 9vw, 120px); border-top: 1px solid var(--line-d); isolation: isolate; }
.footer-top { display: grid; gap: 56px; padding-bottom: 64px; }
@media (min-width: 1024px) { .footer-top { grid-template-columns: 4fr 8fr; gap: 64px; } }
.footer-brand img { width: 170px; }
.footer-claim { font-size: clamp(1.8rem, 1.3rem + 2vw, 2.6rem); line-height: 1.05; letter-spacing: -.035em; font-weight: 520; margin-top: 32px; max-width: 12ch; }
.footer-desc { color: var(--muted-d); font-size: 15px; margin-top: 18px; max-width: 42ch; }
.footer-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 40px 24px; }
@media (min-width: 768px) { .footer-cols { grid-template-columns: repeat(4, 1fr); } }
.footer-h { font-family: var(--f-mono); font-size: 11.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--muted-d); margin-bottom: 16px; }
.footer-col ul { list-style: none; padding: 0; margin: 0; display: grid; gap: 9px; }
.footer-col a { text-decoration: none; font-size: 14.5px; color: rgba(244, 241, 234, .86); }
.footer-col a:hover { color: var(--signal); }
.footer-col address { font-style: normal; font-size: 14.5px; line-height: 1.6; color: rgba(244, 241, 234, .86); margin-bottom: 16px; }
.footer-social { margin-top: 18px !important; padding-top: 16px !important; border-top: 1px solid var(--line-d); }
.footer-bottom { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 24px; padding-block: 24px calc(24px + 72px); border-top: 1px solid var(--line-d); font-family: var(--f-mono); font-size: 11.5px; letter-spacing: .08em; text-transform: uppercase; color: var(--muted-d); }
@media (min-width: 1024px) { .footer-bottom { padding-bottom: 28px; } }
.footer-mark { position: absolute; z-index: -1; left: 50%; bottom: -1px; transform: translateX(-50%); width: min(1200px, 150vw); aspect-ratio: 48 / 10; opacity: .5;
	background: linear-gradient(to right, transparent, rgba(255, 91, 36, .12), transparent); clip-path: polygon(0 100%, 45% 0, 55% 0, 100% 100%); pointer-events: none; }

/* ---------- Mobile sticky CTA ---------- */
.mobile-bar { position: fixed; z-index: 90; left: 10px; right: 10px; bottom: calc(10px + env(safe-area-inset-bottom)); display: flex; gap: 8px; padding: 6px; border-radius: 999px;
	background: rgba(17, 19, 22, .9); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); border: 1px solid var(--line-d); box-shadow: 0 16px 40px -10px rgba(0, 0, 0, .5);
	transform: translateY(0); transition: transform .35s var(--ease), opacity .35s; }
.mobile-bar a { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; border-radius: 999px; text-decoration: none; font-weight: 560; font-size: 15px; }
.mb-primary { flex: 1; background: var(--signal); color: var(--ink); }
.mb-wa { padding: 0 18px; background: #1FAF55; color: #fff; }
.mobile-bar.is-hidden, .menu-open .mobile-bar { transform: translateY(140%); opacity: 0; pointer-events: none; }
@media (min-width: 1024px) { .mobile-bar { display: none; } }

/* ---------- Motion ---------- */
.js [data-reveal] { opacity: 0; transform: translateY(18px); transition: opacity .8s var(--ease), transform .8s var(--ease); transition-delay: var(--d, 0s); }
.js [data-reveal].is-in { opacity: 1; transform: none; }
.jfx-hero.is-home .jfx-hero-copy > * { animation: rise .9s var(--ease) both; }
.jfx-hero.is-home .jfx-hero-copy > *:nth-child(2) { animation-delay: .06s; }
.jfx-hero.is-home .jfx-hero-copy > *:nth-child(3) { animation-delay: .14s; }
.jfx-hero.is-home .jfx-hero-copy > *:nth-child(4) { animation-delay: .22s; }
.jfx-hero.is-home .jfx-hero-copy > *:nth-child(5) { animation-delay: .3s; }
.jfx-hero.is-home .jfx-hero-visual { animation: fadeIn 1.2s .2s var(--ease) both; }
@keyframes rise { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
	.js [data-reveal] { opacity: 1; transform: none; }
	.jfx-ticker ul { animation: none; }
	.jfx-ticker ul[aria-hidden] { display: none; }
	.jfx-ticker { flex-wrap: wrap; }
}

/* ---------- Misc ---------- */
.jfx-pagination { margin-top: 40px; }
.jfx-pagination .nav-links { display: flex; gap: 8px; }
.jfx-pagination a, .jfx-pagination span { padding: 8px 14px; border: 1px solid var(--line-l); border-radius: 999px; text-decoration: none; }
.is-404 { min-height: 80svh; }
.wp-block-group:empty { display: none; }

/* ---------- Founder strip + stats ---------- */
.jfx-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--line-l); margin-top: 32px !important; }
.jfx-stats p { display: grid; align-content: start; gap: 8px; padding: 20px 14px 0 0; font-size: 13.5px; line-height: 1.4; color: var(--muted-l); }
.jfx-stats p + p { padding-left: 14px; border-left: 1px solid var(--line-l); }
.jfx-stats strong { font-size: clamp(1.7rem, 1.2rem + 2.4vw, 3.1rem); line-height: 1; letter-spacing: -.045em; font-weight: 560; color: var(--ink); white-space: nowrap; }
.is-dark .jfx-stats, .is-dark .jfx-stats p + p { border-color: var(--line-d); }
.is-dark .jfx-stats strong { color: var(--bone); }
.jfx-founder-strip .jfx-split-body h2 { max-width: 20ch; }
.jfx-founder-strip .jfx-founder { max-width: 230px; }
@media (min-width: 960px) { .jfx-founder-strip .jfx-founder { max-width: 400px; } }
.is-light .founder-role { color: var(--muted-l); }
.is-light .founder-media { border-color: var(--line-l); }
@media (max-width: 959px) { .jfx-founder-strip .jfx-split { gap: 28px; } }

/* ---------- Founder badge (top of hero) ---------- */
.jfx-fbadge { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 12px 18px; margin-top: 36px; padding: 8px 20px 8px 8px; border: 1px solid var(--line-d); border-radius: 999px; background: rgba(244, 241, 234, .05); color: var(--bone); text-decoration: none; transition: border-color .25s, background-color .25s; max-width: 100%; }
.jfx-fbadge:hover { border-color: rgba(255, 91, 36, .6); background: rgba(244, 241, 234, .08); }
.fb-avatar { width: 56px; height: 56px; flex: none; border-radius: 50%; overflow: hidden; display: grid; place-items: center; background: var(--signal); color: var(--ink); font-family: var(--f-serif); font-style: italic; font-size: 26px; letter-spacing: -.02em; }
.fb-avatar img { width: 100%; height: 100%; object-fit: cover; }
.fb-who { display: grid; gap: 3px; }
.fb-name { font-size: 18px; font-weight: 600; letter-spacing: -.02em; line-height: 1.1; }
.fb-role { font-family: var(--f-mono); font-size: 11px; letter-spacing: .06em; text-transform: uppercase; color: var(--muted-d); }
.fb-stats { display: flex; gap: 16px; padding-left: 18px; border-left: 1px solid var(--line-d); }
.fb-stat { font-size: 13.5px; color: var(--muted-d); white-space: nowrap; }
.fb-stat strong { display: block; font-size: 20px; font-weight: 600; color: var(--signal); letter-spacing: -.02em; line-height: 1.1; }
@media (max-width: 640px) {
	.jfx-fbadge { border-radius: 16px; padding: 12px; gap: 12px; width: 100%; }
	.fb-avatar { width: 48px; height: 48px; font-size: 22px; }
	.fb-name { font-size: 17px; }
	.fb-who { flex: 1 1 0; min-width: 0; }
	.fb-role { font-size: 10.5px; line-height: 1.4; letter-spacing: .04em; }
	.fb-stats { flex-basis: 100%; padding: 12px 0 0; border-left: 0; border-top: 1px solid var(--line-d); gap: 0; }
	.fb-stat { flex: 1; }
}
.jfx-hero.is-home .jfx-hero-copy > .jfx-fbadge { animation: rise .9s .38s var(--ease) both; }
.jfx-hero-meta + .jfx-fbadge { margin-top: 28px; }

.fb-avatar:has(.fb-logo) { background: var(--ink); border: 1px solid rgba(244, 241, 234, .22); }
.fb-avatar .fb-logo { width: 54%; height: auto; object-fit: contain; transform: translateY(-1px); }

.founder-media .founder-logo { width: 38%; height: auto; position: relative; z-index: 1; }


/* ==== JFX-APEX-V2 ==== */
/* JFX APEX v2 — 2026 redesign layer (homepage + chrome) */
:root{--ax-ink: #0A0B0D;--ax-ink-2: #121418;--ax-bone: #F4F1EA;--ax-paper: #FAF9F6;--ax-signal: #FF5B24;--ax-signal-2: #FF7A45;--ax-text: #0A0B0D;--ax-muted: #5E5A53;--ax-muted-d: rgba(244,241,234,.64);--ax-line: rgba(10,11,13,.09);--ax-line-d: rgba(244,241,234,.1);--ax-r: 18px;--ax-r-sm: 12px;--ax-ease: cubic-bezier(.2,.7,.1,1);--ax-gut: 20px;--ax-max: 1240px;--ax-sec: 88px}@media (min-width: 768px){:root{--ax-gut: 32px;--ax-sec: 120px}}@media (min-width: 1200px){:root{--ax-gut: 48px;--ax-sec: 144px}}html{scroll-behavior: smooth}@media (prefers-reduced-motion: reduce){html{scroll-behavior: auto}}body .site-header{background: rgba(10,11,13,.62);-webkit-backdrop-filter: blur(18px) saturate(150%);backdrop-filter: blur(18px) saturate(150%);border-bottom: 1px solid rgba(244,241,234,.07);box-shadow: none;transition: background .3s var(--ax-ease),border-color .3s var(--ax-ease)}body.jfx-page-home .site-header:not(.is-scrolled){background: rgba(10,11,13,0);border-bottom-color: transparent;-webkit-backdrop-filter: none;backdrop-filter: none}body.jfx-page-home.menu-open .site-header{background: var(--ax-ink)}body .site-header .header-cta{border-radius: 999px;padding-inline: 18px;font-weight: 560;letter-spacing: -.01em;background: var(--ax-signal);border-color: var(--ax-signal);color: #fff;box-shadow: 0 6px 20px -8px rgba(255,91,36,.7);transition: transform .25s var(--ax-ease),box-shadow .25s var(--ax-ease),background .25s}body .site-header .header-cta:hover{background: var(--ax-signal-2);transform: translateY(-1px);box-shadow: 0 10px 26px -10px rgba(255,91,36,.8)}body .site-header .header-cta::after{display: none}body .menu-toggle{border-radius: 999px}body .mobile-bar{background: rgba(18,20,24,.78);-webkit-backdrop-filter: blur(18px) saturate(150%);backdrop-filter: blur(18px) saturate(150%);border: 1px solid rgba(244,241,234,.1);box-shadow: 0 18px 40px -16px rgba(0,0,0,.55)}body .mobile-bar .mb-primary{background: var(--ax-signal);color: #fff}body .site-footer{border-top: 0}body .site-footer .footer-claim em{color: var(--ax-signal)}.ax-home{background: var(--ax-paper);color: var(--ax-text);overflow-x: clip;font-feature-settings: "ss01","cv11"}.ax-home *{box-sizing: border-box}.ax-wrap{width: 100%;max-width: var(--ax-max);margin-inline: auto;padding-inline: var(--ax-gut)}.ax-home h1,.ax-home h2,.ax-home h3,.ax-home p{margin: 0}.ax-home ul,.ax-home ol{list-style: none;margin: 0;padding: 0}.ax-home a{-webkit-tap-highlight-color: transparent}.ax-home em{font-family: var(--f-serif,Georgia,serif);font-style: italic;font-weight: 400;letter-spacing: -.01em}.ax-eyebrow{font-size: 13px;font-weight: 560;letter-spacing: .01em;color: var(--ax-signal);margin-bottom: 14px !important;display: inline-flex;align-items: center;gap: 8px}.ax-eyebrow::before{content: "";width: 14px;height: 2px;border-radius: 2px;background: currentColor}.ax-h2{font-size: clamp(32px,7.4vw,60px);line-height: 1.02;letter-spacing: -.045em;font-weight: 600;text-wrap: balance}.ax-h2 span{color: var(--ax-muted)}.ax-head{margin-bottom: 36px;max-width: 760px}@media (min-width: 768px){.ax-head{margin-bottom: 56px}}.ax-head-row{max-width: none;display: flex;flex-direction: column;gap: 14px}.ax-head-note{color: var(--ax-muted);font-size: 16px;line-height: 1.5;max-width: 34ch}@media (min-width: 900px){.ax-head-row{flex-direction: row;justify-content: space-between;align-items: flex-end}}.ax-sec{padding-block: var(--ax-sec)}.ax-btn{display: inline-flex;align-items: center;justify-content: center;gap: 10px;min-height: 52px;padding: 0 24px;border-radius: 999px;font-size: 16px;font-weight: 560;letter-spacing: -.01em;line-height: 1;text-decoration: none;white-space: nowrap;cursor: pointer;transition: transform .25s var(--ax-ease),background .25s var(--ax-ease),box-shadow .25s var(--ax-ease),border-color .25s,color .25s}.ax-btn svg{width: 18px;height: 18px;fill: none;stroke: currentColor;stroke-width: 1.8;stroke-linecap: round;stroke-linejoin: round;transition: transform .25s var(--ax-ease)}.ax-btn:hover svg{transform: translateX(3px)}.ax-btn:focus-visible{outline: 2px solid var(--ax-signal);outline-offset: 3px}.ax-btn-primary{background: var(--ax-signal);color: #fff !important;box-shadow: 0 10px 30px -12px rgba(255,91,36,.75),inset 0 1px 0 rgba(255,255,255,.22)}.ax-btn-primary:hover{background: var(--ax-signal-2);transform: translateY(-2px);box-shadow: 0 16px 36px -14px rgba(255,91,36,.85),inset 0 1px 0 rgba(255,255,255,.22)}.ax-btn-ghost{color: var(--ax-bone) !important;border: 1px solid rgba(244,241,234,.2);background: rgba(244,241,234,.04)}.ax-btn-ghost:hover{border-color: rgba(244,241,234,.45);background: rgba(244,241,234,.08)}.ax-btn-wa{color: var(--ax-bone) !important;border: 1px solid rgba(244,241,234,.18);background: rgba(244,241,234,.05)}.ax-btn-wa:hover{border-color: #25D366;background: rgba(37,211,102,.1)}.ax-btn-wa .ax-wa{fill: #25D366;stroke: none;width: 20px;height: 20px}.ax-btn-wa:hover .ax-wa{transform: none}.ax-btn-lg{min-height: 58px;padding: 0 30px;font-size: 17px}.ax-ctas{display: flex;flex-direction: column;gap: 10px}.ax-ctas .ax-btn{width: 100%}@media (min-width: 480px){.ax-ctas{flex-direction: row;flex-wrap: wrap}.ax-ctas .ax-btn{width: auto}}.ax-hero{position: relative;isolation: isolate;background: var(--ax-ink);color: var(--ax-bone);padding-top: calc(var(--header-h,64px) + 44px);overflow: hidden}.ax-hero::before{content: "";position: absolute;inset: 0;z-index: -2;pointer-events: none;background: radial-gradient(60% 50% at 85% 18%,rgba(255,91,36,.20),transparent 70%),radial-gradient(50% 40% at 0% 100%,rgba(205,187,156,.07),transparent 70%)}.ax-hero::after{content: "";position: absolute;inset: 0;z-index: -1;pointer-events: none;opacity: .5;background-image: linear-gradient(rgba(244,241,234,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(244,241,234,.05) 1px,transparent 1px);background-size: 64px 64px;-webkit-mask-image: radial-gradient(70% 60% at 70% 30%,#000 20%,transparent 75%);mask-image: radial-gradient(70% 60% at 70% 30%,#000 20%,transparent 75%)}.ax-hero-bg{position: absolute;inset: 0;z-index: -1;pointer-events: none}.ax-apex{display: none;position: absolute}.ax-apex path:last-child{filter: drop-shadow(0 0 40px rgba(255,91,36,.55))}@media (min-width: 1024px){.ax-apex{display: block;width: 720px;height: 720px;right: -150px;top: 8px;opacity: .8}}.ax-hero-grid{display: grid;gap: 44px;align-items: center}@media (min-width: 1024px){.ax-hero-grid{grid-template-columns: 1.3fr .7fr;gap: 56px;min-height: min(78vh,720px)}}.ax-pill{display: inline-flex;align-items: center;gap: 10px;padding: 7px 14px 7px 10px;margin-bottom: 24px !important;border: 1px solid rgba(244,241,234,.12);border-radius: 999px;background: rgba(244,241,234,.04);font-size: 13px;color: var(--ax-muted-d);letter-spacing: .005em}.ax-dot{width: 7px;height: 7px;border-radius: 50%;background: var(--ax-signal);box-shadow: 0 0 0 4px rgba(255,91,36,.18)}.ax-h1{font-size: clamp(46px,13.2vw,88px);line-height: .96;letter-spacing: -.055em;font-weight: 600;color: var(--ax-bone);text-wrap: balance;margin-bottom: 22px !important}.ax-h1 em{color: var(--ax-signal);font-size: 1.06em;letter-spacing: -.03em}.ax-lede{font-size: clamp(17px,2vw,20px);line-height: 1.5;color: var(--ax-muted-d);max-width: 36ch;margin-bottom: 32px !important}@media (prefers-reduced-motion: no-preference){.ax-hero-copy>*,.ax-engine{animation: axUp .9s var(--ax-ease) both}.ax-hero-copy>:nth-child(2){animation-delay: .06s}.ax-hero-copy>:nth-child(3){animation-delay: .14s}.ax-hero-copy>:nth-child(4){animation-delay: .22s}.ax-engine{animation-delay: .3s}}@keyframes axUp{from{opacity: 0;transform: translateY(18px)}to{opacity: 1;transform: none}}.ax-engine{position: relative;border-radius: 22px;padding: 20px;background: linear-gradient(180deg,rgba(244,241,234,.07),rgba(244,241,234,.025));border: 1px solid rgba(244,241,234,.1);-webkit-backdrop-filter: blur(20px);backdrop-filter: blur(20px);box-shadow: 0 40px 80px -40px rgba(0,0,0,.8),inset 0 1px 0 rgba(244,241,234,.08)}@media (min-width: 768px){.ax-engine{padding: 28px;max-width: 520px}}@media (min-width: 1024px){.ax-engine{justify-self: end;width: 100%}}.ax-engine-head{display: flex;justify-content: space-between;align-items: center;margin-bottom: 18px}.ax-engine-title{font-size: 14px;font-weight: 560;color: var(--ax-bone)}.ax-live{display: inline-flex;align-items: center;gap: 7px;font-size: 12px;color: var(--ax-muted-d);padding: 4px 10px;border-radius: 999px;background: rgba(244,241,234,.06)}.ax-live i{width: 6px;height: 6px;border-radius: 50%;background: #3DDC84;box-shadow: 0 0 0 3px rgba(61,220,132,.18)}@media (prefers-reduced-motion: no-preference){.ax-live i{animation: axPulse 2.4s ease-in-out infinite}}@keyframes axPulse{50%{box-shadow: 0 0 0 6px rgba(61,220,132,0)}}.ax-funnel{display: grid;gap: 8px}.ax-funnel li{position: relative;display: flex;justify-content: space-between;align-items: center;gap: 12px;padding: 14px 16px;border-radius: 12px;overflow: hidden;background: rgba(244,241,234,.035);border: 1px solid rgba(244,241,234,.06)}.ax-funnel li b{position: absolute;left: 0;top: 0;bottom: 0;width: var(--w);z-index: 0;background: linear-gradient(90deg,rgba(244,241,234,.09),rgba(244,241,234,.03));border-right: 1px solid rgba(244,241,234,.14);transform-origin: left}@media (prefers-reduced-motion: no-preference){.ax-funnel li b{animation: axGrow 1.2s var(--ax-ease) both}.ax-funnel li:nth-child(2) b{animation-delay: .5s}.ax-funnel li:nth-child(3) b{animation-delay: .62s}.ax-funnel li:nth-child(4) b{animation-delay: .74s}.ax-funnel li:nth-child(1) b{animation-delay: .38s}}@keyframes axGrow{from{transform: scaleX(0)}to{transform: scaleX(1)}}.ax-f-k,.ax-f-v{position: relative;z-index: 1}.ax-f-k{font-size: 15px;font-weight: 560;color: var(--ax-bone)}.ax-f-v{font-size: 12.5px;color: var(--ax-muted-d);text-align: right}.ax-funnel li.is-apex{border-color: rgba(255,91,36,.45);background: rgba(255,91,36,.08)}.ax-funnel li.is-apex b{background: linear-gradient(90deg,rgba(255,91,36,.55),rgba(255,91,36,.18));border-right-color: var(--ax-signal)}.ax-funnel li.is-apex .ax-f-k::after{content: " ↗";color: var(--ax-signal)}.ax-engine-foot{display: flex;flex-wrap: wrap;gap: 6px;margin-top: 16px}.ax-engine-foot span{font-size: 12px;color: var(--ax-muted-d);padding: 5px 10px;border: 1px solid rgba(244,241,234,.1);border-radius: 999px}.ax-proof{display: grid;grid-template-columns: 1fr 1fr;margin-top: 56px !important;border-top: 1px solid var(--ax-line-d)}.ax-proof li{padding: 22px 0 26px;display: flex;flex-direction: column;gap: 4px}.ax-proof li:nth-child(odd){padding-right: 16px;border-right: 1px solid var(--ax-line-d)}.ax-proof li:nth-child(even){padding-left: 20px}.ax-proof li:nth-child(-n+2){border-bottom: 1px solid var(--ax-line-d)}.ax-proof strong{font-size: clamp(26px,7vw,40px);font-weight: 600;letter-spacing: -.045em;line-height: 1.05;color: var(--ax-bone)}.ax-proof span{font-size: 13.5px;color: var(--ax-muted-d)}@media (min-width: 900px){.ax-proof{grid-template-columns: repeat(4,1fr);margin-top: 72px !important}.ax-proof li{padding: 32px 28px 40px !important;border-bottom: 0 !important;border-right: 1px solid var(--ax-line-d) !important}.ax-proof li:first-child{padding-left: 0 !important}.ax-proof li:last-child{border-right: 0 !important}}.ax-cards{display: grid;gap: 10px}@media (min-width: 640px){.ax-cards{grid-template-columns: 1fr 1fr;gap: 14px}}@media (min-width: 1024px){.ax-cards{grid-template-columns: repeat(3,1fr);gap: 16px}}.ax-card{position: relative;display: grid;grid-template-columns: 44px 1fr 20px;column-gap: 14px;row-gap: 2px;align-items: start;padding: 18px;border-radius: var(--ax-r);text-decoration: none;color: var(--ax-text) !important;background: #fff;border: 1px solid var(--ax-line);box-shadow: 0 1px 2px rgba(10,11,13,.03);transition: transform .35s var(--ax-ease),box-shadow .35s var(--ax-ease),border-color .35s}.ax-ico{grid-row: span 2;width: 44px;height: 44px;border-radius: 12px;display: grid;place-items: center;background: var(--ax-paper);border: 1px solid var(--ax-line);transition: background .35s,border-color .35s,color .35s;color: var(--ax-text)}.ax-ico svg{width: 22px;height: 22px;fill: none;stroke: currentColor;stroke-width: 1.6;stroke-linecap: round;stroke-linejoin: round}.ax-card-t{font-size: 17px;font-weight: 600;letter-spacing: -.02em;line-height: 1.25;padding-top: 1px}.ax-card-d{grid-column: 2;font-size: 14.5px;line-height: 1.45;color: var(--ax-muted)}.ax-arrow{grid-column: 3;grid-row: 1;width: 20px;height: 20px;color: var(--ax-muted);transition: transform .35s var(--ax-ease),color .35s}.ax-arrow svg{width: 20px;height: 20px;fill: none;stroke: currentColor;stroke-width: 1.6;stroke-linecap: round;stroke-linejoin: round}@media (min-width: 1024px){.ax-card{grid-template-columns: 1fr 20px;padding: 28px;min-height: 236px;row-gap: 0;align-content: start}.ax-ico{grid-row: auto;grid-column: 1;width: 52px;height: 52px;margin-bottom: 44px}.ax-card-t{grid-column: 1 / -1;font-size: 21px;margin-bottom: 8px}.ax-card-d{grid-column: 1 / -1;font-size: 15.5px;max-width: 30ch}.ax-arrow{grid-column: 2;grid-row: 1}}@media (hover: hover){.ax-card:hover{transform: translateY(-4px);border-color: rgba(10,11,13,.16);box-shadow: 0 24px 48px -28px rgba(10,11,13,.28)}.ax-card:hover .ax-ico{background: var(--ax-ink);border-color: var(--ax-ink);color: var(--ax-signal)}.ax-card:hover .ax-arrow{transform: translate(3px,-3px);color: var(--ax-signal)}}.ax-card:focus-visible{outline: 2px solid var(--ax-signal);outline-offset: 3px}.ax-work{background: var(--ax-ink);color: var(--ax-bone);position: relative}.ax-work .ax-h2{color: var(--ax-bone)}.ax-work .ax-h2 span,.ax-work .ax-head-note{color: var(--ax-muted-d)}.ax-work-grid{display: grid;grid-auto-flow: column;grid-auto-columns: 86%;gap: 12px;overflow-x: auto;scroll-snap-type: x mandatory;-webkit-overflow-scrolling: touch;margin-inline: calc(-1 * var(--ax-gut));padding-inline: var(--ax-gut);scroll-padding-inline: var(--ax-gut);padding-bottom: 6px;scrollbar-width: none}.ax-work-grid::-webkit-scrollbar{display: none}@media (min-width: 900px){.ax-work-grid{grid-auto-flow: row;grid-template-columns: 1fr 1fr;grid-auto-columns: auto;overflow: visible;margin: 0;padding: 0;gap: 16px}.ax-case.is-feature{grid-column: 1 / -1;min-height: 400px}}.ax-case{scroll-snap-align: start;position: relative;overflow: hidden;isolation: isolate;display: flex;flex-direction: column;min-height: 400px;padding: 24px;border-radius: 22px;background: var(--ax-ink-2);border: 1px solid var(--ax-line-d);transition: border-color .4s var(--ax-ease),transform .4s var(--ax-ease)}.ax-case::before{content: "";position: absolute;inset: 0;z-index: -1;background: radial-gradient(80% 60% at 100% 0%,rgba(244,241,234,.06),transparent 70%)}.ax-case.is-feature{background: linear-gradient(160deg,#1B120D 0%,#121418 55%)}.ax-case.is-feature::before{background: radial-gradient(70% 55% at 100% 0%,rgba(255,91,36,.32),transparent 70%)}@media (hover: hover){.ax-case:hover{border-color: rgba(244,241,234,.22);transform: translateY(-3px)}}@media (min-width: 900px){.ax-case{padding: 32px;min-height: 300px}.ax-case.is-feature{padding: 40px}}.ax-case-top{display: flex;justify-content: space-between;gap: 10px;align-items: center;margin-bottom: auto;padding-bottom: 40px}.ax-tag{font-size: 13px;font-weight: 560;color: var(--ax-bone)}.ax-case-sector{font-size: 12px;color: var(--ax-muted-d);padding: 4px 10px;border: 1px solid var(--ax-line-d);border-radius: 999px;white-space: nowrap}.ax-case-num{font-size: clamp(52px,14vw,76px);font-weight: 600;letter-spacing: -.06em;line-height: .95;color: var(--ax-bone)}.ax-case-num span{color: var(--ax-signal)}.ax-case.is-feature .ax-case-num{font-size: clamp(52px,13.6vw,104px)}.ax-case-lbl{font-size: 17px;font-weight: 560;margin: 8px 0 14px !important;color: var(--ax-bone);letter-spacing: -.015em}.ax-case-d{font-size: 15px;line-height: 1.5;color: var(--ax-muted-d);max-width: 44ch}.ax-case-extra{margin-top: 16px !important;font-size: 14px;color: var(--ax-muted-d);padding-top: 16px;border-top: 1px solid var(--ax-line-d)}.ax-case-extra b{color: var(--ax-signal);font-weight: 600}.ax-chips{display: flex;flex-wrap: wrap;gap: 6px;margin-top: 20px !important}.ax-chips li{font-size: 12px;padding: 5px 10px;border-radius: 999px;background: rgba(244,241,234,.06);color: var(--ax-bone)}.ax-why-grid{display: grid;gap: 8px}@media (min-width: 1024px){.ax-why-grid{grid-template-columns: .9fr 1.1fr;gap: 80px;align-items: start}.ax-why .ax-head{position: sticky;top: calc(var(--header-h,64px) + 40px)}}.ax-founder{display: flex;gap: 14px;align-items: center;margin-top: 28px;padding: 14px 16px;border-radius: 16px;background: #fff;border: 1px solid var(--ax-line);max-width: 460px}.ax-avatar{flex: none;width: 44px;height: 44px;border-radius: 50%;display: grid;place-items: center;background: var(--ax-ink);color: var(--ax-bone);font-size: 14px;font-weight: 600;letter-spacing: .02em;box-shadow: inset 0 -3px 0 var(--ax-signal)}.ax-founder p{font-size: 14px;line-height: 1.45;color: var(--ax-muted)}.ax-founder b{color: var(--ax-text);font-weight: 600}.ax-points{border-top: 1px solid var(--ax-line)}.ax-points li{display: grid;grid-template-columns: 44px 1fr;gap: 12px;padding: 24px 0;border-bottom: 1px solid var(--ax-line)}@media (min-width: 768px){.ax-points li{grid-template-columns: 72px 1fr;padding: 32px 0}}.ax-n{font-family: var(--f-mono,ui-monospace,monospace);font-size: 13px;color: var(--ax-signal);padding-top: 6px}.ax-points h3{font-size: clamp(20px,4.6vw,28px);font-weight: 600;letter-spacing: -.03em;line-height: 1.15;margin-bottom: 6px !important}.ax-points p{font-size: 16px;color: var(--ax-muted);line-height: 1.5}.ax-final{padding: 0 0 calc(var(--ax-sec) * .8)}.ax-final-card{position: relative;overflow: hidden;isolation: isolate;border-radius: 28px;color: var(--ax-bone);padding: 56px 24px 40px;background: var(--ax-ink);box-shadow: 0 50px 100px -50px rgba(10,11,13,.6)}.ax-final-card::before{content: "";position: absolute;inset: 0;z-index: -1;background: radial-gradient(60% 80% at 50% 120%,rgba(255,91,36,.45),transparent 70%),radial-gradient(40% 50% at 100% 0%,rgba(244,241,234,.06),transparent 70%)}.ax-final-card::after{content: "";position: absolute;z-index: -1;width: 420px;height: 420px;right: -120px;bottom: -150px;opacity: .08;background: var(--ax-bone);clip-path: polygon(8% 92%,40% 12%,60% 12%,92% 92%,72% 92%,50% 38%,28% 92%)}@media (min-width: 768px){.ax-final-card{padding: 96px 64px 72px;text-align: center}.ax-final-card .ax-ctas{justify-content: center}.ax-final-card::after{width: 620px;height: 620px;right: -140px;bottom: -240px}}.ax-eyebrow.is-light{color: var(--ax-signal)}.ax-final-h{font-size: clamp(40px,10vw,88px);line-height: .98;letter-spacing: -.055em;font-weight: 600;max-width: 14ch;margin: 0 0 32px !important;text-wrap: balance}@media (min-width: 768px){.ax-final-h{margin-inline: auto !important;margin-bottom: 40px !important}}.ax-final-h em{color: var(--ax-signal)}.ax-final-meta{margin-top: 22px !important;font-size: 13.5px;color: var(--ax-muted-d)}@media (prefers-reduced-motion: no-preference){.ax-js [data-ax-reveal]{opacity: 0;transform: translateY(20px);transition: opacity .8s var(--ax-ease),transform .8s var(--ax-ease);transition-delay: var(--ax-d,0s)}.ax-js [data-ax-reveal].is-in{opacity: 1;transform: none}}
