/* =========================================================
   ISKA QUÉBEC — EVENTS CSS CLEAN FINAL V2
   Fichier : assets/css/iska-events.css
   Contenu :
   1) The Events Calendar
   2) Hero archive événements
   3) Fight Card frontend
   4) Responsive événements

   NOTE :
   Les styles Live Results / Fight Admin restent dans iska-rankings.css.
========================================================= */

/* =========================================================
   THE EVENTS CALENDAR — HERO ARCHIVE
========================================================= */

.post-type-archive-tribe_events .btPageHeadline,
.events-archive .btPageHeadline,
.tribe-events-page-template .btPageHeadline {
	position: relative !important;
	overflow: hidden !important;
	min-height: 520px !important;
	background:
		linear-gradient(90deg, rgba(0,0,0,.88), rgba(0,0,0,.62), rgba(0,0,0,.35)),
		radial-gradient(circle at top left, rgba(212,175,55,.18), transparent 32%),
		linear-gradient(135deg, #050505, #111111) !important;
	border-bottom: 1px solid rgba(212,175,55,.22) !important;
}

.post-type-archive-tribe_events .btPageHeadline::before,
.events-archive .btPageHeadline::before,
.tribe-events-page-template .btPageHeadline::before {
	content: "" !important;
	position: absolute !important;
	inset: 0 !important;
	background:
		linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
		linear-gradient(180deg, rgba(255,255,255,.025) 1px, transparent 1px) !important;
	background-size: 54px 54px !important;
	opacity: .16 !important;
	pointer-events: none !important;
}

.post-type-archive-tribe_events .btPageHeadline .port,
.events-archive .btPageHeadline .port,
.tribe-events-page-template .btPageHeadline .port {
	position: relative !important;
	z-index: 2 !important;
	padding-top: 85px !important;
	padding-bottom: 70px !important;
	text-align: left !important;
}

.post-type-archive-tribe_events .btPageHeadline *,
.events-archive .btPageHeadline *,
.tribe-events-page-template .btPageHeadline * {
	text-align: left !important;
}

.post-type-archive-tribe_events .btBreadCrumbs,
.events-archive .btBreadCrumbs,
.tribe-events-page-template .btBreadCrumbs {
	position: relative !important;
	left: auto !important;
	bottom: auto !important;
	z-index: 20 !important;
	margin: 0 0 18px !important;
	color: rgba(255,255,255,.88) !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	letter-spacing: .08em !important;
	text-transform: uppercase !important;
}

.post-type-archive-tribe_events .btSubTitle,
.events-archive .btSubTitle,
.tribe-events-page-template .btSubTitle {
	display: none !important;
}

.post-type-archive-tribe_events .btPageHeadline h1,
.events-archive .btPageHeadline h1,
.tribe-events-page-template .btPageHeadline h1 {
	margin: 0 !important;
	font-size: 0 !important;
	line-height: 0 !important;
}

.post-type-archive-tribe_events .btPageHeadline h1::before,
.events-archive .btPageHeadline h1::before,
.tribe-events-page-template .btPageHeadline h1::before {
	content: "ISKA QUÉBEC • CALENDRIER OFFICIEL" !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin-bottom: 30px !important;
	padding: 10px 18px !important;
	border-radius: 999px !important;
	border: 1px solid rgba(255,255,255,.68) !important;
	background: rgba(0,0,0,.28) !important;
	color: #ffffff !important;
	font-size: 14px !important;
	line-height: 1 !important;
	font-weight: 900 !important;
	letter-spacing: .08em !important;
	text-transform: uppercase !important;
	backdrop-filter: blur(8px) !important;
}

.post-type-archive-tribe_events .btPageHeadline h1::after,
.events-archive .btPageHeadline h1::after,
.tribe-events-page-template .btPageHeadline h1::after {
	content: "ÉVÉNEMENTS" !important;
	display: block !important;
	max-width: 680px !important;
	color: #ffffff !important;
	font-size: clamp(58px, 7vw, 118px) !important;
	line-height: .9 !important;
	font-weight: 950 !important;
	letter-spacing: -4px !important;
	text-transform: uppercase !important;
	text-shadow: 0 10px 45px rgba(0,0,0,.82) !important;
}

.post-type-archive-tribe_events .btPageHeadline .port::after,
.events-archive .btPageHeadline .port::after,
.tribe-events-page-template .btPageHeadline .port::after {
	content: "Découvrez tous les événements à venir organisés partout au Québec.\A Compétitions, galas et championnats de kickboxing et de karaté." !important;
	position: absolute !important;
	left: 60% !important;
	top: 55% !important;
	transform: translateY(-50%) !important;
	display: block !important;
	max-width: 420px !important;
	white-space: pre-line !important;
	color: rgba(255,255,255,.96) !important;
	font-size: 20px !important;
	line-height: 1.6 !important;
	font-weight: 500 !important;
	text-shadow: 0 5px 25px rgba(0,0,0,.85) !important;
}

/* =========================================================
   FIGHT CARD — FRONTEND
========================================================= */

.iska-event-fight-card,
.iska-fight-card-empty {
	box-sizing: border-box !important;
	max-width: 1180px !important;
	margin: 32px auto !important;
	font-family: Inter, "Segoe UI", Arial, sans-serif !important;
}

.iska-event-fight-card *,
.iska-event-fight-card *::before,
.iska-event-fight-card *::after,
.iska-fight-card-empty,
.iska-fight-card-empty * {
	box-sizing: border-box !important;
}

.iska-event-fight-card,
.iska-event-fight-item,
.iska-fight-row,
.iska-fight-card-row {
	overflow: hidden !important;
}

.iska-event-fight-card {
	position: relative !important;
	padding: 34px !important;
	border-radius: 28px !important;
	background:
		radial-gradient(circle at top left, rgba(212,175,55,.15), transparent 30%),
		radial-gradient(circle at bottom right, rgba(196,30,58,.10), transparent 28%),
		linear-gradient(145deg, #050505, #101010 52%, #070707) !important;
	border: 1px solid rgba(212,175,55,.24) !important;
	box-shadow: 0 28px 70px rgba(0,0,0,.45) !important;
	color: #f8f3e8 !important;
}

.iska-event-fight-card::before {
	content: "" !important;
	position: absolute !important;
	inset: 0 !important;
	pointer-events: none !important;
	background: linear-gradient(120deg, transparent, rgba(255,255,255,.035), transparent) !important;
}

.iska-event-fight-card-head {
	position: relative !important;
	z-index: 1 !important;
	margin-bottom: 28px !important;
	text-align: center !important;
}

.iska-event-fight-card-badge {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin-bottom: 14px !important;
	padding: 9px 18px !important;
	border-radius: 999px !important;
	border: 1px solid rgba(212,175,55,.34) !important;
	background: rgba(212,175,55,.08) !important;
	color: #f1d67a !important;
	font-size: 11px !important;
	font-weight: 900 !important;
	letter-spacing: .18em !important;
	text-transform: uppercase !important;
}

.iska-event-fight-card-head h2 {
	margin: 0 !important;
	color: #ffffff !important;
	font-size: clamp(30px, 4vw, 54px) !important;
	line-height: 1.02 !important;
	font-weight: 950 !important;
	letter-spacing: -.035em !important;
	text-transform: uppercase !important;
	text-shadow: 0 8px 28px rgba(0,0,0,.42) !important;
}

.iska-event-fight-list {
	position: relative !important;
	z-index: 1 !important;
	display: grid !important;
	grid-template-columns: 1fr !important;
	gap: 18px !important;
}

.iska-event-fight-item,
.iska-fight-row,
.iska-fight-card-row {
	position: relative !important;
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
	align-items: center !important;
	gap: 18px !important;
	padding: 22px !important;
	border-radius: 22px !important;
	background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.018)) !important;
	border: 1px solid rgba(212,175,55,.16) !important;
	box-shadow: 0 16px 40px rgba(0,0,0,.30) !important;
}

.iska-event-fight-item.iska-has-winner,
.iska-fight-row.iska-has-winner,
.iska-fight-card-row.iska-has-winner {
	border-color: rgba(159,232,112,.45) !important;
	box-shadow:
		0 0 0 1px rgba(159,232,112,.22),
		0 18px 48px rgba(0,0,0,.38) !important;
}

.iska-fighter-a,
.iska-fighter-b,
.iska-fight-fighter {
	min-width: 0 !important;
}

.iska-fighter-b {
	text-align: right !important;
}

.iska-fighter-name,
.iska-fight-name {
	margin: 0 !important;
	color: #ffffff !important;
	font-size: clamp(18px, 2.5vw, 28px) !important;
	line-height: 1.1 !important;
	font-weight: 950 !important;
	letter-spacing: -.02em !important;
	text-transform: uppercase !important;
	overflow-wrap: anywhere !important;
	word-break: break-word !important;
}

.iska-fighter-meta,
.iska-fight-meta {
	margin-top: 7px !important;
	color: rgba(248,243,232,.74) !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	letter-spacing: .05em !important;
	text-transform: uppercase !important;
}

.iska-fight-vs,
.iska-vs {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 64px !important;
	height: 64px !important;
	border-radius: 50% !important;
	background: linear-gradient(135deg, #8d6810, #d4af37, #f1d67a) !important;
	color: #050505 !important;
	font-size: 15px !important;
	font-weight: 950 !important;
	letter-spacing: .08em !important;
	text-transform: uppercase !important;
	box-shadow: 0 14px 28px rgba(0,0,0,.38) !important;
}

.iska-fight-result,
.iska-result-badge {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin-top: 12px !important;
	padding: 7px 12px !important;
	border-radius: 999px !important;
	border: 1px solid rgba(212,175,55,.28) !important;
	background: rgba(212,175,55,.08) !important;
	color: #f1d67a !important;
	font-size: 11px !important;
	font-weight: 900 !important;
	letter-spacing: .08em !important;
	text-transform: uppercase !important;
}

.iska-fight-winner,
.iska-winner {
	color: #9fe870 !important;
	font-weight: 950 !important;
}

.iska-fight-card-empty {
	padding: 26px !important;
	border-radius: 22px !important;
	border: 1px solid rgba(212,175,55,.22) !important;
	background: linear-gradient(145deg, #090909, #151515) !important;
	color: rgba(248,243,232,.82) !important;
	font-weight: 800 !important;
	text-align: center !important;
}

/* =========================================================
   RESPONSIVE — ÉVÉNEMENTS / FIGHT CARD
========================================================= */

@media (max-width: 991px) {

	.post-type-archive-tribe_events .btPageHeadline,
	.events-archive .btPageHeadline,
	.tribe-events-page-template .btPageHeadline {
		min-height: 420px !important;
	}

	.post-type-archive-tribe_events .btPageHeadline .port,
	.events-archive .btPageHeadline .port,
	.tribe-events-page-template .btPageHeadline .port {
		padding-left: 28px !important;
		padding-right: 28px !important;
	}

	.post-type-archive-tribe_events .btPageHeadline .port::after,
	.events-archive .btPageHeadline .port::after,
	.tribe-events-page-template .btPageHeadline .port::after {
		position: relative !important;
		left: auto !important;
		top: auto !important;
		transform: none !important;
		max-width: 100% !important;
		margin-top: 26px !important;
		font-size: 17px !important;
	}

	.iska-event-fight-card {
		padding: 24px !important;
		border-radius: 22px !important;
	}

	.iska-event-fight-item,
	.iska-fight-row,
	.iska-fight-card-row {
		grid-template-columns: 1fr !important;
		text-align: center !important;
	}

	.iska-fighter-b {
		text-align: center !important;
	}

	.iska-fight-vs,
	.iska-vs {
		margin: 0 auto !important;
	}
}

@media (max-width: 768px) {

	.post-type-archive-tribe_events .btPageHeadline,
	.events-archive .btPageHeadline,
	.tribe-events-page-template .btPageHeadline {
		min-height: 390px !important;
		background: linear-gradient(135deg, #050505, #111111) !important;
	}

	.iska-event-fight-card,
	.iska-event-fight-item,
	.iska-fight-row,
	.iska-fight-card-row {
		box-shadow: 0 12px 30px rgba(0,0,0,.28) !important;
	}

	.post-type-archive-tribe_events .btPageHeadline h1::after,
	.events-archive .btPageHeadline h1::after,
	.tribe-events-page-template .btPageHeadline h1::after {
		font-size: 48px !important;
		letter-spacing: -2px !important;
	}

	.post-type-archive-tribe_events .btPageHeadline h1::before,
	.events-archive .btPageHeadline h1::before,
	.tribe-events-page-template .btPageHeadline h1::before {
		font-size: 11px !important;
		letter-spacing: .06em !important;
	}

	.iska-event-fight-card {
		padding: 18px !important;
	}

	.iska-event-fight-card-head h2 {
		font-size: 30px !important;
	}

	.iska-fight-vs,
	.iska-vs {
		width: 56px !important;
		height: 56px !important;
		font-size: 13px !important;
	}
}

@media (max-width: 480px) {

	.post-type-archive-tribe_events .btPageHeadline h1::after,
	.events-archive .btPageHeadline h1::after,
	.tribe-events-page-template .btPageHeadline h1::after {
		font-size: 38px !important;
		letter-spacing: -1px !important;
	}

	.post-type-archive-tribe_events .btPageHeadline .port,
	.events-archive .btPageHeadline .port,
	.tribe-events-page-template .btPageHeadline .port {
		padding-top: 60px !important;
		padding-bottom: 55px !important;
	}

	.iska-event-fight-item,
	.iska-fight-row,
	.iska-fight-card-row {
		padding: 18px !important;
		border-radius: 18px !important;
	}
}
