/*
 * S N K Contracting — WordPress compatibility layer.
 * Additions only: the design CSS stays untouched in variables.css, global.css, sections.css and responsive.css.
 */

/* Screen-reader text (WordPress core pattern, used by core blocks and plugins). */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

/* The fixed header (and the mobile menu panel) clear the admin bar for logged-in users. */
.admin-bar .snk-header {
	top: 32px;
}
@media (max-width: 1100px) {
	.admin-bar .snk-nav {
		padding-top: calc(var(--snk-nav-h) + 1.25rem + 32px);
	}
}
@media (max-width: 782px) {
	.admin-bar .snk-header {
		top: 46px;
	}
	.admin-bar .snk-nav {
		padding-top: calc(var(--snk-nav-h) + 1.25rem + 46px);
	}
	#wpadminbar {
		position: fixed;
	}
}

/* Pages built from S N K blocks: core blocks placed between sections get the design's container width. */
.snk-wp-blocks > :not(section):not(.snk-marquee):not(.alignfull) {
	width: 100%;
	max-width: calc(var(--snk-container) + var(--snk-gutter) * 2);
	margin-inline: auto;
	padding-inline: var(--snk-gutter);
}

/* ACF Section Settings. */
.snk-wp-has-overlay {
	position: relative;
}
.snk-wp-section-overlay {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
}
.snk-wp-has-overlay > :not(.snk-wp-section-overlay):not(.snk-band__media):not(.snk-page-hero__media) {
	position: relative;
	z-index: 1;
}
.snk-wp-parallax {
	background-attachment: fixed;
}
.snk-container.snk-wp-container-full {
	max-width: none;
}
.snk-wp-scheme-light {
	--snk-t1: var(--snk-band-t1);
	--snk-t2: var(--snk-band-t2);
	--snk-t3: var(--snk-band-t3);
	--snk-line: var(--snk-band-line);
	--snk-line-strong: rgba(255, 255, 255, 0.22);
	--snk-accent-ink: var(--snk-band-accent-ink);
	color: var(--snk-t2);
}
.snk-wp-scheme-dark {
	--snk-t1: #1F2A33;
	--snk-t2: #45525E;
	--snk-t3: #5B6874;
	--snk-line: rgba(31, 42, 51, 0.12);
	--snk-line-strong: rgba(31, 42, 51, 0.24);
	--snk-accent-ink: #E06400;
	color: var(--snk-t2);
}
@media (min-width: 1101px) {
	.snk-wp-hide-desktop {
		display: none !important;
	}
}
@media (min-width: 701px) and (max-width: 1100px) {
	.snk-wp-hide-tablet {
		display: none !important;
	}
	.snk-wp-parallax {
		background-attachment: scroll;
	}
}
@media (max-width: 700px) {
	.snk-wp-hide-mobile {
		display: none !important;
	}
	.snk-wp-parallax {
		background-attachment: scroll;
	}
}
.snk-js .snk-wp-anim {
	opacity: 0;
	transition-property: opacity, transform;
	transition-duration: 0.7s;
	transition-timing-function: ease;
}
.snk-js .snk-wp-anim[data-snk-anim="slide-up"] {
	transform: translateY(40px);
}
.snk-js .snk-wp-anim[data-snk-anim="zoom-in"] {
	transform: scale(0.94);
}
.snk-js .snk-wp-anim.snk-wp-in {
	opacity: 1;
	transform: none;
}
@media (prefers-reduced-motion: reduce) {
	.snk-js .snk-wp-anim {
		opacity: 1;
		transform: none;
		transition: none;
	}
}

/* Plain pages, posts and archives (no sections): clear the fixed header, readable text. */
.snk-wp-page {
	padding-top: calc(var(--snk-nav-h) + var(--snk-section-y-sm));
}
.snk-wp-entry .snk-h1 {
	margin-bottom: var(--snk-sp-xl);
}
.snk-wp-entry__content {
	color: var(--snk-t2);
}
.snk-wp-entry__content :is(h2, h3, h4) {
	margin-top: 1.6em;
	font-family: var(--snk-fh);
	line-height: 1.25;
	color: var(--snk-t1);
}
.snk-wp-entry__content a {
	color: var(--snk-accent-ink);
	text-decoration: underline;
	text-underline-offset: 3px;
}
.snk-wp-entry__content :is(ul, ol) {
	padding-left: 1.25rem;
}
.snk-wp-entry__content img {
	border-radius: var(--snk-r-md);
}
.snk-wp-list {
	display: grid;
	gap: var(--snk-sp-xl);
	margin: var(--snk-sp-xl) 0 0;
	padding: 0;
	list-style: none;
}
.snk-wp-list__item {
	display: grid;
	gap: 0.5rem;
	padding-bottom: var(--snk-sp-xl);
	border-bottom: 1px solid var(--snk-line);
}
.snk-wp-list__item a:hover {
	color: var(--snk-accent-ink);
}
.snk-wp-pagination .nav-links {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: var(--snk-sp-xl);
}
.snk-wp-pagination .page-numbers {
	padding: 0.5rem 0.9rem;
	border: 1px solid var(--snk-line-strong);
	border-radius: var(--snk-r-full);
	font-family: var(--snk-fh);
	font-size: var(--snk-fs-xs);
	font-weight: var(--snk-fw-semibold);
}
.snk-wp-pagination .page-numbers.current {
	border-color: var(--snk-orange);
	background: var(--snk-orange);
	color: var(--snk-navy);
}
