/* ==========================================================================
   INCREXAL — design system
   Matte black · charcoal · champagne gold (accent) · deep emerald (action)
   ========================================================================== */

:root {
	--ix-black: #0B0C0B;
	--ix-charcoal: #151815;
	--ix-charcoal-2: #1B1F1B;
	--ix-gold: #C6A76A;
	--ix-gold-soft: rgba(198, 167, 106, .32);
	--ix-gold-faint: rgba(198, 167, 106, .12);
	--ix-emerald: #174D3A;
	--ix-emerald-hi: #1F6A4F;
	--ix-emerald-glow: rgba(23, 77, 58, .45);
	--ix-text: #F5F3ED;
	--ix-muted: #A6AAA5;
	--ix-line: #292D29;
	--ix-line-2: #343934;
	--ix-error: #E5948A;

	--ix-sans: "Manrope", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	--ix-serif: "Instrument Serif", ui-serif, Georgia, "Times New Roman", serif;

	--ix-max: 1240px;
	--ix-narrow: 780px;
	--ix-gutter: clamp(16px, 4vw, 40px);
	--ix-section: clamp(64px, 9vw, 128px);
	--ix-radius: 4px;
	--ix-ease: cubic-bezier(.2, .7, .2, 1);
	--ix-header-h: 76px;
}

/* --------------------------------------------------------------------------
   Base
   ----------------------------------------------------------------------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: calc(var(--ix-header-h) + 16px); }
body {
	margin: 0;
	background: var(--ix-black);
	color: var(--ix-text);
	font-family: var(--ix-sans);
	font-size: 17px;
	line-height: 1.65;
	font-weight: 400;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	overflow-x: hidden;
}
img, svg, video { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration-color: var(--ix-gold-soft); text-underline-offset: 3px; }
a:hover { color: var(--ix-gold); }
p { margin: 0 0 1em; }
h1, h2, h3, h4 { margin: 0; font-weight: 600; line-height: 1.15; letter-spacing: -.015em; }
ul, ol { margin: 0; padding: 0; }
button, input, select, textarea { font: inherit; color: inherit; }
::selection { background: var(--ix-gold); color: var(--ix-black); }

:focus-visible { outline: 2px solid var(--ix-gold); outline-offset: 3px; border-radius: 2px; }

.screen-reader-text {
	position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.ix-skip {
	position: absolute; left: 16px; top: -100px; z-index: 1000;
	background: var(--ix-gold); color: var(--ix-black); padding: 10px 16px; font-weight: 700; text-decoration: none;
}
.ix-skip:focus { top: 12px; color: var(--ix-black); }
.ix-main:focus { outline: none; }

.ix-container { width: 100%; max-width: calc(var(--ix-max) + var(--ix-gutter) * 2); margin: 0 auto; padding: 0 var(--ix-gutter); }
.ix-container--narrow { max-width: calc(var(--ix-narrow) + var(--ix-gutter) * 2); }

/* --------------------------------------------------------------------------
   Type
   ----------------------------------------------------------------------- */
.ix-eyebrow {
	margin: 0 0 18px; font-size: 12px; line-height: 1.4; font-weight: 700;
	letter-spacing: .18em; text-transform: uppercase; color: var(--ix-gold);
}
.ix-eyebrow--line { display: inline-flex; align-items: center; gap: 14px; }
.ix-eyebrow--line::before { content: ""; width: 28px; height: 1px; background: var(--ix-gold); }
.ix-display { font-size: clamp(44px, 7.4vw, 104px); line-height: .98; font-weight: 700; letter-spacing: -.035em; }
.ix-display--sm { font-size: clamp(34px, 5vw, 64px); line-height: 1.04; letter-spacing: -.03em; }
.ix-h1 { font-size: clamp(36px, 5.2vw, 68px); line-height: 1.04; font-weight: 700; letter-spacing: -.03em; max-width: 18ch; }
.ix-h2 { font-size: clamp(28px, 3.4vw, 44px); line-height: 1.1; font-weight: 600; letter-spacing: -.025em; max-width: 22ch; }
.ix-h3 { font-size: clamp(19px, 1.6vw, 22px); line-height: 1.3; font-weight: 600; letter-spacing: -.01em; }
.ix-lead { font-size: clamp(17px, 1.4vw, 19px); color: var(--ix-muted); max-width: 62ch; }
.ix-muted { color: var(--ix-muted); }

/* --------------------------------------------------------------------------
   Logo / wordmark
   ----------------------------------------------------------------------- */
.ix-wordmark { display: inline-block; font-weight: 800; letter-spacing: .22em; font-size: 19px; line-height: 1; color: var(--ix-text); white-space: nowrap; }
.ix-wordmark__x { color: var(--ix-gold); }
.ix-brand { display: inline-flex; align-items: center; text-decoration: none; }
.ix-brand .ix-logo__img { height: 30px; width: auto; }

/* --------------------------------------------------------------------------
   Buttons & links
   ----------------------------------------------------------------------- */
.ix-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 12px;
	min-height: 52px; padding: 14px 26px; border-radius: var(--ix-radius);
	font-size: 13px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; text-decoration: none;
	border: 1px solid transparent; cursor: pointer; white-space: nowrap;
	transition: background-color .25s var(--ix-ease), border-color .25s var(--ix-ease), color .25s var(--ix-ease), transform .25s var(--ix-ease);
}
.ix-btn .ix-icon { width: 18px; height: 18px; transition: transform .25s var(--ix-ease); }
.ix-btn:hover .ix-icon { transform: translateX(3px); }
.ix-btn--primary { background: var(--ix-emerald); border-color: var(--ix-emerald-hi); color: var(--ix-text); }
.ix-btn--primary:hover { background: var(--ix-emerald-hi); color: var(--ix-text); }
.ix-btn--ghost { background: transparent; border-color: var(--ix-line-2); color: var(--ix-text); }
.ix-btn--ghost:hover { border-color: var(--ix-gold); color: var(--ix-text); }
.ix-btn--sm { min-height: 42px; padding: 10px 18px; font-size: 12px; }
.ix-btn[disabled], .ix-btn.is-loading { opacity: .7; cursor: progress; }

.ix-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 34px; }
.ix-actions--center { justify-content: center; }

.ix-link {
	display: inline-flex; align-items: center; gap: 10px; font-weight: 600; font-size: 15px;
	color: var(--ix-text); text-decoration: none; border-bottom: 1px solid var(--ix-gold-soft); padding-bottom: 3px;
	transition: border-color .25s var(--ix-ease), color .25s var(--ix-ease);
}
.ix-link .ix-icon { width: 16px; height: 16px; color: var(--ix-gold); transition: transform .25s var(--ix-ease); }
.ix-link:hover { border-color: var(--ix-gold); color: var(--ix-text); }
.ix-link:hover .ix-icon { transform: translateX(3px); }
.ix-after { margin-top: 40px; }
.ix-after--center { text-align: center; }

/* --------------------------------------------------------------------------
   Header & navigation
   ----------------------------------------------------------------------- */
.ix-header {
	position: fixed; inset: 0 0 auto 0; z-index: 100; height: var(--ix-header-h);
	background: rgba(11, 12, 11, .72); backdrop-filter: saturate(140%) blur(10px); -webkit-backdrop-filter: saturate(140%) blur(10px);
	border-bottom: 1px solid transparent;
	transition: background-color .3s var(--ix-ease), border-color .3s var(--ix-ease);
}
.ix-has-hero .ix-header { background: transparent; backdrop-filter: none; -webkit-backdrop-filter: none; }
.ix-scrolled .ix-header, .ix-menu-open .ix-header { background: var(--ix-black); border-bottom-color: var(--ix-line); }
.admin-bar .ix-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .ix-header { top: 46px; } }

.ix-header__inner { height: 100%; display: flex; align-items: center; gap: 28px; }
.ix-header__end { margin-left: auto; display: flex; align-items: center; gap: 12px; }

.ix-menu { list-style: none; display: flex; align-items: center; gap: 4px; }
.ix-menu > li { position: relative; display: flex; align-items: center; }
.ix-menu a { text-decoration: none; }
.ix-menu > li > a {
	display: block; padding: 10px 12px; font-size: 14px; font-weight: 500; color: var(--ix-text); opacity: .86;
	position: relative; transition: opacity .2s var(--ix-ease), color .2s var(--ix-ease);
}
.ix-menu > li > a::after {
	content: ""; position: absolute; left: 12px; right: 12px; bottom: 4px; height: 1px;
	background: var(--ix-gold); transform: scaleX(0); transform-origin: left; transition: transform .3s var(--ix-ease);
}
.ix-menu > li:hover > a, .ix-menu > li > a:focus-visible, .ix-menu > li.is-active > a { opacity: 1; color: var(--ix-text); }
.ix-menu > li:hover > a::after, .ix-menu > li.is-active > a::after { transform: scaleX(1); }
.ix-menu > li.is-active > a::after { background: var(--ix-emerald-hi); }

.ix-submenu-toggle {
	display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; margin-left: -8px;
	background: none; border: 0; padding: 0; color: var(--ix-muted); cursor: pointer; border-radius: 2px;
}
.ix-submenu-toggle .ix-icon { width: 14px; height: 14px; transition: transform .25s var(--ix-ease); }
.ix-submenu-toggle[aria-expanded="true"] .ix-icon { transform: rotate(180deg); }

.sub-menu {
	list-style: none; position: absolute; top: calc(100% + 10px); left: 0; min-width: 260px; padding: 10px;
	background: var(--ix-charcoal); border: 1px solid var(--ix-line); border-top: 1px solid var(--ix-gold-soft); border-radius: var(--ix-radius);
	box-shadow: 0 24px 48px rgba(0, 0, 0, .45);
	opacity: 0; visibility: hidden; transform: translateY(6px);
	transition: opacity .2s var(--ix-ease), transform .2s var(--ix-ease), visibility .2s;
}
.sub-menu::before { content: ""; position: absolute; left: 0; right: 0; top: -12px; height: 12px; }
.sub-menu a { display: block; padding: 10px 12px; font-size: 14px; color: var(--ix-muted); border-radius: 2px; }
.sub-menu a:hover, .sub-menu a:focus-visible, .sub-menu a[aria-current="page"] { color: var(--ix-text); background: var(--ix-charcoal-2); }
.sub-menu a[aria-current="page"] { box-shadow: inset 2px 0 0 var(--ix-emerald-hi); }

@media (min-width: 1121px) {
	.ix-nav { display: flex; align-items: center; margin-left: auto; }
	.ix-menu > li:hover > .sub-menu, .ix-menu > li:focus-within > .sub-menu, .ix-menu > li.is-open > .sub-menu { opacity: 1; visibility: visible; transform: none; }
	.ix-header__end { margin-left: 8px; }
	.ix-header .ix-burger, .ix-nav .ix-nav__mobile-cta { display: none; }
}

.ix-burger {
	display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px;
	background: transparent; border: 1px solid var(--ix-line-2); border-radius: var(--ix-radius); cursor: pointer;
}
.ix-burger__lines { position: relative; width: 18px; height: 12px; }
.ix-burger__lines span { position: absolute; left: 0; height: 1.5px; background: var(--ix-text); transition: transform .3s var(--ix-ease), opacity .2s, width .3s; }
.ix-burger__lines span:nth-child(1) { top: 0; width: 18px; }
.ix-burger__lines span:nth-child(2) { top: 5px; width: 18px; }
.ix-burger__lines span:nth-child(3) { top: 10px; width: 11px; }
.ix-burger[aria-expanded="true"] span:nth-child(1) { transform: translateY(5px) rotate(45deg); }
.ix-burger[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.ix-burger[aria-expanded="true"] span:nth-child(3) { width: 18px; transform: translateY(-5px) rotate(-45deg); }

@media (max-width: 1120px) {
	.ix-nav {
		position: fixed; top: var(--ix-header-h); left: 0; right: 0; bottom: 0; z-index: 99;
		background: var(--ix-black); border-top: 1px solid var(--ix-line);
		overflow-y: auto; overscroll-behavior: contain;
		padding: 16px var(--ix-gutter) 40px;
		visibility: hidden; opacity: 0; transform: translateY(-8px);
		transition: opacity .25s var(--ix-ease), transform .25s var(--ix-ease), visibility .25s;
	}
	.admin-bar .ix-nav { top: calc(var(--ix-header-h) + 46px); }
	.ix-menu-open .ix-nav { visibility: visible; opacity: 1; transform: none; }
	.ix-menu-open { overflow: hidden; }
	.ix-menu { flex-direction: column; align-items: stretch; gap: 0; }
	.ix-menu > li { flex-wrap: wrap; border-bottom: 1px solid var(--ix-line); }
	.ix-menu > li > a { flex: 1; padding: 18px 0; font-size: 19px; font-weight: 600; opacity: 1; }
	.ix-menu > li > a::after { display: none; }
	.ix-menu > li.is-active > a { color: var(--ix-gold); }
	.ix-submenu-toggle { width: 48px; height: 48px; margin: 0; border: 1px solid var(--ix-line); }
	.sub-menu {
		position: static; width: 100%; min-width: 0; opacity: 1; visibility: visible; transform: none;
		background: transparent; border: 0; box-shadow: none; padding: 0 0 14px; display: none;
	}
	.sub-menu::before { display: none; }
	.ix-menu > li.is-open > .sub-menu { display: block; }
	.sub-menu a { padding: 11px 0 11px 16px; font-size: 16px; border-left: 1px solid var(--ix-line); border-radius: 0; }
	.sub-menu a:hover, .sub-menu a[aria-current="page"] { background: transparent; border-left-color: var(--ix-emerald-hi); box-shadow: none; }
	.ix-nav__mobile-cta { display: grid; gap: 18px; margin-top: 28px; }
	.ix-nav__mobile-cta .ix-btn { width: 100%; }
	.ix-nav__mail { display: inline-flex; align-items: center; gap: 10px; color: var(--ix-muted); text-decoration: none; font-size: 15px; }
	.ix-nav__mail .ix-icon { width: 18px; color: var(--ix-gold); }
}
@media (max-width: 560px) {
	.ix-header__cta { display: none; }
}

/* --------------------------------------------------------------------------
   Hero
   ----------------------------------------------------------------------- */
.ix-hero {
	position: relative; isolation: isolate; overflow: hidden;
	padding: calc(var(--ix-header-h) + clamp(56px, 9vw, 120px)) 0 clamp(56px, 8vw, 104px);
	background: var(--ix-black); border-bottom: 1px solid var(--ix-line);
}
.ix-hero::before {
	content: ""; position: absolute; z-index: -1; width: 70vw; height: 70vw; max-width: 980px; max-height: 980px;
	right: -18vw; top: -30vw; border-radius: 50%;
	background: radial-gradient(closest-side, var(--ix-emerald-glow), transparent 70%); opacity: .55; pointer-events: none;
}
.ix-hero__grid {
	position: absolute; inset: 0; z-index: -1; pointer-events: none; opacity: .5;
	background-image: linear-gradient(var(--ix-line) 1px, transparent 1px), linear-gradient(90deg, var(--ix-line) 1px, transparent 1px);
	background-size: 96px 96px; background-position: center top;
	-webkit-mask-image: radial-gradient(ellipse 70% 60% at 70% 20%, #000 10%, transparent 75%);
	mask-image: radial-gradient(ellipse 70% 60% at 70% 20%, #000 10%, transparent 75%);
}
.ix-hero__lead { font-size: clamp(17px, 1.5vw, 20px); line-height: 1.6; color: var(--ix-muted); max-width: 60ch; margin-top: 26px; }
.ix-hero--compact { padding-bottom: clamp(40px, 5vw, 64px); }
.ix-hero--compact .ix-h1 { font-size: clamp(32px, 4vw, 52px); }

.ix-hero--home { min-height: min(100svh, 920px); display: flex; flex-direction: column; justify-content: center; padding-bottom: 40px; }
.ix-hero--home .ix-hero__inner { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, .75fr); gap: clamp(32px, 6vw, 96px); align-items: center; }
.ix-hero--home .ix-display { max-width: 11ch; }
.ix-hero__mark { display: flex; flex-direction: column; align-items: center; gap: 28px; padding: 40px 0; }
.ix-hero__rule { width: 1px; height: clamp(60px, 9vw, 120px); background: linear-gradient(var(--ix-gold), transparent); }
.ix-hero__rule:last-child { background: linear-gradient(transparent, var(--ix-gold)); }
.ix-hero__mark .ix-wordmark, .ix-hero__logo.ix-wordmark { font-size: clamp(26px, 3.2vw, 44px); letter-spacing: .28em; }
.ix-hero__mark .ix-logo__img { width: min(100%, 360px); height: auto; }
.ix-hero__strip {
	margin-top: clamp(40px, 6vw, 80px); padding-top: 22px; border-top: 1px solid var(--ix-line);
	display: flex; flex-wrap: wrap; align-items: center; gap: 12px 36px;
}
.ix-hero__strip-label { font-size: 12px; letter-spacing: .18em; text-transform: uppercase; color: var(--ix-muted); }
.ix-hero__strip ul { list-style: none; display: flex; flex-wrap: wrap; gap: 10px 32px; }
.ix-hero__strip a { text-decoration: none; font-weight: 600; color: var(--ix-text); opacity: .8; }
.ix-hero__strip a:hover { opacity: 1; color: var(--ix-gold); }

@media (max-width: 900px) {
	.ix-hero--home { min-height: 0; }
	.ix-hero--home .ix-hero__inner { grid-template-columns: 1fr; }
	.ix-hero__mark { display: none; }
	.ix-hero__rule { height: 1px; width: 48px; background: var(--ix-gold) !important; }
	.ix-hero__rule:last-child { display: none; }
	.ix-hero__mark .ix-wordmark { font-size: 18px; }
	.ix-hero__mark .ix-logo__img { width: 180px; }
}

/* Breadcrumbs */
.ix-breadcrumbs { margin-bottom: 28px; }
.ix-breadcrumbs ol { list-style: none; display: flex; flex-wrap: wrap; gap: 6px; font-size: 13px; color: var(--ix-muted); }
.ix-breadcrumbs li + li::before { content: "/"; margin-right: 6px; color: var(--ix-line-2); }
.ix-breadcrumbs a { text-decoration: none; color: var(--ix-muted); }
.ix-breadcrumbs a:hover { color: var(--ix-gold); }
.ix-breadcrumbs [aria-current] { color: var(--ix-text); }

/* --------------------------------------------------------------------------
   Sections & heads
   ----------------------------------------------------------------------- */
.ix-section { padding: var(--ix-section) 0; position: relative; }
.ix-band--alt { background: var(--ix-charcoal); border-top: 1px solid var(--ix-line); border-bottom: 1px solid var(--ix-line); }
.ix-band--alt + .ix-band--alt { border-top: 0; }
.ix-head { margin-bottom: clamp(36px, 5vw, 64px); max-width: 760px; }
.ix-head .ix-lead { margin-top: 20px; margin-bottom: 0; }
.ix-head--center { margin-left: auto; margin-right: auto; text-align: center; }
.ix-head--center .ix-h2 { margin-inline: auto; }

/* Split */
.ix-split { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: clamp(32px, 7vw, 120px); align-items: start; }
.ix-split__body { font-size: 18px; color: var(--ix-muted); padding-top: 34px; }
.ix-split__body p:first-child { color: var(--ix-text); }
.ix-split__body .ix-link { margin-top: 12px; }
.ix-split__aside { margin-top: 36px; display: flex; flex-direction: column; gap: 2px; font-family: var(--ix-serif); font-style: italic; font-size: clamp(26px, 2.6vw, 34px); line-height: 1.15; color: var(--ix-gold); }
.ix-split__aside span:nth-child(2) { color: var(--ix-text); }
.ix-split__aside span:nth-child(3) { color: var(--ix-muted); }
@media (max-width: 860px) {
	.ix-split { grid-template-columns: 1fr; }
	.ix-split__body { padding-top: 0; }
	.ix-split__aside { flex-direction: row; flex-wrap: wrap; gap: 10px; font-size: 24px; margin-top: 20px; }
}

/* --------------------------------------------------------------------------
   Grids & cards
   ----------------------------------------------------------------------- */
.ix-grid { display: grid; gap: 20px; }
.ix-grid--1 { grid-template-columns: 1fr; }
.ix-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ix-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ix-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 1080px) { .ix-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } .ix-grid--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .ix-grid--2, .ix-grid--3, .ix-grid--4 { grid-template-columns: 1fr; } }

.ix-card {
	position: relative; display: flex; flex-direction: column; padding: clamp(24px, 2.6vw, 34px);
	background: var(--ix-charcoal); border: 1px solid var(--ix-line); border-radius: var(--ix-radius);
	color: var(--ix-text); text-decoration: none;
	transition: border-color .3s var(--ix-ease), transform .3s var(--ix-ease), background-color .3s var(--ix-ease);
}
.ix-band--alt .ix-card { background: var(--ix-black); }
.ix-card p:not(.ix-eyebrow) { color: var(--ix-muted); margin: 14px 0 0; font-size: 16px; }
.ix-card .ix-eyebrow + p { margin-top: 0; }
.ix-card--link:hover { border-color: var(--ix-gold-soft); transform: translateY(-3px); color: var(--ix-text); }
.ix-card--lg { min-height: 260px; }
.ix-card__icon { display: inline-flex; width: 48px; height: 48px; align-items: center; justify-content: center; margin-bottom: 28px; border: 1px solid var(--ix-line-2); border-radius: var(--ix-radius); color: var(--ix-gold); }
.ix-card__icon .ix-icon { width: 22px; height: 22px; }
.ix-card__num { font-size: 13px; font-weight: 700; letter-spacing: .14em; color: var(--ix-gold); margin-bottom: 28px; font-variant-numeric: tabular-nums; }
.ix-card__more { margin-top: auto; padding-top: 26px; display: inline-flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--ix-text); }
.ix-card__more .ix-icon { width: 16px; color: var(--ix-gold); transition: transform .25s var(--ix-ease); }
.ix-card--link:hover .ix-card__more .ix-icon { transform: translateX(4px); }

/* Stretched link pattern */
.ix-stretch { text-decoration: none; color: inherit; }
.ix-stretch::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.ix-stretch:hover { color: inherit; }

/* --------------------------------------------------------------------------
   Steps
   ----------------------------------------------------------------------- */
.ix-steps { list-style: none; counter-reset: none; }
.ix-steps--horizontal { display: grid; grid-template-columns: repeat(var(--ix-steps, 4), minmax(0, 1fr)); gap: 0; position: relative; }
.ix-steps--horizontal::before { content: ""; position: absolute; top: 27px; left: 0; right: 0; height: 1px; background: linear-gradient(90deg, var(--ix-gold-soft), var(--ix-line) 70%); }
.ix-steps--horizontal .ix-step { padding-right: 32px; position: relative; }
.ix-step__num {
	display: inline-flex; align-items: center; justify-content: center; width: 56px; height: 56px; position: relative; z-index: 1;
	background: var(--ix-black); border: 1px solid var(--ix-gold-soft); border-radius: 50%;
	font-size: 14px; font-weight: 700; letter-spacing: .06em; color: var(--ix-gold); font-variant-numeric: tabular-nums;
}
.ix-band--alt .ix-step__num { background: var(--ix-charcoal); }
.ix-step__body { margin-top: 28px; }
.ix-step__body p { color: var(--ix-muted); margin-top: 12px; font-size: 16px; }
.ix-step:first-child .ix-step__num { background: var(--ix-emerald); border-color: var(--ix-emerald-hi); color: var(--ix-text); }

.ix-steps--vertical { max-width: 820px; position: relative; }
.ix-steps--vertical::before { content: ""; position: absolute; top: 28px; bottom: 28px; left: 27px; width: 1px; background: linear-gradient(var(--ix-gold-soft), var(--ix-line)); }
.ix-steps--vertical .ix-step { display: grid; grid-template-columns: 56px 1fr; gap: 28px; padding-bottom: 40px; }
.ix-steps--vertical .ix-step:last-child { padding-bottom: 0; }
.ix-steps--vertical .ix-step__body { margin-top: 12px; }

@media (max-width: 900px) {
	.ix-steps--horizontal { grid-template-columns: 1fr; }
	.ix-steps--horizontal::before { top: 28px; bottom: 28px; left: 27px; right: auto; width: 1px; height: auto; background: linear-gradient(var(--ix-gold-soft), var(--ix-line)); }
	.ix-steps--horizontal .ix-step { display: grid; grid-template-columns: 56px 1fr; gap: 22px; padding: 0 0 32px; }
	.ix-steps--horizontal .ix-step:last-child { padding-bottom: 0; }
	.ix-steps--horizontal .ix-step__body { margin-top: 12px; }
}

/* --------------------------------------------------------------------------
   Feature panel, pillars, principles, statement
   ----------------------------------------------------------------------- */
.ix-feature {
	display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: clamp(28px, 5vw, 72px); align-items: end;
	padding: clamp(32px, 5vw, 72px); border: 1px solid var(--ix-line); border-radius: var(--ix-radius);
	background:
		radial-gradient(circle at 100% 0%, var(--ix-emerald-glow), transparent 55%),
		var(--ix-charcoal);
	position: relative; overflow: hidden;
}
.ix-feature::before { content: ""; position: absolute; left: 0; top: 0; width: 120px; height: 1px; background: var(--ix-gold); }
.ix-feature__copy p:not(.ix-eyebrow) { color: var(--ix-muted); max-width: 58ch; }
.ix-feature__copy .ix-h2 { margin-bottom: 22px; }
.ix-feature__note { display: flex; gap: 14px; padding: 22px; border: 1px solid var(--ix-line-2); border-radius: var(--ix-radius); background: rgba(11, 12, 11, .5); }
.ix-feature__note .ix-icon { flex: none; width: 20px; color: var(--ix-gold); margin-top: 2px; }
.ix-feature__note p { margin: 0; font-size: 15px; color: var(--ix-muted); }
@media (max-width: 860px) { .ix-feature { grid-template-columns: 1fr; } }

.ix-pillars { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.ix-pillar { padding: clamp(32px, 4vw, 56px); border: 1px solid var(--ix-line); border-top-color: var(--ix-gold-soft); border-radius: var(--ix-radius); background: var(--ix-charcoal); }
.ix-pillar__text { font-family: var(--ix-serif); font-size: clamp(26px, 2.6vw, 36px); line-height: 1.25; margin: 0; }
@media (max-width: 760px) { .ix-pillars { grid-template-columns: 1fr; } }

.ix-principles { list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--ix-line); }
.ix-principles li { padding: 34px 28px 34px 0; border-bottom: 1px solid var(--ix-line); display: flex; gap: 22px; align-items: baseline; }
.ix-principles li:not(:nth-child(3n + 1)) { padding-left: 28px; border-left: 1px solid var(--ix-line); }
.ix-principles span { font-size: 12px; font-weight: 700; letter-spacing: .14em; color: var(--ix-gold); font-variant-numeric: tabular-nums; }
.ix-principles h3 { font-family: var(--ix-serif); font-weight: 400; font-size: clamp(24px, 2.2vw, 32px); letter-spacing: 0; line-height: 1.15; }
@media (max-width: 900px) {
	.ix-principles { grid-template-columns: 1fr 1fr; }
	.ix-principles li:not(:nth-child(3n + 1)) { padding-left: 0; border-left: 0; }
	.ix-principles li:nth-child(even) { padding-left: 22px; border-left: 1px solid var(--ix-line); }
}
@media (max-width: 560px) {
	.ix-principles { grid-template-columns: 1fr; }
	.ix-principles li:nth-child(even) { padding-left: 0; border-left: 0; }
	.ix-principles li { padding: 24px 0; }
}

.ix-statement { text-align: center; max-width: 980px; margin: 0 auto clamp(40px, 6vw, 80px); }
.ix-statement blockquote { margin: 0; }
.ix-statement blockquote p { font-family: var(--ix-serif); font-size: clamp(34px, 5vw, 68px); line-height: 1.08; margin: 0; }
.ix-defs { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0; border-top: 1px solid var(--ix-line); margin: 0; }
.ix-defs > div { padding: 28px 22px 0 0; }
.ix-defs > div + div { padding-left: 22px; border-left: 1px solid var(--ix-line); }
.ix-defs dt { font-weight: 600; margin-bottom: 8px; }
.ix-defs dd { margin: 0; color: var(--ix-muted); font-size: 15px; }
@media (max-width: 960px) {
	.ix-defs { grid-template-columns: 1fr 1fr; }
	.ix-defs > div, .ix-defs > div + div { padding: 22px 0; border-left: 0; border-bottom: 1px solid var(--ix-line); }
	.ix-defs > div:nth-child(even) { padding-left: 22px; border-left: 1px solid var(--ix-line); }
}
@media (max-width: 560px) { .ix-defs { grid-template-columns: 1fr; } .ix-defs > div:nth-child(even) { padding-left: 0; border-left: 0; } }

/* Check list */
.ix-checks { list-style: none; display: grid; gap: 0 40px; }
.ix-checks--1 { grid-template-columns: 1fr; max-width: 820px; }
.ix-checks--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ix-checks--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ix-checks--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ix-checks li { display: flex; gap: 14px; align-items: flex-start; padding: 18px 0; border-bottom: 1px solid var(--ix-line); font-size: 17px; }
.ix-checks .ix-icon { flex: none; width: 20px; height: 20px; margin-top: 3px; color: var(--ix-emerald-hi); }
.ix-outro { margin-top: 28px; color: var(--ix-muted); max-width: 70ch; font-size: 15px; }
@media (max-width: 900px) { .ix-checks--3, .ix-checks--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .ix-checks--2, .ix-checks--3, .ix-checks--4 { grid-template-columns: 1fr; } }

/* Notice */
.ix-notice {
	display: flex; gap: 16px; align-items: flex-start; margin: 0 auto; max-width: var(--ix-max);
	padding: 22px 26px; border: 1px solid var(--ix-line-2); border-left: 2px solid var(--ix-gold); border-radius: var(--ix-radius);
	background: var(--ix-charcoal); color: var(--ix-muted); font-size: 15px;
}
.ix-notice-wrap { padding-bottom: var(--ix-section); }
.ix-notice-wrap.has-top { padding-top: var(--ix-section); }
.ix-notice .ix-icon { flex: none; width: 20px; color: var(--ix-gold); margin-top: 2px; }
.ix-notice p { margin: 0; }
.ix-notice .ix-link { font-size: 14px; margin-left: 4px; }

/* CTA */
.ix-section--cta.is-flush { padding-top: 0; }
.ix-cta {
	text-align: center; padding: clamp(48px, 8vw, 112px) clamp(24px, 6vw, 96px);
	border: 1px solid var(--ix-line); border-radius: var(--ix-radius); position: relative; overflow: hidden;
	background: radial-gradient(ellipse at 50% 120%, var(--ix-emerald-glow), transparent 60%), var(--ix-charcoal);
}
.ix-cta::before, .ix-cta::after { content: ""; position: absolute; left: 50%; width: 1px; height: 48px; background: linear-gradient(var(--ix-gold), transparent); transform: translateX(-50%); }
.ix-cta::before { top: 0; }
.ix-cta::after { display: none; }
.ix-cta .ix-display--sm { max-width: 18ch; margin: 0 auto; }
.ix-cta .ix-lead { margin: 22px auto 0; }
.ix-cta .ix-actions { justify-content: center; }
.ix-cta__note { margin: 26px 0 0; font-size: 13px; color: var(--ix-muted); }
.ix-notice + .ix-section--cta, .ix-container + .ix-section--cta.is-flush { padding-top: 0; }

/* Placeholder / empty states */
.ix-placeholder { padding: clamp(36px, 5vw, 64px); border: 1px dashed var(--ix-line-2); border-radius: var(--ix-radius); text-align: center; color: var(--ix-muted); }
.ix-placeholder__text { font-family: var(--ix-serif); font-size: clamp(22px, 2.4vw, 30px); color: var(--ix-text); max-width: 30ch; margin: 0 auto 10px; line-height: 1.25; }
.ix-placeholder p:last-child { margin-bottom: 0; }
.ix-empty { color: var(--ix-muted); text-align: center; padding: 32px 0; }

/* Prose */
.ix-prose { font-size: 18px; line-height: 1.75; color: #DCDAD3; }
.ix-prose > * + * { margin-top: 1.1em; }
.ix-prose h2 { font-size: clamp(24px, 2.4vw, 30px); margin-top: 2em; color: var(--ix-text); }
.ix-prose h3 { font-size: 21px; margin-top: 1.8em; color: var(--ix-text); }
.ix-prose ul, .ix-prose ol { padding-left: 1.3em; }
.ix-prose li + li { margin-top: .5em; }
.ix-prose li::marker { color: var(--ix-gold); }
.ix-prose a { color: var(--ix-text); text-decoration: underline; text-decoration-color: var(--ix-gold); }
.ix-prose a:hover { color: var(--ix-gold); }
.ix-prose blockquote { margin: 1.6em 0; padding-left: 24px; border-left: 2px solid var(--ix-gold); font-family: var(--ix-serif); font-size: 26px; line-height: 1.3; color: var(--ix-text); }
.ix-prose img, .ix-prose figure { border-radius: var(--ix-radius); }
.ix-prose figcaption { font-size: 14px; color: var(--ix-muted); margin-top: 8px; }
.ix-prose code { background: var(--ix-charcoal-2); padding: .1em .35em; border-radius: 2px; font-size: .9em; }
.ix-prose pre { background: var(--ix-charcoal); border: 1px solid var(--ix-line); padding: 18px; overflow-x: auto; border-radius: var(--ix-radius); }
.ix-prose table { width: 100%; border-collapse: collapse; font-size: 15px; }
.ix-prose th, .ix-prose td { border-bottom: 1px solid var(--ix-line); padding: 10px 8px; text-align: left; }
.ix-prose hr { border: 0; border-top: 1px solid var(--ix-line); margin: 2.4em 0; }
.ix-prose strong { color: var(--ix-text); }

/* --------------------------------------------------------------------------
   Ventures
   ----------------------------------------------------------------------- */
.ix-vgrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.ix-vgrid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 980px) { .ix-vgrid--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 680px) { .ix-vgrid, .ix-vgrid--3 { grid-template-columns: 1fr; } }

.ix-vcard {
	position: relative; display: flex; flex-direction: column; overflow: hidden;
	background: var(--ix-charcoal); border: 1px solid var(--ix-line); border-radius: var(--ix-radius);
	transition: border-color .35s var(--ix-ease), transform .35s var(--ix-ease);
}
.ix-band--alt .ix-vcard { background: var(--ix-black); }
.ix-vcard:hover { border-color: var(--ix-gold-soft); transform: translateY(-3px); }
.ix-vcard__media { aspect-ratio: 2 / 1; overflow: hidden; background: var(--ix-black); border-bottom: 1px solid var(--ix-line); }
.ix-vcard__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--ix-ease); }
.ix-vcard:hover .ix-vcard__media img { transform: scale(1.03); }
.ix-vcard__plate {
	width: 100%; height: 100%; display: flex; align-items: center; justify-content: center;
	background:
		linear-gradient(rgba(41, 45, 41, .45) 1px, transparent 1px) 0 0 / 48px 48px,
		linear-gradient(90deg, rgba(41, 45, 41, .45) 1px, transparent 1px) 0 0 / 48px 48px,
		radial-gradient(circle at 50% 50%, rgba(23, 77, 58, .35), transparent 60%),
		var(--ix-black);
}
.ix-vcard__plate .ix-vlogo { max-width: 52%; max-height: 52%; width: auto; object-fit: contain; }
.ix-vinitial {
	display: inline-flex; align-items: center; justify-content: center; width: 88px; height: 88px;
	border: 1px solid var(--ix-gold-soft); border-radius: 50%; background: var(--ix-black);
	font-family: var(--ix-serif); font-size: 46px; color: var(--ix-gold); line-height: 1;
}
.ix-vcard__body { display: flex; flex-direction: column; flex: 1; padding: clamp(24px, 2.6vw, 34px); }
.ix-vcard__meta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 14px; }
.ix-vcard__meta .ix-eyebrow { margin: 0; }
.ix-vcard .ix-h3 { font-size: clamp(22px, 2vw, 28px); }
.ix-vcard__body > p { color: var(--ix-muted); margin: 12px 0 0; }
.ix-vcard__rel { display: flex; gap: 8px; align-items: center; font-size: 14px; }
.ix-vcard__rel .ix-icon { width: 16px; color: var(--ix-gold); }
.ix-vcard__foot { margin-top: auto; padding-top: 28px; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.ix-vcard__ext { position: relative; z-index: 2; display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; color: var(--ix-muted); text-decoration: none; }
.ix-vcard__ext .ix-icon { width: 14px; }
.ix-vcard__ext:hover { color: var(--ix-gold); }
.ix-vcard--future { border-style: dashed; background: transparent !important; }
.ix-vcard--future:hover { transform: none; }
.ix-vcard--future .ix-card__icon { margin-bottom: 22px; }
.ix-vcard[hidden], .e-con.ix-vcard[hidden] { display: none !important; }

/* Badges & tags */
.ix-badge {
	display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px; border: 1px solid var(--ix-line-2); border-radius: 999px;
	font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--ix-muted); white-space: nowrap;
}
.ix-badge::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; opacity: .8; }
.ix-badge--launched, .ix-badge--operating, .ix-badge--growing { color: #7FC3A6; border-color: rgba(31, 106, 79, .7); background: rgba(23, 77, 58, .22); }
.ix-badge--in_development, .ix-badge--planning { color: var(--ix-gold); border-color: var(--ix-gold-soft); }
.ix-badge--gold { color: var(--ix-gold); border-color: var(--ix-gold-soft); }
.ix-tag { display: inline-block; font-size: 12px; font-weight: 600; padding: 3px 9px; border: 1px solid var(--ix-line-2); border-radius: 2px; color: var(--ix-muted); text-decoration: none; position: relative; z-index: 2; }
.ix-tag--link:hover { border-color: var(--ix-gold); color: var(--ix-gold); }

/* Filters */
.ix-filters { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 32px; }
.ix-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.ix-chip {
	display: inline-flex; align-items: center; min-height: 40px; padding: 8px 16px; border: 1px solid var(--ix-line-2); border-radius: 999px;
	background: transparent; color: var(--ix-muted); font-size: 14px; font-weight: 600; cursor: pointer; text-decoration: none;
	transition: border-color .2s, color .2s, background-color .2s;
}
.ix-chip:hover { color: var(--ix-text); border-color: var(--ix-gold-soft); }
.ix-chip.is-active, .ix-chip[aria-pressed="true"] { background: var(--ix-emerald); border-color: var(--ix-emerald-hi); color: var(--ix-text); }
.ix-search-inline { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 0 14px; border: 1px solid var(--ix-line-2); border-radius: var(--ix-radius); background: var(--ix-charcoal); }
.ix-search-inline .ix-icon { width: 18px; color: var(--ix-muted); }
.ix-search-inline input { background: transparent; border: 0; outline: none; min-width: 200px; }

/* --------------------------------------------------------------------------
   Ecosystem diagram
   ----------------------------------------------------------------------- */
.ix-eco { margin: 0; text-align: center; }
.ix-eco__root {
	display: inline-flex; flex-direction: column; align-items: center; gap: 10px; padding: 28px 44px;
	border: 1px solid var(--ix-gold-soft); border-radius: var(--ix-radius); background: var(--ix-black); position: relative;
}
.ix-band--alt .ix-eco__root { background: var(--ix-charcoal); }
.ix-eco__root .ix-wordmark { font-size: 24px; }
.ix-eco__root .ix-logo__img { height: 36px; width: auto; }
.ix-eco__caption { font-size: 12px; letter-spacing: .16em; text-transform: uppercase; color: var(--ix-muted); }
.ix-eco__root::after { content: ""; position: absolute; top: 100%; left: 50%; width: 1px; height: 40px; background: var(--ix-gold-soft); }
.ix-eco__branches {
	list-style: none; display: grid; grid-template-columns: repeat(var(--ix-n, 5), minmax(0, 1fr)); gap: 16px;
	margin-top: 40px; padding-top: 40px; position: relative;
}
.ix-eco__branches::before { content: ""; position: absolute; top: 0; left: calc(100% / var(--ix-n, 5) / 2); right: calc(100% / var(--ix-n, 5) / 2); height: 1px; background: var(--ix-gold-soft); }
.ix-eco__branches li { position: relative; }
.ix-eco__branches li::before { content: ""; position: absolute; bottom: 100%; left: 50%; width: 1px; height: 40px; background: var(--ix-gold-soft); }
.ix-eco__branches a, .ix-eco__branches li > span {
	display: flex; flex-direction: column; gap: 6px; height: 100%; padding: 22px 16px; text-decoration: none;
	border: 1px solid var(--ix-line); border-radius: var(--ix-radius); background: var(--ix-charcoal);
	transition: border-color .25s, transform .25s;
}
.ix-band--alt .ix-eco__branches a, .ix-band--alt .ix-eco__branches li > span { background: var(--ix-black); }
.ix-eco__branches a:hover { border-color: var(--ix-gold-soft); transform: translateY(-2px); color: var(--ix-text); }
.ix-eco__branches strong { font-weight: 600; font-size: 17px; }
.ix-eco__branches span span, .ix-eco__branches a span { font-size: 13px; color: var(--ix-muted); }
.ix-eco__branches .is-future > span { border-style: dashed; background: transparent !important; }
.ix-eco figcaption { margin-top: 26px; font-size: 13px; color: var(--ix-muted); }
@media (max-width: 860px) {
	.ix-eco { text-align: left; }
	.ix-eco__root { display: flex; align-items: flex-start; }
	.ix-eco__root::after { left: 28px; height: 28px; }
	.ix-eco__branches { grid-template-columns: 1fr; gap: 12px; margin-top: 28px; padding: 0 0 0 56px; }
	.ix-eco__branches::before { top: 0; bottom: 30px; left: 28px; right: auto; width: 1px; height: auto; }
	.ix-eco__branches li::before { bottom: auto; top: 50%; left: -28px; width: 28px; height: 1px; }
}

/* --------------------------------------------------------------------------
   Ownership table
   ----------------------------------------------------------------------- */
.ix-table-wrap { overflow-x: auto; border: 1px solid var(--ix-line); border-radius: var(--ix-radius); background: var(--ix-charcoal); }
.ix-table-wrap:focus-visible { outline-offset: 2px; }
.ix-table { width: 100%; min-width: 980px; border-collapse: collapse; font-size: 15px; }
.ix-table th, .ix-table td { padding: 18px 16px; text-align: left; border-bottom: 1px solid var(--ix-line); vertical-align: top; }
.ix-table thead th { font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--ix-gold); background: var(--ix-black); white-space: nowrap; }
.ix-table tbody tr:last-child > * { border-bottom: 0; }
.ix-table tbody th { font-weight: 600; }
.ix-table tbody th a { text-decoration: none; }
.ix-table td { color: var(--ix-muted); }
.ix-table__muted { font-style: italic; }
.ix-table__muted::before { font-style: normal; }
@media (max-width: 760px) {
	.ix-table-wrap { overflow: visible; border: 0; background: transparent; }
	.ix-table { min-width: 0; }
	.ix-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
	.ix-table, .ix-table tbody, .ix-table tr, .ix-table th, .ix-table td { display: block; }
	.ix-table tr { border: 1px solid var(--ix-line); border-radius: var(--ix-radius); margin-bottom: 14px; background: var(--ix-charcoal); }
	.ix-table tbody th { padding: 16px; font-size: 18px; border-bottom: 1px solid var(--ix-line); }
	.ix-table td { display: flex; justify-content: space-between; gap: 16px; padding: 12px 16px; border-bottom: 1px solid var(--ix-line); }
	.ix-table td::before { content: attr(data-label); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: var(--ix-gold); flex: none; }
	.ix-table tbody tr > *:last-child { border-bottom: 0; }
}

/* --------------------------------------------------------------------------
   Insights cards
   ----------------------------------------------------------------------- */
.ix-pcard {
	position: relative; display: flex; flex-direction: column; overflow: hidden;
	background: var(--ix-charcoal); border: 1px solid var(--ix-line); border-radius: var(--ix-radius);
	transition: border-color .3s var(--ix-ease), transform .3s var(--ix-ease);
}
.ix-band--alt .ix-pcard { background: var(--ix-black); }
.ix-pcard:hover { border-color: var(--ix-gold-soft); transform: translateY(-3px); }
.ix-pcard__media { aspect-ratio: 16 / 10; overflow: hidden; border-bottom: 1px solid var(--ix-line); }
.ix-pcard__media--portrait { aspect-ratio: 4 / 5; }
.ix-pcard__media img { width: 100%; height: 100%; object-fit: cover; }
.ix-pcard__body { display: flex; flex-direction: column; flex: 1; padding: 26px; }
.ix-pcard__body .ix-eyebrow { margin-bottom: 12px; }
.ix-pcard__body > p:not(.ix-eyebrow):not(.ix-pcard__meta) { color: var(--ix-muted); font-size: 16px; margin: 12px 0 0; }
.ix-pcard__meta { margin: 18px 0 0; display: flex; gap: 8px; font-size: 13px; color: var(--ix-muted); }
.ix-pcard .ix-link { margin-top: auto; align-self: flex-start; padding-top: 0; }
.ix-pcard__meta + .ix-link { margin-top: 22px; }

.ix-insights-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 40px; }
.ix-searchform { display: flex; align-items: center; gap: 10px; padding: 6px 6px 6px 14px; border: 1px solid var(--ix-line-2); border-radius: var(--ix-radius); background: var(--ix-charcoal); min-width: min(100%, 380px); }
.ix-searchform .ix-icon { width: 18px; color: var(--ix-muted); flex: none; }
.ix-searchform input { flex: 1; min-width: 0; background: transparent; border: 0; outline: none; min-height: 40px; }
.ix-searchform:focus-within { border-color: var(--ix-gold); }

.ix-featured {
	position: relative; display: grid; grid-template-columns: 1.2fr 1fr; margin-bottom: 28px; overflow: hidden;
	border: 1px solid var(--ix-line); border-radius: var(--ix-radius); background: var(--ix-charcoal);
}
.ix-featured__media img { width: 100%; height: 100%; object-fit: cover; aspect-ratio: 16 / 10; }
.ix-featured__body { padding: clamp(28px, 4vw, 52px); display: flex; flex-direction: column; justify-content: center; }
.ix-featured__body > p:not(.ix-eyebrow):not(.ix-pcard__meta) { color: var(--ix-muted); margin-top: 16px; }
.ix-featured .ix-link { margin-top: 24px; align-self: flex-start; }
@media (max-width: 860px) { .ix-featured { grid-template-columns: 1fr; } }

.ix-pagination { margin-top: 48px; }
.ix-pagination .nav-links { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; }
.ix-pagination .page-numbers { min-width: 44px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; padding: 0 14px; border: 1px solid var(--ix-line-2); border-radius: var(--ix-radius); text-decoration: none; color: var(--ix-muted); }
.ix-pagination .page-numbers.current { background: var(--ix-emerald); border-color: var(--ix-emerald-hi); color: var(--ix-text); }
.ix-pagination a.page-numbers:hover { border-color: var(--ix-gold); color: var(--ix-text); }

/* --------------------------------------------------------------------------
   Roadmap, timeline, jobs
   ----------------------------------------------------------------------- */
.ix-roadmap { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 20px; align-items: start; }
.ix-roadmap__stage { display: flex; align-items: center; gap: 10px; font-size: 13px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; padding-bottom: 14px; margin-bottom: 14px; border-bottom: 1px solid var(--ix-line); }
.ix-roadmap__stage small { margin-left: auto; color: var(--ix-muted); font-weight: 600; }
.ix-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--ix-muted); }
.ix-dot--planned, .ix-dot--in_development, .ix-dot--testing { background: var(--ix-gold); }
.ix-dot--launched, .ix-dot--improving { background: var(--ix-emerald-hi); }
.ix-rcard { padding: 22px; margin-bottom: 14px; border: 1px solid var(--ix-line); border-radius: var(--ix-radius); background: var(--ix-charcoal); }
.ix-rcard h4 { font-size: 18px; margin-bottom: 10px; }
.ix-rcard__text, .ix-rcard__notes { color: var(--ix-muted); font-size: 15px; margin-top: 12px; }
.ix-rcard__text p:last-child { margin-bottom: 0; }
.ix-rcard__target { font-size: 14px; margin: 12px 0 0; }
.ix-rcard__date { font-size: 12px; color: var(--ix-muted); margin: 14px 0 0; letter-spacing: .04em; }

.ix-timeline { list-style: none; position: relative; max-width: 960px; }
.ix-timeline::before { content: ""; position: absolute; top: 8px; bottom: 8px; left: 140px; width: 1px; background: var(--ix-line); }
.ix-tl { display: grid; grid-template-columns: 140px 1fr; gap: 40px; padding-bottom: 28px; position: relative; }
.ix-tl::before { content: ""; position: absolute; left: 136px; top: 10px; width: 9px; height: 9px; border-radius: 50%; background: var(--ix-black); border: 1px solid var(--ix-gold); }
.ix-tl__date { font-size: 13px; font-weight: 600; color: var(--ix-gold); padding-top: 4px; }
.ix-tl__card { display: grid; grid-template-columns: 1fr; border: 1px solid var(--ix-line); border-radius: var(--ix-radius); background: var(--ix-charcoal); overflow: hidden; }
.ix-tl__media img { width: 100%; aspect-ratio: 21 / 9; object-fit: cover; }
.ix-tl__body { padding: 26px; }
.ix-tl__tags { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 0 0 12px; }
.ix-tl__tags .ix-eyebrow { margin: 0; }
.ix-tl__body h3 a { text-decoration: none; }
.ix-tl__body > p { color: var(--ix-muted); margin: 12px 0 18px; }
@media (max-width: 720px) {
	.ix-timeline::before { left: 4px; }
	.ix-tl { grid-template-columns: 1fr; gap: 10px; padding-left: 28px; }
	.ix-tl::before { left: 0; top: 6px; }
}

.ix-jobs { display: grid; gap: 12px; }
.ix-job { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 26px 28px; border: 1px solid var(--ix-line); border-radius: var(--ix-radius); background: var(--ix-charcoal); transition: border-color .25s; }
.ix-job:hover { border-color: var(--ix-gold-soft); }
.ix-job .ix-eyebrow { margin-bottom: 8px; }
.ix-job > .ix-icon { flex: none; width: 22px; color: var(--ix-gold); }
.ix-job__meta { display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 10px 0 0; font-size: 14px; color: var(--ix-muted); }

/* --------------------------------------------------------------------------
   FAQ accordion
   ----------------------------------------------------------------------- */
.ix-faq__group { font-size: 13px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--ix-gold); margin: 48px 0 12px; }
.ix-faq__group:first-of-type { margin-top: 0; }
.ix-accordion { border-top: 1px solid var(--ix-line); }
.ix-acc { border-bottom: 1px solid var(--ix-line); }
.ix-acc__h { margin: 0; font-size: inherit; }
.ix-acc__btn {
	width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 24px 0;
	background: none; border: 0; text-align: left; cursor: pointer; font-size: clamp(17px, 1.5vw, 20px); font-weight: 600; color: var(--ix-text);
}
.ix-acc__btn:hover { color: var(--ix-gold); }
.ix-acc__btn .ix-icon { flex: none; width: 22px; height: 22px; color: var(--ix-gold); transition: transform .3s var(--ix-ease); }
.ix-acc__btn[aria-expanded="true"] .ix-icon { transform: rotate(45deg); }
.ix-acc__panel { padding: 0 48px 26px 0; }
.ix-acc__panel .ix-prose { font-size: 17px; color: var(--ix-muted); }

/* --------------------------------------------------------------------------
   Forms
   ----------------------------------------------------------------------- */
.ix-formwrap { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: clamp(28px, 4vw, 64px); align-items: start; }
.ix-formwrap__aside { position: sticky; top: calc(var(--ix-header-h) + 24px); }
@media (max-width: 980px) { .ix-formwrap { grid-template-columns: 1fr; } .ix-formwrap__aside { position: static; order: -1; } }

.ix-sidecard { padding: 28px; border: 1px solid var(--ix-line); border-top: 1px solid var(--ix-gold-soft); border-radius: var(--ix-radius); background: var(--ix-charcoal); }
.ix-sidecard__name { font-size: 20px; font-weight: 600; margin: 0 0 10px; }
.ix-sidecard__mail { display: inline-flex; align-items: center; gap: 10px; font-weight: 600; text-decoration: none; word-break: break-all; }
.ix-sidecard__mail .ix-icon { width: 18px; color: var(--ix-gold); flex: none; }
.ix-sidecard__note { font-size: 14px; color: var(--ix-muted); margin: 18px 0 0; }
.ix-sidecard__links { font-size: 14px; margin: 14px 0 0; color: var(--ix-muted); }
.ix-mini { list-style: none; display: grid; gap: 10px; font-size: 15px; color: var(--ix-muted); }
.ix-mini li { padding-left: 18px; position: relative; }
.ix-mini li::before { content: ""; position: absolute; left: 0; top: .7em; width: 8px; height: 1px; background: var(--ix-gold); }

.ix-form { display: grid; gap: 28px; }
.ix-form__summary { padding: 20px 24px; border: 1px solid var(--ix-error); border-left-width: 3px; border-radius: var(--ix-radius); background: rgba(229, 148, 138, .07); }
.ix-form__summary:focus { outline: 2px solid var(--ix-error); outline-offset: 2px; }
.ix-form__summary p { margin: 0; }
.ix-form__summary ul { margin: 10px 0 0 18px; font-size: 15px; }
.ix-form__summary a { color: var(--ix-error); }
.ix-hp { position: absolute !important; left: -10000px !important; width: 1px; height: 1px; overflow: hidden; }

.ix-fieldset { margin: 0; padding: clamp(22px, 3vw, 34px); border: 1px solid var(--ix-line); border-radius: var(--ix-radius); background: var(--ix-charcoal); min-width: 0; }
.ix-fieldset--plain { padding: clamp(22px, 3vw, 34px); }
.ix-fieldset > legend { float: left; width: 100%; display: flex; align-items: center; gap: 14px; padding: 0; margin-bottom: 24px; font-size: 19px; font-weight: 600; }
.ix-fieldset > legend + * { clear: both; }
.ix-fieldset__letter { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border: 1px solid var(--ix-gold-soft); border-radius: 50%; font-size: 12px; font-weight: 700; color: var(--ix-gold); }
.ix-fieldset__help { clear: both; font-size: 14px; color: var(--ix-muted); margin: -8px 0 20px; }
.ix-fields-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 22px; clear: both; }
@media (max-width: 640px) { .ix-fields-grid { grid-template-columns: 1fr; } }

.ix-field { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.ix-field--full { grid-column: 1 / -1; }
.ix-label { font-size: 15px; font-weight: 600; color: var(--ix-text); padding: 0; }
.ix-req { color: var(--ix-gold); }
.ix-opt { font-weight: 400; color: var(--ix-muted); font-size: 13px; }
.ix-help { font-size: 13px; color: var(--ix-muted); margin: -2px 0 2px; }
.ix-field input[type="text"], .ix-field input[type="email"], .ix-field input[type="url"], .ix-field input[type="tel"], .ix-field input[type="number"], .ix-field textarea, .ix-field select {
	width: 100%; min-height: 50px; padding: 12px 14px; background: var(--ix-black); color: var(--ix-text);
	border: 1px solid var(--ix-line-2); border-radius: var(--ix-radius); font-size: 16px; transition: border-color .2s, box-shadow .2s;
	-webkit-appearance: none; appearance: none;
}
.ix-field textarea { min-height: 128px; resize: vertical; line-height: 1.55; }
.ix-field input::placeholder, .ix-field textarea::placeholder { color: #6E726D; }
.ix-field input:focus, .ix-field textarea:focus, .ix-field select:focus { outline: none; border-color: var(--ix-gold); box-shadow: 0 0 0 3px var(--ix-gold-faint); }
.ix-select { position: relative; }
.ix-select .ix-icon { position: absolute; right: 14px; top: 50%; width: 16px; transform: translateY(-50%); color: var(--ix-muted); pointer-events: none; }
.ix-select select { padding-right: 40px; cursor: pointer; }
.has-error input, .has-error textarea, .has-error select { border-color: var(--ix-error) !important; }
.ix-error { margin: 0; font-size: 14px; color: var(--ix-error); min-height: 0; }
.ix-error:empty { display: none; }

.ix-choice { border: 0; padding: 0; margin: 0; min-width: 0; }
.ix-choice > legend { float: none; display: block; width: auto; margin-bottom: 12px; padding: 0; }
.ix-choice:focus { outline: none; }
.ix-choice__opts { display: flex; flex-wrap: wrap; gap: 10px; }
.ix-pill { position: relative; display: inline-flex; cursor: pointer; }
.ix-pill input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.ix-pill span {
	display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 10px 16px; border: 1px solid var(--ix-line-2); border-radius: 999px;
	font-size: 15px; color: var(--ix-muted); background: var(--ix-black); transition: border-color .2s, color .2s, background-color .2s;
}
.ix-pill:hover span { border-color: var(--ix-gold-soft); color: var(--ix-text); }
.ix-pill input:checked + span { background: var(--ix-emerald); border-color: var(--ix-emerald-hi); color: var(--ix-text); }
.ix-pill input[type="checkbox"]:checked + span::before { content: "✓"; font-size: 13px; }
.ix-pill input:focus-visible + span { outline: 2px solid var(--ix-gold); outline-offset: 2px; }
.has-error .ix-pill span { border-color: rgba(229, 148, 138, .5); }

.ix-consent { display: flex; gap: 14px; align-items: flex-start; cursor: pointer; font-size: 15px; color: var(--ix-muted); line-height: 1.55; }
.ix-consent input { flex: none; width: 22px; height: 22px; margin: 1px 0 0; accent-color: var(--ix-emerald-hi); cursor: pointer; }
.ix-consent a { color: var(--ix-text); }

.ix-file { position: relative; }
.ix-file input { position: absolute; inset: 0; opacity: 0; cursor: pointer; width: 100%; }
.ix-file__ui { display: flex; align-items: center; gap: 12px; min-height: 56px; padding: 12px 16px; border: 1px dashed var(--ix-line-2); border-radius: var(--ix-radius); background: var(--ix-black); color: var(--ix-muted); font-size: 15px; overflow: hidden; }
.ix-file__ui .ix-icon { width: 20px; color: var(--ix-gold); flex: none; }
.ix-file__ui [data-ix-filename] { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ix-file:hover .ix-file__ui, .ix-file input:focus-visible + .ix-file__ui { border-color: var(--ix-gold); color: var(--ix-text); }
.ix-file input:focus-visible + .ix-file__ui { outline: 2px solid var(--ix-gold); outline-offset: 2px; }
.ix-file.has-file .ix-file__ui { border-style: solid; color: var(--ix-text); }

.ix-form__disclaimer { display: flex; gap: 12px; margin: 0; font-size: 14px; color: var(--ix-muted); }
.ix-form__disclaimer .ix-icon { flex: none; width: 18px; color: var(--ix-gold); margin-top: 2px; }
.ix-form__submit { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; }
.ix-form__req { margin: 0; font-size: 13px; color: var(--ix-muted); }
.ix-form__req span { color: var(--ix-gold); }
@media (max-width: 560px) { .ix-form__submit .ix-btn { width: 100%; } }
.cf-turnstile { min-height: 65px; }

/* --------------------------------------------------------------------------
   Founder, thanks, article, venture singles
   ----------------------------------------------------------------------- */
.ix-founder--hero { padding-top: calc(var(--ix-header-h) + clamp(48px, 7vw, 96px)); border-bottom: 1px solid var(--ix-line); }
.ix-founder__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(32px, 6vw, 96px); align-items: center; }
.ix-founder__photo { position: relative; }
.ix-founder__photo img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: var(--ix-radius); filter: grayscale(.15); }
.ix-founder__photo::after { content: ""; position: absolute; inset: 14px -14px -14px 14px; border: 1px solid var(--ix-gold-soft); border-radius: var(--ix-radius); z-index: -1; }
.ix-founder__mono {
	aspect-ratio: 4 / 5; display: flex; align-items: center; justify-content: center; border-radius: var(--ix-radius);
	border: 1px solid var(--ix-line); font-family: var(--ix-serif); font-size: clamp(80px, 12vw, 160px); color: var(--ix-gold);
	background: radial-gradient(circle at 50% 40%, rgba(23, 77, 58, .4), transparent 65%), var(--ix-charcoal);
}
.ix-founder__copy > p:not(.ix-eyebrow) { color: var(--ix-muted); }
.ix-founder:not(.ix-founder--hero) .ix-founder__grid { grid-template-columns: minmax(0, 3fr) minmax(0, 7fr); }
@media (max-width: 820px) {
	.ix-founder__grid, .ix-founder:not(.ix-founder--hero) .ix-founder__grid { grid-template-columns: 1fr; }
	.ix-founder__photo { max-width: 340px; }
}
.ix-socials { list-style: none; display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.ix-socials a { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-width: 44px; height: 44px; border: 1px solid var(--ix-line-2); border-radius: var(--ix-radius); color: var(--ix-muted); text-decoration: none; font-size: 14px; }
.ix-socials a:hover { color: var(--ix-gold); border-color: var(--ix-gold-soft); }
.ix-socials .ix-icon { width: 18px; }
.ix-socials--inline a { padding: 0 14px; }

.ix-hero--thanks, .ix-hero--404 { min-height: 72svh; display: flex; align-items: center; text-align: center; }
.ix-thanks { display: flex; flex-direction: column; align-items: center; }
.ix-thanks .ix-h1 { margin-inline: auto; }
.ix-thanks .ix-hero__lead { margin-inline: auto; }
.ix-thanks__icon { display: inline-flex; align-items: center; justify-content: center; width: 72px; height: 72px; margin-bottom: 28px; border-radius: 50%; background: var(--ix-emerald); border: 1px solid var(--ix-emerald-hi); }
.ix-thanks__icon .ix-icon { width: 30px; height: 30px; }
.ix-thanks__ref { margin: 24px 0 0; padding: 12px 18px; border: 1px solid var(--ix-gold-soft); border-radius: var(--ix-radius); font-size: 15px; }
.ix-thanks__ref strong { color: var(--ix-gold); letter-spacing: .06em; }
.ix-thanks__small { font-size: 14px; color: var(--ix-muted); margin: 12px 0 0; }
.ix-404-search { margin-top: 40px; width: 100%; max-width: 520px; }

.ix-hero--article { padding-bottom: clamp(40px, 5vw, 64px); }
.ix-hero--article .ix-h1 { max-width: none; font-size: clamp(34px, 4.6vw, 58px); }
.ix-article__meta { display: flex; flex-wrap: wrap; gap: 10px; margin: 28px 0 0; font-size: 14px; color: var(--ix-muted); }
.ix-article__cover { margin-top: clamp(-24px, -2vw, -12px); }
.ix-article__cover img { width: 100%; max-height: 640px; object-fit: cover; border-radius: var(--ix-radius); border: 1px solid var(--ix-line); }
.ix-article { padding-top: clamp(48px, 6vw, 80px); }
.ix-article__venture { font-size: 14px; color: var(--ix-muted); display: flex; gap: 10px; align-items: center; margin-bottom: 28px; }
.ix-share { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; margin-top: 56px; padding-top: 28px; border-top: 1px solid var(--ix-line); }
.ix-share .ix-eyebrow { margin: 0; }
.ix-share ul { list-style: none; display: flex; gap: 8px; align-items: center; }
.ix-share a, .ix-share button { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 1px solid var(--ix-line-2); border-radius: var(--ix-radius); background: transparent; color: var(--ix-muted); cursor: pointer; }
.ix-share a:hover, .ix-share button:hover { color: var(--ix-gold); border-color: var(--ix-gold-soft); }
.ix-share .ix-icon { width: 18px; }
.ix-share__copied { font-size: 13px; color: var(--ix-gold); margin-left: 6px; }
.ix-author { display: flex; gap: 18px; align-items: flex-start; margin-top: 32px; padding: 24px; border: 1px solid var(--ix-line); border-radius: var(--ix-radius); background: var(--ix-charcoal); }
.ix-author__img { border-radius: 50%; flex: none; }
.ix-author .ix-eyebrow { margin-bottom: 4px; }
.ix-author__name { font-weight: 600; font-size: 18px; margin: 0; }
.ix-author p:last-child { margin-bottom: 0; color: var(--ix-muted); font-size: 15px; }
.ix-detail { margin-top: 44px; padding-top: 32px; border-top: 1px solid var(--ix-line); color: var(--ix-muted); }
.ix-detail .ix-h3 { color: var(--ix-text); margin-bottom: 16px; }
.ix-dash { list-style: none; display: grid; gap: 10px; }
.ix-dash li { padding-left: 22px; position: relative; color: var(--ix-muted); }
.ix-dash li::before { content: ""; position: absolute; left: 0; top: .8em; width: 10px; height: 1px; background: var(--ix-gold); }
.ix-sources { padding-left: 1.4em; display: grid; gap: 8px; }
.ix-findings ul { list-style: none; display: grid; gap: 14px; margin-bottom: 14px; }
.ix-findings li { display: flex; gap: 14px; align-items: baseline; color: var(--ix-text); }
.ix-evidence { flex: none; font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; padding: 3px 8px; border-radius: 2px; border: 1px solid var(--ix-line-2); color: var(--ix-muted); }
.ix-evidence--fact { color: #7FC3A6; border-color: rgba(31, 106, 79, .7); }
.ix-evidence--estimate { color: var(--ix-gold); border-color: var(--ix-gold-soft); }
.ix-evidence--hypothesis { border-style: dashed; }
.ix-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 0; margin: 0 0 36px; border: 1px solid var(--ix-line); border-radius: var(--ix-radius); }
.ix-facts > div { padding: 18px 20px; border-right: 1px solid var(--ix-line); }
.ix-facts > div:last-child { border-right: 0; }
.ix-facts dt { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--ix-gold); margin-bottom: 6px; }
.ix-facts dd { margin: 0; }
.ix-storyhead { display: flex; gap: 18px; align-items: center; margin-bottom: 12px; }
.ix-storyhead__img { width: 72px; height: 72px; border-radius: 50%; object-fit: cover; }
.ix-storyhead p { margin: 0; }

.ix-vhero { display: grid; grid-template-columns: auto 1fr; gap: clamp(24px, 4vw, 56px); align-items: start; }
.ix-vhero__mark { width: clamp(96px, 12vw, 160px); aspect-ratio: 1; display: flex; align-items: center; justify-content: center; border: 1px solid var(--ix-line); border-radius: var(--ix-radius); background: var(--ix-charcoal); padding: 18px; }
.ix-vhero__mark .ix-vinitial { width: 100%; height: 100%; border: 0; background: transparent; font-size: clamp(48px, 6vw, 80px); }
.ix-vhero__mark img { max-width: 100%; max-height: 100%; object-fit: contain; }
.ix-vhero__badges { display: flex; flex-wrap: wrap; gap: 8px; margin: 22px 0 0; }
@media (max-width: 640px) { .ix-vhero { grid-template-columns: 1fr; } .ix-vhero__mark { width: 96px; } }
.ix-track { list-style: none; margin-top: 32px; display: grid; gap: 0; border-left: 1px solid var(--ix-line); }
.ix-track li { position: relative; padding: 8px 0 8px 22px; color: var(--ix-muted); font-size: 15px; }
.ix-track li::before { content: ""; position: absolute; left: -5px; top: 15px; width: 9px; height: 9px; border-radius: 50%; background: var(--ix-black); border: 1px solid var(--ix-line-2); }
.ix-track li.is-done::before { background: var(--ix-emerald-hi); border-color: var(--ix-emerald-hi); }
.ix-track li.is-current { color: var(--ix-text); font-weight: 600; }
.ix-track li.is-current::before { box-shadow: 0 0 0 4px rgba(31, 106, 79, .3); }
.ix-milestones { list-style: none; display: grid; gap: 0; border-top: 1px solid var(--ix-line); margin-top: 16px; }
.ix-milestones li { display: grid; grid-template-columns: 140px 1fr; gap: 20px; padding: 16px 0; border-bottom: 1px solid var(--ix-line); }
.ix-milestones__date { color: var(--ix-gold); font-size: 14px; font-weight: 600; }
@media (max-width: 520px) { .ix-milestones li { grid-template-columns: 1fr; gap: 4px; } }
.ix-sitecard {
	display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: clamp(24px, 4vw, 44px);
	border: 1px solid var(--ix-line); border-radius: var(--ix-radius); background: var(--ix-charcoal); text-decoration: none;
	transition: border-color .25s;
}
.ix-sitecard > span { display: flex; flex-direction: column; }
.ix-sitecard .ix-eyebrow { margin-bottom: 8px; }
.ix-sitecard__url { font-size: clamp(22px, 3vw, 36px); font-weight: 600; letter-spacing: -.02em; word-break: break-all; }
.ix-sitecard .ix-icon { width: 32px; height: 32px; color: var(--ix-gold); flex: none; }
.ix-sitecard:hover { border-color: var(--ix-gold-soft); color: var(--ix-text); }

/* Sitemap */
.ix-sitemap { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 40px; }
.ix-sitemap ul { list-style: none; display: grid; gap: 10px; margin-top: 18px; }
.ix-sitemap ul ul { margin: 10px 0 0 16px; }
.ix-sitemap a { color: var(--ix-muted); text-decoration: none; }
.ix-sitemap a:hover { color: var(--ix-gold); }

/* --------------------------------------------------------------------------
   Footer
   ----------------------------------------------------------------------- */
.ix-footer { background: var(--ix-black); border-top: 1px solid var(--ix-line); padding: clamp(56px, 7vw, 96px) 0 32px; position: relative; }
.ix-footer__grid { display: grid; grid-template-columns: 1.6fr 1fr 1fr 1.2fr; gap: 40px; }
.ix-footer__tagline { font-family: var(--ix-serif); font-size: 26px; line-height: 1.2; margin: 24px 0 12px; }
.ix-footer__desc { color: var(--ix-muted); font-size: 15px; max-width: 38ch; }
.ix-footer__h { font-size: 12px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: var(--ix-gold); margin-bottom: 20px; }
.ix-footer__list { list-style: none; display: grid; gap: 12px; }
.ix-footer__list a { text-decoration: none; color: var(--ix-muted); font-size: 15px; }
.ix-footer__list a:hover { color: var(--ix-text); }
.ix-footer__label { font-size: 13px; color: var(--ix-muted); margin: 0 0 4px; }
.ix-footer__mail { font-weight: 600; text-decoration: none; word-break: break-all; }
.ix-footer__ventures { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 28px; margin-top: 56px; padding: 22px 0; border-top: 1px solid var(--ix-line); }
.ix-footer__ventures ul { list-style: none; display: flex; flex-wrap: wrap; gap: 10px 28px; }
.ix-footer__ventures a { text-decoration: none; font-weight: 600; font-size: 15px; }
.ix-footer__ventures .ix-footer__label { margin: 0; font-size: 12px; letter-spacing: .16em; text-transform: uppercase; }
.ix-footer__bottom { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; padding-top: 24px; border-top: 1px solid var(--ix-line); font-size: 13px; color: var(--ix-muted); }
.ix-footer__bottom p { margin: 0; }
.ix-footer__bottom .ix-footer__list { display: flex; flex-wrap: wrap; gap: 8px 22px; }
.ix-footer__bottom .ix-footer__list a { font-size: 13px; }
@media (max-width: 960px) { .ix-footer__grid { grid-template-columns: 1fr 1fr; } .ix-footer__brand { grid-column: 1 / -1; } }
@media (max-width: 520px) { .ix-footer__grid { grid-template-columns: 1fr; } }

/* --------------------------------------------------------------------------
   Reading mode: long-form content on warm off-white for comfortable reading.
   Brand heroes stay dark; the reading surface is light.
   ----------------------------------------------------------------------- */
.ix-article, .ix-section--reading {
	--r-bg: #F5F3ED; --r-surface: #FFFFFF; --r-text: #151815; --r-body: #2E322E; --r-muted: #5E635D;
	--r-line: #DDD8CC; --r-accent: #174D3A; --r-gold: #8A6D33;
	background: var(--r-bg); color: var(--r-text);
}
.ix-article .ix-prose, .ix-section--reading .ix-prose { color: var(--r-body); }
.ix-article .ix-prose h2, .ix-article .ix-prose h3, .ix-article .ix-prose strong,
.ix-section--reading .ix-prose h2, .ix-section--reading .ix-prose h3, .ix-section--reading .ix-prose strong { color: var(--r-text); }
.ix-article .ix-prose a, .ix-section--reading .ix-prose a { color: var(--r-accent); text-decoration-color: var(--r-accent); }
.ix-article .ix-prose a:hover, .ix-section--reading .ix-prose a:hover { color: var(--r-text); }
.ix-article .ix-prose li::marker, .ix-section--reading .ix-prose li::marker { color: var(--r-gold); }
.ix-article .ix-prose blockquote, .ix-section--reading .ix-prose blockquote { color: var(--r-text); border-left-color: var(--r-gold); }
.ix-article .ix-prose code, .ix-section--reading .ix-prose code { background: #E9E5DA; }
.ix-article .ix-prose pre, .ix-section--reading .ix-prose pre, .ix-article .ix-prose th, .ix-article .ix-prose td, .ix-article .ix-prose hr { border-color: var(--r-line); background: transparent; }
.ix-article .ix-prose figcaption { color: var(--r-muted); }
.ix-article .ix-eyebrow, .ix-section--reading .ix-eyebrow { color: var(--r-gold); }
.ix-article .ix-h3, .ix-article .ix-author__name { color: var(--r-text); }
.ix-article .ix-muted, .ix-article .ix-help { color: var(--r-muted); }
.ix-article .ix-detail { border-top-color: var(--r-line); color: var(--r-muted); }
.ix-article .ix-detail .ix-h3 { color: var(--r-text); }
.ix-article .ix-dash li { color: var(--r-body); }
.ix-article .ix-dash li::before { background: var(--r-gold); }
.ix-article .ix-share { border-top-color: var(--r-line); }
.ix-article .ix-share a, .ix-article .ix-share button { border-color: var(--r-line); color: var(--r-muted); background: var(--r-surface); }
.ix-article .ix-share a:hover, .ix-article .ix-share button:hover { color: var(--r-accent); border-color: var(--r-accent); }
.ix-article .ix-share__copied { color: var(--r-accent); }
.ix-article .ix-author { background: var(--r-surface); border-color: var(--r-line); }
.ix-article .ix-author p:last-child { color: var(--r-muted); }
.ix-article .ix-article__venture { color: var(--r-muted); }
.ix-article .ix-tag { border-color: var(--r-line); color: var(--r-body); background: var(--r-surface); }
.ix-article .ix-tag--link:hover { border-color: var(--r-accent); color: var(--r-accent); }
.ix-article .ix-link { color: var(--r-text); border-bottom-color: rgba(23, 77, 58, .35); }
.ix-article .ix-link .ix-icon { color: var(--r-accent); }
.ix-article .ix-findings li { color: var(--r-text); }
.ix-article .ix-evidence { border-color: var(--r-line); color: var(--r-muted); background: var(--r-surface); }
.ix-article .ix-evidence--fact { color: var(--r-accent); border-color: rgba(23, 77, 58, .45); }
.ix-article .ix-evidence--estimate { color: var(--r-gold); border-color: rgba(138, 109, 51, .45); }
.ix-article .ix-facts { border-color: var(--r-line); background: var(--r-surface); }
.ix-article .ix-facts > div { border-right-color: var(--r-line); }
.ix-article .ix-facts dt { color: var(--r-gold); }
.ix-article .ix-btn--ghost { color: var(--r-text); border-color: #BDB7A8; }
.ix-article .ix-btn--ghost:hover { border-color: var(--r-accent); color: var(--r-accent); }
.ix-article :focus-visible, .ix-section--reading :focus-visible { outline-color: var(--r-accent); }
.ix-article ::selection, .ix-section--reading ::selection { background: #D9C9A0; color: #0B0C0B; }
.ix-article__cover:has(+ .ix-article) { position: relative; z-index: 1; margin-bottom: clamp(-120px, -8vw, -48px); }
.ix-article__cover + .ix-article { padding-top: clamp(96px, 12vw, 160px); }

/* --------------------------------------------------------------------------
   Elementor compatibility: theme blocks render identically inside Elementor.
   ----------------------------------------------------------------------- */
.ix-elementor .elementor-section.ix-el-row > .elementor-container,
.ix-elementor .elementor-section.ix-el-row .elementor-column > .elementor-widget-wrap { padding: 0; max-width: none; }
.ix-elementor .elementor-section.ix-el-row .elementor-widget { margin: 0 !important; }
.ix-elementor .elementor-widget-html .elementor-widget-container, .ix-elementor .elementor-widget-shortcode .elementor-widget-container { margin: 0; padding: 0; }
.elementor .ix-prose a { text-decoration: underline; }
.elementor .ix-btn, .elementor .ix-link, .elementor .ix-chip { text-decoration: none; }
.elementor .ix-btn--primary, .elementor .ix-btn--primary:hover { color: var(--ix-text); }

/* --------------------------------------------------------------------------
   Reveal (progressive enhancement; content is visible without JS)
   ----------------------------------------------------------------------- */
.ix-js [data-reveal] { opacity: 0; transform: translateY(14px); transition: opacity .7s var(--ix-ease), transform .7s var(--ix-ease); }
.ix-js [data-reveal].is-visible { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
	.ix-js [data-reveal] { opacity: 1; transform: none; }
}

/* WordPress core alignment helpers */
.alignwide { max-width: 1100px; }
.alignfull { width: 100vw; margin-left: calc(50% - 50vw); }
.wp-block-image img { border-radius: var(--ix-radius); }
.wp-block-button__link { background: var(--ix-emerald); color: var(--ix-text); border-radius: var(--ix-radius); }

@media print {
	.ix-header, .ix-footer, .ix-share, .ix-hero__grid, .ix-hero::before { display: none !important; }
	body { background: #fff; color: #000; }
	.ix-hero { padding: 0 0 24px; background: #fff; }
	.ix-prose, .ix-hero__lead, .ix-muted { color: #222; }
}
