/**
 * Press pages
 *
 * Shared by /press/ (archive-press_releases.php) and the single press release
 * (single-press_releases.php). Both came out of on1_legacy_stylesheets() when
 * they were rebuilt on base.css tokens for 2027, the same way the store and
 * the webinars pages did.
 *
 * Section tones follow the 70/20/10 rule. The index is the page's dark base
 * throughout except Press Contact, which carries .theme-inverted and is the
 * page's one light band - the old page had no light section at all. The
 * guarantee strip partials/footer.php appends is the slightly-lifted band.
 *
 * On the single page the release body is the light band instead, on the same
 * terms. It is .press-release-card rather than the blog's .reading-card: the
 * card is blog.css's, and the two areas' sheets stay independent. The prose
 * inside it is prose.css, which every template that renders the_content()
 * loads.
 *
 * @copyright   2026, ON1
 */

/* !- Page header
 *
 * Shared by both templates. The single page's h1 is the release title, which
 * runs long, so the heading scale steps down a size there rather than setting
 * the index's h1 small enough to cover both.
 */
#press-header {
	padding: 2rem 0 2.25rem;
}

#press-header .breadcrumb {
	color: var(--text-400);
	font-size: var(--text-mini);
	margin-bottom: 1rem;
}

#press-header .breadcrumb .separator {
	margin: 0 0.25rem;
}

#press-header .breadcrumb a {
	color: var(--text-400);
	text-decoration: none;
}

#press-header .breadcrumb a:hover {
	color: var(--text-50);
	text-decoration: underline;
}

#press-header .breadcrumb .here {
	color: var(--text-50);
}

#press-header h1 {
	font-size: var(--text-4xl);
	font-weight: 800;
	margin-bottom: 0.75rem;
}

#press-header .press-intro {
	color: var(--text-400);
	margin-bottom: 0;
}

@media (max-width: 767.98px) {
	#press-header h1 {
		font-size: var(--text-3xl);
	}
}

/* !- Page navigation
 *
 * The same subnav strip the free pages use, pinned below #site-header by
 * base.js. Its active link is set on scroll by company/press.js.
 */
#page-navigation {
	background: var(--bg-800);
	border-bottom: 1px solid var(--bg-700);
}

#page-navigation .nav {
	column-gap: 0.75rem;
	flex-wrap: nowrap;
	overflow-x: auto;
	scrollbar-width: none;
}

#page-navigation .nav::-webkit-scrollbar {
	display: none;
}

/*
 * li carries a 0.25rem bottom margin site-wide, which floats the active tab's
 * underline off the strip's own bottom border. #library-navigation and
 * #site-header .nav-item do the same.
 */
#page-navigation .nav-item {
	margin-bottom: 0;
}

#page-navigation .nav-link {
	border-bottom: 2px solid transparent;
	color: var(--text-300);
	font-size: var(--text-xs);
	font-weight: 600;
	padding: 1rem 0.75rem;
	text-decoration: none;
	white-space: nowrap;
}

#page-navigation .nav-link:hover {
	color: var(--text-50);
}

#page-navigation .nav-link.active {
	border-bottom-color: var(--blue-500);
	color: var(--text-50);
}

/* !- Sections
 *
 * scroll-margin-top clears the site header plus the pinned subnav for a hash
 * arriving from another page. A click inside the page goes through
 * .smooth-scroll, which measures the real offset and sets its own.
 */
#press-kit,
#press-releases,
#press-contact {
	scroll-margin-top: 8rem;
}

#press-kit {
	padding-top: 3rem;
}

#press-releases {
	padding-bottom: 5rem;
	padding-top: 3rem;
}

#press-kit h2,
#press-contact h2 {
	margin-bottom: 0.75rem;
}

/*
 * The only one of the three with no intro paragraph under it - the year label
 * follows the heading directly, so the heading carries the gap .section-intro-copy
 * provides in the other two.
 */
#press-releases h2 {
	margin-bottom: 2rem;
}

#press-kit .section-intro-copy,
#press-contact .section-intro-copy {
	color: var(--text-300);
	margin-bottom: 2rem;
}

/* !- Press kit card */
.kit-card {
	align-items: center;
	background: var(--bg-800);
	border: 1px solid var(--bg-700);
	border-radius: var(--border-radius);
	padding: 2rem;
}

.kit-icon {
	align-items: center;
	background: var(--blue-transparent);
	border-radius: var(--border-radius);
	color: var(--blue-400);
	display: flex;
	font-size: var(--text-2xl);
	height: 5rem;
	justify-content: center;
	width: 5rem;
}

.kit-card h3 {
	font-size: var(--text-lg);
	margin-bottom: 0.375rem;
}

.kit-card .kit-copy {
	color: var(--text-400);
	font-size: var(--text-sm);
	margin-bottom: 0;
}

/* The house button sizing, off #blog-cta .btn. Scoped to the section that owns
 * the button rather than left bare - the header, footer and guarantee partials
 * all render their own buttons on this page. */
#press-kit .btn {
	font-size: var(--text-sm);
	padding: 0.75rem 1.25rem;
}

@media (max-width: 767.98px) {
	.kit-card {
		padding: 1.5rem;
		text-align: center;
	}

	.kit-icon {
		margin: 0 auto;
	}
}

/* !- Release list */
.press-year {
	margin-bottom: 2.5rem;
}

.press-year:last-child {
	margin-bottom: 0;
}

/*
 * --bg-700 is a surface step rather than a border one - as a hairline under
 * the year label it lands at 1.1:1 on the page and effectively disappears.
 * Dividers use --bg-600, and step once more on the light theme, where the
 * ramp is compressed at its light end.
 */
.press-year-label {
	border-bottom: 1px solid var(--bg-600);
	color: var(--blue-400);
	font-size: var(--text-xs);
	font-weight: 800;
	letter-spacing: 0.06em;
	margin-bottom: 0.75rem;
	padding-bottom: 0.625rem;
	text-transform: uppercase;
}

[data-theme="light"] .press-year-label {
	border-bottom-color: var(--bg-400);
	color: var(--blue-600);
}

.press-list {
	list-style: none;
	margin-bottom: 0;
	padding-left: 0;
}

.press-list li {
	margin-bottom: 0;
}

.press-row {
	align-items: center;
	border-radius: var(--border-radius);
	column-gap: 1.25rem;
	display: flex;
	padding: 1rem 1.25rem;
	text-decoration: none;
}

.press-row:hover {
	background: var(--bg-800);
}

.press-row-icon {
	align-items: center;
	background: var(--blue-transparent);
	border-radius: var(--border-radius);
	color: var(--blue-400);
	display: flex;
	flex-shrink: 0;
	font-size: var(--text-sm);
	height: 2.25rem;
	justify-content: center;
	width: 2.25rem;
}

.press-row-title {
	color: var(--text-100);
	flex: 1;
	font-size: var(--text-sm);
	font-weight: 600;
	line-height: 1.5;
}

.press-row:hover .press-row-title {
	color: var(--text-50);
}

.press-row-date {
	color: var(--text-400);
	flex-shrink: 0;
	font-size: var(--text-mini);
	white-space: nowrap;
}

.press-row-chevron {
	color: var(--text-500);
	flex-shrink: 0;
	font-size: var(--text-mini);
}

.press-latest {
	background: var(--blue-transparent);
	border-radius: 50rem;
	color: var(--blue-400);
	font-size: var(--text-tiny);
	font-weight: 700;
	letter-spacing: 0.08em;
	margin-left: 0.5rem;
	padding: 0.1875rem 0.5rem;
	text-transform: uppercase;
	vertical-align: 0.0625rem;
	white-space: nowrap;
}

/*
 * The three blue-on-blue-transparent marks. --blue-400 holds on the dark
 * theme, but composited over the light page the tint is near-white and the
 * same blue drops to 2.2:1 - under the 3:1 a graphic needs, never mind the
 * badge's text. --blue-700 clears both.
 */
[data-theme="light"] .press-latest,
[data-theme="light"] .press-row-icon,
[data-theme="light"] .kit-icon {
	color: var(--blue-700);
}

/*
 * The row is a flex row of four items down to sm. Below that the date drops to
 * its own line under the title, so a long headline isn't squeezed into a
 * column the date's white-space: nowrap has already claimed.
 */
@media (max-width: 575.98px) {
	.press-row {
		flex-wrap: wrap;
		padding: 1rem 0.75rem;
	}

	.press-row-date {
		order: 3;
		padding-left: 3.5rem;
		width: 100%;
	}
}

/* !- Press contact
 *
 * The page's one light band, so it carries .theme-inverted and everything
 * inside it resolves against the opposite tone of whatever theme is active.
 */
#press-contact {
	padding-bottom: 5rem;
	padding-top: 5rem;
}

.contact-card {
	background: var(--bg-850);
	border: 1px solid var(--bg-700);
	border-radius: var(--border-radius);
	padding: 2.5rem;
	text-align: center;
}

.contact-icon {
	align-items: center;
	background: var(--blue-transparent);
	border-radius: 50%;
	color: var(--blue-600);
	display: inline-flex;
	font-size: var(--text-xl);
	height: 3rem;
	justify-content: center;
	margin-bottom: 1rem;
	width: 3rem;
}

.contact-card h3 {
	font-size: var(--text-xl);
	margin-bottom: 0.5rem;
}

.contact-card .contact-copy {
	color: var(--text-400);
	font-size: var(--text-sm);
	margin-bottom: 1.25rem;
}

.contact-card .contact-email {
	font-size: var(--text-lg);
	font-weight: 700;
}

/*
 * --link is picked for the page tone, and the band is the page's inverse, so
 * it lands the wrong way round in here. Both directions step along the blue
 * ramp, the same way blog.css steps the links inside its reading card.
 */
.contact-card .contact-email {
	color: var(--blue-700);
}

[data-theme="light"] .contact-card .contact-email {
	color: var(--blue-300);
}

[data-theme="light"] .contact-icon {
	color: var(--blue-300);
}

@media (max-width: 767.98px) {
	.contact-card {
		padding: 1.75rem 1.25rem;
	}
}

/*==============================================================================
 * SINGLE PRESS RELEASE
 =============================================================================*/

/* !- Back link */
#press-breadcrumb {
	padding-top: 2rem;
}

#press-breadcrumb .back-to-press {
	color: var(--text-300);
	font-size: var(--text-mini);
	text-decoration: none;
}

#press-breadcrumb .back-to-press:hover {
	color: var(--text-50);
}

#press-breadcrumb .back-to-press i {
	margin-right: 0.375rem;
}

/*
 * The header block is #press-header's, minus the breadcrumb and with the
 * heading a step down - a release title is a sentence, not a page name.
 */
#press-header.release-header {
	padding-top: 1.75rem;
}

#press-header.release-header h1 {
	font-size: var(--text-3xl);
	margin-bottom: 1rem;
}

@media (max-width: 767.98px) {
	#press-header.release-header h1 {
		font-size: var(--text-2xl);
	}
}

#press-header .release-meta {
	color: var(--text-400);
	font-size: var(--text-mini);
	margin-bottom: 0;
}

#press-header .release-meta .list-inline-item:not(:last-child)::after {
	content: '\2022';
	margin-left: 0.5rem;
}

/* !- Release body
 *
 * The release on its own surface, and the single page's one light band. It
 * carries .theme-inverted, so it takes the opposite tone of whatever theme is
 * active and the prose inside resolves against that.
 */
#press-release-wrap {
	padding-bottom: 5rem;
}

.press-release-card {
	border-radius: var(--border-radius);
	padding: 3rem;
}

@media (max-width: 767.98px) {
	.press-release-card {
		padding: 1.5rem;
	}
}

/* Links and captions inside the card, stepped the same way as the contact band */
.press-release-card .post-prose a {
	color: var(--blue-700);
}

[data-theme="light"] .press-release-card .post-prose a {
	color: var(--blue-300);
}

.press-release-card figcaption,
.press-release-card .wp-caption-text {
	color: var(--text-300);
}
