/* ==========================================================================
   ITConnect inner-page templates: T02 pillar hub · T03 service · T04 platform
   T06 solution · T07 industry. Shared pieces first, then per template.
   Tokens and base components live in theme.css; this file only adds layout.
   Logical properties throughout (RTL-ready).
   ========================================================================== */

/* 1. Shared ----------------------------------------------------------------- */

/* Inner hero: breadcrumbs on top, copy left, visual / quote card right. */
.itc-hero--inner .itc-breadcrumbs { color: var(--wp--preset--color--mist-300); }
.itc-hero--inner .itc-hero__grid { align-items: center; }
.itc-hero--inner h1 { font-size: clamp(2rem, 1.4rem + 2.4vw, 3.25rem) !important; }

/* Proof row under hero buttons: icon + short line. */
.itc-proof {
	display: flex !important;
	flex-wrap: wrap;
	gap: 0.75rem 1.75rem;
	padding-block-start: var(--wp--preset--spacing--40);
	border-block-start: 1px solid var(--itc-line-dark);
}
.itc-proof > * { margin: 0 !important; }
.itc-proof__item { display: flex !important; align-items: center; gap: 0.5rem; }
.itc-proof__item > * { margin: 0 !important; }
.itc-proof__item p { color: var(--wp--preset--color--white); font-size: var(--wp--preset--font-size--small) !important; font-weight: 500; }
.itc-proof__item .itc-icon { color: var(--wp--preset--color--sky-500); }

/* Sticky in-page sub-nav: sits under the sticky header's main bar. */
.itc-subnav {
	position: sticky;
	inset-block-start: var(--itc-header-h);
	z-index: 50;
	background: var(--wp--preset--color--white);
	border-block-end: 1px solid var(--itc-line);
	box-shadow: 0 6px 18px rgba(1, 6, 48, 0.05);
}
.admin-bar .itc-subnav { inset-block-start: calc(var(--itc-header-h) + var(--wp-admin--admin-bar--height, 32px)); }
@media (max-width: 600px) { .admin-bar .itc-subnav { inset-block-start: var(--itc-header-h); } }
.itc-subnav__list {
	display: flex;
	gap: 0.25rem 1.75rem;
	margin-block: 0 !important;
	padding: 0;
	list-style: none;
	overflow-x: auto;
	scrollbar-width: none;
	white-space: nowrap;
}
.itc-subnav__list::-webkit-scrollbar { display: none; }
.itc-subnav__list li { margin: 0; font-size: var(--wp--preset--font-size--small) !important; }
.itc-subnav__list a {
	display: block;
	padding-block: 1rem;
	border-block-end: 2px solid transparent;
	color: var(--wp--preset--color--slate-600);
	font-weight: 500;
	text-decoration: none;
	transition: color var(--itc-dur-fast) var(--itc-ease-out), border-color var(--itc-dur-fast) var(--itc-ease-out);
}
.itc-subnav__list a:hover { color: var(--wp--preset--color--ink-950); }
.itc-subnav__list a.is-active,
.itc-subnav__list a[aria-current="true"] { color: var(--wp--preset--color--ink-950); border-block-end-color: var(--wp--preset--color--sky-600); }
/* Anchored sections clear the header + sub-nav. */
:where(main):has(.itc-subnav) [id] { scroll-margin-block-start: calc(var(--itc-header-h) + 72px); }

/* "What is X?" answer box (featured-snippet target). */
/* No box: aligns with the other sections' wide edge. */
.itc-answer { padding: 0; }
.itc-answer > * { margin: 0 !important; }
.itc-answer > * + * { margin-block-start: var(--wp--preset--spacing--30) !important; }
.itc-answer p.is-style-lead { color: var(--wp--preset--color--ink-950); }
.itc-answer > :is(p, ul, h2) { max-inline-size: 860px; }

/* Two equal columns (cards). */
.itc-grid-2 {
	display: grid !important;
	gap: var(--wp--preset--spacing--40);
	grid-template-columns: repeat(2, minmax(0, 1fr));
}
.itc-grid-2 > * { margin: 0 !important; }
@media (max-width: 600px) { .itc-grid-2 { grid-template-columns: minmax(0, 1fr); } }

/* Compact icon card: icon, title, one line. */
.itc-mini-card { display: flex !important; flex-direction: column; gap: 0.75rem; }
.itc-mini-card > * { margin: 0 !important; }
.itc-mini-card :is(h3, h4),
.itc-platform h4 { font-size: 1.25rem !important; line-height: 1.2; letter-spacing: -0.02em; }
.itc-mini-card :is(h3, h4) a,
.itc-platform h4 a { color: inherit; }
.itc-mini-card :is(h3, h4) a:hover,
.itc-platform h4 a:hover { text-decoration: none; }
.itc-mini-card p { font-size: var(--wp--preset--font-size--small) !important; }
.itc-stack--tight { gap: var(--wp--preset--spacing--30) !important; }

/* Text monogram tile for vendors (logos not supplied / not licensed). */
p.itc-mono {
	display: grid;
	place-items: center;
	flex: none;
	inline-size: 48px;
	block-size: 48px;
	margin: 0;
	border-radius: 999px;
	background: color-mix(in srgb, var(--wp--preset--color--sky-500) 15%, white);
	color: var(--wp--preset--color--sky-600);
	font-size: 0.9375rem !important;
	font-weight: 600;
	letter-spacing: -0.02em;
}

/* Chip strip: label + pill links. */
.itc-chip-strip {
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.75rem 1rem;
	margin-block-start: var(--wp--preset--spacing--50) !important;
	padding-block-start: var(--wp--preset--spacing--40);
	border-block-start: 1px solid var(--itc-line);
}
.itc-chip-strip > * { margin: 0 !important; }
.itc-chip-strip__label { color: var(--wp--preset--color--ink-950); font-size: var(--wp--preset--font-size--small) !important; font-weight: 600; }
ul.itc-chips { display: flex; flex-wrap: wrap; gap: 0.5rem; margin: 0; padding: 0; list-style: none; }
ul.itc-chips li { margin: 0; font-size: var(--wp--preset--font-size--small) !important; }
ul.itc-chips a {
	display: inline-block;
	padding: 0.375rem 0.875rem;
	border: 1px solid var(--itc-line);
	border-radius: 999px;
	background: var(--wp--preset--color--white);
	color: var(--wp--preset--color--ink-950);
	font-weight: 500;
	text-decoration: none;
	transition: border-color var(--itc-dur-fast) var(--itc-ease-out), color var(--itc-dur-fast) var(--itc-ease-out);
}
ul.itc-chips a:hover { border-color: var(--wp--preset--color--sky-600); color: var(--wp--preset--color--sky-600); }

/* Case studies: one featured card + two small ones. */
.itc-case-grid {
	display: grid !important;
	gap: var(--wp--preset--spacing--40);
	grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
	grid-template-rows: auto auto;
}
.itc-case-grid > * { margin: 0 !important; }
.itc-case-grid > .itc-case--featured { grid-row: span 2; }
.itc-case--featured h3 { color: var(--wp--preset--color--white); font-size: var(--wp--preset--font-size--x-large) !important; line-height: 1.15; letter-spacing: -0.025em; }
@media (max-width: 860px) {
	.itc-case-grid { grid-template-columns: minmax(0, 1fr); }
	.itc-case-grid > .itc-case--featured { grid-row: auto; }
}

/* Buttons row under a grid. */
.itc-after-grid { margin-block-start: var(--wp--preset--spacing--50) !important; }
.itc-after-grid.is-centered-buttons, .is-centered .itc-after-grid { justify-content: center; }

/* Scope card (what a tier covers; never a price). */
.itc-scope-card > * { margin: 0 !important; }
.itc-scope-card > * + * { margin-block-start: 0.5rem !important; }
.itc-scope-card__name { color: var(--wp--preset--color--ink-950); font-size: var(--wp--preset--font-size--x-large) !important; font-weight: 600; letter-spacing: -0.025em; line-height: 1.1; }

/* 2. T02 Pillar hub --------------------------------------------------------- */

/* Hero visual: the modules an ERP joins up, around one core. */
.itc-hero-modules {
	position: relative;
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--30);
	padding: var(--wp--preset--spacing--50);
	border: 1px solid var(--itc-line-dark);
	border-radius: 20px;
	background:
		radial-gradient(60% 60% at 50% 45%, rgba(34, 154, 215, 0.3), transparent 70%),
		linear-gradient(160deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.02));
}
.itc-hero-modules > * { margin: 0 !important; }
.itc-hero-modules__core {
	grid-column: 1 / -1;
	padding: 1rem;
	border: 1px dashed rgba(201, 238, 254, 0.35);
	border-radius: 12px;
	color: var(--wp--preset--color--white);
	font-size: var(--wp--preset--font-size--large) !important;
	font-weight: 600;
	letter-spacing: -0.02em;
	line-height: 1.3;
	text-align: center;
}
.itc-hero-modules__item {
	display: flex !important;
	align-items: center;
	gap: 0.75rem;
	padding: 0.75rem 1rem;
	border: 1px solid var(--itc-line-dark);
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.04);
}
.itc-hero-modules__item > * { margin: 0 !important; }
.itc-hero-modules__item p { color: var(--wp--preset--color--white); font-size: var(--wp--preset--font-size--small) !important; font-weight: 500; }
@media (max-width: 960px) { .itc-hero-modules { padding: var(--wp--preset--spacing--40); } }

/* Services vs platforms. */
.itc-hub-split {
	display: grid !important;
	grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
	align-items: start;
	gap: var(--wp--preset--spacing--60);
}
.itc-hub-split > * { margin: 0 !important; }
.itc-hub-split__col > * { margin: 0 !important; }
.itc-hub-split__col > * + * { margin-block-start: var(--wp--preset--spacing--40) !important; }
.itc-hub-split__head {
	color: var(--wp--preset--color--slate-600);
	font-size: var(--wp--preset--font-size--x-small) !important;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
@media (max-width: 960px) { .itc-hub-split { grid-template-columns: minmax(0, 1fr); } }
.itc-platform p:not(.itc-mono) { font-size: var(--wp--preset--font-size--small) !important; }
/* Phones: the module diagram only repeats the intro, so the hero stays short. */
@media (max-width: 600px) { .itc-hero-modules { display: none !important; } }

/* Chips without a page to link to (plain label). */
ul.itc-chips li:not(:has(a)) {
	padding: 0.375rem 0.875rem;
	border: 1px solid var(--itc-line);
	border-radius: 999px;
	background: var(--wp--preset--color--white);
	color: var(--wp--preset--color--ink-950);
	font-weight: 500;
}

/* 3. T03 Service ------------------------------------------------------------ */

/* Hero with quote card: copy left, card right (sticky while the hero scrolls). */
.itc-hero--quote .itc-hero__grid { align-items: start; grid-template-columns: minmax(0, 1fr) minmax(320px, 440px); }
.itc-hero--quote .itc-hero__quote { position: sticky; inset-block-start: calc(var(--itc-header-h) + 24px); justify-self: end; inline-size: 100%; }
@media (max-width: 960px) {
	.itc-hero--quote .itc-hero__grid { grid-template-columns: minmax(0, 1fr); }
	.itc-hero--quote .itc-hero__quote { position: static; justify-self: stretch; }
}
.itc-hero__points li { color: var(--wp--preset--color--white); font-weight: 500; }
p.itc-rating { color: var(--wp--preset--color--mist-300); font-size: var(--wp--preset--font-size--small) !important; }
.itc-rating__stars { margin-inline-end: 0.375rem; color: var(--wp--preset--color--amber-400); letter-spacing: 0.1em; }

/* Plan / tier table (features only; never prices). Third column = recommended. */
.itc-tier-table { margin: 0; overflow-x: auto; border-radius: 12px; background: var(--wp--preset--color--white); border: 1px solid var(--itc-line); }
.itc-tier-table table { inline-size: 100%; min-inline-size: 640px; border-collapse: collapse; }
.itc-tier-table :is(th, td) {
	padding: 0.875rem 1.25rem;
	border: 0;
	border-block-end: 1px solid var(--itc-line);
	text-align: center;
	font-size: var(--wp--preset--font-size--small) !important;
}
.itc-tier-table :is(th, td):first-child { text-align: start; color: var(--wp--preset--color--ink-950); font-weight: 500; }
.itc-tier-table thead th { color: var(--wp--preset--color--ink-950); font-size: var(--wp--preset--font-size--medium) !important; font-weight: 600; }
.itc-tier-table tbody tr:last-child td { border-block-end: 0; }
.itc-tier-table :is(th, td):nth-child(3) { background: color-mix(in srgb, var(--wp--preset--color--ice-50) 70%, white); }
.itc-tier-table thead th:nth-child(3) { background: var(--wp--preset--color--midnight-950); color: var(--wp--preset--color--white); }

/* Mini case study: problem → what we did → result. */
.itc-story {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--40);
}
.itc-story > * { margin: 0 !important; }
.itc-story__step > * { margin: 0 !important; }
.itc-story__step > * + * { margin-block-start: 0.75rem !important; }
.itc-story__label { color: var(--wp--preset--color--sky-500); font-size: var(--wp--preset--font-size--x-small) !important; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; }
.itc-story__step.is-result { background: radial-gradient(90% 90% at 100% 0%, rgba(34, 154, 215, 0.35), transparent 70%), var(--wp--preset--color--midnight-900) !important; }
.itc-story__step.is-result .is-style-kicker { color: var(--wp--preset--color--white); font-size: var(--wp--preset--font-size--x-large) !important; line-height: 1.2; }
@media (max-width: 860px) { .itc-story { grid-template-columns: minmax(0, 1fr); } }

/* Related blog post teaser in a card grid. */
.itc-post-teaser__tag { color: var(--wp--preset--color--sky-600); font-size: var(--wp--preset--font-size--x-small) !important; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; }

/* 4. T04 Platform ----------------------------------------------------------- */

/* Single-column hero copy (no visual). */
.itc-hero__copy--solo { max-inline-size: 820px; }
.itc-hero__copy--solo > * { margin-block: 0 !important; }
.itc-hero__copy--solo > * + * { margin-block-start: var(--wp--preset--spacing--40) !important; }

/* Vendor row: monogram, name, partner badge. */
.itc-vendor { display: flex !important; flex-wrap: wrap; align-items: center; gap: 0.75rem; }
.itc-vendor > * { margin: 0 !important; }
.itc-hero .itc-vendor p.itc-mono { background: var(--wp--preset--color--white); color: var(--wp--preset--color--midnight-950); }
.itc-vendor__name { color: var(--wp--preset--color--white); font-size: var(--wp--preset--font-size--large) !important; font-weight: 600; letter-spacing: -0.02em; }
.itc-vendor__badge {
	padding: 0.25rem 0.75rem;
	border: 1px solid rgba(201, 238, 254, 0.4);
	border-radius: 999px;
	color: var(--wp--preset--color--sky-100);
	font-size: var(--wp--preset--font-size--x-small) !important;
	font-weight: 600;
}

/* About column: heading rhythm + product screenshot slot. */
.itc-about > h2 { margin-block-start: 0.5rem !important; }
.itc-shot { min-block-size: 220px; border-radius: 20px; background: var(--wp--preset--color--surface-50); }

/* Good fit / not ideal. */
.itc-fit__card > * { margin: 0 !important; }
.itc-fit__card > * + * { margin-block-start: var(--wp--preset--spacing--30) !important; }
.itc-fit__card h3 { font-size: 1.25rem !important; letter-spacing: -0.02em; }
.itc-fit__card.is-good { border-block-start: 4px solid var(--wp--preset--color--green-500) !important; }
.itc-fit__card.is-bad { border-block-start: 4px solid #c2410c !important; }
.itc-fit__card li { color: var(--wp--preset--color--ink-950); }

/* Two-part cost explainer. */
p.itc-cost-parts__num {
	display: grid;
	place-items: center;
	inline-size: 40px;
	block-size: 40px;
	border-radius: 999px;
	background: var(--wp--preset--color--midnight-950);
	color: var(--wp--preset--color--white);
	font-weight: 600;
}

/* One wide case card. */
.itc-case--wide { padding: var(--wp--preset--spacing--50) !important; }
.itc-case--wide .is-style-kicker { color: var(--wp--preset--color--white); }

/* 5. T06 Solution ----------------------------------------------------------- */

p.itc-note { margin-block-start: var(--wp--preset--spacing--40) !important; font-size: var(--wp--preset--font-size--small) !important; font-style: italic; }

/* "Your stack": layers are native exclusive <details name="itc-stack">; click to open one. */
.itc-layers { display: grid !important; gap: 0.625rem; }
.itc-layers > * { margin: 0 !important; }
.itc-layer {
	border: 1px solid var(--itc-line-dark);
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.04);
	transition: background-color var(--itc-dur-base) var(--itc-ease-out), border-color var(--itc-dur-base) var(--itc-ease-out);
}
/* Stacked look: each layer a little narrower than the one below it. */
.itc-layers > .itc-layer:nth-child(1) { margin-inline: 8% !important; }
.itc-layers > .itc-layer:nth-child(2) { margin-inline: 6% !important; }
.itc-layers > .itc-layer:nth-child(3) { margin-inline: 4% !important; }
.itc-layers > .itc-layer:nth-child(4) { margin-inline: 2% !important; }
@media (max-width: 700px) { .itc-layers > .itc-layer { margin-inline: 0 !important; } }
.itc-layer[open] { border-color: var(--wp--preset--color--sky-500); background: rgba(34, 154, 215, 0.12); }
.itc-layer > summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 1.125rem 1.5rem;
	color: var(--wp--preset--color--white);
	font-size: var(--wp--preset--font-size--large);
	font-weight: 600;
	letter-spacing: -0.02em;
	list-style: none;
	cursor: pointer;
}
.itc-layer > summary::-webkit-details-marker { display: none; }
.itc-layer > summary::after {
	content: "";
	flex: none;
	inline-size: 0.5rem;
	block-size: 0.5rem;
	border-block-end: 2px solid var(--wp--preset--color--sky-500);
	border-inline-end: 2px solid var(--wp--preset--color--sky-500);
	transform: translateY(-25%) rotate(45deg);
	transition: transform var(--itc-dur-base) var(--itc-ease-out);
}
.itc-layer[open] > summary::after { transform: translateY(25%) rotate(-135deg); }
.itc-layer > summary:focus-visible { outline: 2px solid var(--wp--preset--color--sky-500); outline-offset: 2px; border-radius: 12px; }
.itc-layer > :not(summary) { margin: 0 1.5rem !important; }
.itc-layer > p { color: var(--wp--preset--color--mist-300); }
.itc-layer > ul.itc-chips { margin-block: 0.875rem 1.25rem !important; }
.itc-layer ul.itc-chips a { border-color: var(--itc-line-dark); background: rgba(255, 255, 255, 0.06); color: var(--wp--preset--color--white); }
.itc-layer ul.itc-chips a:hover { border-color: var(--wp--preset--color--sky-500); color: var(--wp--preset--color--sky-100); }
@media (prefers-reduced-motion: reduce) { .itc-layer > summary::after { transition: none; } }

/* Bundle card: pitch left, what's included right. */
.itc-bundle {
	display: grid !important;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	align-items: center;
	gap: var(--wp--preset--spacing--50);
	padding: var(--wp--preset--spacing--50) !important;
	border-radius: 20px !important;
}
.itc-bundle > * { margin: 0 !important; }
.itc-bundle__head > * { margin: 0 !important; }
.itc-bundle__head > * + * { margin-block-start: var(--wp--preset--spacing--30) !important; }
.itc-bundle__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem 1.5rem; margin: 0 !important; }
.itc-bundle__list li { margin: 0 !important; color: var(--wp--preset--color--ink-950); }
@media (max-width: 860px) {
	.itc-bundle { grid-template-columns: minmax(0, 1fr); padding: var(--wp--preset--spacing--40) !important; }
	.itc-bundle__list { grid-template-columns: minmax(0, 1fr); }
}

/* Gated checklist: copy + email form left, document preview right. */
.itc-gate {
	display: grid !important;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
	align-items: center;
	gap: var(--wp--preset--spacing--60);
}
.itc-gate > * { margin: 0 !important; }
.itc-gate__copy > * { margin: 0 !important; }
.itc-gate__copy > * + * { margin-block-start: var(--wp--preset--spacing--30) !important; }
.itc-gate__copy .itc-lead { margin-block-start: var(--wp--preset--spacing--40) !important; box-shadow: none; padding: 0; border: 0; background: none; }
.itc-gate__preview {
	position: relative;
	padding: var(--wp--preset--spacing--50);
	border: 1px solid var(--itc-line);
	border-radius: 12px;
	background: var(--wp--preset--color--white);
	box-shadow: 0 24px 60px rgba(1, 6, 48, 0.12);
	transform: rotate(2deg);
	overflow: hidden;
}
.itc-gate__preview::after { /* Fade: the rest of the list is in the PDF. */
	content: "";
	position: absolute;
	inset: auto 0 0;
	block-size: 45%;
	background: linear-gradient(transparent, var(--wp--preset--color--white));
}
.itc-gate__preview > * { margin: 0 !important; }
.itc-gate__preview > * + * { margin-block-start: var(--wp--preset--spacing--30) !important; }
.itc-gate__doc-title { color: var(--wp--preset--color--ink-950); font-size: var(--wp--preset--font-size--large) !important; font-weight: 600; }
@media (max-width: 860px) {
	.itc-gate { grid-template-columns: minmax(0, 1fr); }
	.itc-gate__preview { transform: none; }
}
@media (prefers-reduced-motion: reduce) { .itc-gate__preview { transform: none; } }

/* 6. T07 Industry ----------------------------------------------------------- */

/* Compliance badges: icon + name + one line. */
.itc-badge { display: flex !important; align-items: flex-start; gap: 0.875rem; }
.itc-badge > * { margin: 0 !important; }
.itc-badge__body > * { margin: 0 !important; }
.itc-badge__body > * + * { margin-block-start: 0.25rem !important; }
.itc-badge__name { color: var(--wp--preset--color--ink-950); font-size: var(--wp--preset--font-size--large) !important; font-weight: 600; letter-spacing: -0.02em; }
.itc-badge__body p:not(.itc-badge__name) { font-size: var(--wp--preset--font-size--small) !important; line-height: 1.5; }
p.itc-badges__note { margin-block-start: var(--wp--preset--spacing--40) !important; }

/* Challenge → solution matrix. */
.itc-matrix { margin: 0; overflow-x: auto; border: 1px solid var(--itc-line); border-radius: 12px; }
.itc-matrix table { inline-size: 100%; min-inline-size: 720px; border-collapse: collapse; }
.itc-matrix :is(th, td) {
	padding: 1rem 1.25rem;
	border: 0;
	border-block-end: 1px solid var(--itc-line);
	vertical-align: top;
	text-align: start;
	font-size: var(--wp--preset--font-size--small) !important;
}
.itc-matrix thead th { background: var(--wp--preset--color--midnight-950); color: var(--wp--preset--color--white); font-weight: 600; }
.itc-matrix tbody tr:last-child td { border-block-end: 0; }
.itc-matrix td:first-child { inline-size: 22%; color: var(--wp--preset--color--ink-950); font-weight: 600; }
.itc-matrix td:last-child { inline-size: 30%; }
.itc-matrix td:last-child a {
	display: inline-block;
	margin: 0 0.25rem 0.375rem 0;
	padding: 0.25rem 0.75rem;
	border: 1px solid var(--itc-line);
	border-radius: 999px;
	color: var(--wp--preset--color--sky-600);
	font-weight: 500;
	text-decoration: none;
}
.itc-matrix td:last-child a:hover { border-color: var(--wp--preset--color--sky-600); }
.itc-matrix tbody tr:nth-child(even) td { background: var(--wp--preset--color--surface-50); }

/* Client logo row on dark (placeholders until real logos with permission). */
.itc-logo-row { margin-block-start: var(--wp--preset--spacing--40) !important; }
.is-style-section-dark-alt .itc-logo-placeholder,
.is-style-section-dark .itc-logo-placeholder { border-color: rgba(255, 255, 255, 0.2); background: rgba(255, 255, 255, 0.04); color: var(--wp--preset--color--mist-300); }

/* 7. T08 Location ----------------------------------------------------------- */

.itc-hero__actions { gap: 0.75rem !important; }
.itc-hero__actions > * { margin: 0 !important; }

/* Service area: map + area chips left, contact card right. */
.itc-area {
	display: grid !important;
	grid-template-columns: minmax(0, 1.5fr) minmax(280px, 1fr);
	align-items: start;
	gap: var(--wp--preset--spacing--50);
}
.itc-area > * { margin: 0 !important; }
.itc-area__map > * { margin: 0 !important; }
.itc-area__map > * + * { margin-block-start: var(--wp--preset--spacing--40) !important; }
.itc-map {
	display: block;
	inline-size: 100%;
	aspect-ratio: 16 / 9;
	border: 0;
	border-radius: 20px;
	background: var(--wp--preset--color--surface-50);
}
.itc-nap { display: grid !important; gap: 0.875rem; }
.itc-nap > * { margin: 0 !important; }
.itc-nap h3 { font-size: 1.25rem !important; letter-spacing: -0.02em; }
.itc-nap .itc-contact__link { color: var(--wp--preset--color--ink-950); }
p.itc-nap__note { margin-block-start: -0.375rem !important; padding-inline-start: 1.625rem; font-size: var(--wp--preset--font-size--small) !important; }
@media (max-width: 860px) { .itc-area { grid-template-columns: minmax(0, 1fr); } }

/* Plain matrix: equal columns, no pill links (e.g. response times). */
.itc-matrix--plain td:first-child { inline-size: 40%; }
.itc-matrix--plain td:last-child { inline-size: auto; }
.itc-matrix--plain table { min-inline-size: 560px; }
p.itc-chip-strip__more { flex-basis: 100%; font-size: var(--wp--preset--font-size--small) !important; }
p.itc-chip-strip__more a { font-weight: 600; }

/* SEO text block (150–250 words). */
p.itc-seo-text { margin-block-start: var(--wp--preset--spacing--30) !important; }
/* Notes under wide tables/grids line up with the wide column, not the narrow text column. */
.is-layout-constrained > p.itc-note:not(.has-text-align-center) { max-inline-size: var(--wp--style--global--wide-size) !important; }

/* 8. T09 Comparison --------------------------------------------------------- */

.itc-versus { display: flex !important; flex-wrap: wrap; align-items: center; gap: 0.75rem 1.25rem; }
.itc-versus > * { margin: 0 !important; }
p.itc-versus__vs {
	padding: 0.25rem 0.75rem;
	border-radius: 999px;
	background: var(--wp--preset--color--sky-600);
	color: var(--wp--preset--color--white);
	font-size: var(--wp--preset--font-size--x-small) !important;
	font-weight: 700;
	letter-spacing: 0.08em;
}
p.itc-byline { color: var(--wp--preset--color--mist-300); font-size: var(--wp--preset--font-size--small) !important; }
.itc-verdict .itc-fit__card.is-alt { border-block-start-color: var(--wp--preset--color--sky-600) !important; }
.itc-fit__card .wp-block-buttons { margin-block-start: var(--wp--preset--spacing--30) !important; }

/* Side-by-side table: header row sticks under the site header on desktop. */
.itc-compare-table { margin: 0; border: 1px solid var(--itc-line); border-radius: 12px; background: var(--wp--preset--color--white); }
@media (min-width: 761px) { .wp-block-table.itc-compare-table { overflow: visible; } /* Core sets overflow-x:auto, which would trap the sticky header. */ }
.itc-compare-table table { inline-size: 100%; border-collapse: separate; border-spacing: 0; }
.itc-compare-table :is(th, td) { padding: 0.875rem 1.25rem; border: 0; border-block-end: 1px solid var(--itc-line); text-align: start; vertical-align: top; font-size: var(--wp--preset--font-size--small) !important; }
.itc-compare-table tbody tr:last-child td { border-block-end: 0; }
.itc-compare-table td:first-child { inline-size: 24%; color: var(--wp--preset--color--ink-950); font-weight: 600; }
.itc-compare-table thead th { position: sticky; inset-block-start: var(--itc-header-h); z-index: 2; background: var(--wp--preset--color--midnight-950); color: var(--wp--preset--color--white); font-size: var(--wp--preset--font-size--medium) !important; font-weight: 600; }
.itc-compare-table thead th:first-child { border-start-start-radius: 11px; }
.itc-compare-table thead th:last-child { border-start-end-radius: 11px; }
.admin-bar .itc-compare-table thead th { inset-block-start: calc(var(--itc-header-h) + var(--wp-admin--admin-bar--height, 32px)); }
.itc-compare-table tbody tr:nth-child(even) td { background: var(--wp--preset--color--surface-50); }
@media (max-width: 760px) {
	.itc-compare-table { overflow-x: auto; }
	.itc-compare-table table { min-inline-size: 620px; }
	.itc-compare-table thead th { position: static; }
}

.itc-related-compare { margin-block-start: var(--wp--preset--spacing--60) !important; }
.itc-related-compare > * { margin: 0 !important; }
.itc-related-compare > * + * { margin-block-start: var(--wp--preset--spacing--30) !important; }

/* 9. T10 Calculator --------------------------------------------------------- */

.itc-embed-box {
	padding: var(--wp--preset--spacing--40);
	border: 1px dashed #c9cde0;
	border-radius: 12px;
}
.itc-embed-box > * { margin: 0 !important; }
.itc-embed-box > * + * { margin-block-start: var(--wp--preset--spacing--30) !important; }
.itc-embed-box h3 { font-size: 1.25rem !important; letter-spacing: -0.02em; }
.itc-embed-box .wp-block-code {
	padding: 1rem 1.25rem;
	border: 0;
	border-radius: 8px;
	background: var(--wp--preset--color--midnight-950);
	color: var(--wp--preset--color--sky-100);
	font-size: 0.8125rem;
	line-height: 1.6;
	white-space: pre-wrap;
	word-break: break-all;
}
.itc-embed-box p { font-size: var(--wp--preset--font-size--small) !important; }

/* 10. T11 Listing hub ------------------------------------------------------- */

/* Featured card (wide, dark): visual left, copy right. */
.itc-featured {
	display: grid !important;
	grid-template-columns: minmax(160px, 0.35fr) minmax(0, 1fr);
	align-items: center;
	gap: var(--wp--preset--spacing--50);
	padding: var(--wp--preset--spacing--50) !important;
	border-radius: 20px !important;
	background:
		radial-gradient(70% 90% at 0% 50%, rgba(34, 154, 215, 0.35), transparent 70%),
		var(--wp--preset--color--midnight-950) !important;
}
.itc-featured > * { margin: 0 !important; }
.itc-featured__visual { display: grid !important; place-items: center; min-block-size: 160px; border: 1px dashed rgba(201, 238, 254, 0.3); border-radius: 12px; }
.itc-featured__body > * { margin: 0 !important; }
.itc-featured__body > * + * { margin-block-start: var(--wp--preset--spacing--30) !important; }
.itc-featured__title { font-size: var(--wp--preset--font-size--x-large) !important; line-height: 1.15; letter-spacing: -0.025em; }
.itc-featured__title a { color: var(--wp--preset--color--white); }
.itc-featured__title a:hover { text-decoration: none; }
@media (max-width: 760px) {
	.itc-featured { grid-template-columns: minmax(0, 1fr); padding: var(--wp--preset--spacing--40) !important; }
	.itc-featured__visual { min-block-size: 0; padding: 1.5rem; }
}
.itc-hub-grid { margin-block-start: var(--wp--preset--spacing--40) !important; }

/* Tag line on cards. */
p.itc-tags { margin-block-start: auto !important; padding-block-start: 0.25rem; color: var(--wp--custom--color--sky-700, #145f88); font-size: var(--wp--preset--font-size--x-small) !important; font-weight: 600; letter-spacing: 0.02em; }

/* 11. T12 Blog listing ------------------------------------------------------ */

/* Header: search + category chips on dark. */
.itc-blog-head .itc-hero__copy--solo > .wp-block-search { max-inline-size: 560px; }
.itc-blog-search .wp-block-search__inside-wrapper {
	padding: 0.25rem;
	border: 1px solid rgba(255, 255, 255, 0.18) !important;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.06);
}
.itc-blog-search .wp-block-search__input {
	padding: 0.625rem 1rem;
	border: 0 !important;
	border-radius: 999px;
	background: transparent;
	color: var(--wp--preset--color--white);
	font-size: 1rem;
}
.itc-blog-search .wp-block-search__input::placeholder { color: var(--wp--preset--color--mist-300); }
.itc-blog-search .wp-block-search__input:focus-visible { outline: 2px solid var(--wp--preset--color--sky-500); outline-offset: 2px; }
.itc-blog-search .wp-block-search__button {
	display: grid;
	place-items: center;
	margin: 0;
	padding: 0.5rem 0.875rem;
	border: 0;
	border-radius: 999px;
	background: var(--wp--preset--color--sky-600);
	color: var(--wp--preset--color--white);
}
.itc-blog-search .wp-block-search__button svg { fill: currentColor; }
ul.itc-cat-chips { margin-block-start: var(--wp--preset--spacing--40) !important; }
.itc-blog-head ul.itc-chips a { border-color: rgba(255, 255, 255, 0.18); background: rgba(255, 255, 255, 0.06); color: var(--wp--preset--color--white); }
.itc-blog-head ul.itc-chips a:hover { border-color: var(--wp--preset--color--sky-500); color: var(--wp--preset--color--sky-100); }
.itc-blog-head ul.itc-chips a[aria-current] { border-color: var(--wp--preset--color--white); background: var(--wp--preset--color--white); color: var(--wp--preset--color--midnight-950); }
.itc-blog-head .itc-term-intro { color: var(--wp--preset--color--mist-300); }
.itc-blog-head .itc-term-intro a { color: var(--wp--preset--color--sky-100); font-weight: 600; }
.itc-blog-head .wp-block-query-title { margin: 0; }

/* Grid: 3 per row; on page 1 the first post is large with two stacked beside it. */
.itc-post-grid--featured .wp-block-post-template { grid-template-columns: repeat(3, minmax(0, 1fr)); }
body:not(.paged) .itc-post-grid--featured .wp-block-post-template > li:first-child { grid-column: span 2; grid-row: span 2; }
body:not(.paged) .itc-post-grid--featured .wp-block-post-template > li:first-child .wp-block-post-title { font-size: var(--wp--preset--font-size--x-large) !important; line-height: 1.15; }
@media (max-width: 1024px) {
	.itc-post-grid--featured .wp-block-post-template { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
	.itc-post-grid--featured .wp-block-post-template { grid-template-columns: minmax(0, 1fr); }
	body:not(.paged) .itc-post-grid--featured .wp-block-post-template > li:first-child { grid-column: auto; grid-row: auto; }
}

/* Inline CTA card after row 2, styled like a post card. */
.itc-post-cta { margin: 0 !important; list-style: none; }
.itc-post-cta__card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.75rem;
	block-size: 100%;
	box-sizing: border-box;
	padding: var(--wp--preset--spacing--40);
	border-radius: 12px;
	background: radial-gradient(90% 70% at 100% 0%, rgba(34, 154, 215, 0.35), transparent 70%), var(--wp--preset--color--midnight-950);
	color: var(--wp--preset--color--mist-300);
}
.itc-post-cta__card p { margin: 0; }
.itc-post-cta__title { color: var(--wp--preset--color--white); font-size: 1.25rem !important; font-weight: 600; letter-spacing: -0.02em; }
.itc-post-cta__card .itc-btn-primary { margin-block-start: auto; padding: 0.625rem 1.25rem; border-radius: 999px; font-weight: 600; text-decoration: none; }
.itc-post-cta__card .itc-icon { color: var(--wp--preset--color--sky-500); }
/* Featured post: the image (or placeholder) grows to fill the double-height card. */
@media (min-width: 641px) {
	body:not(.paged) .itc-post-grid--featured .wp-block-post-template > li:first-child .itc-post-card .wp-block-post-featured-image { flex: 1 1 auto; aspect-ratio: auto; min-block-size: 240px; }
	body:not(.paged) .itc-post-grid--featured .wp-block-post-template > li:first-child .itc-post-card .wp-block-post-featured-image img { block-size: 100%; }
	body:not(.paged) .itc-post-grid--featured .wp-block-post-template > li:first-child .itc-post-card__body::before { flex: 1 1 auto; aspect-ratio: auto; min-block-size: 240px; }
}

/* 12. T13 Glossary ---------------------------------------------------------- */

/* Sticky A-Z bar under the header; letters without terms are muted. */
ul.itc-az {
	position: sticky;
	inset-block-start: var(--itc-header-h);
	z-index: 20;
	display: flex;
	flex-wrap: wrap;
	gap: 0.25rem;
	margin-block: 0 var(--wp--preset--spacing--50) !important;
	padding: 0.5rem;
	border: 1px solid var(--itc-line);
	border-radius: 12px;
	background: var(--wp--preset--color--white);
	box-shadow: 0 8px 20px rgba(1, 6, 48, 0.06);
	list-style: none;
}
.admin-bar ul.itc-az { inset-block-start: calc(var(--itc-header-h) + var(--wp-admin--admin-bar--height, 32px)); }
ul.itc-az li { margin: 0; font-size: var(--wp--preset--font-size--small) !important; }
ul.itc-az :is(a, span) { display: grid; place-items: center; inline-size: 2.125rem; block-size: 2.125rem; border-radius: 8px; font-weight: 600; }
ul.itc-az a { color: var(--wp--preset--color--ink-950); text-decoration: none; }
ul.itc-az a:hover { background: var(--wp--preset--color--sky-600); color: var(--wp--preset--color--white); }
ul.itc-az span { color: #b4b8c8; }
@media (max-width: 760px) {
	ul.itc-az { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
	ul.itc-az li { flex: none; }
}

/* Letter groups and term cards. */
.itc-glossary__letter { margin-block: 0 var(--wp--preset--spacing--50) !important; scroll-margin-block-start: calc(var(--itc-header-h) + 90px); }
.itc-glossary__letter > * { margin: 0 !important; }
h2.itc-glossary__char {
	display: grid;
	place-items: center;
	inline-size: 3rem;
	block-size: 3rem;
	margin-block-end: var(--wp--preset--spacing--30) !important;
	border-radius: 12px;
	background: var(--wp--preset--color--midnight-950);
	color: var(--wp--preset--color--white);
	font-size: 1.5rem !important;
}
.itc-glossary__terms { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--wp--preset--spacing--30); }
.itc-glossary__terms > * { margin: 0 !important; }
@media (max-width: 760px) { .itc-glossary__terms { grid-template-columns: minmax(0, 1fr); } }

/* 13. T14 About ------------------------------------------------------------- */

p.itc-bigline { color: var(--wp--preset--color--white); font-size: clamp(1.5rem, 1.2rem + 1.2vw, 2.125rem) !important; font-weight: 600; letter-spacing: -0.025em; line-height: 1.2; }
/* Photo slot until real photos are supplied. */
.itc-photo-slot {
	display: grid !important;
	place-items: center;
	min-block-size: 340px;
	padding: var(--wp--preset--spacing--40);
	border: 1px dashed rgba(201, 238, 254, 0.35);
	border-radius: 20px;
	background: radial-gradient(70% 70% at 50% 40%, rgba(34, 154, 215, 0.25), transparent 70%), rgba(255, 255, 255, 0.03);
	text-align: center;
}
.itc-photo-slot > * { margin: 0 !important; }
.itc-photo-slot p { color: var(--wp--preset--color--mist-300); font-size: var(--wp--preset--font-size--small) !important; }
@media (max-width: 960px) { .itc-photo-slot { min-block-size: 200px; } }
/* Leadership cards. */
.itc-person { display: flex !important; flex-direction: column; gap: 0.5rem; }
.itc-person > * { margin: 0 !important; }
p.itc-person__photo {
	display: grid;
	place-items: center;
	aspect-ratio: 1;
	margin-block-end: 0.5rem !important;
	border-radius: 12px;
	background: linear-gradient(160deg, var(--wp--preset--color--lavender-100), var(--wp--preset--color--ice-50));
	color: var(--wp--preset--color--slate-600);
	font-size: var(--wp--preset--font-size--small) !important;
}
.itc-person h3 { font-size: 1.25rem !important; letter-spacing: -0.02em; }
p.itc-person__role { color: var(--wp--preset--color--sky-600); font-size: var(--wp--preset--font-size--small) !important; font-weight: 600; }
/* Clients + one testimonial. */
.itc-clients { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: var(--wp--preset--spacing--50); }
.itc-clients > * { margin: 0 !important; }
.itc-clients__logos > * { margin: 0 !important; }
.itc-clients__logos > * + * { margin-block-start: var(--wp--preset--spacing--30) !important; }
.is-style-section-dark .itc-clients .itc-hub-split__head { color: var(--wp--preset--color--mist-300); }
@media (max-width: 860px) { .itc-clients { grid-template-columns: minmax(0, 1fr); } }
/* Company profile table. */
.itc-profile { margin: var(--wp--preset--spacing--40) 0 0; }
.itc-profile table { inline-size: 100%; border-collapse: collapse; border: 1px solid var(--itc-line); }
.itc-profile :is(th, td) { padding: 0.875rem 1.25rem; border: 0; border-block-end: 1px solid var(--itc-line); text-align: start; vertical-align: top; font-size: var(--wp--preset--font-size--small) !important; }
.itc-profile th { inline-size: 30%; background: var(--wp--preset--color--surface-50); color: var(--wp--preset--color--ink-950); font-weight: 600; }
/* Two-way CTA. */
.itc-twoway__card { display: flex !important; flex-direction: column; align-items: flex-start; gap: var(--wp--preset--spacing--30); padding: var(--wp--preset--spacing--50) !important; border-radius: 20px !important; }
.itc-twoway__card > * { margin: 0 !important; }
.itc-twoway__card h3 { font-size: var(--wp--preset--font-size--x-large) !important; letter-spacing: -0.025em; line-height: 1.2; }
.itc-twoway__card .wp-block-buttons { margin-block-start: auto !important; }
.itc-twoway__card--dark { background: radial-gradient(80% 90% at 100% 0%, rgba(34, 154, 215, 0.35), transparent 70%), var(--wp--preset--color--midnight-950); }
.itc-twoway__card--dark h3 { color: var(--wp--preset--color--white); }

/* 14. T15 Contact ----------------------------------------------------------- */

.itc-contact-grid { display: grid !important; grid-template-columns: minmax(0, 1.6fr) minmax(280px, 1fr); align-items: start; gap: var(--wp--preset--spacing--50); }
.itc-contact-grid > * { margin: 0 !important; }
.itc-direct { display: grid !important; gap: 0.875rem; position: sticky; inset-block-start: calc(var(--itc-header-h) + 24px); }
.itc-direct > * { margin: 0 !important; }
.itc-direct__title { font-size: 1.25rem !important; letter-spacing: -0.02em; }
.itc-direct .itc-contact__link { color: var(--wp--preset--color--ink-950); }
p.itc-direct__line { margin-block-start: -0.375rem !important; padding-inline-start: 1.625rem; font-size: var(--wp--preset--font-size--small) !important; }
@media (max-width: 960px) {
	.itc-contact-grid { grid-template-columns: minmax(0, 1fr); }
	.itc-direct { position: static; }
}

/* 15. T16 Careers: job page ------------------------------------------------- */

.itc-job-page { display: grid !important; grid-template-columns: minmax(0, 1.5fr) minmax(300px, 1fr); align-items: start; gap: var(--wp--preset--spacing--60); }
.itc-job-page > * { margin: 0 !important; }
.itc-job-page__body > * { margin-block: 0 !important; }
.itc-job-page__body > * + * { margin-block-start: var(--wp--preset--spacing--30) !important; }
.itc-job-page__body h2 { margin-block-start: var(--wp--preset--spacing--50) !important; font-size: var(--wp--preset--font-size--x-large) !important; letter-spacing: -0.025em; }
.itc-job-page__body h2:first-child { margin-block-start: 0 !important; }
.itc-job-page__apply { position: sticky; inset-block-start: calc(var(--itc-header-h) + 24px); scroll-margin-block-start: calc(var(--itc-header-h) + 24px); }
@media (max-width: 960px) {
	.itc-job-page { grid-template-columns: minmax(0, 1fr); }
	.itc-job-page__apply { position: static; }
}

/* 16. T17 Landing ----------------------------------------------------------- */

/* Minimal header has no utility bar: stick at the very top. */
.itc-site-header--minimal { inset-block-start: 0 !important; }
.admin-bar .itc-site-header--minimal { inset-block-start: var(--wp-admin--admin-bar--height, 32px) !important; }
.itc-header--minimal .itc-contact__link { color: var(--wp--preset--color--white); font-weight: 600; }
.itc-footer--minimal p, .itc-footer--minimal .itc-contact { margin: 0; font-size: var(--wp--preset--font-size--small); }
/* Blurred sample report pages. */
.itc-report__item > * { margin: 0 !important; }
.itc-report__item > * + * { margin-block-start: var(--wp--preset--spacing--30) !important; }
.itc-report__item > p { color: var(--wp--preset--color--ink-950); font-weight: 600; text-align: center; }
.itc-report__page {
	position: relative;
	aspect-ratio: 3 / 4;
	overflow: hidden;
	padding: 1.5rem !important;
	border: 1px solid var(--itc-line);
	border-radius: 12px;
	background:
		repeating-linear-gradient(transparent 0 22px, #eceef5 22px 30px) 1.5rem 5rem / calc(100% - 3rem) 60% no-repeat,
		var(--wp--preset--color--white);
	box-shadow: 0 18px 40px rgba(1, 6, 48, 0.1);
}
.itc-report__page::after { content: ""; position: absolute; inset: 0; backdrop-filter: blur(3px); -webkit-backdrop-filter: blur(3px); }
p.itc-report__doc { margin: 0; color: var(--wp--preset--color--ink-950); font-size: var(--wp--preset--font-size--small) !important; font-weight: 600; filter: blur(1.5px); }
/* Thank-you page. */
.itc-thanks.is-layout-constrained > * { margin-block: 0; }
.itc-thanks > * + * { margin-block-start: var(--wp--preset--spacing--40) !important; }

/* 17. T18 Legal ------------------------------------------------------------- */

.itc-updated { color: var(--wp--preset--color--mist-300); font-size: var(--wp--preset--font-size--small); }
.itc-updated > * { margin: 0 !important; }
.itc-updated .wp-block-post-date { color: var(--wp--preset--color--white); font-weight: 600; }
.itc-plain {
	margin-block-end: var(--wp--preset--spacing--60) !important;
	padding: var(--wp--preset--spacing--50);
	border-inline-start: 4px solid var(--wp--preset--color--sky-500);
	border-radius: 12px;
	background: linear-gradient(90deg, var(--wp--preset--color--ice-50), color-mix(in srgb, var(--wp--preset--color--ice-50) 30%, white));
}
.itc-plain > * { margin: 0 !important; }
.itc-plain > * + * { margin-block-start: var(--wp--preset--spacing--30) !important; }
.itc-plain__title { font-size: var(--wp--preset--font-size--x-large) !important; letter-spacing: -0.025em; }
.itc-plain li { color: var(--wp--preset--color--ink-950); }
.itc-legal { display: grid !important; grid-template-columns: minmax(200px, 280px) minmax(0, 760px); align-items: start; gap: var(--wp--preset--spacing--60); }
.itc-legal > * { margin: 0 !important; }
.itc-legal__toc { position: sticky; inset-block-start: calc(var(--itc-header-h) + 24px); }
.admin-bar .itc-legal__toc { inset-block-start: calc(var(--itc-header-h) + var(--wp-admin--admin-bar--height, 32px) + 24px); }
.itc-legal__toc > * { margin: 0 !important; }
p.itc-legal__toc-title { margin-block-end: 0.75rem !important; color: var(--wp--preset--color--slate-600); font-size: var(--wp--preset--font-size--x-small) !important; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; }
ul.itc-legal__toc-list { display: grid; gap: 0.125rem; margin: 0; padding: 0; border-inline-start: 2px solid var(--itc-line); list-style: none; }
ul.itc-legal__toc-list li { margin: 0; font-size: var(--wp--preset--font-size--small) !important; }
ul.itc-legal__toc-list a { display: block; margin-inline-start: -2px; padding: 0.375rem 0.875rem; border-inline-start: 2px solid transparent; color: var(--wp--preset--color--slate-600); text-decoration: none; }
ul.itc-legal__toc-list a:hover, ul.itc-legal__toc-list a[aria-current] { border-inline-start-color: var(--wp--preset--color--sky-600); color: var(--wp--preset--color--ink-950); }
.itc-legal__body > * { margin-block: 0 !important; }
.itc-legal__body > * + * { margin-block-start: var(--wp--preset--spacing--30) !important; }
.itc-legal__body h2 { margin-block-start: var(--wp--preset--spacing--50) !important; font-size: var(--wp--preset--font-size--x-large) !important; letter-spacing: -0.025em; scroll-margin-block-start: calc(var(--itc-header-h) + 24px); }
.itc-legal__body h2:first-child { margin-block-start: 0 !important; }
.itc-legal__body ul { padding-inline-start: 1.25rem; }
p.itc-legal__contact { margin-block-start: var(--wp--preset--spacing--50) !important; padding-block-start: var(--wp--preset--spacing--40); border-block-start: 1px solid var(--itc-line); color: var(--wp--preset--color--ink-950); }
@media (max-width: 860px) {
	.itc-legal { grid-template-columns: minmax(0, 1fr); }
	.itc-legal__toc { position: static; padding: 1rem 1.25rem; border: 1px solid var(--itc-line); border-radius: 12px; }
}

/* 18. IT Infrastructure pillar: long-form sections ---------------------------- */

/* Heading left (sticky on desktop), copy right. For the "what is / how to choose" text sections. */
.itc-longform { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1.8fr); align-items: start; gap: var(--wp--preset--spacing--60); }
.itc-longform > * { margin: 0 !important; }
.itc-longform__head { position: sticky; inset-block-start: calc(var(--itc-header-h) + 32px); }
.itc-longform__head > * { margin: 0 !important; }
.itc-longform__head h2 { font-size: clamp(1.75rem, 1.35rem + 1.1vw, 2.125rem) !important; }
.itc-longform__body > * { margin-block: 0 !important; }
.itc-longform__body > * + * { margin-block-start: var(--wp--preset--spacing--30) !important; }
.itc-longform__body h3 { margin-block-start: var(--wp--preset--spacing--40) !important; font-size: 1.25rem !important; letter-spacing: -0.02em; }
.itc-longform__body strong { color: var(--wp--preset--color--ink-950); }
@media (max-width: 860px) {
	.itc-longform { grid-template-columns: minmax(0, 1fr); gap: var(--wp--preset--spacing--30); }
	.itc-longform__head { position: static; }
}
/* Copy before/after a wide table or card grid. */
.itc-after-table { margin-block-start: var(--wp--preset--spacing--40) !important; }
/* Keep copy at reading width, aligned with the wide content edge (not centred). */
.is-layout-constrained > .itc-after-table.alignwide { max-inline-size: 860px; margin-inline-start: max(0px, calc((100% - var(--wp--style--global--wide-size)) / 2)) !important; margin-inline-end: auto !important; }
.itc-before-table { margin-block: 0 var(--wp--preset--spacing--40) !important; }
.itc-after-table > * { margin-block: 0 !important; }
.itc-after-table > * + * { margin-block-start: var(--wp--preset--spacing--30) !important; }
.itc-answer .itc-compare-table thead th { position: static; }
/* Package tables without a recommended column. */
.itc-tier-table--plain :is(th, td):nth-child(3) { background: transparent; }
.itc-tier-table--plain thead th:nth-child(3) { background: transparent; color: var(--wp--preset--color--ink-950); }
.itc-tier-table--plain thead th { background: var(--wp--preset--color--surface-50) !important; }
/* "Is this you?" on pages without a quote form. */
.itc-pain-list { padding: var(--wp--preset--spacing--50) !important; }
.itc-pain-list ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem var(--wp--preset--spacing--50); margin: 0; }
.itc-pain-list li { color: var(--wp--preset--color--ink-950); }
@media (max-width: 760px) { .itc-pain-list ul { grid-template-columns: minmax(0, 1fr); } }
/* Checklist cards (relocation checklist). */
.itc-check-card ul { margin: 0; }
.itc-check-card li { font-size: var(--wp--preset--font-size--small) !important; }
/* Hub: platforms row under the services grid. */
.itc-hub-platforms { margin-block-start: var(--wp--preset--spacing--60) !important; }
.itc-hub-services { margin-block-start: 0 !important; }
.itc-hub-platforms > * { margin: 0 !important; }
.itc-hub-platforms > * + *, .itc-hub-split__head + .itc-grid-3 { margin-block-start: var(--wp--preset--spacing--40) !important; }
/* Sentence under a chip row. */
p.itc-chip-strip__note { margin-block-start: var(--wp--preset--spacing--30) !important; font-size: var(--wp--preset--font-size--small) !important; }
/* "Under attack now?" strip in a dark hero (Incident Response). */
p.itc-urgent { display: inline-block; padding: 0.625rem 1rem; border: 1px solid rgba(255, 164, 31, 0.5); border-radius: 12px; background: rgba(255, 164, 31, 0.12); color: var(--wp--preset--color--white); font-size: var(--wp--preset--font-size--small) !important; }
p.itc-urgent strong { color: var(--wp--preset--color--amber-400); }
/* Hub service grids: a lone last card sits in the middle column instead of the left. */
@media (min-width: 1025px) { .itc-hub-services .itc-grid-3 > :last-child:nth-child(3n + 1) { grid-column: 2; } }

/* 19. Solutions (T06): deadline strip, six-layer stack ----------------------- */

/* Amber deadline strip under the hero of a time-bound solution (UAE e-invoicing). */
.itc-deadline { display: flex !important; flex-wrap: wrap; align-items: center; gap: var(--wp--preset--spacing--30); padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--50); border: 1px solid rgba(255, 164, 31, 0.45); border-inline-start: 4px solid var(--wp--preset--color--amber-400); border-radius: 12px; background: rgba(255, 164, 31, 0.08); }
.itc-deadline > * { margin: 0 !important; }
.itc-deadline > p { flex: 1 1 420px; color: var(--wp--preset--color--ink-950); }
.itc-deadline .itc-icon { color: #b45309; }
/* "Last updated" line in a hero. */
.itc-hero .itc-updated { gap: 0.375rem; margin-block-start: var(--wp--preset--spacing--30) !important; }
/* Stack panels with five or six layers keep the stepped shape. */
.itc-layers:has(> :nth-child(5)) > .itc-layer:nth-child(1) { margin-inline: 10% !important; }
.itc-layers:has(> :nth-child(5)) > .itc-layer:nth-child(2) { margin-inline: 8% !important; }
.itc-layers:has(> :nth-child(5)) > .itc-layer:nth-child(3) { margin-inline: 6% !important; }
.itc-layers:has(> :nth-child(5)) > .itc-layer:nth-child(4) { margin-inline: 4% !important; }
.itc-layers:has(> :nth-child(5)) > .itc-layer:nth-child(5) { margin-inline: 2% !important; }
@media (max-width: 700px) { .itc-layers:has(> :nth-child(5)) > .itc-layer { margin-inline: 0 !important; } }

/* 20. Articles: guides (/guides/<slug>/) and blog posts ----------------------- */

/* Two columns on desktop: sticky "In this guide" list + a reading column. One column on phones. */
.itc-article { display: grid !important; grid-template-columns: minmax(0, 1fr); gap: var(--wp--preset--spacing--50); align-items: start; }
.itc-article > * { margin: 0 !important; }
@media (min-width: 1025px) {
	.itc-article { grid-template-columns: 260px minmax(0, 1fr); column-gap: 72px; }
	.itc-toc { position: sticky; inset-block-start: calc(var(--itc-header-h) + 24px); max-block-size: calc(100vh - var(--itc-header-h) - 48px); overflow-y: auto; }
	.admin-bar .itc-toc { inset-block-start: calc(var(--itc-header-h) + var(--wp-admin--admin-bar--height, 32px) + 24px); }
}
/* The body fills the wide container, so its right edge lines up with the header (client request 2026-10-30). */
.itc-article__body { min-inline-size: 0; }
.itc-article__body > .itc-share--top { padding-block-end: var(--wp--preset--spacing--40); border-block-end: 1px solid var(--itc-line); }
.itc-article__body > .itc-share--end { margin-block-start: var(--wp--preset--spacing--60) !important; padding-block-start: var(--wp--preset--spacing--40); border-block-start: 1px solid var(--itc-line); }
.itc-article__body > .itc-share--top + * { margin-block-start: var(--wp--preset--spacing--40) !important; }
.itc-article__body > .itc-share--end + .itc-article-cta { margin-block-start: var(--wp--preset--spacing--40) !important; }
.itc-article__body > * { margin-block: 0 !important; }
.itc-article__body > * + * { margin-block-start: 1.25rem !important; }
.itc-article__body > h2 { margin-block-start: var(--wp--preset--spacing--60) !important; font-size: clamp(1.5rem, 1.2rem + 1.1vw, 2rem) !important; }
.itc-article__body > h3 { margin-block-start: var(--wp--preset--spacing--50) !important; font-size: clamp(1.1875rem, 1.1rem + 0.4vw, 1.375rem) !important; }
.itc-article__body > h2 + *, .itc-article__body > h3 + *, .itc-article__body > h4 + * { margin-block-start: 0.75rem !important; }
.itc-article__body > :first-child { margin-block-start: 0 !important; }
.itc-article__body [id] { scroll-margin-block-start: calc(var(--itc-header-h) + 24px); }
.itc-article__body > p, .itc-article__body > ul, .itc-article__body > ol { color: var(--wp--preset--color--slate-600); }
.itc-article__body > ul, .itc-article__body > ol { padding-inline-start: 1.25rem; }
.itc-article__body li + li { margin-block-start: 0.375rem; }
.itc-article__body a:not(.wp-element-button) { color: var(--wp--preset--color--sky-600); text-decoration: underline; text-underline-offset: 3px; }
h4.itc-article__label { margin-block-start: var(--wp--preset--spacing--40) !important; font-size: var(--wp--preset--font-size--medium) !important; }
.itc-article__body .itc-compare-table { font-size: var(--wp--preset--font-size--small); }
.itc-article__body .itc-compare-table thead th { font-size: var(--wp--preset--font-size--small) !important; }
.itc-article__body .itc-faq { margin-block-start: var(--wp--preset--spacing--40) !important; }

/* Contents list (details block: open on desktop, folded on phones and tablets by theme.js). */
.itc-toc { padding: var(--wp--preset--spacing--40); border: 1px solid var(--itc-line); border-radius: 16px; background: var(--wp--preset--color--surface-50); }
.itc-toc > summary { color: var(--wp--preset--color--ink-950); font-size: var(--wp--preset--font-size--x-small); font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; cursor: pointer; }
.itc-toc[open] > summary { margin-block-end: 0.75rem; }
@media (min-width: 1025px) { .itc-toc > summary { list-style: none; cursor: default; } .itc-toc > summary::-webkit-details-marker { display: none; } }
.itc-toc__list { margin: 0 !important; padding: 0 !important; list-style: none; }
.itc-toc__list li { margin: 0 !important; font-size: var(--wp--preset--font-size--small) !important; line-height: 1.4; }
.itc-toc__list a { display: block; padding-block: 0.375rem; color: var(--wp--preset--color--slate-600); text-decoration: none; }
.itc-toc__list a:hover, .itc-toc__list a:focus-visible { color: var(--wp--preset--color--sky-600); }
@media (max-width: 1024px) { .itc-toc__list { columns: 2 220px; column-gap: var(--wp--preset--spacing--40); } .itc-toc__list li { break-inside: avoid; } }

/* Key takeaways and other call-outs. */
.itc-takeaways, .itc-callout { padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--50); border: 1px solid var(--itc-line); border-inline-start: 4px solid var(--wp--preset--color--sky-600); border-radius: 12px; background: var(--wp--preset--color--ice-50); }
.itc-takeaways > *, .itc-callout > * { margin-block: 0 !important; }
.itc-takeaways > * + *, .itc-callout > * + * { margin-block-start: 0.75rem !important; }
p.itc-takeaways__title { color: var(--wp--preset--color--ink-950); font-weight: 700; }
.itc-takeaways li { color: var(--wp--preset--color--ink-950); }

/* Inline service CTA box near the end of an article. */
.itc-article-cta { margin-block: var(--wp--preset--spacing--60) !important; }
.itc-article-cta .itc-cta-panel__title { font-size: var(--wp--preset--font-size--large) !important; }

/* Blog post hero (templates/single.html): category eyebrow links, byline row. */
.itc-post-hero .wp-block-post-terms a { color: inherit; text-decoration: none; }
.itc-post-hero .itc-updated .itc-post-meta { color: inherit; font-size: inherit !important; }

/* /guides/ hub: space between the ERP and IT guide groups; a lone last card sits in the middle column. */
.itc-filter-group + .itc-filter-group { margin-block-start: var(--wp--preset--spacing--70) !important; }
@media (min-width: 1025px) { .itc-hub-grid > :last-child:nth-child(3n + 1) { grid-column: 2; } }

/* Featured images (2026-10-31). Article hero: copy left, image right from 1025px; below the copy on smaller screens. */
.itc-post-hero__grid { display: grid; gap: var(--wp--preset--spacing--50); align-items: center; }
.itc-post-hero__grid > * { margin: 0 !important; }
@media (min-width: 1025px) {
	.itc-post-hero__grid:has(> .itc-post-hero__media) { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); column-gap: 64px; }
}
.itc-post-hero__media { overflow: hidden; border: 1px solid rgba(255, 255, 255, 0.12); border-radius: 20px; box-shadow: 0 32px 64px -32px rgba(12, 24, 120, 0.9); }
.itc-post-hero__media img { display: block; inline-size: 100%; block-size: 100%; object-fit: cover; }
@media (max-width: 1024px) { .itc-post-hero__media { max-inline-size: 640px; } }

/* Cards with an image: the image runs edge to edge across the top of the card. */
.itc-media-card { overflow: hidden; padding-block-start: 0 !important; }
.itc-media-card > .itc-card-media { margin-block-end: 0.25rem !important; margin-inline: calc(-1 * var(--itc-card-pad, 1.75rem)) !important; aspect-ratio: 7 / 4; }
.itc-media-card > .itc-card-media img { display: block; inline-size: 100%; block-size: 100%; object-fit: cover; border-radius: 0; transition: scale 400ms cubic-bezier(0.2, 0, 0, 1); }
@media (hover: hover) and (prefers-reduced-motion: no-preference) { .itc-media-card:hover > .itc-card-media img { scale: 1.03; } }
