/* 4TN League theme: pages built with WordPress blocks (text pages, news, 404, WooCommerce payment page).
 * The header, footer and sections are styled by the 4TN Registration plugin (site.css); this file
 * only covers what the theme's own templates show. Colours come from the plugin's palette variables. */

body {
	--wk: var(--fourtn-week, #E35D57);
	--wk-ink: var(--fourtn-week-ink, #0a0a0b);
	--wk-text: var(--fourtn-week-text, #E35D57);
	background: #0a0a0b;
}

/* Grain on every theme page, like the posts. */
.wp-site-blocks {
	position: relative;
	isolation: isolate;
}

.fourtn-t-main {
	position: relative;
	padding-top: clamp(56px, 7vw, 96px);
	padding-bottom: clamp(88px, 10vw, 140px);
}

.fourtn-t-main::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	pointer-events: none;
	background-image: var(--fourtn-grain, none);
	background-size: 240px 240px;
	opacity: 0.08;
}

.fourtn-t-main--full {
	padding-top: 0;
	padding-bottom: 0;
}

.fourtn-t-main--full::before {
	display: none;
}

.fourtn-t-eyebrow {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0 0 18px;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: var(--wk-text);
}

.fourtn-t-eyebrow::before {
	content: "";
	width: 28px;
	height: 3px;
	background: currentColor;
}

.fourtn-t-title {
	margin-bottom: clamp(28px, 4vw, 48px);
	text-wrap: balance;
}

/* Long-form text. */
.fourtn-t-content {
	font-size: 17px;
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.84);
}

.fourtn-t-content h2,
.fourtn-t-content h3 {
	margin-top: 1.6em;
}

.fourtn-t-content strong {
	color: #fff;
}

.fourtn-t-content a {
	text-underline-offset: 3px;
	text-decoration-color: var(--wk);
	text-decoration-thickness: 2px;
}

/* Photos: black and white, like the rest of the site. */
.fourtn-t-photo img {
	filter: grayscale(1) contrast(1.2);
}

/* News list. */
.fourtn-t-list {
	gap: 40px 24px;
}

.fourtn-t-list > li {
	padding-top: 16px;
	border-top: 3px solid #fff;
}

.fourtn-t-card-title {
	margin: 8px 0;
	font-size: clamp(28px, 2.6vw, 38px);
}

.fourtn-t-card-title a {
	color: #fff;
	text-decoration: none;
}

.fourtn-t-card-title a:hover {
	color: var(--wk-text);
}

/* 404: a poster. */
.fourtn-t-404 {
	min-height: 70vh;
}

.fourtn-t-poster {
	font-size: clamp(88px, 18vw, 260px) !important;
	line-height: 0.92 !important;
	color: var(--wk-text) !important;
	-webkit-mask-image: var(--fourtn-print, none);
	mask-image: var(--fourtn-print, none);
	-webkit-mask-size: 180px 180px;
	mask-size: 180px 180px;
}

.fourtn-t-lede {
	max-width: 30em;
	margin-left: 0 !important;
	font-size: clamp(18px, 1.5vw, 21px);
	color: rgba(255, 255, 255, 0.82);
}

.wp-block-button.is-style-outline > .wp-block-button__link {
	border-color: #fff;
	background: transparent;
	color: #fff;
}

.wp-block-button.is-style-outline > .wp-block-button__link:hover {
	background: #fff;
	color: #0a0a0b;
}

/* ---------- WooCommerce payment page (card payment for a registration) ---------- */
.fourtn-t-pay .fourtn-t-title {
	max-width: 860px !important;
}

.fourtn-t-pay .wp-block-post-content > .woocommerce,
.fourtn-t-pay .wp-block-woocommerce-checkout,
.fourtn-t-pay .wc-block-checkout {
	padding: clamp(22px, 3.2vw, 40px);
	background: #f5f5f2;
	color: #0a0a0b;
}

.fourtn-t-pay .woocommerce a,
.fourtn-t-pay .wc-block-checkout a {
	color: #0a0a0b;
}

.fourtn-t-pay .woocommerce table.shop_table {
	width: 100%;
	border-collapse: collapse;
	border: 0;
	font-size: 16px;
}

.fourtn-t-pay .woocommerce table.shop_table th,
.fourtn-t-pay .woocommerce table.shop_table td {
	padding: 14px 0;
	border: 0;
	border-bottom: 1px solid #dcdcd6;
	text-align: left;
}

.fourtn-t-pay .woocommerce table.shop_table tfoot tr:last-child td,
.fourtn-t-pay .woocommerce table.shop_table tfoot tr:last-child th {
	font-family: "Fourtn Display", Impact, sans-serif;
	font-weight: 400;
	font-size: 28px;
	text-transform: uppercase;
}

.fourtn-t-pay .woocommerce #payment {
	margin-top: 24px;
	background: #fff;
	border-radius: 0;
}

.fourtn-t-pay .woocommerce #payment ul.payment_methods {
	padding: 16px;
	border-bottom: 1px solid #dcdcd6;
}

.fourtn-t-pay .woocommerce #payment div.payment_box {
	background: #f0f0ec;
	color: #0a0a0b;
}

.fourtn-t-pay .woocommerce #payment div.payment_box::before {
	border-bottom-color: #f0f0ec;
}

.fourtn-t-pay .woocommerce #place_order,
.fourtn-t-pay .wc-block-components-checkout-place-order-button {
	width: 100%;
	min-height: 56px;
	border: 0;
	border-radius: 0;
	background: var(--wk);
	color: var(--wk-ink);
	font-family: "Fourtn Display", Impact, sans-serif;
	font-weight: 400;
	font-size: 22px;
	letter-spacing: 0.01em;
	text-transform: uppercase;
	cursor: pointer;
}

.fourtn-t-pay .woocommerce #place_order:hover,
.fourtn-t-pay .wc-block-components-checkout-place-order-button:hover {
	background: #0a0a0b;
	color: #fff;
}

.fourtn-t-pay .woocommerce-notices-wrapper .woocommerce-error,
.fourtn-t-pay .woocommerce-notices-wrapper .woocommerce-message,
.fourtn-t-pay .woocommerce-notices-wrapper .woocommerce-info {
	margin: 0 0 16px;
	padding: 14px 18px;
	border: 0;
	border-left: 4px solid var(--wk);
	background: #1c1c1f;
	color: #fff;
	list-style: none;
}

/* ---------- Fallback header when the plugin is off ---------- */
.fourtn-hdr--basic .fourtn-hdr__brand {
	margin-right: 0;
}
