/*
 * Direction A "warm Human + AI" – page layout and block styles.
 * Colours, fonts and sizes come from theme.json; this file sets reading width,
 * spacing, and beats leftover Elementor kit styles (body.elementor-kit-7).
 */

body.wp-theme-it-strategist {
	background: var(--wp--preset--color--paper);
	color: var(--wp--preset--color--ink);
	font-family: var(--wp--preset--font-family--sans);
	font-size: var(--wp--preset--font-size--medium);
	line-height: 1.65;
}

/* Reading column: text at 720px, alignwide/full blocks break out. */
body.wp-theme-it-strategist main#primary.site-main {
	padding: 72px 24px 96px;
}
body.wp-theme-it-strategist .site-main > article,
body.wp-theme-it-strategist .site-main .entry-header,
body.wp-theme-it-strategist .site-main .entry-content > *:not(.alignwide):not(.alignfull) {
	max-width: var(--wp--style--global--content-size, 720px);
	margin-left: auto;
	margin-right: auto;
}
body.wp-theme-it-strategist .site-main > article {
	max-width: var(--wp--style--global--wide-size, 1120px);
}
body.wp-theme-it-strategist .entry-content > .alignwide {
	max-width: var(--wp--style--global--wide-size, 1120px);
	margin-left: auto;
	margin-right: auto;
}

/* Vertical rhythm. */
body.wp-theme-it-strategist .entry-content > * + * {
	margin-top: 1.25rem;
}
body.wp-theme-it-strategist .entry-content p {
	margin: 0 0 1.1em;
}
body.wp-theme-it-strategist .entry-content :is(h1, h2, h3, h4) {
	font-family: var(--wp--preset--font-family--serif);
	font-weight: 600;
	line-height: 1.15;
	color: var(--wp--preset--color--ink);
	margin: 2.4rem 0 0.75rem;
}
body.wp-theme-it-strategist .entry-content > :first-child,
body.wp-theme-it-strategist .entry-content > .wp-block-group:first-child > :first-child {
	margin-top: 0;
}
body.wp-theme-it-strategist .entry-content h1 { font-size: var(--wp--preset--font-size--xx-large); letter-spacing: -0.02em; }
body.wp-theme-it-strategist .entry-content h2 { font-size: var(--wp--preset--font-size--x-large); letter-spacing: -0.01em; }
body.wp-theme-it-strategist .entry-content h3 { font-size: var(--wp--preset--font-size--large); }
body.wp-theme-it-strategist .entry-content h4 { font-size: 1.125rem; }

/* Page title. */
body.wp-theme-it-strategist .entry-header {
	margin-bottom: 2.5rem;
}
body.wp-theme-it-strategist .entry-title {
	font-family: var(--wp--preset--font-family--serif);
	font-size: var(--wp--preset--font-size--xx-large);
	font-weight: 600;
	letter-spacing: -0.02em;
	line-height: 1.1;
	color: var(--wp--preset--color--ink);
	margin: 0;
}

/* Links. */
body.wp-theme-it-strategist .entry-content a {
	color: var(--wp--preset--color--ai);
	text-underline-offset: 3px;
}
body.wp-theme-it-strategist .entry-content a:hover {
	color: var(--wp--preset--color--ink);
}

/* Converted groups become sections with breathing room. */
body.wp-theme-it-strategist .entry-content > .wp-block-group {
	margin-top: 3rem;
}
body.wp-theme-it-strategist .entry-content .wp-block-group > * + * {
	margin-top: 1rem;
}

/* Columns: gap and stack on phones. */
body.wp-theme-it-strategist .entry-content .wp-block-columns {
	gap: 2rem;
	margin: 2.5rem auto;
}
@media (max-width: 781px) {
	body.wp-theme-it-strategist .entry-content .wp-block-columns {
		flex-wrap: wrap;
	}
	body.wp-theme-it-strategist .entry-content .wp-block-column {
		flex-basis: 100% !important;
	}
}

/* Images. */
body.wp-theme-it-strategist .entry-content img {
	border-radius: 12px;
	height: auto;
}

/* Lists. */
body.wp-theme-it-strategist .entry-content :is(ul, ol) {
	padding-left: 1.4em;
	margin: 0 0 1.1em;
}
body.wp-theme-it-strategist .entry-content li + li {
	margin-top: 0.35em;
}

/* Buttons. */
body.wp-theme-it-strategist .entry-content .wp-block-button__link,
body.wp-theme-it-strategist .entry-content .ff-btn-submit {
	background: var(--wp--preset--color--ink) !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 999px !important;
	padding: 14px 24px !important;
	font: 600 1rem/1 var(--wp--preset--font-family--sans) !important;
	text-decoration: none;
}
body.wp-theme-it-strategist .entry-content .wp-block-button__link:hover,
body.wp-theme-it-strategist .entry-content .ff-btn-submit:hover {
	background: var(--wp--preset--color--ai) !important;
}

/* Quotes (converted testimonials). */
body.wp-theme-it-strategist .entry-content .wp-block-quote {
	border-left: 4px solid var(--wp--preset--color--human);
	padding: 0.25rem 0 0.25rem 1.5rem;
	margin: 2rem auto;
}
body.wp-theme-it-strategist .entry-content .wp-block-quote cite {
	display: block;
	margin-top: 0.75rem;
	font: 500 0.95rem var(--wp--preset--font-family--sans);
	font-style: normal;
	color: var(--wp--preset--color--ink-2);
}

/* Fluent Forms: card look matching the mockup. */
body.wp-theme-it-strategist .entry-content .fluentform {
	background: #fff;
	border: 1px solid var(--wp--preset--color--line);
	border-radius: 20px;
	padding: 32px;
}
body.wp-theme-it-strategist .entry-content .fluentform .ff-el-input--label label {
	font: 500 0.9rem var(--wp--preset--font-family--sans);
	color: var(--wp--preset--color--ink);
}
body.wp-theme-it-strategist .entry-content .fluentform .ff-el-form-control {
	background: var(--wp--preset--color--paper);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: 12px;
	padding: 12px 14px;
	font: 400 1rem var(--wp--preset--font-family--sans);
}
body.wp-theme-it-strategist .entry-content .fluentform .ff-el-form-control:focus {
	border-color: var(--wp--preset--color--ai);
	outline: 2px solid var(--wp--preset--color--ai-soft);
}

@media (max-width: 600px) {
	body.wp-theme-it-strategist main#primary.site-main {
		padding: 40px 16px 64px;
	}
	body.wp-theme-it-strategist .entry-content .fluentform {
		padding: 20px;
	}
}

/* ---------- Header ---------- */
.its-header {
	background: var(--wp--preset--color--paper);
	border-bottom: 1px solid var(--wp--preset--color--line);
	position: sticky;
	top: 0;
	z-index: 50;
}
.admin-bar .its-header { top: 32px; }
.its-header__inner {
	max-width: 1120px;
	margin: 0 auto;
	padding: 0 24px;
	height: 76px;
	display: flex;
	align-items: center;
	gap: 24px;
}
.its-logo {
	display: flex;
	align-items: center;
	gap: 10px;
	color: var(--wp--preset--color--ink);
	text-decoration: none;
}
.its-logo__mark {
	position: relative;
	font: 600 32px/1 var(--wp--preset--font-family--serif);
	letter-spacing: -0.02em;
	color: var(--wp--preset--color--ink);
}
.its-logo__spark {
	position: absolute;
	left: 1px;
	top: -10px;
	width: 11px;
	height: 11px;
	fill: var(--wp--preset--color--ai);
}
.its-logo__name {
	font: 500 10.5px/1.25 var(--wp--preset--font-family--sans);
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-2);
}
.its-nav { margin-left: auto; }
.its-nav ul {
	display: flex;
	gap: 28px;
	list-style: none;
	margin: 0;
	padding: 0;
}
.its-nav a {
	font: 500 15px/1 var(--wp--preset--font-family--sans);
	color: var(--wp--preset--color--ink);
	text-decoration: none;
	padding: 8px 0;
	border-bottom: 2px solid transparent;
}
.its-nav a:hover,
.its-nav .current-menu-item > a { border-bottom-color: var(--wp--preset--color--human); }
.its-nav__toggle { display: none; }
.its-btn,
.its-btn:visited {
	display: inline-block;
	background: var(--wp--preset--color--ink);
	color: #fff;
	border-radius: 999px;
	padding: 12px 22px;
	font: 600 15px/1 var(--wp--preset--font-family--sans);
	text-decoration: none;
	white-space: nowrap;
}
.its-btn:hover { background: var(--wp--preset--color--ai); color: #fff; }

@media (max-width: 900px) {
	.its-header__inner { height: 64px; padding: 0 16px; gap: 12px; }
	.its-nav { order: 3; margin-left: 0; }
	.its-header__cta { margin-left: auto; padding: 10px 16px; font-size: 14px; }
	.its-nav__toggle {
		display: block;
		width: 40px;
		height: 40px;
		border: 1px solid var(--wp--preset--color--line);
		border-radius: 10px;
		background: #fff;
		position: relative;
	}
	.its-nav__bars,
	.its-nav__bars::before,
	.its-nav__bars::after {
		position: absolute;
		left: 11px;
		width: 16px;
		height: 2px;
		background: var(--wp--preset--color--ink);
		content: "";
	}
	.its-nav__bars { top: 19px; }
	.its-nav__bars::before { top: -5px; left: 0; }
	.its-nav__bars::after { top: 5px; left: 0; }
	.its-nav ul {
		display: none;
		position: absolute;
		left: 0;
		right: 0;
		top: 64px;
		flex-direction: column;
		gap: 0;
		background: var(--wp--preset--color--paper);
		border-bottom: 1px solid var(--wp--preset--color--line);
		padding: 8px 16px 16px;
	}
	.its-nav.toggled ul { display: flex; }
	.its-nav ul a { display: block; padding: 14px 0; font-size: 17px; }
}
@media (max-width: 782px) { .admin-bar .its-header { top: 46px; } }

/* ---------- Footer ---------- */
.its-footer {
	background: var(--wp--preset--color--ink);
	color: #C9CBE6;
	font-size: 0.95rem;
	padding: 56px 24px 24px;
}
.its-footer__inner {
	max-width: 1120px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 2fr 1fr 1fr;
	gap: 32px;
}
.its-footer .its-logo__mark { color: #fff; }
.its-footer__brand p { margin: 16px 0 0; max-width: 320px; }
.its-footer__links { display: grid; gap: 10px; align-content: start; }
.its-footer__links a { color: #fff; text-decoration: none; }
.its-footer__links a:hover { color: var(--wp--preset--color--human); }
.its-footer__legal {
	max-width: 1120px;
	margin: 40px auto 0;
	padding-top: 20px;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	font-size: 0.85rem;
}
@media (max-width: 700px) { .its-footer__inner { grid-template-columns: 1fr 1fr; } .its-footer__brand { grid-column: 1 / -1; } }

/* ---------- Home and landing sections (block classNames) ---------- */
body.wp-theme-it-strategist .entry-content .its-eyebrow {
	font: 600 0.8rem/1 var(--wp--preset--font-family--sans);
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-2);
	margin-bottom: 0.75rem;
}
body.wp-theme-it-strategist .entry-content .its-lead {
	font-size: 1.25rem;
	color: var(--wp--preset--color--ink-2);
}
body.wp-theme-it-strategist .entry-content .its-hero {
	align-items: center !important;
	margin-top: 0;
}
body.wp-theme-it-strategist .entry-content .its-hero h1 { margin-top: 0; }
body.wp-theme-it-strategist .entry-content .its-hero-art svg { width: 100%; max-width: 380px; height: auto; display: block; margin: 0 auto; }
body.wp-theme-it-strategist .entry-content .its-stats {
	border-top: 1px solid var(--wp--preset--color--line);
	border-bottom: 1px solid var(--wp--preset--color--line);
	padding: 32px 0;
}
body.wp-theme-it-strategist .entry-content .its-stats .wp-block-column p:first-child {
	font: 600 2.4rem/1 var(--wp--preset--font-family--serif);
	margin-bottom: 0.4rem;
	color: var(--wp--preset--color--ink);
}
body.wp-theme-it-strategist .entry-content .its-stats .wp-block-column p:last-child { color: var(--wp--preset--color--ink-2); font-size: 0.95rem; }
body.wp-theme-it-strategist .entry-content .its-cards { gap: 24px; }
body.wp-theme-it-strategist .entry-content .its-card {
	background: #fff;
	border: 1px solid var(--wp--preset--color--line);
	border-radius: 20px;
	padding: 32px;
}
body.wp-theme-it-strategist .entry-content .its-card h3 { margin-top: 0.5rem; }
body.wp-theme-it-strategist .entry-content .its-card ul { color: var(--wp--preset--color--ink-2); font-size: 0.98rem; }
body.wp-theme-it-strategist .entry-content .its-tag {
	display: inline-block;
	font: 600 12px/1 var(--wp--preset--font-family--sans);
	padding: 6px 10px;
	border-radius: 999px;
	margin: 0;
	background: var(--wp--preset--color--human-soft);
	color: #8A5300;
}
body.wp-theme-it-strategist .entry-content .its-tag--ai { background: var(--wp--preset--color--ai-soft); color: #1D4ED8; }
body.wp-theme-it-strategist .entry-content .its-band {
	background: var(--wp--preset--color--ink);
	color: #fff;
	border-radius: 24px;
	padding: 56px 40px;
}
body.wp-theme-it-strategist .entry-content .its-band :is(h2, h3) { color: #fff; }
body.wp-theme-it-strategist .entry-content .its-band .its-eyebrow { color: #B9BCE0; }
body.wp-theme-it-strategist .entry-content .its-band p { color: #C9CBE6; }
body.wp-theme-it-strategist .entry-content .its-band .wp-block-column { border-top: 2px solid var(--wp--preset--color--human); padding-top: 16px; }
body.wp-theme-it-strategist .entry-content .its-band .wp-block-column:nth-child(even) { border-top-color: var(--wp--preset--color--ai); }
body.wp-theme-it-strategist .entry-content .its-band h3 { margin-top: 0; }
body.wp-theme-it-strategist .entry-content .its-cta-row { display: flex; gap: 12px; flex-wrap: wrap; }
body.wp-theme-it-strategist .entry-content .is-style-outline .wp-block-button__link {
	background: transparent !important;
	color: var(--wp--preset--color--ink) !important;
	border: 1.5px solid var(--wp--preset--color--ink) !important;
}
body.wp-theme-it-strategist .entry-content .is-style-outline .wp-block-button__link:hover { background: var(--wp--preset--color--ink) !important; color: #fff !important; }
@media (max-width: 600px) {
	body.wp-theme-it-strategist .entry-content .its-band { padding: 32px 20px; border-radius: 16px; }
	body.wp-theme-it-strategist .entry-content .its-card { padding: 24px; }
	body.wp-theme-it-strategist .entry-content .its-hero-art { display: none; }
}

/* ---------- Blog lists and posts ---------- */
body.wp-theme-it-strategist .site-main--list > article,
body.wp-theme-it-strategist .site-main--list .page-header {
	max-width: 720px;
	margin: 0 auto 2.5rem;
}
body.wp-theme-it-strategist .site-main--list > article {
	padding-bottom: 2.5rem;
	border-bottom: 1px solid var(--wp--preset--color--line);
}
body.wp-theme-it-strategist .site-main--list .entry-title { font-size: var(--wp--preset--font-size--x-large); }
body.wp-theme-it-strategist .entry-title a { color: var(--wp--preset--color--ink); text-decoration: none; }
body.wp-theme-it-strategist .entry-title a:hover { color: var(--wp--preset--color--ai); }
body.wp-theme-it-strategist .entry-meta,
body.wp-theme-it-strategist .entry-footer { font-size: 0.9rem; color: var(--wp--preset--color--ink-2); }
body.wp-theme-it-strategist .post-thumbnail img { border-radius: 16px; width: 100%; height: auto; }
body.wp-theme-it-strategist .site-main .post-navigation,
body.wp-theme-it-strategist .site-main .posts-navigation { max-width: 720px; margin: 2rem auto; }
body.wp-theme-it-strategist .site-main .page-title { font: 600 var(--wp--preset--font-size--xx-large)/1.1 var(--wp--preset--font-family--serif); }

/* Phone header: logo, CTA and menu button must fit 375px. */
@media (max-width: 480px) {
	.its-header__inner { gap: 8px; }
	.its-logo__name { display: none; }
	.its-logo { margin-right: auto; }
	.its-header__cta { padding: 10px 14px; font-size: 13px; margin-left: 0; }
	.its-nav__toggle { flex: 0 0 40px; }
	body.wp-theme-it-strategist .entry-content .its-stats { flex-wrap: wrap !important; row-gap: 24px; }
	body.wp-theme-it-strategist .entry-content .its-stats .wp-block-column { flex-basis: calc(50% - 1rem) !important; }
}

/* Header nav box only as wide as its button on phones; wide tables scroll. */
@media (max-width: 900px) {
	.its-nav { width: auto; flex: 0 0 auto; }
}
body.wp-theme-it-strategist .entry-content table {
	display: block;
	max-width: 100%;
	overflow-x: auto;
}
body.wp-theme-it-strategist .its-read-more a { font-weight: 600; }

body.blog .site-main--list .page-header { margin-bottom: 3rem; }
body.blog .site-main--list .page-header .its-eyebrow {
	font: 600 0.8rem/1 var(--wp--preset--font-family--sans);
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-2);
	margin: 0 0 0.75rem;
}

/* Product grid from [its_products]: three across, wraps. */
body.wp-theme-it-strategist .entry-content .its-cards--grid { flex-wrap: wrap !important; }
body.wp-theme-it-strategist .entry-content .its-cards--grid > .wp-block-column { flex: 1 1 280px; }
/* Without the contact button the menu button sits at the right on phones. */
@media (max-width: 900px) { .its-nav { margin-left: auto; } }
