/*
Theme Name: WebballUFA Kanit
Description: Hello Elementor child theme with a locally hosted Kanit type system.
Author: WebballUFA
Template: hello-elementor
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: webballufa-kanit
*/

/* Kanit 300 — Thai */
@font-face {
	font-display: swap;
	font-family: "Kanit";
	font-style: normal;
	font-weight: 300;
	src: url("assets/fonts/kanit-300-thai.woff2") format("woff2");
	unicode-range: U+02D7, U+0303, U+0331, U+0E01-0E5B, U+200C-200D, U+25CC;
}

/* Kanit 300 — Latin */
@font-face {
	font-display: swap;
	font-family: "Kanit";
	font-style: normal;
	font-weight: 300;
	src: url("assets/fonts/kanit-300-latin.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Kanit 400 — Thai */
@font-face {
	font-display: swap;
	font-family: "Kanit";
	font-style: normal;
	font-weight: 400;
	src: url("assets/fonts/kanit-400-thai.woff2") format("woff2");
	unicode-range: U+02D7, U+0303, U+0331, U+0E01-0E5B, U+200C-200D, U+25CC;
}

/* Kanit 400 — Latin */
@font-face {
	font-display: swap;
	font-family: "Kanit";
	font-style: normal;
	font-weight: 400;
	src: url("assets/fonts/kanit-400-latin.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Kanit 500 — Thai */
@font-face {
	font-display: swap;
	font-family: "Kanit";
	font-style: normal;
	font-weight: 500;
	src: url("assets/fonts/kanit-500-thai.woff2") format("woff2");
	unicode-range: U+02D7, U+0303, U+0331, U+0E01-0E5B, U+200C-200D, U+25CC;
}

/* Kanit 500 — Latin */
@font-face {
	font-display: swap;
	font-family: "Kanit";
	font-style: normal;
	font-weight: 500;
	src: url("assets/fonts/kanit-500-latin.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Kanit 600 — Thai */
@font-face {
	font-display: swap;
	font-family: "Kanit";
	font-style: normal;
	font-weight: 600;
	src: url("assets/fonts/kanit-600-thai.woff2") format("woff2");
	unicode-range: U+02D7, U+0303, U+0331, U+0E01-0E5B, U+200C-200D, U+25CC;
}

/* Kanit 600 — Latin */
@font-face {
	font-display: swap;
	font-family: "Kanit";
	font-style: normal;
	font-weight: 600;
	src: url("assets/fonts/kanit-600-latin.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Kanit 700 — Thai */
@font-face {
	font-display: swap;
	font-family: "Kanit";
	font-style: normal;
	font-weight: 700;
	src: url("assets/fonts/kanit-700-thai.woff2") format("woff2");
	unicode-range: U+02D7, U+0303, U+0331, U+0E01-0E5B, U+200C-200D, U+25CC;
}

/* Kanit 700 — Latin */
@font-face {
	font-display: swap;
	font-family: "Kanit";
	font-style: normal;
	font-weight: 700;
	src: url("assets/fonts/kanit-700-latin.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
	--webballufa-font-family: "Kanit", sans-serif;
	--webballufa-h1-size: 30px;
	--webballufa-h2-size: 26px;
	--webballufa-h3-size: 24px;
	--webballufa-text-size: 14px;
	--webballufa-content-background: #050504;
	--webballufa-content-gold: #f4c541;
	--webballufa-content-text: #ffffff;
}

html,
body,
button,
input,
optgroup,
select,
textarea {
	font-family: var(--webballufa-font-family);
}

body,
.page-content,
.elementor-widget-text-editor {
	font-size: var(--webballufa-text-size);
}

/* Dark article surface with the same gold used by the Trust Factor footer. */
body {
	background-color: var(--webballufa-content-background);
}

.site-main {
	background-color: var(--webballufa-content-background);
	color: var(--webballufa-content-text);
}

.site-main :where(.page-content, .entry-content, .elementor-widget-text-editor) {
	color: var(--webballufa-content-text);
}

.site-main :where(.page-content, .entry-content, .elementor-widget-text-editor) :where(p, li, dt, dd, blockquote, figcaption, th, td) {
	color: var(--webballufa-content-text);
}

.site-main :where(.page-header, .entry-header, .page-content, .entry-content, .elementor-widget-text-editor) :where(h1, h2, h3, h4, h5, h6),
.site-main > :where(h1, h2, h3, h4, h5, h6) {
	color: var(--webballufa-content-gold);
}

.site-main :where(.page-content, .entry-content, .elementor-widget-text-editor) a {
	color: var(--webballufa-content-gold);
	text-decoration-color: rgb(244 197 65 / 58%);
	text-underline-offset: 0.16em;
}

.site-main :where(.page-content, .entry-content, .elementor-widget-text-editor) a:hover,
.site-main :where(.page-content, .entry-content, .elementor-widget-text-editor) a:focus-visible {
	color: #ffe58a;
	text-decoration-color: currentcolor;
}

.site-main :where(.page-content, .entry-content, .elementor-widget-text-editor) a:focus-visible {
	border-radius: 3px;
	outline: 2px solid var(--webballufa-content-gold);
	outline-offset: 3px;
}

/* Gold table system for article and page content. */
.site-main :where(.page-content, .entry-content, .elementor-widget-text-editor) table {
	background: #0b0a07;
	border: 1px solid rgb(244 197 65 / 72%);
	border-collapse: separate;
	border-radius: 12px;
	border-spacing: 0;
	box-shadow: 0 12px 30px rgb(0 0 0 / 24%);
	font-size: 14px;
	margin-block: 22px 30px;
	overflow: hidden;
	table-layout: auto;
	width: 100%;
}

.site-main :where(.page-content, .entry-content, .elementor-widget-text-editor) table caption {
	color: var(--webballufa-content-gold);
	font-weight: 500;
	padding-block: 0 10px;
	text-align: start;
}

.site-main :where(.page-content, .entry-content, .elementor-widget-text-editor) table :where(th, td) {
	border: 0;
	border-block-end: 1px solid rgb(244 197 65 / 28%);
	border-inline-end: 1px solid rgb(244 197 65 / 28%);
	line-height: 1.55;
	overflow-wrap: anywhere;
	padding: 12px 14px;
	text-align: start;
	vertical-align: middle;
}

.site-main :where(.page-content, .entry-content, .elementor-widget-text-editor) table thead th {
	background: linear-gradient(135deg, #ffe173, var(--webballufa-content-gold) 58%, #d6a522);
	border-color: rgb(69 47 4 / 34%);
	color: #171105;
	font-weight: 600;
	text-align: center;
}

.site-main :where(.page-content, .entry-content, .elementor-widget-text-editor) table tbody td,
.site-main :where(.page-content, .entry-content, .elementor-widget-text-editor) table tbody th {
	color: var(--webballufa-content-text);
}

.site-main :where(.page-content, .entry-content, .elementor-widget-text-editor) table tbody th,
.site-main :where(.page-content, .entry-content, .elementor-widget-text-editor) table tbody td:first-child {
	color: #f8d96b;
	font-weight: 500;
}

.site-main :where(.page-content, .entry-content, .elementor-widget-text-editor) table tbody tr:nth-child(even) :where(th, td) {
	background: rgb(244 197 65 / 5%);
}

.site-main :where(.page-content, .entry-content, .elementor-widget-text-editor) table tbody tr:hover :where(th, td) {
	background: rgb(244 197 65 / 10%);
}

.site-main :where(.page-content, .entry-content, .elementor-widget-text-editor) table tr:last-child :where(th, td) {
	border-block-end: 0;
}

.site-main :where(.page-content, .entry-content, .elementor-widget-text-editor) table tr > :last-child {
	border-inline-end: 0;
}

.site-main :where(.page-content, .entry-content, .elementor-widget-text-editor) table thead a {
	color: #171105;
	text-decoration-color: rgb(23 17 5 / 50%);
}

@media (max-width: 640px) {
	.site-main :where(.page-content, .entry-content, .elementor-widget-text-editor) table {
		border-radius: 9px;
		font-size: 13px;
	}

	.site-main :where(.page-content, .entry-content, .elementor-widget-text-editor) table :where(th, td) {
		padding: 10px 9px;
	}
}

h1,
h2,
h3,
h4,
h5,
h6,
.site-title,
.site-description,
.site-navigation,
.elementor-heading-title,
.elementor-widget-text-editor,
.elementor-button {
	font-family: var(--webballufa-font-family);
}

h1,
h1.elementor-heading-title {
	font-size: var(--webballufa-h1-size);
	font-weight: 500;
}

h2,
h2.elementor-heading-title {
	font-size: var(--webballufa-h2-size);
	font-weight: 500;
}

h3,
h3.elementor-heading-title {
	font-size: var(--webballufa-h3-size);
	font-weight: 500;
}

/* Center the primary article hierarchy while keeping lower-level headings aligned to the content edge. */
.site-main :where(.page-header, .entry-header, .page-content, .entry-content, .elementor-widget-text-editor) :where(h1, h2),
.site-main :where(h1.elementor-heading-title, h2.elementor-heading-title) {
	text-align: center;
}

.site-main :where(.page-header, .entry-header, .page-content, .entry-content, .elementor-widget-text-editor) :where(h3, h4),
.site-main :where(h3.elementor-heading-title, h4.elementor-heading-title) {
	text-align: start;
}

@media (max-width: 767px) {
	:root {
		--webballufa-h1-size: 20px;
		--webballufa-h2-size: 18px;
		--webballufa-h3-size: 16px;
	}
}

/* Black-and-gold site header inspired by the supplied visual reference. */
.site-header.webballufa-header {
	--webballufa-header-bg: #070705;
	--webballufa-header-panel: #0d0b07;
	--webballufa-header-gold: #f4c541;
	--webballufa-header-gold-deep: #a87916;
	--webballufa-header-text: #fff8dc;
	background: var(--webballufa-header-bg);
	border-block-end: 1px solid rgb(244 197 65 / 38%);
	box-shadow: 0 8px 28px rgb(0 0 0 / 24%);
	color: var(--webballufa-header-text);
	display: block;
	font-family: var(--webballufa-font-family);
	margin-inline: 0;
	max-width: none;
	padding: 0;
	width: 100%;
}

.webballufa-header__inner {
	margin-inline: auto;
	max-width: 1180px;
	padding-inline: 20px;
	width: 100%;
}

.webballufa-header__trust {
	background: #030302;
	border-block-end: 1px solid rgb(244 197 65 / 20%);
}

.webballufa-header__trust-list {
	display: grid;
	font-size: 11px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	list-style: none;
	margin: 0;
	padding: 0;
}

.webballufa-header__trust-list li {
	min-width: 0;
}

.webballufa-header__trust-list a {
	align-items: center;
	color: #dfd7bd;
	display: flex;
	gap: 6px;
	justify-content: center;
	min-height: 28px;
	overflow: hidden;
	padding: 5px 10px;
	text-decoration: none;
	text-overflow: ellipsis;
	transition: color 160ms ease;
	white-space: nowrap;
}

.webballufa-header__trust-list a:hover,
.webballufa-header__trust-list a:focus-visible,
.webballufa-header__trust-list a[aria-current="page"] {
	color: var(--webballufa-header-gold);
}

.webballufa-header__trust-list a span {
	color: var(--webballufa-header-gold);
}

.webballufa-header__main {
	background:
		radial-gradient(circle at 32% 20%, rgb(244 197 65 / 6%), transparent 25%),
		var(--webballufa-header-bg);
}

.webballufa-header__main-inner {
	align-items: center;
	display: flex;
	justify-content: space-between;
	min-height: 82px;
}

.webballufa-header__branding {
	flex: 0 1 390px;
	text-align: center;
}

.webballufa-header__brand-link {
	align-items: center;
	color: var(--webballufa-header-text);
	display: inline-flex;
	flex-direction: column;
	max-width: 100%;
	text-decoration: none;
}

.webballufa-header__brand-link:hover,
.webballufa-header__brand-link:focus-visible {
	color: var(--webballufa-header-gold);
}

.webballufa-header__brand-mark {
	background: linear-gradient(180deg, #fff7ce 5%, #f6d36b 52%, #a97817 100%);
	background-clip: text;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(28px, 3vw, 42px);
	font-weight: 700;
	letter-spacing: 3px;
	line-height: 1;
	text-transform: uppercase;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.webballufa-header__logo-image {
	display: block;
	filter: drop-shadow(0 2px 6px rgb(0 0 0 / 55%));
	height: auto;
	max-width: 100%;
	object-fit: contain;
	width: clamp(220px, 25vw, 300px);
}

.webballufa-header__brand-tagline {
	color: #d6caa4;
	font-family: Arial, sans-serif;
	font-size: 9px;
	font-weight: 600;
	letter-spacing: 1.5px;
	line-height: 1.4;
	margin-block-start: 5px;
}

.webballufa-header__actions {
	display: grid;
	flex: 0 1 520px;
	gap: 14px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.webballufa-header__action {
	align-items: center;
	border: 1px solid var(--webballufa-header-gold-deep);
	border-radius: 8px;
	display: flex;
	font-size: 15px;
	font-weight: 500;
	gap: 9px;
	justify-content: center;
	min-height: 44px;
	padding: 8px 18px;
	text-decoration: none;
	transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.webballufa-header__action svg {
	fill: none;
	height: 20px;
	stroke: currentcolor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
	width: 20px;
}

.webballufa-header__action--primary {
	background: linear-gradient(135deg, #ffe371, #efb927);
	box-shadow: inset 0 1px 0 rgb(255 255 255 / 55%);
	color: #211702;
}

.webballufa-header__action--outline {
	background: rgb(244 197 65 / 3%);
	color: var(--webballufa-header-gold);
}

.webballufa-header__action:hover {
	border-color: #ffe47c;
	color: #211702;
	transform: translateY(-1px);
}

.webballufa-header__action--outline:hover {
	background: var(--webballufa-header-gold);
}

.webballufa-header a:focus-visible {
	border-radius: 4px;
	box-shadow: 0 0 0 3px #070705, 0 0 0 5px var(--webballufa-header-gold);
	outline: none;
}

.webballufa-header__nav {
	background: linear-gradient(180deg, #0c0a06, #080704);
	border-block-start: 1px solid rgb(244 197 65 / 30%);
}

.webballufa-header__nav-list {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	list-style: none;
	margin: 0;
	padding: 0;
}

.webballufa-header__nav-list li {
	border-inline-start: 1px solid rgb(244 197 65 / 18%);
}

.webballufa-header__nav-list li:last-child {
	border-inline-end: 1px solid rgb(244 197 65 / 18%);
}

.webballufa-header__nav-list a {
	align-items: center;
	color: #eee8d5;
	display: flex;
	flex-direction: column;
	font-size: 13px;
	font-weight: 500;
	gap: 4px;
	justify-content: center;
	min-height: 62px;
	padding: 8px 5px;
	position: relative;
	text-decoration: none;
	transition: background-color 160ms ease, color 160ms ease;
}

.webballufa-header__nav-icon {
	color: var(--webballufa-header-gold);
	display: block;
	height: 22px;
	width: 22px;
}

.webballufa-header__nav-icon svg {
	fill: none;
	height: 100%;
	stroke: currentcolor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.7;
	width: 100%;
}

.webballufa-header__nav-list a:hover,
.webballufa-header__nav-list a:focus-visible,
.webballufa-header__nav-list .is-current a {
	background: linear-gradient(180deg, rgb(244 197 65 / 13%), rgb(244 197 65 / 4%));
	color: var(--webballufa-header-gold);
}

.webballufa-header__nav-list .is-current a::after {
	background: var(--webballufa-header-gold);
	block-size: 2px;
	bottom: 0;
	content: "";
	inset-inline: 20%;
	position: absolute;
}

@media (max-width: 767px) {
	.webballufa-header__inner {
		padding-inline: 12px;
	}

	.webballufa-header__trust-list {
		display: flex;
		overflow-x: auto;
		scrollbar-width: none;
	}

	.webballufa-header__trust-list::-webkit-scrollbar {
		display: none;
	}

	.webballufa-header__trust-list li {
		flex: 0 0 auto;
	}

	.webballufa-header__trust-list a {
		font-size: 10px;
		min-height: 26px;
	}

	.webballufa-header__main-inner {
		flex-direction: column;
		gap: 12px;
		min-height: 0;
		padding-block: 14px;
	}

	.webballufa-header__branding,
	.webballufa-header__actions {
		flex-basis: auto;
		width: 100%;
	}

	.webballufa-header__brand-mark {
		font-size: 30px;
	}

	.webballufa-header__logo-image {
		width: min(250px, 78vw);
	}

	.webballufa-header__actions {
		gap: 8px;
	}

	.webballufa-header__action {
		font-size: 13px;
		min-height: 40px;
		padding: 7px 9px;
	}

	.webballufa-header__nav-scroll {
		overflow-x: auto;
		padding-inline: 0;
		scroll-snap-type: x proximity;
		scrollbar-width: thin;
	}

	.webballufa-header__nav-list {
		grid-template-columns: repeat(6, minmax(86px, 1fr));
		min-width: 540px;
	}

	.webballufa-header__nav-list li {
		scroll-snap-align: start;
	}

	.webballufa-header__nav-list a {
		font-size: 11px;
		min-height: 58px;
	}
}

/* Black-and-gold site footer inspired by the supplied visual reference. */
.site-footer.webballufa-footer {
	--webballufa-footer-bg: #070705;
	--webballufa-footer-gold: #f4c541;
	--webballufa-footer-border: rgb(244 197 65 / 24%);
	background: var(--webballufa-footer-bg);
	border-block-start: 1px solid rgb(244 197 65 / 40%);
	color: #e8e2cf;
	display: block;
	font-family: var(--webballufa-font-family);
	margin: 72px 0 0;
	max-width: none;
	padding: 0;
	width: 100%;
}

.webballufa-footer__inner {
	margin-inline: auto;
	max-width: 1180px;
	padding-inline: 20px;
	width: 100%;
}

.webballufa-footer__main {
	background:
		radial-gradient(circle at 18% 30%, rgb(244 197 65 / 5%), transparent 28%),
		linear-gradient(180deg, #090805, #050504);
}

.webballufa-footer__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.45fr) minmax(220px, 0.9fr) minmax(220px, 0.9fr);
	padding-block: 46px 40px;
}

.webballufa-footer__brand {
	padding-inline-end: clamp(24px, 5vw, 72px);
	text-align: center;
}

.webballufa-footer__brand-link {
	align-items: center;
	color: #fff4c3;
	display: inline-flex;
	flex-direction: column;
	max-width: 100%;
	text-decoration: none;
}

.webballufa-footer__brand-mark {
	background: linear-gradient(180deg, #fff7ce 5%, #f6d36b 52%, #a97817 100%);
	background-clip: text;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(30px, 3.2vw, 46px);
	font-weight: 700;
	letter-spacing: 3px;
	line-height: 1;
	text-transform: uppercase;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.webballufa-footer__logo-image {
	display: block;
	filter: drop-shadow(0 2px 6px rgb(0 0 0 / 55%));
	height: auto;
	max-width: 100%;
	object-fit: contain;
	width: min(270px, 100%);
}

.webballufa-footer__brand-tagline {
	color: #d6caa4;
	font-family: Arial, sans-serif;
	font-size: 9px;
	font-weight: 600;
	letter-spacing: 1.5px;
	margin-block-start: 6px;
}

.webballufa-footer__brand p {
	color: #cfc8b5;
	font-size: 12px;
	line-height: 1.75;
	margin: 18px auto 0;
	max-width: 500px;
}

.webballufa-footer__quick-links {
	display: flex;
	gap: 9px;
	justify-content: center;
	margin-block-start: 18px;
}

.webballufa-footer__quick-links a,
.webballufa-footer__list-icon,
.webballufa-footer__bottom-icon {
	align-items: center;
	border: 1px solid rgb(244 197 65 / 58%);
	border-radius: 50%;
	color: var(--webballufa-footer-gold);
	display: inline-flex;
	flex: 0 0 auto;
	justify-content: center;
}

.webballufa-footer__quick-links a {
	height: 34px;
	transition: background-color 160ms ease, color 160ms ease, transform 160ms ease;
	width: 34px;
}

.webballufa-footer__quick-links a:hover,
.webballufa-footer__quick-links a:focus-visible {
	background: var(--webballufa-footer-gold);
	color: #181001;
	transform: translateY(-1px);
}

.webballufa-footer svg {
	fill: none;
	height: 17px;
	stroke: currentcolor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.7;
	width: 17px;
}

.webballufa-footer__column {
	border-inline-start: 1px solid var(--webballufa-footer-border);
	padding-inline: clamp(24px, 4vw, 54px) 12px;
}

.webballufa-footer__column h2 {
	color: var(--webballufa-footer-gold);
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0.4px;
	margin: 0 0 10px;
}

.webballufa-footer__column ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.webballufa-footer__column li {
	border-block-end: 1px dashed rgb(255 255 255 / 11%);
}

.webballufa-footer__column a {
	align-items: center;
	color: #ddd6c1;
	display: flex;
	font-size: 12px;
	gap: 10px;
	min-height: 40px;
	padding-block: 6px;
	text-decoration: none;
	transition: color 160ms ease, padding-inline-start 160ms ease;
}

.webballufa-footer__column a:hover,
.webballufa-footer__column a:focus-visible,
.webballufa-footer__column a[aria-current="page"] {
	color: var(--webballufa-footer-gold);
	padding-inline-start: 4px;
}

.webballufa-footer__list-icon {
	height: 25px;
	width: 25px;
}

.webballufa-footer__list-icon svg {
	height: 13px;
	width: 13px;
}

.webballufa-footer a:focus-visible {
	border-radius: 4px;
	box-shadow: 0 0 0 3px #070705, 0 0 0 5px var(--webballufa-footer-gold);
	outline: none;
}

.webballufa-footer__bottom {
	background: #030302;
	border-block-start: 1px solid rgb(244 197 65 / 42%);
}

.webballufa-footer__bottom-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.webballufa-footer__bottom-item {
	align-items: center;
	border-inline-start: 1px solid var(--webballufa-footer-border);
	color: #d9d2bd;
	display: flex;
	font-size: 11px;
	gap: 11px;
	justify-content: center;
	min-height: 68px;
	padding: 10px 16px;
	text-decoration: none;
}

.webballufa-footer__bottom-item:last-child {
	border-inline-end: 1px solid var(--webballufa-footer-border);
}

.webballufa-footer__bottom-item strong,
.webballufa-footer__bottom-item small {
	display: block;
	line-height: 1.35;
}

.webballufa-footer__bottom-item strong {
	color: var(--webballufa-footer-gold);
	font-size: 11px;
	font-weight: 500;
}

.webballufa-footer__bottom-item small {
	color: #afa993;
	font-size: 9px;
	margin-block-start: 2px;
}

.webballufa-footer__bottom-item:hover,
.webballufa-footer__bottom-item:focus-visible {
	background: rgb(244 197 65 / 5%);
	color: #fff;
}

.webballufa-footer__bottom-icon {
	height: 31px;
	width: 31px;
}

.webballufa-footer__bottom-icon--age {
	border-radius: 7px 7px 50% 50%;
	font-family: Arial, sans-serif;
	font-size: 10px;
	font-weight: 700;
}

.webballufa-footer__copyright {
	text-align: center;
}

@media (max-width: 900px) {
	.webballufa-footer__grid {
		grid-template-columns: 1.2fr 1fr 1fr;
	}

	.webballufa-footer__column {
		padding-inline: 24px 8px;
	}

	.webballufa-footer__bottom-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.webballufa-footer__bottom-item:nth-child(3) {
		border-block-start: 1px solid var(--webballufa-footer-border);
	}

	.webballufa-footer__bottom-item:nth-child(4) {
		border-block-start: 1px solid var(--webballufa-footer-border);
		border-inline-end: 1px solid var(--webballufa-footer-border);
	}
}

@media (max-width: 767px) {
	.site-footer.webballufa-footer {
		margin-block-start: 48px;
	}

	.webballufa-footer__inner {
		padding-inline: 14px;
	}

	.webballufa-footer__grid {
		grid-template-columns: 1fr;
		padding-block: 34px 26px;
	}

	.webballufa-footer__brand {
		padding: 0 8px 30px;
	}

	.webballufa-footer__column {
		border-block-start: 1px solid var(--webballufa-footer-border);
		border-inline-start: 0;
		padding: 24px 8px 8px;
	}

	.webballufa-footer__column + .webballufa-footer__column {
		margin-block-start: 16px;
	}

	.webballufa-footer__column a {
		font-size: 13px;
	}

	.webballufa-footer__bottom-grid {
		grid-template-columns: 1fr;
		padding-inline: 0;
	}

	.webballufa-footer__bottom-item,
	.webballufa-footer__bottom-item:nth-child(3),
	.webballufa-footer__bottom-item:nth-child(4),
	.webballufa-footer__bottom-item:last-child {
		border-block-start: 1px solid var(--webballufa-footer-border);
		border-inline: 0;
		justify-content: flex-start;
		min-height: 62px;
		padding-inline: 22px;
	}

	.webballufa-footer__bottom-item:first-child {
		border-block-start: 0;
	}

	.webballufa-footer__copyright {
		justify-content: center;
	}
}

/* Featured-image banner for singular Pages and Posts. */
.entry-banner {
	background: #121212;
	border-radius: 20px;
	box-shadow: 0 16px 40px rgb(0 0 0 / 12%);
	height: clamp(220px, 42vw, 520px);
	isolation: isolate;
	margin: 0 0 clamp(24px, 4vw, 48px);
	overflow: hidden;
	position: relative;
	width: 100%;
}

.entry-banner::after {
	background: linear-gradient(180deg, rgb(0 0 0 / 2%), rgb(0 0 0 / 16%));
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
	z-index: 1;
}

.entry-banner__backdrop {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	filter: blur(26px);
	inset: -36px;
	opacity: 0.68;
	position: absolute;
	transform: scale(1.08);
	z-index: 0;
}

.entry-banner__image {
	display: block;
	height: 100%;
	position: relative;
	width: 100%;
	z-index: 2;
}

.entry-banner__image.is-landscape {
	object-fit: cover;
}

.entry-banner__image.is-portrait {
	object-fit: contain;
}

@media (max-width: 575px) {
	.entry-banner {
		border-radius: 12px;
		height: clamp(200px, 62vw, 320px);
		margin-block-end: 24px;
	}
}

/* Category archives: three-card desktop grid, two-card tablet grid, one-card mobile list. */
.site-main.webballufa-category-archive {
	padding-block: clamp(34px, 5vw, 64px) 0;
	padding-inline: 20px;
}

.webballufa-category-header {
	margin: 0 auto clamp(28px, 4vw, 44px);
	max-width: 780px;
	text-align: center;
}

.webballufa-category-header__eyebrow {
	color: #d9c98b;
	display: block;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 1.6px;
	margin-block-end: 8px;
	text-transform: uppercase;
}

.webballufa-category-header .entry-title {
	color: var(--webballufa-content-gold);
	font-size: clamp(26px, 4vw, 36px);
	font-weight: 500;
	line-height: 1.25;
	margin: 0;
}

.webballufa-category-header .archive-description {
	color: #ddd7c4;
	font-size: 14px;
	line-height: 1.75;
	margin-block-start: 12px;
}

.webballufa-category-header .archive-description > :last-child {
	margin-block-end: 0;
}

.webballufa-category-grid {
	display: grid;
	gap: 28px 22px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.webballufa-category-card {
	background: linear-gradient(160deg, #121109 0%, #090907 70%);
	border: 1px solid rgb(244 197 65 / 24%);
	border-radius: 16px;
	box-shadow: 0 14px 34px rgb(0 0 0 / 24%);
	display: flex;
	flex-direction: column;
	margin: 0;
	min-width: 0;
	overflow: hidden;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.webballufa-category-card:hover {
	border-color: rgb(244 197 65 / 62%);
	box-shadow: 0 18px 42px rgb(0 0 0 / 38%);
	transform: translateY(-4px);
}

.webballufa-category-card__image-link {
	aspect-ratio: 16 / 9;
	background: #15130b;
	display: block;
	overflow: hidden;
	position: relative;
}

.webballufa-category-card__image {
	display: block;
	height: 100%;
	object-fit: cover;
	transition: transform 300ms ease;
	width: 100%;
}

.webballufa-category-card:hover .webballufa-category-card__image {
	transform: scale(1.035);
}

.webballufa-category-card__placeholder {
	align-items: center;
	background:
		radial-gradient(circle at 50% 35%, rgb(244 197 65 / 18%), transparent 42%),
		linear-gradient(145deg, #17140b, #070705);
	color: var(--webballufa-content-gold);
	display: flex;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 30px;
	font-weight: 700;
	height: 100%;
	justify-content: center;
	letter-spacing: 3px;
	width: 100%;
}

.webballufa-category-card__body {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	padding: 18px 20px 20px;
}

.webballufa-category-card__date {
	color: #bcb394;
	font-size: 11px;
	letter-spacing: 0.3px;
	margin-block-end: 7px;
}

.webballufa-category-card__title {
	font-size: 20px;
	font-weight: 500;
	line-height: 1.45;
	margin: 0;
}

.webballufa-category-card__title a {
	color: var(--webballufa-content-gold);
	text-decoration: none;
}

.webballufa-category-card__excerpt {
	color: #eee9da;
	display: -webkit-box;
	font-size: 14px;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	line-height: 1.72;
	margin: 12px 0 18px;
	overflow: hidden;
}

.webballufa-category-card__more {
	align-items: center;
	align-self: flex-start;
	color: var(--webballufa-content-gold);
	display: inline-flex;
	font-size: 13px;
	font-weight: 500;
	gap: 7px;
	margin-block-start: auto;
	text-decoration: none;
	transition: color 160ms ease, gap 160ms ease;
}

.webballufa-category-card__more:hover,
.webballufa-category-card__more:focus-visible,
.webballufa-category-card__title a:hover,
.webballufa-category-card__title a:focus-visible {
	color: #ffe58a;
}

.webballufa-category-card__more:hover {
	gap: 11px;
}

.webballufa-category-card a:focus-visible {
	border-radius: 3px;
	outline: 2px solid var(--webballufa-content-gold);
	outline-offset: 3px;
}

.webballufa-category-pagination {
	justify-content: center;
	margin: 38px auto 0;
}

.webballufa-category-pagination .nav-links {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: center;
}

.webballufa-category-pagination .page-numbers {
	align-items: center;
	border: 1px solid rgb(244 197 65 / 35%);
	border-radius: 8px;
	color: var(--webballufa-content-gold);
	display: inline-flex;
	justify-content: center;
	min-height: 38px;
	min-width: 38px;
	padding: 7px 12px;
	text-decoration: none;
}

.webballufa-category-pagination .page-numbers.current,
.webballufa-category-pagination a.page-numbers:hover,
.webballufa-category-pagination a.page-numbers:focus-visible {
	background: var(--webballufa-content-gold);
	color: #171105;
}

.webballufa-category-empty {
	background: #0d0c08;
	border: 1px solid rgb(244 197 65 / 24%);
	border-radius: 16px;
	padding: 36px 24px;
	text-align: center;
}

.webballufa-category-empty h2 {
	color: var(--webballufa-content-gold);
	margin-block-start: 0;
}

.webballufa-category-empty p {
	color: var(--webballufa-content-text);
	margin-block-end: 0;
}

@media (max-width: 900px) {
	.webballufa-category-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.site-main.webballufa-category-archive {
		padding-block-start: 28px;
		padding-inline: 14px;
	}

	.webballufa-category-grid {
		gap: 20px;
		grid-template-columns: 1fr;
	}

	.webballufa-category-card {
		border-radius: 13px;
	}

	.webballufa-category-card__body {
		padding: 16px 17px 18px;
	}

	.webballufa-category-card__title {
		font-size: 18px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.webballufa-category-card,
	.webballufa-category-card__image,
	.webballufa-category-card__more {
		transition: none;
	}

	.webballufa-category-card:hover,
	.webballufa-category-card:hover .webballufa-category-card__image {
		transform: none;
	}
}
