/*
 * PS Consulting – Transition: background, cards, home carousel placement.
 * Loaded after assets/css/base.css (shared brand base).
 */

/* Background: a discreet engineering-drawing grid (major/minor lines). */
body {
	background-color: #f1f2f3;
	background-image:
		linear-gradient(rgba(11, 13, 16, 0.045) 1px, transparent 1px),
		linear-gradient(90deg, rgba(11, 13, 16, 0.045) 1px, transparent 1px),
		linear-gradient(rgba(11, 13, 16, 0.025) 1px, transparent 1px),
		linear-gradient(90deg, rgba(11, 13, 16, 0.025) 1px, transparent 1px);
	background-size: 120px 120px, 120px 120px, 24px 24px, 24px 24px;
	background-position: -1px -1px;
}
.site,
#wrapper,
#inner-wrap,
.content-wrap,
.site-main { background: transparent; }

/* Cards: content on white, square corners, hairline border, no drop shadow. */
.content-bg,
.entry.content-bg,
.loop-entry.content-bg,
.content-style-boxed .content-bg {
	background: #fff;
	border: 1px solid var(--psc-line);
	border-radius: 0;
	box-shadow: none;
}
.entry.content-bg { border-top: 3px solid var(--psc-accent); }
.content-style-boxed .entry-content-wrap { padding: clamp(24px, 4vw, 56px); }
.site-main > .entry + .entry,
.site-main > .post-navigation-wrap { margin-top: 24px; }

/* Title band: dark with the grid, lighter strokes. */
.entry-hero .entry-hero-container-inner {
	background-color: var(--psc-ink);
	background-image:
		linear-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px);
	background-size: 120px 120px;
	background-position: -1px -1px;
}

/* Home (page opening with the carousel): no title band, carousel right under the header. */
.pst-has-hero .entry-hero { display: none; }
.pst-has-hero .content-area { margin-top: 0; }
.pst-has-hero .entry.content-bg { border: 0; background: transparent; }
.pst-has-hero .content-style-boxed .entry-content-wrap,
.pst-has-hero .entry-content-wrap { padding-top: 0; padding-left: 0; padding-right: 0; }
.pst-has-hero .entry-content > :first-child { margin-top: 0; }
.pst-has-hero .psls-hero { margin-top: 0; }
/* Home content after the carousel sits on a white card. */
.pst-has-hero .entry-content {
	background: #fff;
	border: 1px solid var(--psc-line);
	padding: 0 clamp(20px, 4vw, 56px) clamp(24px, 4vw, 56px);
}
.pst-has-hero .entry-content > .psls-hero,
.pst-has-hero .entry-content > .psls-row:first-child .psls-hero { margin-bottom: clamp(32px, 4vw, 56px); }

/* Legacy layout under the brand: icon boxes, teasers, blog cards. */
.psls-iconbox { border-top: 2px solid var(--psc-ink); padding: 20px 4px 8px; text-align: left; }
.psls-iconbox__icon { display: block; margin-bottom: 12px; line-height: 0; color: var(--psc-accent); }
.psls-iconbox__icon svg { width: 40px; height: 40px; }
.psls-iconbox__heading { font-size: 21px; font-weight: 700; letter-spacing: -0.015em; }
.psls-teaser { border-top: 2px solid var(--psc-ink); padding-top: 18px; }
.psls-teaser__heading { font-size: 24px; font-weight: 800; letter-spacing: -0.02em; }
.psls-post { border-radius: 0; }
.psls-post__title { font-size: 1rem; letter-spacing: 0.01em; }
.psls-cta { background: var(--psc-soft); border-left: 0; }
.psls-cta__title { font-weight: 800; letter-spacing: -0.02em; }
.psls-text-separator { font-family: var(--psc-mono); font-size: 14px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--psc-muted); }

/* Empty paragraphs left by the old editor. */
.entry-content > p:empty { display: none; }

/* Converted blocks on cards. */
.entry-content .wp-block-columns { gap: clamp(20px, 3vw, 40px); }
.entry-content .wp-block-image img { height: auto; }
