.uhc-sm,
.uhc-sm * {
	box-sizing: border-box;
}

.uhc-sm {
	--uhc-primary: #124b91;
	--uhc-accent: #76b82a;
	--uhc-ink: #142033;
	--uhc-muted: #667085;
	--uhc-line: #e4eaf0;
	--uhc-surface: #ffffff;
	--uhc-soft: #f5f8fb;
	color: var(--uhc-ink);
	font: inherit;
	margin: 2rem 0;
}

.uhc-sm-page > .uhc-sm:first-child {
	margin-top: 0;
}

.uhc-sm__heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1rem;
}

.uhc-sm__heading h2 {
	color: var(--uhc-ink);
	font-size: clamp(1.45rem, 3vw, 2rem);
	font-weight: 800;
	letter-spacing: -0.025em;
	line-height: 1.1;
	margin: 0;
}

.uhc-sm__eyebrow {
	color: var(--uhc-primary);
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	margin: 0 0 0.35rem;
	text-transform: uppercase;
}

.uhc-sm__live {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	color: var(--uhc-muted);
	font-size: 0.78rem;
	font-weight: 700;
	white-space: nowrap;
}

.uhc-sm__live > span {
	background: var(--uhc-accent);
	border-radius: 99px;
	box-shadow: 0 0 0 4px color-mix(in srgb, var(--uhc-accent) 17%, transparent);
	display: inline-block;
	height: 0.48rem;
	width: 0.48rem;
}

.uhc-sm__match-grid {
	display: grid;
	gap: 0.85rem;
}

.uhc-sm__match {
	background: var(--uhc-surface);
	border: 1px solid var(--uhc-line);
	border-radius: 16px;
	box-shadow: 0 7px 24px rgba(20, 32, 51, 0.055);
	overflow: hidden;
	transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.uhc-sm__match:hover {
	border-color: color-mix(in srgb, var(--uhc-primary) 34%, var(--uhc-line));
	box-shadow: 0 12px 32px rgba(20, 32, 51, 0.09);
	transform: translateY(-1px);
}

.uhc-sm__match-meta {
	align-items: center;
	background: var(--uhc-soft);
	border-bottom: 1px solid var(--uhc-line);
	display: flex;
	font-size: 0.79rem;
	font-weight: 650;
	gap: 0.75rem 1.25rem;
	justify-content: space-between;
	padding: 0.72rem 1rem;
}

.uhc-sm__match-meta time {
	color: var(--uhc-primary);
	font-weight: 800;
	text-transform: capitalize;
}

.uhc-sm__match-meta span {
	color: var(--uhc-muted);
	text-align: right;
}

.uhc-sm__versus {
	align-items: center;
	display: grid;
	gap: 0.75rem;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	padding: clamp(1rem, 3vw, 1.45rem);
}

.uhc-sm__side {
	align-items: center;
	display: flex;
	font-size: clamp(0.85rem, 2.1vw, 1rem);
	font-weight: 700;
	gap: 0.75rem;
	line-height: 1.25;
	min-width: 0;
}

.uhc-sm__side:last-child {
	flex-direction: row-reverse;
	text-align: right;
}

.uhc-sm__side.is-uhc {
	color: var(--uhc-primary);
	font-weight: 850;
}

.uhc-sm__team-logo,
.uhc-sm__logo-placeholder {
	background: #fff;
	border: 1px solid var(--uhc-line);
	border-radius: 12px;
	flex: 0 0 clamp(44px, 7vw, 64px);
	height: clamp(44px, 7vw, 64px);
	object-fit: contain;
	padding: 0.35rem;
	width: clamp(44px, 7vw, 64px);
}

.uhc-sm__logo-placeholder {
	background: linear-gradient(135deg, var(--uhc-soft), #fff);
}

.uhc-sm__score {
	align-items: center;
	background: var(--uhc-primary);
	border-radius: 999px;
	color: #fff;
	display: inline-flex;
	font-size: 0.82rem;
	font-weight: 900;
	justify-content: center;
	letter-spacing: 0.03em;
	min-height: 2.65rem;
	min-width: 2.65rem;
	padding: 0.55rem 0.72rem;
	white-space: nowrap;
}

.uhc-sm__score.is-result {
	background: var(--uhc-ink);
	font-size: 1rem;
}

.uhc-sm__table-wrap {
	border: 1px solid var(--uhc-line);
	border-radius: 16px;
	box-shadow: 0 7px 24px rgba(20, 32, 51, 0.055);
	overflow-x: auto;
}

.uhc-sm__table {
	background: var(--uhc-surface);
	border: 0;
	border-collapse: collapse;
	font-size: 0.88rem;
	margin: 0;
	min-width: 680px;
	width: 100%;
}

.uhc-sm__table th,
.uhc-sm__table td {
	border: 0;
	border-bottom: 1px solid var(--uhc-line);
	padding: 0.72rem 0.7rem;
	text-align: center;
	vertical-align: middle;
}

.uhc-sm__table thead th {
	background: var(--uhc-primary);
	color: #fff;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.035em;
	text-transform: uppercase;
}

.uhc-sm__table thead th:first-child {
	border-radius: 15px 0 0;
}

.uhc-sm__table thead th:last-child {
	border-radius: 0 15px 0 0;
}

.uhc-sm__table tbody tr:last-child > * {
	border-bottom: 0;
}

.uhc-sm__table tbody tr:hover > * {
	background: var(--uhc-soft);
}

.uhc-sm__table tbody tr.is-uhc > * {
	background: color-mix(in srgb, var(--uhc-accent) 15%, white);
	color: var(--uhc-ink);
	font-weight: 800;
}

.uhc-sm__table tbody tr.is-uhc > :first-child {
	box-shadow: inset 4px 0 0 var(--uhc-accent);
}

.uhc-sm__team-heading,
.uhc-sm__team-cell {
	text-align: left !important;
}

.uhc-sm__team-cell {
	align-items: center;
	display: flex;
	font-weight: 700;
	gap: 0.65rem;
	min-width: 220px;
}

.uhc-sm__team-cell img {
	background: #fff;
	border-radius: 7px;
	height: 32px;
	object-fit: contain;
	width: 32px;
}

.uhc-sm__rank {
	color: var(--uhc-muted);
	font-weight: 800;
}

.uhc-sm__points {
	color: var(--uhc-primary);
	font-size: 1rem;
	font-weight: 900;
}

.uhc-sm__empty {
	background: var(--uhc-soft);
	border: 1px dashed color-mix(in srgb, var(--uhc-primary) 35%, var(--uhc-line));
	border-radius: 14px;
	color: var(--uhc-muted);
	padding: 1.25rem;
	text-align: center;
}

.uhc-sm__source {
	color: var(--uhc-muted);
	font-size: 0.7rem;
	margin: 0.75rem 0 0;
	text-align: right;
}

.uhc-sm__source a {
	color: var(--uhc-primary);
	text-decoration: none;
}

.uhc-sm__source a:hover {
	text-decoration: underline;
}

.uhc-sm .screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	overflow: hidden;
	position: absolute !important;
	width: 1px;
}

@media (max-width: 640px) {
	.uhc-sm {
		margin: 1.5rem 0;
	}

	.uhc-sm__heading {
		align-items: flex-start;
	}

	.uhc-sm__live {
		font-size: 0;
		margin-top: 0.55rem;
	}

	.uhc-sm__match-meta {
		align-items: flex-start;
		flex-direction: column;
		gap: 0.22rem;
	}

	.uhc-sm__match-meta span {
		text-align: left;
	}

	.uhc-sm__versus {
		gap: 0.4rem;
		padding: 1rem 0.7rem;
	}

	.uhc-sm__side,
	.uhc-sm__side:last-child {
		align-items: center;
		flex-direction: column;
		gap: 0.45rem;
		text-align: center;
	}

	.uhc-sm__side span {
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 3;
		overflow: hidden;
	}

	.uhc-sm__score {
		min-height: 2.4rem;
		min-width: 2.4rem;
		padding: 0.45rem 0.58rem;
	}

	.uhc-sm__table {
		min-width: 560px;
	}

	.uhc-sm__optional {
		display: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.uhc-sm__match {
		transition: none;
	}
}

/* --------------------------------------------------------------------------
   Fiches d'équipe — shortcode [uhc_fiche_equipe]
   -------------------------------------------------------------------------- */

.uhc-team-page,
.uhc-team-page * {
	box-sizing: border-box;
}

.uhc-team-page {
	--uhc-primary: #124b91;
	--uhc-accent: #76b82a;
	--uhc-team-black: #050706;
	--uhc-team-white: #fff;
	--uhc-team-muted: #697078;
	background: #f5f6f5;
	container-type: inline-size;
	color: #151918;
	font-family: inherit;
	overflow: hidden;
	width: 100%;
}

.uhc-team-page .screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	overflow: hidden;
	position: absolute !important;
	white-space: nowrap;
	width: 1px;
}

.uhc-team-shell {
	margin: 0 auto;
	max-width: 1320px;
	padding-left: clamp(20px, 4vw, 56px);
	padding-right: clamp(20px, 4vw, 56px);
	width: 100%;
}

.uhc-team-hero {
	aspect-ratio: 3.62 / 1;
	background:
		radial-gradient(circle at 16% 84%, rgba(118, 184, 42, 0.2), transparent 24%),
		linear-gradient(145deg, #000 0%, #020403 100%);
	border-bottom: 6px solid var(--uhc-accent);
	display: grid;
	grid-template-columns: minmax(250px, 34%) minmax(0, 66%);
	grid-template-rows: minmax(0, 1fr);
	isolation: isolate;
	overflow: hidden;
	position: relative;
}

.uhc-team-hero::before {
	background:
		linear-gradient(164deg, transparent 0 51%, rgba(118, 184, 42, 0.52) 52% 54%, transparent 55% 65%, rgba(118, 184, 42, 0.24) 66% 68%, transparent 69%),
		linear-gradient(174deg, transparent 0 63%, rgba(255, 255, 255, 0.1) 64% 65%, transparent 66%);
	bottom: -8%;
	content: "";
	height: 58%;
	left: -3%;
	pointer-events: none;
	position: absolute;
	transform: rotate(-2deg);
	width: 42%;
	z-index: 1;
}

.uhc-team-hero::after {
	background: linear-gradient(90deg, #000 0%, #000 24%, rgba(0, 0, 0, 0.96) 31%, rgba(0, 0, 0, 0.68) 39%, rgba(0, 0, 0, 0.08) 55%, transparent 68%);
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
	z-index: 2;
}

.uhc-team-hero__photo {
	background: #000;
	grid-column: 2;
	grid-row: 1;
	min-height: 0;
	min-width: 0;
	overflow: hidden;
	position: relative;
	z-index: 0;
}

.uhc-team-hero__photo::after {
	background: linear-gradient(90deg, rgba(0, 0, 0, 0.72), transparent 24%);
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
	z-index: 2;
}

.uhc-team-hero__photo > img {
	display: block;
	height: 100%;
	width: 100%;
}

.uhc-team-hero__photo-main {
	object-fit: cover;
	object-position: center top;
	position: relative;
	z-index: 1;
}

.uhc-team-page--dames .uhc-team-hero__photo-main {
	object-position: center 28%;
}

/* L'image de l'école place son sujet principal dans la partie basse :
   ce cadrage conserve ensemble le but, la crosse et la balle. */
.uhc-team-page--ecole .uhc-team-hero__photo-main {
	object-position: center 65%;
}

.uhc-team-hero__copy {
	display: flex;
	flex-direction: column;
	grid-column: 1;
	grid-row: 1;
	justify-content: center;
	min-height: 0;
	min-width: 0;
	padding: clamp(20px, 4vw, 64px);
	position: relative;
	z-index: 4;
}

.uhc-team-hero__copy h1 {
	display: flex;
	flex-direction: column;
	margin: 0;
}

.uhc-team-hero__copy h1 span,
.uhc-team-hero__copy h1 strong {
	font-style: italic;
	font-weight: 950;
	letter-spacing: -0.055em;
	line-height: 0.9;
	text-transform: uppercase;
}

.uhc-team-hero__copy h1 span {
	color: #fff;
	font-size: clamp(2rem, 4.2vw, 4.4rem);
}

.uhc-team-hero__copy h1 strong {
	color: var(--uhc-accent);
	font-size: clamp(1.6rem, 3.25vw, 3.45rem);
	margin-top: 0.38rem;
}

.uhc-team-hero__season {
	align-self: flex-start;
	background: rgba(0, 0, 0, 0.78);
	border-left: 4px solid var(--uhc-accent);
	color: #fff;
	font-size: clamp(0.72rem, 1.15vw, 0.95rem);
	font-weight: 800;
	letter-spacing: 0.08em;
	margin-top: clamp(1rem, 2vw, 1.7rem);
	padding: 0.6rem 0.9rem;
	text-transform: uppercase;
}

.uhc-team-intro {
	background:
		radial-gradient(circle at 18% 84%, rgba(118, 184, 42, 0.07), transparent 27%),
		#fff;
	padding: clamp(36px, 5vw, 72px) 0;
}

.uhc-team-intro__eyebrow {
	color: var(--uhc-accent);
	font-size: 0.72rem;
	font-weight: 900;
	letter-spacing: 0.13em;
	margin: 0 0 0.7rem;
	text-transform: uppercase;
}

.uhc-team-page--presentation-only .uhc-team-intro {
	background:
		linear-gradient(115deg, rgba(0, 0, 0, 0.97) 0 43%, rgba(0, 0, 0, 0.42) 70%, transparent),
		radial-gradient(circle at 82% 38%, rgba(118, 184, 42, 0.24), transparent 23%),
		linear-gradient(135deg, #020914, #124b91);
	color: #fff;
}

.uhc-team-page--banner-only .uhc-team-hero {
	border-bottom: 6px solid var(--uhc-accent);
}

.uhc-team-page--presentation-only .uhc-team-intro__grid {
	gap: clamp(34px, 4vw, 68px);
	grid-template-columns: minmax(0, 0.85fr) minmax(600px, 1.4fr);
}

.uhc-team-page--presentation-only .uhc-team-intro__copy {
	border-left: 4px solid var(--uhc-accent);
	border-right: 0;
	color: rgba(255, 255, 255, 0.94);
	font-size: clamp(1rem, 1.2vw, 1.12rem);
	max-width: 76ch;
	padding: 0.35rem 0 0.35rem clamp(20px, 3vw, 38px);
}

.uhc-team-page--presentation-only .uhc-team-intro__copy p:last-of-type {
	margin-bottom: 1.25rem;
}

.uhc-team-page--presentation-only .uhc-team-intro__copy > strong {
	color: var(--uhc-accent);
	display: inline-block;
	font-size: 0.78rem;
	font-weight: 900;
	letter-spacing: 0.055em;
	text-transform: uppercase;
}

.uhc-team-page--presentation-only .uhc-team-info {
	gap: clamp(14px, 1.4vw, 22px);
}

.uhc-team-page--presentation-only .uhc-team-info__item {
	background: linear-gradient(145deg, rgba(9, 35, 59, 0.88), rgba(3, 13, 25, 0.96));
	border: 1px solid rgba(118, 184, 42, 0.3);
	border-radius: 18px;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.055), 0 18px 42px rgba(0, 0, 0, 0.24);
	isolation: isolate;
	min-height: 240px;
	overflow: hidden;
	padding: 1.75rem 1.1rem;
	position: relative;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.uhc-team-page--presentation-only .uhc-team-info__item::before {
	background: linear-gradient(90deg, transparent, var(--uhc-accent), transparent);
	content: "";
	height: 3px;
	left: 18%;
	opacity: 0.78;
	position: absolute;
	right: 18%;
	top: 0;
}

.uhc-team-page--presentation-only .uhc-team-info__item::after {
	background: radial-gradient(circle, rgba(118, 184, 42, 0.12), transparent 70%);
	content: "";
	height: 150px;
	pointer-events: none;
	position: absolute;
	right: -75px;
	top: -75px;
	width: 150px;
	z-index: -1;
}

.uhc-team-page--presentation-only .uhc-team-info__item:hover {
	border-color: rgba(118, 184, 42, 0.62);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.07), 0 22px 48px rgba(0, 0, 0, 0.3);
	transform: translateY(-3px);
}

.uhc-team-page--presentation-only .uhc-team-title,
.uhc-team-page--presentation-only .uhc-team-info__item strong {
	color: #fff;
}

.uhc-team-page--presentation-only .uhc-team-info__icon {
	background: linear-gradient(145deg, rgba(118, 184, 42, 0.22), rgba(118, 184, 42, 0.055));
	border: 1px solid rgba(118, 184, 42, 0.62);
	border-radius: 16px;
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.26);
	height: 66px;
	margin-bottom: 1.15rem;
	transform: rotate(-3deg);
	width: 66px;
}

.uhc-team-page--presentation-only .uhc-team-info__icon svg {
	fill: none;
	height: 32px;
	stroke: var(--uhc-accent);
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.65;
	transform: rotate(3deg);
	width: 32px;
}

.uhc-team-page--presentation-only .uhc-team-info__item > span:last-child {
	color: rgba(255, 255, 255, 0.9);
	font-size: 1rem;
	line-height: 1.45;
}

.uhc-team-info__lines {
	display: block;
	line-height: 1.6 !important;
}

/* Forminator : le choix majeur/mineur est piloté automatiquement par la
 * date de naissance. Le champ radio technique reste masqué aux visiteurs. */
#forminator-module-517 .uhc-age-auto-control {
	display: none !important;
}

#forminator-module-517 .uhc-age-auto-note {
	align-items: flex-start;
	background: rgba(118, 184, 42, 0.1);
	border-left: 3px solid var(--uhc-accent, #76b82a);
	border-radius: 0 6px 6px 0;
	color: rgba(255, 255, 255, 0.82);
	display: flex;
	font-size: 0.82rem;
	line-height: 1.45;
	margin: 8px 0 0;
	padding: 9px 12px;
}

.uhc-team-title {
	color: #171b19;
	font-size: clamp(1.45rem, 2.6vw, 2.15rem);
	font-weight: 900;
	letter-spacing: -0.025em;
	line-height: 1.05;
	margin: 0 0 1.7rem;
	padding-bottom: 0.72rem;
	position: relative;
	text-transform: uppercase;
}

.uhc-team-title::after {
	background: var(--uhc-accent);
	bottom: 0;
	content: "";
	height: 4px;
	left: 0;
	position: absolute;
	width: 48px;
}

.uhc-team-title.is-light {
	color: #fff;
}

.uhc-team-intro__grid {
	align-items: stretch;
	display: grid;
	gap: clamp(28px, 5vw, 72px);
	grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.5fr);
}

.uhc-team-intro__copy {
	border-right: 1px solid #dfe3df;
	font-size: clamp(0.95rem, 1.25vw, 1.08rem);
	line-height: 1.75;
	padding-right: clamp(24px, 5vw, 64px);
}

.uhc-team-intro__copy p {
	margin: 0 0 1rem;
}

.uhc-team-intro__copy strong {
	color: #182019;
}

.uhc-team-info {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.uhc-team-info__item {
	align-items: center;
	border-right: 1px solid #dfe3df;
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 190px;
	padding: 1rem clamp(12px, 2vw, 28px);
	text-align: center;
}

.uhc-team-info__item:last-child {
	border-right: 0;
}

.uhc-team-info__icon {
	align-items: center;
	border: 2px solid color-mix(in srgb, var(--uhc-accent) 55%, #fff);
	border-radius: 999px;
	color: var(--uhc-accent);
	display: inline-flex;
	font-size: 1.35rem;
	height: 52px;
	justify-content: center;
	margin-bottom: 0.8rem;
	width: 52px;
}

.uhc-team-info__item strong {
	font-size: 0.78rem;
	font-weight: 900;
	letter-spacing: 0.055em;
	margin-bottom: 0.62rem;
	text-transform: uppercase;
}

.uhc-team-info__item > span:last-child {
	color: #252b27;
	font-size: 0.95rem;
	line-height: 1.45;
}

.uhc-team-sport {
	background:
		radial-gradient(circle at 88% 120%, rgba(72, 153, 35, 0.24), transparent 34%),
		linear-gradient(135deg, #060806, #0b0e0c 48%, #050805);
	color: #fff;
	padding: clamp(42px, 6vw, 80px) 0;
	position: relative;
}

.uhc-team-sport::before {
	background: linear-gradient(115deg, transparent 76%, rgba(118, 184, 42, 0.08));
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
}

/* Transition douce vers le bandeau de contact placé juste après. Le même
   dégradé est utilisé des deux côtés de la jonction pour rendre la coupure
   presque imperceptible. */
.uhc-team-sport--standalone {
	background:
		linear-gradient(115deg, rgba(0, 0, 0, 0.97) 0 43%, rgba(0, 0, 0, 0.42) 70%, transparent),
		radial-gradient(circle at 82% 38%, rgba(118, 184, 42, 0.24), transparent 23%),
		linear-gradient(135deg, #020914, #124b91);
}

.uhc-team-sport--standalone::before {
	background: none;
}

.uhc-team-sport--standalone::after {
	background: linear-gradient(90deg, #061707 0%, #0b2b0c 56%, #123f12 100%);
	bottom: -1px;
	content: "";
	height: clamp(150px, 32%, 300px);
	left: 0;
	mask-image: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 0.18) 24%, #000 100%);
	pointer-events: none;
	position: absolute;
	right: 0;
	-webkit-mask-image: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 0.18) 24%, #000 100%);
	z-index: 0;
}

.uhc-team-sport--standalone .uhc-team-sport__grid {
	z-index: 1;
}

.uhc-team-sport__grid {
	display: grid;
	gap: clamp(34px, 5vw, 72px);
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
	position: relative;
}

.uhc-team-sport__column {
	min-width: 0;
}

.uhc-team-match-list {
	display: grid;
	gap: 0.72rem;
	margin-bottom: 1.35rem;
}

.uhc-team-match {
	align-items: stretch;
	background: linear-gradient(135deg, rgba(2, 9, 20, 0.96), rgba(7, 26, 49, 0.9));
	border: 1px solid rgba(118, 184, 42, 0.58);
	border-radius: 7px;
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.045);
	display: grid;
	grid-template-columns: 68px minmax(0, 1fr) minmax(90px, 0.25fr);
	min-height: 92px;
	overflow: hidden;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.uhc-team-match:hover {
	border-color: rgba(118, 184, 42, 0.88);
	box-shadow: 0 16px 36px rgba(0, 0, 0, 0.36), inset 0 1px 0 rgba(255, 255, 255, 0.06);
	transform: translateY(-2px);
}

.uhc-team-match__date {
	align-items: center;
	background: rgba(0, 0, 0, 0.2);
	border-right: 1px solid rgba(118, 184, 42, 0.42);
	display: flex;
	flex-direction: column;
	justify-content: center;
	line-height: 1;
	padding: 0.55rem 0.25rem;
	text-align: center;
	text-transform: uppercase;
}

.uhc-team-match__date span,
.uhc-team-match__date small {
	color: var(--uhc-accent);
	font-size: 0.65rem;
	font-weight: 850;
}

.uhc-team-match__date strong {
	color: #fff;
	font-size: 1.7rem;
	font-weight: 950;
	margin: 0.3rem 0;
}

.uhc-team-match__teams {
	align-items: center;
	display: grid;
	gap: 0.55rem;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	padding: 0.75rem 0.9rem;
}

.uhc-team-match__teams > div {
	align-items: center;
	display: flex;
	font-size: 0.72rem;
	font-weight: 800;
	gap: 0.48rem;
	line-height: 1.25;
	min-width: 0;
	text-transform: uppercase;
}

.uhc-team-match__teams > div:last-child {
	flex-direction: row-reverse;
	text-align: right;
}

.uhc-team-match__teams img,
.uhc-team-match__logo-placeholder {
	background: #fff;
	border-radius: 8px;
	flex: 0 0 38px;
	height: 38px;
	object-fit: contain;
	padding: 3px;
	width: 38px;
}

.uhc-team-match__logo-placeholder {
	background: rgba(255, 255, 255, 0.12);
}

.uhc-team-match__teams b {
	background: rgba(118, 184, 42, 0.12);
	border: 1px solid rgba(118, 184, 42, 0.24);
	border-radius: 999px;
	color: var(--uhc-accent);
	font-size: 0.68rem;
	min-width: 38px;
	padding: 0.28rem 0.4rem;
	text-align: center;
}

.uhc-team-match__meta {
	align-items: center;
	background: rgba(18, 75, 145, 0.14);
	border-left: 1px solid rgba(255, 255, 255, 0.1);
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 0.7rem;
	text-align: center;
}

.uhc-team-match__meta strong {
	color: var(--uhc-accent);
	font-size: 0.82rem;
}

.uhc-team-match__meta span {
	color: rgba(255, 255, 255, 0.78);
	display: -webkit-box;
	font-size: 0.62rem;
	line-height: 1.3;
	margin-top: 0.25rem;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.uhc-team-button {
	background: var(--uhc-accent);
	background: linear-gradient(180deg, color-mix(in srgb, var(--uhc-accent) 88%, #fff), var(--uhc-accent));
	border: 1px solid var(--uhc-accent);
	border-radius: 3px;
	color: #071006 !important;
	display: inline-flex;
	font-size: 0.72rem;
	font-weight: 900;
	justify-content: center;
	letter-spacing: 0.035em;
	padding: 0.78rem 1.35rem;
	text-decoration: none !important;
	text-transform: uppercase;
	transition: filter 160ms ease, transform 160ms ease;
}

.uhc-team-button:hover {
	filter: brightness(1.08);
	transform: translateY(-1px);
}

.uhc-team-button.is-outline {
	background: rgba(0, 0, 0, 0.28);
	border-color: rgba(255, 255, 255, 0.78);
	color: #fff !important;
	min-width: 190px;
}

.uhc-team-ranking-wrap {
	overflow-x: auto;
}

.uhc-team-ranking {
	border-collapse: collapse;
	color: #fff;
	font-size: 0.78rem;
	margin: 0;
	min-width: 520px;
	width: 100%;
}

.uhc-team-ranking th,
.uhc-team-ranking td {
	border: 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
	padding: 0.72rem 0.55rem;
	text-align: center;
}

.uhc-team-ranking thead th {
	color: rgba(255, 255, 255, 0.72);
	font-size: 0.65rem;
	font-weight: 850;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.uhc-team-ranking thead th:nth-child(2),
.uhc-team-ranking tbody th {
	text-align: left;
}

.uhc-team-ranking tbody th {
	color: #fff;
	font-weight: 700;
}

.uhc-team-ranking tr.is-selected > * {
	background: color-mix(in srgb, var(--uhc-accent) 24%, transparent);
	color: #fff;
}

.uhc-team-ranking tr.is-selected > :first-child {
	box-shadow: inset 3px 0 0 var(--uhc-accent);
}

.uhc-team-empty {
	align-items: center;
	border: 1px dashed rgba(118, 184, 42, 0.4);
	color: rgba(255, 255, 255, 0.7);
	display: flex;
	font-size: 0.85rem;
	justify-content: center;
	margin-bottom: 1.3rem;
	min-height: 150px;
	padding: 1.5rem;
	text-align: center;
}

/* Les thèmes de blocs ajoutent souvent un espace blanc entre deux blocs de
   code court. Les matchs et le bandeau de contact forment ici une seule suite
   visuelle : on neutralise uniquement l'espace entre ces deux composants. */
.uhc-team-page--sports-only,
.uhc-team-page--contact,
.uhc-team-page--banner-only,
.uhc-team-page--presentation-only,
.uhc-team-page-auto {
	margin-block: 0 !important;
}

.uhc-team-page-auto > .uhc-team-page {
	background: transparent !important;
	margin-block: 0 !important;
}

/* Le code court général porte un seul décor continu, inspiré de l'en-tête
   Matchs & Résultats. Les sections intérieures restent transparentes afin
   qu'aucune nouvelle ligne de dégradé n'apparaisse entre elles. */
.uhc-team-page-auto {
	background:
		linear-gradient(115deg, rgba(0, 0, 0, 0.97) 0 43%, rgba(0, 0, 0, 0.42) 70%, transparent),
		radial-gradient(ellipse at 82% 38%, rgba(118, 184, 42, 0.23), transparent 25%),
		linear-gradient(90deg, #020914 0%, #071a31 52%, #124b91 100%);
}

.uhc-team-page-auto .uhc-team-page--presentation-only .uhc-team-intro,
.uhc-team-page-auto .uhc-team-sport--standalone,
.uhc-team-page-auto .uhc-team-cta {
	background: transparent;
}

.uhc-team-page-auto .uhc-team-sport--standalone::after {
	display: none;
}

.uhc-team-page--sports-only + .uhc-team-page--contact,
.wp-block-shortcode:has(.uhc-team-page--sports-only) + .wp-block-shortcode:has(.uhc-team-page--contact),
.entry-content > .wp-block-shortcode:has(.uhc-team-page--sports-only) + .wp-block-shortcode:has(.uhc-team-page--contact) {
	margin-block-start: 0 !important;
	margin-top: 0 !important;
}

.wp-block-shortcode:has(.uhc-team-page--sports-only) {
	margin-block-end: 0 !important;
	margin-bottom: 0 !important;
}

.wp-block-shortcode:has(.uhc-team-page--contact) {
	margin-block-start: 0 !important;
	margin-top: 0 !important;
}

.wp-block-shortcode:has(.uhc-team-page--banner-only),
.wp-block-shortcode:has(.uhc-team-page--presentation-only) {
	margin-block: 0 !important;
	margin-bottom: 0 !important;
	margin-top: 0 !important;
}

.uhc-team-page--banner-only + .uhc-team-page--presentation-only,
.uhc-team-page--presentation-only + .uhc-team-page--sports-only,
.wp-block-shortcode:has(.uhc-team-page--banner-only) + .wp-block-shortcode:has(.uhc-team-page--presentation-only),
.wp-block-shortcode:has(.uhc-team-page--presentation-only) + .wp-block-shortcode:has(.uhc-team-page--sports-only) {
	margin-block-start: 0 !important;
	margin-top: 0 !important;
}

.uhc-team-cta {
	background:
		linear-gradient(115deg, rgba(0, 0, 0, 0.97) 0 43%, rgba(0, 0, 0, 0.42) 70%, transparent),
		radial-gradient(circle at 82% 38%, rgba(118, 184, 42, 0.24), transparent 23%),
		linear-gradient(135deg, #020914, #124b91);
	color: #fff;
	padding: clamp(28px, 4vw, 52px) 0;
	position: relative;
}

.uhc-team-cta::after {
	background: linear-gradient(135deg, transparent 55%, rgba(255, 255, 255, 0.09));
	content: "";
	inset: 0;
	mask-image: linear-gradient(to bottom, transparent 0%, transparent 18%, #000 68%);
	pointer-events: none;
	position: absolute;
	-webkit-mask-image: linear-gradient(to bottom, transparent 0%, transparent 18%, #000 68%);
}

.uhc-team-cta__inner {
	align-items: center;
	display: flex;
	gap: 2rem;
	justify-content: space-between;
	position: relative;
	z-index: 1;
}

.uhc-team-cta h2 {
	color: var(--uhc-accent);
	font-size: clamp(1.55rem, 3.4vw, 2.8rem);
	font-style: italic;
	font-weight: 950;
	letter-spacing: -0.035em;
	line-height: 1;
	margin: 0 0 0.65rem;
	text-transform: uppercase;
}

.uhc-team-cta p {
	font-size: clamp(0.88rem, 1.2vw, 1rem);
	margin: 0;
}

@media (max-width: 1040px) {
	.uhc-team-intro__grid,
	.uhc-team-sport__grid {
		grid-template-columns: 1fr;
	}

	.uhc-team-page--presentation-only .uhc-team-intro__grid {
		grid-template-columns: 1fr;
	}

	.uhc-team-intro__copy {
		border-bottom: 1px solid #dfe3df;
		border-right: 0;
		padding-bottom: 2rem;
		padding-right: 0;
	}
}

@media (max-width: 700px) {
	.uhc-team-hero {
		aspect-ratio: auto;
		grid-template-columns: 1fr;
		grid-template-rows: auto auto;
	}

	.uhc-team-hero::before,
	.uhc-team-hero::after {
		display: none;
	}

	.uhc-team-hero__photo {
		grid-column: 1;
		grid-row: 1;
	}

	.uhc-team-hero__photo::after {
		display: none;
	}

	.uhc-team-hero__photo > img,
	.uhc-team-page--dames .uhc-team-hero__photo > img,
	.uhc-team-page--hommes-grand .uhc-team-hero__photo > img,
	.uhc-team-page--hommes-petit .uhc-team-hero__photo > img,
	.uhc-team-page--juniors .uhc-team-hero__photo > img {
		height: auto;
		object-fit: contain;
		object-position: center;
	}

	.uhc-team-hero__copy {
		background:
			linear-gradient(165deg, transparent 0 66%, rgba(118, 184, 42, 0.2) 67% 70%, transparent 71%),
			#000;
		grid-column: 1;
		grid-row: 2;
		padding: 1.5rem 1.25rem 1.75rem;
	}

	.uhc-team-hero__copy h1 span,
	.uhc-team-hero__copy h1 strong {
		font-size: clamp(1.7rem, 9vw, 3rem);
	}

	.uhc-team-hero__season {
		font-size: 0.62rem;
		margin-top: 1rem;
	}

	.uhc-team-info {
		grid-template-columns: 1fr;
	}

	.uhc-team-info__item {
		border-bottom: 1px solid #dfe3df;
		border-right: 0;
		min-height: 0;
		padding: 1.25rem 0;
	}

	.uhc-team-info__item:last-child {
		border-bottom: 0;
	}

	.uhc-team-match {
		grid-template-columns: 56px minmax(0, 1fr);
	}

	.uhc-team-match__teams {
		padding: 0.7rem;
	}

	.uhc-team-match__teams > div {
		align-items: center;
		flex-direction: column;
		font-size: 0.62rem;
		text-align: center;
	}

	.uhc-team-match__teams > div:last-child {
		flex-direction: column;
		text-align: center;
	}

	.uhc-team-match__meta {
		align-items: flex-start;
		border-left: 0;
		border-top: 1px solid rgba(255, 255, 255, 0.1);
		grid-column: 1 / -1;
		padding: 0.55rem 0.75rem;
		text-align: left;
	}

	.uhc-team-cta__inner {
		align-items: flex-start;
		flex-direction: column;
	}
}

@media (prefers-reduced-motion: reduce) {
	.uhc-team-button,
	.uhc-team-page--presentation-only .uhc-team-info__item,
	.uhc-team-match {
		transition: none;
	}
}

/* Les requêtes de conteneur couvrent les thèmes qui placent la fiche dans une
   colonne étroite, même lorsque la fenêtre du navigateur reste large. */
@container (max-width: 1040px) {
	.uhc-team-intro__grid,
	.uhc-team-sport__grid {
		grid-template-columns: 1fr;
	}

	.uhc-team-page--presentation-only .uhc-team-intro__grid {
		grid-template-columns: 1fr;
	}

	.uhc-team-intro__copy {
		border-bottom: 1px solid #dfe3df;
		border-right: 0;
		padding-bottom: 2rem;
		padding-right: 0;
	}
}

@container (max-width: 700px) {
	.uhc-team-hero {
		aspect-ratio: auto;
		grid-template-columns: 1fr;
		grid-template-rows: auto auto;
	}

	.uhc-team-hero::before,
	.uhc-team-hero::after {
		display: none;
	}

	.uhc-team-hero__photo {
		grid-column: 1;
		grid-row: 1;
	}

	.uhc-team-hero__photo::after {
		display: none;
	}

	.uhc-team-hero__photo > img,
	.uhc-team-page--dames .uhc-team-hero__photo > img,
	.uhc-team-page--hommes-grand .uhc-team-hero__photo > img,
	.uhc-team-page--hommes-petit .uhc-team-hero__photo > img,
	.uhc-team-page--juniors .uhc-team-hero__photo > img {
		height: auto;
		object-fit: contain;
		object-position: center;
	}

	.uhc-team-hero__copy {
		background:
			linear-gradient(165deg, transparent 0 66%, rgba(118, 184, 42, 0.2) 67% 70%, transparent 71%),
			#000;
		grid-column: 1;
		grid-row: 2;
		padding: 1.5rem 1.25rem 1.75rem;
	}

	.uhc-team-hero__copy h1 span,
	.uhc-team-hero__copy h1 strong {
		font-size: clamp(1.7rem, 9vw, 3rem);
	}

	.uhc-team-hero__season {
		font-size: 0.62rem;
		margin-top: 1rem;
	}

	.uhc-team-info {
		grid-template-columns: 1fr;
	}

	.uhc-team-info__item {
		border-bottom: 1px solid #dfe3df;
		border-right: 0;
		min-height: 0;
		padding: 1.25rem 0;
	}

	.uhc-team-info__item:last-child {
		border-bottom: 0;
	}

	.uhc-team-match {
		grid-template-columns: 56px minmax(0, 1fr);
	}

	.uhc-team-match__teams {
		padding: 0.7rem;
	}

	.uhc-team-match__teams > div,
	.uhc-team-match__teams > div:last-child {
		align-items: center;
		flex-direction: column;
		font-size: 0.62rem;
		text-align: center;
	}

	.uhc-team-match__meta {
		align-items: flex-start;
		border-left: 0;
		border-top: 1px solid rgba(255, 255, 255, 0.1);
		grid-column: 1 / -1;
		padding: 0.55rem 0.75rem;
		text-align: left;
	}

	.uhc-team-cta__inner {
		align-items: flex-start;
		flex-direction: column;
	}
}

/* Page d'accueil du club. Le visuel du hero est volontairement construit
   uniquement en CSS : aucune photo ni personne n'est affichée dans cette zone. */
body.uhc-canvas-template {
	background: #020914;
	margin: 0;
	padding: 0;
}

.uhc-canvas-site,
.uhc-canvas-main,
.uhc-canvas-content,
.uhc-canvas-main > article {
	margin: 0;
	max-width: none;
	padding: 0;
	width: 100%;
}

.uhc-canvas-site {
	min-height: 100vh;
}

.uhc-canvas-main {
	display: block;
}

.uhc-home,
.uhc-home * {
	box-sizing: border-box;
}

.uhc-home {
	--uhc-home-accent: var(--uhc-accent, #82c600);
	--uhc-home-accent-dark: #568d00;
	--uhc-home-bg: #020914;
	--uhc-home-bg-soft: #071426;
	--uhc-home-card: rgba(7, 22, 40, 0.94);
	--uhc-home-line: rgba(255, 255, 255, 0.16);
	--uhc-home-muted: #b5c0ce;
	--uhc-home-text: #ffffff;
	background: var(--uhc-home-bg);
	color: var(--uhc-home-text);
	container-type: inline-size;
	font-family: "Arial Narrow", "Roboto Condensed", Arial, sans-serif;
	line-height: 1.5;
	margin: 0;
	overflow: hidden;
	overflow: clip;
	width: 100%;
}

.uhc-home__hero {
	background:
		radial-gradient(circle at 82% 18%, rgba(40, 105, 174, 0.32), transparent 28rem),
		linear-gradient(112deg, #020712 0%, #06162b 58%, #071c35 100%);
	border-bottom: 1px solid var(--uhc-home-line);
	isolation: isolate;
	min-height: clamp(430px, 57vw, 670px);
	overflow: hidden;
	position: relative;
}

.uhc-home__hero::before,
.uhc-home__hero::after {
	content: "";
	pointer-events: none;
	position: absolute;
}

.uhc-home__hero::before {
	background:
		linear-gradient(132deg, transparent 0 56%, rgba(130, 198, 0, 0.13) 56.2% 56.8%, transparent 57%),
		repeating-linear-gradient(145deg, transparent 0 26px, rgba(255, 255, 255, 0.018) 27px 28px);
	inset: 0;
	z-index: -2;
}

.uhc-home__hero::after {
	background: var(--uhc-home-accent);
	clip-path: polygon(4% 37%, 96% 0, 72% 47%, 100% 58%, 20% 100%, 35% 58%, 0 53%);
	filter: blur(1px);
	height: min(28vw, 290px);
	opacity: 0.11;
	right: -8%;
	top: 18%;
	transform: rotate(-8deg);
	width: min(54vw, 720px);
	z-index: -1;
}

.uhc-home__hero-inner {
	align-items: center;
	display: grid;
	gap: clamp(2rem, 6vw, 6rem);
	grid-template-columns: minmax(0, 1.25fr) minmax(280px, 0.75fr);
	margin: 0 auto;
	max-width: 1480px;
	min-height: inherit;
	padding: clamp(3.5rem, 7vw, 7rem) clamp(1.25rem, 4vw, 4.5rem);
	width: 100%;
}

.uhc-home__hero-copy {
	max-width: 800px;
}

.uhc-home__eyebrow {
	color: var(--uhc-home-accent);
	font-size: clamp(0.76rem, 1.2vw, 0.94rem);
	font-weight: 900;
	letter-spacing: 0.16em;
	margin: 0 0 0.85rem;
	text-transform: uppercase;
}

.uhc-home__hero-copy h1 {
	color: #fff;
	font-size: clamp(3rem, 7vw, 7rem);
	font-stretch: condensed;
	font-style: italic;
	font-weight: 950;
	letter-spacing: -0.055em;
	line-height: 0.88;
	margin: 0;
	max-width: 11ch;
	text-shadow: 0 8px 28px rgba(0, 0, 0, 0.38);
	text-transform: uppercase;
}

.uhc-home__hero-copy h1 strong,
.uhc-home__hero-copy h1 em {
	color: var(--uhc-home-accent);
	font: inherit;
}

.uhc-home__hero-copy > p:not(.uhc-home__eyebrow) {
	color: var(--uhc-home-muted);
	font-family: Arial, sans-serif;
	font-size: clamp(1rem, 1.8vw, 1.25rem);
	margin: 1.35rem 0 0;
	max-width: 42rem;
}

.uhc-home__hero-points {
	display: flex;
	flex-wrap: wrap;
	gap: 0.6rem 1.8rem;
	list-style: none;
	margin: 1.5rem 0 0;
	padding: 0;
}

.uhc-home__hero-copy > .uhc-home__hero-points {
	margin: 1.5rem 0 0;
}

.uhc-home__hero-points li,
.uhc-home__hero-points span {
	align-items: center;
	color: #f6f8fb;
	display: inline-flex;
	font-size: clamp(0.8rem, 1.3vw, 0.95rem);
	font-weight: 850;
	letter-spacing: 0.055em;
	text-transform: uppercase;
}

.uhc-home__hero-points li::before,
.uhc-home__hero-points span::before {
	background: var(--uhc-home-accent);
	border-radius: 50%;
	content: "";
	height: 0.48rem;
	margin-right: 0.7rem;
	width: 0.48rem;
}

.uhc-home__hero-callout {
	align-self: center;
	background: linear-gradient(145deg, rgba(9, 32, 56, 0.96), rgba(3, 15, 29, 0.96));
	border: 1px solid rgba(130, 198, 0, 0.52);
	box-shadow: 0 24px 70px rgba(0, 0, 0, 0.34);
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 280px;
	padding: clamp(1.5rem, 3vw, 2.5rem);
	position: relative;
	transform: rotate(-1deg);
}

.uhc-home__hero-callout::before {
	background: var(--uhc-home-accent);
	content: "";
	height: 4px;
	left: 0;
	position: absolute;
	top: 0;
	width: 38%;
}

.uhc-home__hero-callout > span {
	color: #fff;
	font-size: clamp(0.82rem, 1.4vw, 1rem);
	font-style: italic;
	font-weight: 900;
	letter-spacing: 0.08em;
	line-height: 1.5;
	text-transform: uppercase;
}

.uhc-home__hero-callout > strong {
	color: var(--uhc-home-accent);
	display: block;
	font-size: clamp(2rem, 4.4vw, 4rem);
	font-style: italic;
	font-weight: 950;
	letter-spacing: -0.045em;
	line-height: 0.91;
	margin-top: 1rem;
	text-shadow: 0 8px 22px rgba(0, 0, 0, 0.38);
	text-transform: uppercase;
}

.uhc-home__actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	margin-top: 2rem;
}

.uhc-home__button {
	align-items: center;
	background: var(--uhc-home-accent);
	border: 2px solid var(--uhc-home-accent);
	border-radius: 4px;
	color: #07101c;
	display: inline-flex;
	font-size: 0.83rem;
	font-weight: 950;
	justify-content: center;
	letter-spacing: 0.045em;
	line-height: 1.2;
	min-height: 48px;
	padding: 0.8rem 1.4rem;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.uhc-home__button:hover {
	background: #9fe11d;
	border-color: #9fe11d;
	color: #020914;
	transform: translateY(-2px);
}

.uhc-home__button.is-outline {
	background: transparent;
	color: #fff;
}

.uhc-home__button.is-outline:hover {
	background: rgba(130, 198, 0, 0.12);
	color: #fff;
}

.uhc-home__button:focus-visible,
.uhc-home__team-card:focus-visible,
.uhc-home__news-item:focus-visible {
	outline: 3px solid #fff;
	outline-offset: 4px;
}

.uhc-home__hero-inner > .uhc-home__join {
	align-self: center;
	background: linear-gradient(145deg, rgba(9, 32, 56, 0.96), rgba(3, 15, 29, 0.96));
	border: 1px solid rgba(130, 198, 0, 0.52);
	box-shadow: 0 24px 70px rgba(0, 0, 0, 0.34);
	padding: clamp(1.5rem, 3vw, 2.5rem);
	position: relative;
}

.uhc-home__hero-inner > .uhc-home__join::before {
	background: var(--uhc-home-accent);
	content: "";
	height: 4px;
	left: 0;
	position: absolute;
	top: 0;
	width: 38%;
}

.uhc-home__join h2,
.uhc-home__join h3 {
	color: #fff;
	font-size: clamp(1.7rem, 3vw, 2.55rem);
	font-style: italic;
	font-weight: 950;
	letter-spacing: -0.035em;
	line-height: 0.98;
	margin: 0;
	text-transform: uppercase;
}

.uhc-home__join h2 strong,
.uhc-home__join h3 strong {
	color: var(--uhc-home-accent);
}

.uhc-home__join p {
	color: var(--uhc-home-muted);
	font-family: Arial, sans-serif;
	font-size: 0.94rem;
	margin: 1rem 0 1.25rem;
}

.uhc-home__dashboard {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin: 0 auto;
	max-width: 1480px;
	padding: clamp(1.25rem, 3vw, 2.5rem) clamp(1.25rem, 4vw, 4.5rem);
	position: relative;
	z-index: 2;
}

.uhc-home__panel {
	background: var(--uhc-home-card);
	border: 1px solid var(--uhc-home-line);
	box-shadow: 0 14px 34px rgba(0, 0, 0, 0.24);
	min-width: 0;
	padding: clamp(1.15rem, 2.2vw, 1.8rem);
}

.uhc-home__panel-heading,
.uhc-home__section-heading {
	align-items: end;
	display: flex;
	gap: 0.9rem;
	justify-content: space-between;
	margin-bottom: 1.2rem;
}

.uhc-home__panel-heading h2,
.uhc-home__panel-heading h3,
.uhc-home__section-heading h2 {
	color: var(--uhc-home-accent);
	font-size: clamp(1.05rem, 2vw, 1.4rem);
	font-weight: 950;
	letter-spacing: 0.035em;
	line-height: 1.05;
	margin: 0;
	text-transform: uppercase;
}

.uhc-home__panel-heading::after,
.uhc-home__section-heading::after {
	background: var(--uhc-home-line);
	content: "";
	flex: 1;
	height: 1px;
}

.uhc-home__panel-heading > span {
	color: var(--uhc-home-muted);
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.07em;
	order: 2;
	text-transform: uppercase;
}

.uhc-home__panel > .uhc-home__button {
	margin-top: 1.25rem;
	width: 100%;
}

.uhc-home__next {
	display: grid;
	gap: 1rem;
	grid-template-columns: minmax(68px, 0.24fr) minmax(0, 1fr);
}

.uhc-home__match-date {
	align-items: center;
	border-right: 1px solid var(--uhc-home-line);
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding-right: 1rem;
	text-align: center;
	text-transform: uppercase;
}

.uhc-home__match-date strong {
	color: var(--uhc-home-accent);
	font-size: clamp(2rem, 4vw, 3.4rem);
	font-weight: 950;
	line-height: 0.95;
}

.uhc-home__match-date span,
.uhc-home__match-date time,
.uhc-home__match-date small {
	color: #fff;
	font-size: 0.72rem;
	font-weight: 850;
	letter-spacing: 0.08em;
}

.uhc-home__match-teams {
	display: grid;
	gap: 0.45rem;
	min-width: 0;
}

.uhc-home__match-teams > b {
	color: var(--uhc-home-accent);
	font-size: 0.66rem;
	font-weight: 950;
	justify-self: center;
	letter-spacing: 0.09em;
}

.uhc-home__match-team {
	align-items: center;
	display: grid;
	font-size: 0.8rem;
	font-weight: 850;
	gap: 0.7rem;
	grid-template-columns: 42px minmax(0, 1fr);
	line-height: 1.2;
	min-width: 0;
	text-transform: uppercase;
}

.uhc-home__match-logo {
	background: #fff;
	border-radius: 50%;
	height: 42px;
	object-fit: contain;
	padding: 0.25rem;
	width: 42px;
}

.uhc-home__match-meta {
	border-top: 1px solid var(--uhc-home-line);
	color: var(--uhc-home-muted);
	font-family: Arial, sans-serif;
	font-size: 0.78rem;
	grid-column: 1 / -1;
	margin-top: 0.6rem;
	padding-top: 0.7rem;
}

.uhc-home__empty {
	align-items: center;
	border: 1px dashed rgba(255, 255, 255, 0.24);
	color: var(--uhc-home-muted);
	display: flex;
	font-family: Arial, sans-serif;
	font-size: 0.9rem;
	justify-content: center;
	min-height: 132px;
	padding: 1rem;
	text-align: center;
}

.uhc-home__news-list {
	display: grid;
	gap: 0;
}

.uhc-home__news-item {
	align-items: center;
	border-bottom: 1px solid var(--uhc-home-line);
	color: #fff;
	display: grid;
	gap: 0.85rem;
	grid-template-columns: 88px minmax(0, 1fr);
	padding: 0.7rem 0;
	text-decoration: none;
}

.uhc-home__news-item:first-child {
	padding-top: 0;
}

.uhc-home__news-item:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}

.uhc-home__news-thumb {
	background: #0d2138;
	height: 58px;
	overflow: hidden;
	width: 88px;
}

.uhc-home__news-thumb img {
	height: 100%;
	object-fit: cover;
	transition: transform 200ms ease;
	width: 100%;
}

.uhc-home__news-item:hover .uhc-home__news-thumb img {
	transform: scale(1.045);
}

.uhc-home__news-copy {
	min-width: 0;
}

.uhc-home__news-copy:first-child {
	grid-column: 1 / -1;
}

.uhc-home__news-copy time {
	color: var(--uhc-home-accent);
	font-size: 0.68rem;
	font-weight: 850;
	letter-spacing: 0.055em;
}

.uhc-home__news-copy h3 {
	font-size: 0.88rem;
	line-height: 1.25;
	margin: 0.2rem 0 0;
}

.uhc-home__news-copy h3 a {
	color: #fff;
	text-decoration: none;
}

.uhc-home__news-copy h3 a:hover {
	color: var(--uhc-home-accent);
}

.uhc-home__news-copy h3 a:focus-visible {
	outline: 3px solid var(--uhc-home-accent);
	outline-offset: 3px;
}

.uhc-home__news-copy strong {
	display: block;
	font-size: 0.9rem;
	line-height: 1.2;
}

.uhc-home__news-copy span,
.uhc-home__news-copy p {
	color: var(--uhc-home-muted);
	font-family: Arial, sans-serif;
	font-size: 0.76rem;
	line-height: 1.35;
	margin: 0.25rem 0 0;
}

.uhc-home__news-item:hover .uhc-home__news-copy strong {
	color: var(--uhc-home-accent);
}

.uhc-home__dashboard > .uhc-home__join {
	background:
		linear-gradient(145deg, rgba(18, 62, 102, 0.68), rgba(4, 18, 34, 0.98)),
		var(--uhc-home-card);
	border: 1px solid rgba(130, 198, 0, 0.42);
	box-shadow: 0 14px 34px rgba(0, 0, 0, 0.24);
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-width: 0;
	padding: clamp(1.3rem, 2.6vw, 2.2rem);
}

.uhc-home__teams-section {
	background: #f4f6f3;
	color: #101820;
	padding: clamp(3.25rem, 7vw, 6rem) clamp(1.25rem, 4vw, 4.5rem);
}

.uhc-home__teams-section > * {
	margin-left: auto;
	margin-right: auto;
	max-width: 1390px;
}

.uhc-home__teams-section .uhc-home__section-heading {
	margin-bottom: 1.7rem;
}

.uhc-home__teams-section .uhc-home__section-heading h2 {
	color: #12202d;
	font-size: clamp(1.6rem, 3vw, 2.5rem);
}

.uhc-home__teams-section .uhc-home__section-heading::after {
	background: #d4dad2;
}

.uhc-home__teams-section .uhc-home__section-heading > p {
	color: #64707a;
	font-family: Arial, sans-serif;
	font-size: 0.86rem;
	margin: 0;
	max-width: 31rem;
	text-align: right;
}

.uhc-home__team-grid {
	display: grid;
	gap: 1.1rem;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.uhc-home__team-card {
	background: #fff;
	border: 1px solid #dce2db;
	box-shadow: 0 12px 32px rgba(9, 25, 38, 0.09);
	color: #13202c;
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
	position: relative;
	text-decoration: none;
	transition: box-shadow 180ms ease, transform 180ms ease;
}

.uhc-home__team-card:hover {
	box-shadow: 0 19px 42px rgba(9, 25, 38, 0.17);
	transform: translateY(-4px);
}

.uhc-home__team-card:focus-visible {
	box-shadow: 0 0 0 5px rgba(118, 184, 42, 0.32), 0 19px 42px rgba(9, 25, 38, 0.17);
	outline: 4px solid #315d00;
	outline-offset: 3px;
}

.uhc-home__team-photo {
	background: #06111e;
	height: clamp(175px, 16vw, 245px);
	overflow: hidden;
	position: relative;
}

.uhc-home__team-photo::after {
	background: linear-gradient(90deg, rgba(2, 9, 20, 0.2), transparent 38%);
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
}

.uhc-home__team-photo img {
	display: block;
	height: 100%;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

.uhc-home__team-card--dames .uhc-home__team-photo img {
	object-position: center 34%;
}

.uhc-home__team-card--hommes-grand .uhc-home__team-photo img {
	object-position: center 38%;
}

.uhc-home__team-card--hommes-petit .uhc-home__team-photo img {
	object-position: center 34%;
}

.uhc-home__team-card--juniors .uhc-home__team-photo img {
	object-position: center 48%;
}

.uhc-home__team-content {
	border-top: 4px solid var(--uhc-home-accent);
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 1.1rem 1.2rem 1.25rem;
}

.uhc-home__team-content h3,
.uhc-home__team-content > strong {
	font-size: 1.12rem;
	font-weight: 950;
	letter-spacing: 0.015em;
	line-height: 1.08;
	margin: 0;
	text-transform: uppercase;
}

.uhc-home__team-content p,
.uhc-home__team-content > small {
	color: #5f6c76;
	display: block;
	font-family: Arial, sans-serif;
	font-size: 0.82rem;
	margin: 0.45rem 0 0;
}

.uhc-home__team-content > span {
	align-items: center;
	align-self: flex-end;
	background: var(--uhc-home-accent);
	border-radius: 50%;
	color: #07101c;
	display: inline-flex;
	font-size: 1.1rem;
	font-weight: 950;
	height: 2rem;
	justify-content: center;
	margin-top: auto;
	width: 2rem;
}

.uhc-home__values {
	background: #061325;
	display: grid;
	gap: 0;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin: 0;
	padding: 0 clamp(1.25rem, 4vw, 4.5rem);
}

.uhc-home__value {
	align-items: center;
	border-right: 1px solid var(--uhc-home-line);
	display: grid;
	gap: 0.3rem 1rem;
	grid-template-columns: 46px minmax(0, 1fr);
	min-height: 128px;
	padding: 1.6rem clamp(1rem, 3vw, 2.7rem);
}

.uhc-home__value:last-child {
	border-right: 0;
}

.uhc-home__value > svg,
.uhc-home__value > img {
	color: var(--uhc-home-accent);
	grid-row: 1 / span 2;
	height: 40px;
	object-fit: contain;
	width: 40px;
}

.uhc-home__value strong {
	color: var(--uhc-home-accent);
	font-size: 0.91rem;
	font-weight: 950;
	letter-spacing: 0.035em;
	text-transform: uppercase;
}

.uhc-home__value span,
.uhc-home__value p {
	color: #fff;
	font-family: Arial, sans-serif;
	font-size: 0.8rem;
	margin: 0;
}

@media (max-width: 1100px) {
	.uhc-home__hero-inner {
		grid-template-columns: minmax(0, 1fr) minmax(250px, 0.6fr);
	}

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

	.uhc-home__dashboard > .uhc-home__join {
		grid-column: 1 / -1;
	}

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

	.uhc-home__team-photo {
		height: clamp(190px, 28vw, 290px);
	}

}

@media (max-width: 760px) {
	.uhc-home__hero {
		min-height: 0;
	}

	.uhc-home__hero-inner {
		grid-template-columns: 1fr;
		padding-bottom: 3.25rem;
		padding-top: 3.25rem;
	}

	.uhc-home__hero-callout {
		min-height: 0;
		transform: none;
	}

	.uhc-home__hero-copy h1 {
		font-size: clamp(2.9rem, 15vw, 5.2rem);
	}

	.uhc-home__dashboard {
		grid-template-columns: 1fr;
	}

	.uhc-home__dashboard > .uhc-home__join {
		grid-column: auto;
	}

	.uhc-home__values {
		grid-template-columns: 1fr;
		padding-bottom: 0.5rem;
		padding-top: 0.5rem;
	}

	.uhc-home__value {
		border-bottom: 1px solid var(--uhc-home-line);
		border-right: 0;
		min-height: 104px;
	}

	.uhc-home__value:last-child {
		border-bottom: 0;
	}
}

@media (max-width: 520px) {
	.uhc-home__actions {
		align-items: stretch;
		flex-direction: column;
	}

	.uhc-home__button {
		width: 100%;
	}

	.uhc-home__hero-points {
		align-items: flex-start;
		flex-direction: column;
	}

	.uhc-home__teams-section .uhc-home__section-heading {
		align-items: flex-start;
		flex-direction: column;
	}

	.uhc-home__teams-section .uhc-home__section-heading::after {
		display: none;
	}

	.uhc-home__teams-section .uhc-home__section-heading > p {
		text-align: left;
	}

	.uhc-home__team-grid {
		grid-template-columns: 1fr;
	}

	.uhc-home__team-photo {
		height: clamp(190px, 61vw, 280px);
	}

	.uhc-home__next {
		grid-template-columns: 62px minmax(0, 1fr);
	}

	.uhc-home__match-date {
		padding-right: 0.7rem;
	}

	.uhc-home__match-team {
		font-size: 0.72rem;
		grid-template-columns: 36px minmax(0, 1fr);
	}

	.uhc-home__match-logo {
		height: 36px;
		width: 36px;
	}
}

@container (max-width: 760px) {
	.uhc-home__hero-inner,
	.uhc-home__dashboard {
		grid-template-columns: 1fr;
	}

	.uhc-home__dashboard > .uhc-home__join {
		grid-column: auto;
	}

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

@container (max-width: 520px) {
	.uhc-home__team-grid,
	.uhc-home__values {
		grid-template-columns: 1fr;
	}

	.uhc-home__value {
		border-bottom: 1px solid var(--uhc-home-line);
		border-right: 0;
	}
}

@media (prefers-reduced-motion: reduce) {
	.uhc-home__button,
	.uhc-home__news-thumb img,
	.uhc-home__team-card,
	.uhc-home__team-photo img {
		transition: none;
	}

	.uhc-home__button:hover,
	.uhc-home__team-card:hover {
		transform: none;
	}
}

@media (forced-colors: active) {
	.uhc-home__button,
	.uhc-home__panel,
	.uhc-home__team-card {
		border: 2px solid CanvasText;
	}
}

/* École d'unihockey : visuel CSS lorsque le groupe ne possède pas encore de
   photo officielle. Aucun autre portrait d'équipe n'est réutilisé. */
.uhc-team-hero--no-photo .uhc-team-hero__photo {
	align-items: center;
	background:
		radial-gradient(circle at 72% 38%, rgba(118, 184, 42, 0.36), transparent 24%),
		linear-gradient(135deg, #071a31, #124b91 55%, #06101d);
	display: flex;
	justify-content: center;
}

.uhc-team-hero--no-photo .uhc-team-hero__photo::before {
	background: repeating-linear-gradient(155deg, transparent 0 27px, rgba(255, 255, 255, 0.07) 28px 30px);
	content: "";
	inset: 0;
	position: absolute;
}

.uhc-team-hero__school-mark,
.uhc-home__school-symbol {
	align-items: center;
	display: flex;
	gap: 1rem;
	position: relative;
	z-index: 1;
}

.uhc-team-hero__school-mark b,
.uhc-home__school-symbol b {
	color: var(--uhc-accent);
	font-size: clamp(3rem, 7vw, 7rem);
	font-style: italic;
	font-weight: 950;
	letter-spacing: -0.08em;
	line-height: 0.8;
}

.uhc-team-hero__school-mark span,
.uhc-home__school-symbol span {
	border-left: 4px solid var(--uhc-accent);
	color: #fff;
	font-size: clamp(1.15rem, 2.2vw, 2.2rem);
	font-weight: 900;
	line-height: 0.95;
	padding-left: 1rem;
	text-transform: uppercase;
}

.uhc-team-school-note {
	max-width: 920px;
	padding-bottom: clamp(2.5rem, 6vw, 5rem);
	padding-top: clamp(2.5rem, 6vw, 5rem);
}

.uhc-team-school-note__eyebrow {
	color: var(--uhc-accent);
	font-size: 0.78rem;
	font-weight: 900;
	letter-spacing: 0.12em;
	margin: 0 0 0.7rem;
	text-transform: uppercase;
}

.uhc-team-school-note > p:last-child {
	color: #d9e1e8;
	font-size: clamp(0.95rem, 1.4vw, 1.12rem);
	line-height: 1.7;
	margin: 0;
}

.uhc-home__team-grid {
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
}

.uhc-home__team-photo--placeholder {
	align-items: center;
	background:
		radial-gradient(circle at 75% 30%, rgba(118, 184, 42, 0.34), transparent 27%),
		linear-gradient(135deg, #071a31, #124b91 62%, #06101d);
	display: flex;
	justify-content: center;
	padding: 1.25rem;
}

.uhc-home__school-symbol {
	gap: 0.65rem;
}

.uhc-home__school-symbol b {
	font-size: clamp(2.4rem, 4vw, 4.2rem);
}

.uhc-home__school-symbol span {
	font-size: clamp(0.9rem, 1.35vw, 1.25rem);
}

/* Page Matchs et résultats de toutes les équipes. */
.uhc-matches-page {
	--uhc-page-black: #020914;
	--uhc-page-blue: var(--uhc-primary, #124b91);
	--uhc-page-green: var(--uhc-accent, #76b82a);
	background: #eef2f5;
	color: #101820;
	container-type: inline-size;
	font-family: inherit;
	overflow: hidden;
	width: 100%;
}

.uhc-matches-page,
.uhc-matches-page *,
.uhc-history,
.uhc-history *,
.uhc-committee,
.uhc-committee * {
	box-sizing: border-box;
}

.uhc-matches-page__hero,
.uhc-club-page-hero {
	background:
		linear-gradient(115deg, rgba(0, 0, 0, 0.97) 0 43%, rgba(0, 0, 0, 0.42) 70%, transparent),
		radial-gradient(circle at 82% 38%, rgba(118, 184, 42, 0.27), transparent 23%),
		linear-gradient(135deg, #020914, #124b91);
	color: #fff;
	min-height: clamp(290px, 35vw, 500px);
	padding: clamp(3rem, 8vw, 7rem) clamp(1.25rem, 7vw, 7rem);
	position: relative;
}

/* Logo officiel du club avec un relief 3D, sans modifier son image. */
.uhc-page-hero--with-logo {
	--uhc-hero-copy-width: min(62%, 800px);
	isolation: isolate;
	overflow: hidden;
}

.uhc-page-hero--with-logo > p,
.uhc-page-hero--with-logo > h1,
.uhc-page-hero--with-logo > h2,
.uhc-page-hero--with-logo > span:not(.uhc-page-hero__logo-mark):not(.uhc-page-hero__logo-halo):not(.uhc-page-hero__logo-base) {
	position: relative;
	z-index: 3;
}

.uhc-page-hero__logo {
	align-items: center;
	display: flex;
	height: clamp(230px, 28vw, 430px);
	justify-content: center;
	perspective: 1100px;
	pointer-events: none;
	position: absolute;
	right: clamp(1.5rem, 7vw, 7rem);
	top: 50%;
	transform: translateY(-50%);
	width: clamp(190px, 24vw, 370px);
	z-index: 2;
}

.uhc-page-hero__logo-halo {
	background: radial-gradient(circle, rgba(118, 184, 42, 0.25) 0, rgba(18, 75, 145, 0.2) 38%, transparent 72%);
	filter: blur(12px);
	inset: 4%;
	position: absolute;
	transform: rotate(-9deg) scale(1.12);
}

.uhc-page-hero__logo-mark {
	display: block;
	max-height: 88%;
	position: relative;
	transform: rotateY(-13deg) rotateX(4deg) translateZ(38px);
	transform-style: preserve-3d;
	width: 100%;
	z-index: 2;
}

.uhc-page-hero__logo-image {
	display: block;
	filter:
		drop-shadow(3px 3px 0 rgba(1, 9, 18, 0.95))
		drop-shadow(5px 6px 0 rgba(8, 37, 66, 0.9))
		drop-shadow(11px 15px 10px rgba(0, 0, 0, 0.62))
		drop-shadow(0 0 18px rgba(118, 184, 42, 0.28));
	height: auto;
	margin: auto;
	max-height: 380px;
	max-width: 100%;
	object-fit: contain;
	width: auto;
}

.uhc-page-hero__logo-base {
	background: radial-gradient(ellipse, rgba(0, 0, 0, 0.62), rgba(18, 75, 145, 0.16) 48%, transparent 72%);
	bottom: 3%;
	filter: blur(7px);
	height: 13%;
	position: absolute;
	transform: rotate(-3deg);
	width: 78%;
	z-index: 1;
}

.uhc-matches-page__hero::after,
.uhc-club-page-hero::after {
	background: var(--uhc-page-green, var(--uhc-accent, #76b82a));
	bottom: 0;
	content: "";
	height: 6px;
	left: 0;
	position: absolute;
	width: min(42%, 620px);
}

.uhc-matches-page__hero > p,
.uhc-club-page-hero > p {
	color: var(--uhc-page-green, var(--uhc-accent, #76b82a));
	font-size: clamp(0.72rem, 1.2vw, 0.95rem);
	font-weight: 950;
	letter-spacing: 0.16em;
	margin: 0 0 1rem;
	max-width: var(--uhc-hero-copy-width, none);
	text-transform: uppercase;
}

.uhc-matches-page__hero h1,
.uhc-matches-page__hero > h2,
.uhc-club-page-hero h1,
.uhc-club-page-hero > h2 {
	color: #fff !important;
	font-size: clamp(2.65rem, 7vw, 6.8rem);
	font-style: italic;
	font-weight: 950;
	letter-spacing: -0.06em;
	line-height: 0.88;
	margin: 0;
	max-width: var(--uhc-hero-copy-width, 900px);
	text-transform: uppercase;
}

.uhc-matches-page__hero h1 strong,
.uhc-matches-page__hero > h2 strong,
.uhc-club-page-hero h1 strong,
.uhc-club-page-hero > h2 strong {
	color: var(--uhc-page-green, var(--uhc-accent, #76b82a)) !important;
	display: block;
}

.uhc-matches-page__hero > span,
.uhc-club-page-hero > span {
	color: #d9e4ef;
	display: block;
	font-size: clamp(0.9rem, 1.5vw, 1.1rem);
	line-height: 1.6;
	margin-top: 1.5rem;
	max-width: var(--uhc-hero-copy-width, 720px);
}

.uhc-matches-page__nav {
	align-items: center;
	background: #fff;
	border-bottom: 1px solid #dbe2e8;
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
	justify-content: center;
	padding: 1rem clamp(1rem, 4vw, 3rem);
}

.uhc-matches-page__nav a {
	background: #eef3f6;
	border: 1px solid #cdd8df;
	border-radius: 999px;
	color: #123b66;
	font-size: 0.76rem;
	font-weight: 900;
	padding: 0.65rem 1rem;
	text-decoration: none;
	text-transform: uppercase;
}

.uhc-matches-page__nav a:hover,
.uhc-matches-page__nav a:focus-visible {
	background: var(--uhc-page-blue);
	border-color: var(--uhc-page-blue);
	color: #fff;
}

.uhc-matches-page__nav a:focus-visible {
	outline: 3px solid var(--uhc-page-green);
	outline-offset: 3px;
}

.uhc-matches-page__notice {
	background: #fff5d8;
	border-left: 5px solid #d49a00;
	margin: 2rem auto 0;
	max-width: 1400px;
	padding: 1rem 1.2rem;
}

.uhc-matches-page__teams {
	display: grid;
	gap: clamp(1.5rem, 4vw, 3.5rem);
	margin: 0 auto;
	max-width: 1480px;
	padding: clamp(2rem, 5vw, 5rem) clamp(1rem, 4vw, 3.5rem);
}

.uhc-matches-page__team {
	background: #fff;
	border: 1px solid #d7e0e6;
	box-shadow: 0 18px 46px rgba(6, 28, 47, 0.1);
	scroll-margin-top: 24px;
}

.uhc-matches-page__team-heading {
	align-items: center;
	background: linear-gradient(120deg, #04101e, #0d3153);
	border-bottom: 5px solid var(--uhc-page-green);
	color: #fff;
	display: flex;
	gap: 1rem;
	justify-content: space-between;
	padding: 1.25rem clamp(1rem, 3vw, 2rem);
}

.uhc-matches-page__team-heading p {
	color: var(--uhc-page-green);
	font-size: 0.68rem;
	font-weight: 900;
	letter-spacing: 0.14em;
	margin: 0 0 0.25rem;
	text-transform: uppercase;
}

.uhc-matches-page__team-heading h2 {
	color: #fff !important;
	font-size: clamp(1.35rem, 2.5vw, 2.2rem);
	font-weight: 950;
	line-height: 1;
	margin: 0;
	text-transform: uppercase;
}

.uhc-matches-page__team-heading > span {
	background: rgba(118, 184, 42, 0.12);
	border: 1px solid rgba(118, 184, 42, 0.65);
	border-radius: 999px;
	color: #dfffae;
	font-size: 0.72rem;
	font-weight: 850;
	padding: 0.5rem 0.75rem;
	text-align: center;
}

.uhc-matches-page__columns {
	display: grid;
	gap: 1.5rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	padding: clamp(1rem, 3vw, 2rem);
}

.uhc-matches-page__column {
	min-width: 0;
}

.uhc-matches-page__column > h3 {
	color: #0e3154;
	font-size: 1.08rem;
	font-weight: 950;
	letter-spacing: 0.03em;
	margin: 0 0 1rem;
	padding-bottom: 0.7rem;
	position: relative;
	text-transform: uppercase;
}

.uhc-matches-page__column > h3::after {
	background: var(--uhc-page-green);
	bottom: 0;
	content: "";
	height: 3px;
	left: 0;
	position: absolute;
	width: 46px;
}

.uhc-matches-page__list {
	display: grid;
	gap: 0.7rem;
}

.uhc-matches-page__match {
	align-items: stretch;
	background: #f7f9fa;
	border: 1px solid #dbe3e8;
	display: grid;
	grid-template-columns: 62px minmax(0, 1fr) 88px;
	min-height: 106px;
}

.uhc-matches-page__date {
	align-items: center;
	background: #071a2d;
	color: #fff;
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-transform: uppercase;
}

.uhc-matches-page__date span,
.uhc-matches-page__date small {
	font-size: 0.62rem;
	font-weight: 800;
}

.uhc-matches-page__date strong {
	color: var(--uhc-page-green);
	font-size: 1.65rem;
	line-height: 1;
	margin: 0.18rem 0;
}

.uhc-matches-page__versus {
	align-items: center;
	display: grid;
	gap: 0.5rem;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	padding: 0.65rem;
}

.uhc-matches-page__versus > div {
	align-items: center;
	display: flex;
	flex-direction: column;
	font-size: 0.68rem;
	font-weight: 850;
	gap: 0.35rem;
	line-height: 1.15;
	min-width: 0;
	text-align: center;
}

.uhc-matches-page__versus > div span:last-child {
	overflow-wrap: anywhere;
}

.uhc-matches-page__versus > b {
	color: var(--uhc-page-blue);
	font-size: 0.86rem;
	white-space: nowrap;
}

.uhc-matches-page__logo {
	background: #fff;
	border: 1px solid #d9e1e6;
	border-radius: 50%;
	display: block;
	height: 40px;
	object-fit: contain;
	padding: 3px;
	width: 40px;
}

.uhc-matches-page__meta {
	align-items: center;
	border-left: 1px solid #dbe3e8;
	display: flex;
	flex-direction: column;
	font-size: 0.65rem;
	justify-content: center;
	padding: 0.55rem;
	text-align: center;
}

.uhc-matches-page__meta strong {
	color: var(--uhc-page-blue);
	font-size: 0.85rem;
}

.uhc-matches-page__meta span {
	color: #687580;
	margin-top: 0.25rem;
	overflow-wrap: anywhere;
}

.uhc-matches-page__empty {
	background: #f4f7f8;
	border: 1px dashed #bfccd5;
	color: #5f6d77;
	line-height: 1.55;
	padding: 1.2rem;
}

.uhc-matches-page__source {
	color: #65737e;
	font-size: 0.72rem;
	margin: 0;
	padding: 0 1rem 2.5rem;
	text-align: center;
}

.uhc-matches-page__source a {
	color: var(--uhc-page-blue);
}

/* Histoire du club et comité. */
.uhc-history,
.uhc-committee {
	--uhc-page-green: var(--uhc-accent, #76b82a);
	background: #f1f4f5;
	color: #101820;
	container-type: inline-size;
	font-family: inherit;
	overflow: hidden;
	width: 100%;
}

.uhc-history__milestones {
	padding: clamp(2.5rem, 6vw, 6rem) clamp(1rem, 4vw, 3rem);
}

.uhc-history__section-heading {
	margin: 0 auto clamp(1.75rem, 4vw, 3rem);
	max-width: 1320px;
}

.uhc-history__section-heading > p {
	color: #4f810c;
	font-size: 0.72rem;
	font-weight: 950;
	letter-spacing: 0.13em;
	margin: 0 0 0.55rem;
	text-transform: uppercase;
}

.uhc-history__section-heading h2 {
	color: #071a2d;
	font-size: clamp(2rem, 5vw, 4rem);
	font-weight: 950;
	letter-spacing: -0.045em;
	line-height: 0.95;
	margin: 0;
	text-transform: uppercase;
}

.uhc-history__section-heading h2::after {
	background: var(--uhc-page-green);
	content: "";
	display: block;
	height: 5px;
	margin-top: 0.9rem;
	width: 68px;
}

.uhc-history__section-heading > span {
	color: #5b6973;
	display: block;
	line-height: 1.65;
	margin-top: 1rem;
	max-width: 780px;
}

.uhc-history__timeline {
	display: grid;
	gap: clamp(1.75rem, 4vw, 3.75rem);
	margin: 0 auto;
	max-width: 1320px;
	position: relative;
}

.uhc-history__timeline::before {
	background: linear-gradient(var(--uhc-page-green), #124b91);
	bottom: -2rem;
	content: "";
	left: 50%;
	position: absolute;
	top: -2rem;
	width: 3px;
}

.uhc-history__item {
	background: #fff;
	border-top: 6px solid var(--uhc-page-green);
	box-shadow: 0 22px 55px rgba(5, 31, 52, 0.13);
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	min-height: clamp(390px, 42vw, 570px);
	overflow: hidden;
	position: relative;
	z-index: 1;
}

.uhc-history__item:nth-child(even) .uhc-history__media {
	order: -1;
}

.uhc-history__media {
	align-items: center;
	background:
		radial-gradient(circle at 70% 24%, rgba(118, 184, 42, 0.22), transparent 30%),
		linear-gradient(145deg, #061526, #03101c);
	display: flex;
	justify-content: center;
	min-height: 340px;
	overflow: hidden;
}

.uhc-history__media img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.uhc-history__media > span {
	color: var(--uhc-page-green);
	font-size: clamp(3rem, 8vw, 7rem);
	font-style: italic;
	font-weight: 950;
}

.uhc-history__content {
	align-self: center;
	padding: clamp(1.75rem, 4.5vw, 4rem);
}

.uhc-history__meta,
.uhc-history__season-meta {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
}

.uhc-history__meta {
	margin-bottom: 1rem;
}

.uhc-history__meta span,
.uhc-history__season-meta span {
	background: #e6f3d6;
	color: #315d00;
	font-size: 0.68rem;
	font-weight: 900;
	letter-spacing: 0.08em;
	padding: 0.42rem 0.65rem;
	text-transform: uppercase;
}

.uhc-history__meta time,
.uhc-history__season-meta time {
	color: #124b91;
	font-size: 0.85rem;
	font-weight: 950;
}

.uhc-history__content h3 {
	color: #071a2d;
	font-size: clamp(1.8rem, 4vw, 3.4rem);
	font-weight: 950;
	letter-spacing: -0.04em;
	line-height: 0.98;
	margin: 0 0 1.25rem;
	text-transform: uppercase;
}

.uhc-history__story {
	color: #55636d;
	font-size: clamp(0.95rem, 1.4vw, 1.08rem);
	line-height: 1.75;
}

.uhc-history__story > :first-child {
	margin-top: 0;
}

.uhc-history__story > :last-child {
	margin-bottom: 0;
}

/* Petites cartes des saisons, emblèmes et maillots. */
.uhc-history__seasons {
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.58), rgba(226, 233, 237, 0.92)),
		#e8edf0;
	border-top: 1px solid #d5dfe5;
	padding: clamp(1.5rem, 4vw, 3rem) clamp(1rem, 4vw, 3rem);
}

.uhc-history__season-grid {
	display: grid;
	gap: 1.25rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin: 0 auto;
	max-width: 1320px;
}

.uhc-history__season-card {
	background: #fff;
	border: 1px solid #d6e0e6;
	border-top: 5px solid var(--uhc-page-green);
	box-shadow: 0 13px 34px rgba(5, 31, 52, 0.1);
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
	position: relative;
	transition:
		box-shadow 180ms ease,
		transform 180ms ease;
}

.uhc-history__season-card:hover {
	box-shadow: 0 20px 44px rgba(5, 31, 52, 0.17);
	transform: translateY(-4px);
}

.uhc-history__season-open {
	appearance: none;
	background: transparent;
	border: 0;
	cursor: zoom-in;
	inset: 0;
	padding: 0;
	position: absolute;
	z-index: 2;
}

.uhc-history__season-open:focus-visible {
	outline: 4px solid #124b91;
	outline-offset: -7px;
}

.uhc-history__season-open .screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

.uhc-history__season-media {
	align-items: center;
	aspect-ratio: 16 / 10;
	background:
		radial-gradient(circle at 70% 25%, rgba(118, 184, 42, 0.25), transparent 30%),
		#061526;
	display: flex;
	justify-content: center;
	overflow: hidden;
}

.uhc-history__season-media img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.uhc-history__season-card--embleme .uhc-history__season-media img,
.uhc-history__season-card--maillot .uhc-history__season-media img {
	object-fit: contain;
	padding: 1rem;
}

.uhc-history__season-media > span {
	color: var(--uhc-page-green);
	font-size: clamp(2rem, 5vw, 3.7rem);
	font-style: italic;
	font-weight: 950;
}

.uhc-history__season-content {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 1.2rem;
}

.uhc-history__season-meta {
	margin-bottom: 0.8rem;
}

.uhc-history__season-meta span {
	font-size: 0.61rem;
	padding: 0.34rem 0.5rem;
}

.uhc-history__season-meta time {
	font-size: 0.78rem;
}

.uhc-history__season-content h3 {
	color: #071a2d;
	font-size: 1.2rem;
	font-weight: 950;
	letter-spacing: -0.02em;
	line-height: 1.08;
	margin: 0;
	text-transform: uppercase;
}

.uhc-history__season-content > p {
	color: #5b6973;
	font-size: 0.86rem;
	line-height: 1.6;
	margin: 0.9rem 0 0;
}

/* Fenêtre agrandie ouverte au clic sur une petite carte. */
body.uhc-history-dialog-open {
	overflow: hidden;
}

.uhc-history__dialog {
	background: #fff;
	border: 0;
	border-top: 6px solid var(--uhc-page-green, #76b82a);
	box-shadow: 0 28px 90px rgba(0, 0, 0, 0.42);
	color: #101820;
	margin: auto;
	max-height: calc(100vh - 32px);
	max-width: none;
	overflow: auto;
	padding: 0;
	width: min(1100px, calc(100vw - 32px));
}

.uhc-history__dialog::backdrop {
	background: rgba(0, 8, 16, 0.82);
	backdrop-filter: blur(5px);
}

.uhc-history__dialog.is-fallback-open {
	inset: 50% auto auto 50%;
	position: fixed;
	transform: translate(-50%, -50%);
	z-index: 999999;
}

.uhc-history__dialog-shell {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(320px, 0.8fr);
	min-height: min(680px, calc(100vh - 38px));
	position: relative;
}

.uhc-history__dialog-close {
	align-items: center;
	appearance: none;
	background: #071a2d;
	border: 2px solid #fff;
	border-radius: 50%;
	color: #fff;
	cursor: pointer;
	display: flex;
	font-size: 2rem;
	height: 46px;
	justify-content: center;
	line-height: 1;
	padding: 0 0 4px;
	position: absolute;
	right: 16px;
	top: 16px;
	width: 46px;
	z-index: 3;
}

.uhc-history__dialog-close:hover,
.uhc-history__dialog-close:focus-visible {
	background: var(--uhc-page-green, #76b82a);
	color: #071a2d;
	outline: 3px solid rgba(255, 255, 255, 0.9);
	outline-offset: 2px;
}

.uhc-history__dialog-media {
	align-items: center;
	background:
		radial-gradient(circle at 72% 24%, rgba(118, 184, 42, 0.25), transparent 31%),
		#061526;
	display: flex;
	justify-content: center;
	min-height: 430px;
	overflow: hidden;
}

.uhc-history__dialog-media img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.uhc-history__dialog--embleme .uhc-history__dialog-media img,
.uhc-history__dialog--maillot .uhc-history__dialog-media img {
	object-fit: contain;
	padding: clamp(1.5rem, 5vw, 4rem);
}

.uhc-history__dialog-media > span {
	color: var(--uhc-page-green, #76b82a);
	font-size: clamp(3rem, 10vw, 7rem);
	font-style: italic;
	font-weight: 950;
}

.uhc-history__dialog-content {
	align-self: center;
	padding: clamp(2rem, 5vw, 4.5rem);
}

.uhc-history__dialog-content h3 {
	color: #071a2d;
	font-size: clamp(2rem, 4.6vw, 3.8rem);
	font-weight: 950;
	letter-spacing: -0.045em;
	line-height: 0.95;
	margin: 1rem 0 1.5rem;
	text-transform: uppercase;
}

.uhc-history__dialog-story {
	color: #55636d;
	font-size: 1rem;
	line-height: 1.75;
}

.uhc-history__dialog-story > :first-child {
	margin-top: 0;
}

.uhc-history__dialog-story > :last-child {
	margin-bottom: 0;
}

@media (max-width: 960px) {
	.uhc-history__season-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.uhc-history__season-grid,
	.uhc-history__dialog-shell {
		grid-template-columns: 1fr;
	}

	.uhc-history__dialog-shell {
		min-height: 0;
	}

	.uhc-history__dialog-media {
		aspect-ratio: 16 / 10;
		min-height: 220px;
	}

	.uhc-history__dialog-content {
		padding: 1.5rem;
	}
}

@container (max-width: 960px) {
	.uhc-history__season-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@container (max-width: 640px) {
	.uhc-history__season-grid {
		grid-template-columns: 1fr;
	}
}

.uhc-committee__grid {
	display: grid;
	gap: 1.35rem;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 270px), 1fr));
	margin: 0 auto;
	max-width: 1400px;
	padding: clamp(2rem, 6vw, 6rem) clamp(1rem, 4vw, 3rem);
}

.uhc-committee__person {
	background: #fff;
	border: 1px solid #d7e0e5;
	box-shadow: 0 15px 38px rgba(5, 31, 52, 0.1);
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.uhc-committee__photo {
	align-items: center;
	aspect-ratio: 4 / 3;
	background: linear-gradient(145deg, #061526, #124b91);
	display: flex;
	justify-content: center;
	overflow: hidden;
}

.uhc-committee__photo img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.uhc-committee__photo > span {
	color: var(--uhc-page-green);
	font-size: 4rem;
	font-weight: 950;
}

.uhc-committee__content {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 1.35rem;
}

.uhc-committee__role {
	color: #4c800c;
	font-size: 0.72rem;
	font-weight: 950;
	letter-spacing: 0.09em;
	margin: 0 0 0.55rem;
	text-transform: uppercase;
}

.uhc-committee__content h2 {
	color: #071a2d;
	font-size: 1.35rem;
	font-weight: 950;
	line-height: 1.05;
	margin: 0;
}

.uhc-committee__responsibilities {
	color: #5a6872;
	font-size: 0.9rem;
	line-height: 1.6;
	margin: 1rem 0;
}

.uhc-committee__contacts {
	border-top: 1px solid #e1e6e9;
	display: grid;
	gap: 0.4rem;
	margin-top: auto;
	padding-top: 1rem;
}

.uhc-committee__contacts a {
	color: #124b91;
	font-size: 0.82rem;
	font-weight: 800;
	overflow-wrap: anywhere;
	text-decoration: none;
}

.uhc-committee__contacts a:hover,
.uhc-committee__contacts a:focus-visible {
	color: #315d00;
	text-decoration: underline;
}

.uhc-committee__contacts a:focus-visible {
	outline: 3px solid var(--uhc-page-green);
	outline-offset: 3px;
}

.uhc-club-page-empty {
	background: #fff;
	border: 1px dashed #b9c7d0;
	color: #5b6973;
	line-height: 1.6;
	margin: clamp(2rem, 5vw, 5rem) auto;
	max-width: 920px;
	padding: clamp(1.5rem, 4vw, 3rem);
	text-align: center;
}

@media (max-width: 1100px) {
	.uhc-page-hero__logo {
		height: clamp(180px, 28vw, 300px);
		right: clamp(1rem, 4vw, 3rem);
		width: clamp(150px, 24vw, 240px);
	}
}

@media (max-width: 760px) {
	.uhc-page-hero--with-logo {
		--uhc-hero-copy-width: 100%;
	}

	.uhc-page-hero__logo {
		height: clamp(125px, 38vw, 175px);
		margin: 1.25rem 0 0 auto;
		position: relative;
		right: auto;
		top: auto;
		transform: none;
		width: clamp(110px, 34vw, 160px);
	}

	.uhc-team-hero--no-photo .uhc-team-hero__photo {
		min-height: 245px;
	}

	.uhc-matches-page__columns,
	.uhc-history__item {
		grid-template-columns: 1fr;
	}

	.uhc-history__item {
		min-height: 0;
	}

	.uhc-history__timeline::before {
		display: none;
	}

	.uhc-history__media {
		aspect-ratio: 16 / 10;
		min-height: 230px;
		order: -1;
	}
}

@media (max-width: 540px) {
	.uhc-home__team-grid {
		grid-template-columns: 1fr;
	}

	.uhc-matches-page__team-heading {
		align-items: flex-start;
		flex-direction: column;
	}

	.uhc-matches-page__match {
		grid-template-columns: 54px minmax(0, 1fr);
	}

	.uhc-matches-page__meta {
		align-items: flex-start;
		border-left: 0;
		border-top: 1px solid #dbe3e8;
		grid-column: 1 / -1;
		padding: 0.55rem 0.75rem;
		text-align: left;
	}

	.uhc-matches-page__versus {
		padding: 0.55rem 0.35rem;
	}

	.uhc-matches-page__logo {
		height: 34px;
		width: 34px;
	}
}

@container (max-width: 1100px) {
	.uhc-page-hero__logo {
		height: clamp(180px, 28cqw, 300px);
		right: clamp(1rem, 4cqw, 3rem);
		width: clamp(150px, 24cqw, 240px);
	}
}

@container (max-width: 760px) {
	.uhc-page-hero--with-logo {
		--uhc-hero-copy-width: 100%;
	}

	.uhc-page-hero__logo {
		height: clamp(125px, 38cqw, 175px);
		margin: 1.25rem 0 0 auto;
		position: relative;
		right: auto;
		top: auto;
		transform: none;
		width: clamp(110px, 34cqw, 160px);
	}

	.uhc-team-hero--no-photo .uhc-team-hero__photo {
		min-height: 245px;
	}

	.uhc-matches-page__hero h1,
	.uhc-matches-page__hero > h2,
	.uhc-club-page-hero h1,
	.uhc-club-page-hero > h2 {
		font-size: clamp(2.4rem, 12cqw, 4rem);
	}

	.uhc-matches-page__columns,
	.uhc-history__item {
		grid-template-columns: 1fr;
	}

	.uhc-history__item {
		min-height: 0;
	}

	.uhc-history__timeline::before {
		display: none;
	}

	.uhc-history__media {
		aspect-ratio: 16 / 10;
		min-height: 230px;
		order: -1;
	}
}

@container (max-width: 540px) {
	.uhc-home__team-grid {
		grid-template-columns: 1fr;
	}

	.uhc-matches-page__team-heading {
		align-items: flex-start;
		flex-direction: column;
	}

	.uhc-matches-page__match {
		grid-template-columns: 54px minmax(0, 1fr);
	}

	.uhc-matches-page__meta {
		align-items: flex-start;
		border-left: 0;
		border-top: 1px solid #dbe3e8;
		grid-column: 1 / -1;
		padding: 0.55rem 0.75rem;
		text-align: left;
	}

	.uhc-matches-page__versus {
		padding: 0.55rem 0.35rem;
	}

	.uhc-matches-page__logo {
		height: 34px;
		width: 34px;
	}
}

/* --------------------------------------------------------------------------
   Actualités, événements, documents et partenaires — version 1.5
   -------------------------------------------------------------------------- */

.uhc-content-page,
.uhc-content-page * {
	box-sizing: border-box;
}

.uhc-content-page {
	--uhc-page-black: #020914;
	--uhc-page-blue: var(--uhc-primary, #124b91);
	--uhc-page-green: var(--uhc-accent, #76b82a);
	background: #f1f4f5;
	color: #101820;
	container-type: inline-size;
	font-family: inherit;
	overflow: hidden;
	width: 100%;
}

.uhc-content-page__heading {
	margin-bottom: clamp(1.25rem, 3vw, 2rem);
}

.uhc-content-page__heading > p {
	color: #4f810c;
	font-size: 0.72rem;
	font-weight: 950;
	letter-spacing: 0.13em;
	margin: 0 0 0.45rem;
	text-transform: uppercase;
}

.uhc-content-page__heading > h2 {
	color: #071a2d;
	font-size: clamp(1.65rem, 3vw, 2.35rem);
	font-weight: 950;
	letter-spacing: -0.035em;
	line-height: 1.05;
	margin: 0;
	text-transform: uppercase;
}

.uhc-content-page__heading > h2::after {
	background: var(--uhc-page-green);
	content: "";
	display: block;
	height: 4px;
	margin-top: 0.75rem;
	width: 56px;
}

.uhc-content-page__empty {
	background: #fff;
	border: 1px dashed #b9c7d0;
	color: #5b6973;
	line-height: 1.6;
	padding: 1.4rem;
	text-align: center;
}

.uhc-content-page__button,
.uhc-documents__download {
	align-items: center;
	background: var(--uhc-page-blue);
	border: 2px solid var(--uhc-page-blue);
	color: #fff !important;
	display: inline-flex;
	font-size: 0.75rem;
	font-weight: 900;
	justify-content: center;
	letter-spacing: 0.035em;
	min-height: 42px;
	padding: 0.65rem 1rem;
	text-decoration: none !important;
	text-transform: uppercase;
}

.uhc-content-page__button:hover,
.uhc-documents__download:hover {
	background: #0c396f;
	border-color: var(--uhc-page-green);
}

.uhc-content-page a:focus-visible {
	box-shadow: 0 0 0 2px #fff;
	outline: 3px solid #315d00;
	outline-offset: 3px;
}

/* Actualités et événements. */
.uhc-news-events__events,
.uhc-news-events__articles {
	margin: 0 auto;
	max-width: 1360px;
	padding: clamp(2.25rem, 5vw, 5rem) clamp(1rem, 4vw, 3rem);
}

.uhc-news-events__events {
	padding-bottom: clamp(1.5rem, 3vw, 2.5rem);
}

.uhc-news-events__articles {
	padding-top: clamp(1.5rem, 3vw, 2.5rem);
}

.uhc-news-events__event-grid {
	display: grid;
	gap: clamp(1rem, 2.5vw, 1.75rem);
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.uhc-news-events__event {
	background: #fff;
	border-top: 5px solid var(--uhc-page-green);
	box-shadow: 0 16px 38px rgba(5, 31, 52, 0.1);
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
}

.uhc-news-events__event.is-featured {
	border-color: var(--uhc-page-blue);
	box-shadow: 0 20px 48px rgba(18, 75, 145, 0.17);
}

.uhc-news-events__event.is-cancelled {
	border-top-color: #a72828;
}

.uhc-news-events__event-image {
	aspect-ratio: 16 / 7;
	background: #071a2d;
	overflow: hidden;
}

.uhc-news-events__event-image img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.uhc-news-events__event-content {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: clamp(1.15rem, 2.5vw, 1.65rem);
}

.uhc-news-events__badges {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin-bottom: 0.8rem;
}

.uhc-news-events__badges span {
	background: #edf4e5;
	color: #416d09;
	font-size: 0.63rem;
	font-weight: 950;
	letter-spacing: 0.06em;
	padding: 0.28rem 0.5rem;
	text-transform: uppercase;
}

.uhc-news-events__badges .is-status {
	background: #f8e7e7;
	color: #942525;
}

.uhc-news-events__badges .is-featured {
	background: #e5eef8;
	color: #124b91;
}

.uhc-news-events__event-date {
	color: #124b91;
	display: flex;
	flex-wrap: wrap;
	font-size: 0.78rem;
	font-weight: 850;
	gap: 0.45rem;
	margin: 0 0 0.75rem;
}

.uhc-news-events__event h3,
.uhc-news-events__article h3 {
	color: #071a2d;
	font-size: clamp(1.2rem, 2vw, 1.55rem);
	font-weight: 950;
	line-height: 1.08;
	margin: 0;
}

.uhc-news-events__location {
	color: #4b780e;
	font-size: 0.82rem;
	font-weight: 800;
	margin: 0.8rem 0 0;
}

.uhc-news-events__location span {
	color: var(--uhc-page-green);
}

.uhc-news-events__summary {
	color: #5b6871;
	font-size: 0.9rem;
	line-height: 1.65;
	margin: 0.85rem 0 1.15rem;
}

.uhc-news-events__event .uhc-content-page__button {
	align-self: flex-start;
	margin-top: auto;
}

.uhc-news-events__article-grid {
	display: grid;
	gap: clamp(1rem, 2.5vw, 1.75rem);
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.uhc-news-events__article {
	background: #fff;
	box-shadow: 0 15px 34px rgba(5, 31, 52, 0.09);
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
}

.uhc-news-events__article-image {
	aspect-ratio: 16 / 10;
	background:
		radial-gradient(circle at 75% 20%, rgba(118, 184, 42, 0.3), transparent 30%),
		#071a2d;
	display: block;
	overflow: hidden;
}

.uhc-news-events__article-image img {
	display: block;
	height: 100%;
	object-fit: cover;
	transition: transform 180ms ease;
	width: 100%;
}

.uhc-news-events__article:hover .uhc-news-events__article-image img {
	transform: scale(1.025);
}

.uhc-news-events__article-content {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 1.25rem;
}

.uhc-news-events__article-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 0.75rem;
	margin-bottom: 0.55rem;
}

.uhc-news-events__article-meta > * {
	color: #4f810c;
	font-size: 0.7rem;
	font-weight: 900;
	letter-spacing: 0.055em;
	text-transform: uppercase;
}

.uhc-news-events__article-meta time {
	color: #64717a;
}

.uhc-news-events__article h3 a {
	color: inherit;
	text-decoration: none;
}

.uhc-news-events__article-content > p {
	color: #5b6871;
	font-size: 0.88rem;
	line-height: 1.65;
	margin: 0.85rem 0 1rem;
}

.uhc-news-events__read-more {
	color: #124b91;
	font-size: 0.76rem;
	font-weight: 950;
	margin-top: auto;
	text-decoration: none;
	text-transform: uppercase;
}

.uhc-news-events__read-more:hover {
	color: #4f810c;
	text-decoration: underline;
}

/* Documents utiles. */
.uhc-documents [hidden] {
	display: none !important;
}

.uhc-documents__inner {
	margin: 0 auto;
	max-width: 1320px;
	padding: clamp(2.5rem, 6vw, 6rem) clamp(1rem, 4vw, 3rem);
}

.uhc-documents__grid {
	align-items: start;
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.uhc-documents__card {
	align-self: start;
	background: #fff;
	border-left: 5px solid var(--uhc-page-green);
	box-shadow: 0 12px 30px rgba(5, 31, 52, 0.08);
	display: grid;
	grid-template-columns: 86px minmax(0, 1fr);
	min-width: 0;
	overflow: hidden;
}

.uhc-documents__icon {
	align-items: center;
	background: linear-gradient(145deg, #061526, #124b91);
	color: #fff;
	display: flex;
	justify-content: center;
	min-height: 100%;
	padding: 0.75rem;
}

.uhc-documents__icon span {
	font-size: clamp(0.8rem, 1.5vw, 1.05rem);
	font-weight: 950;
	letter-spacing: 0.04em;
	overflow-wrap: anywhere;
	text-align: center;
}

.uhc-documents__icon .uhc-documents__file-count {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
}

.uhc-documents__file-count strong {
	font-size: 1.55rem;
	line-height: 1;
}

.uhc-documents__file-count small {
	font-size: 0.58rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.uhc-documents__content {
	display: flex;
	flex-direction: column;
	min-width: 0;
	padding: 1.2rem;
}

.uhc-documents__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 0.75rem;
	margin-bottom: 0.55rem;
}

.uhc-documents__meta > * {
	color: #64717a;
	font-size: 0.66rem;
	font-weight: 780;
}

.uhc-documents__meta > span:first-child {
	color: #4f810c;
	font-weight: 950;
}

.uhc-documents__content h3 {
	color: #071a2d;
	font-size: 1.16rem;
	font-weight: 950;
	line-height: 1.15;
	margin: 0;
}

.uhc-documents__description {
	color: #5b6871;
	font-size: 0.86rem;
	line-height: 1.6;
	margin: 0.75rem 0 0;
}

.uhc-documents__single-file,
.uhc-documents__picker {
	border-top: 1px solid #e1e7eb;
	margin-top: auto;
	padding-top: 1rem;
}

.uhc-documents__single-file {
	align-items: center;
	display: grid;
	gap: 0.8rem;
	grid-template-columns: minmax(0, 1fr) auto;
}

.uhc-documents__file-info {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.uhc-documents__file-info strong {
	color: #132b3e;
	font-size: 0.82rem;
	line-height: 1.3;
	overflow-wrap: anywhere;
}

.uhc-documents__file-info small {
	color: #64717a;
	font-size: 0.67rem;
	font-weight: 750;
	margin-top: 0.2rem;
}

.uhc-documents__single-file .uhc-documents__download {
	align-self: center;
	margin-top: 0;
}

.uhc-documents__picker-controls > label {
	color: #132b3e;
	display: block;
	font-size: 0.72rem;
	font-weight: 900;
	margin-bottom: 0.4rem;
}

.uhc-documents__picker-row {
	align-items: stretch;
	display: grid;
	gap: 0.65rem;
	grid-template-columns: minmax(0, 1fr) auto;
}

.uhc-documents__picker select {
	background-color: #fff;
	border: 1px solid #9daab3;
	border-radius: 0;
	color: #132b3e;
	font: inherit;
	font-size: 0.82rem;
	max-width: 100%;
	min-height: 44px;
	min-width: 0;
	padding: 0.55rem 2rem 0.55rem 0.7rem;
	width: 100%;
}

.uhc-documents__picker select:focus-visible {
	box-shadow: 0 0 0 2px #fff;
	outline: 3px solid #315d00;
	outline-offset: 3px;
}

.uhc-documents__picker-row .uhc-documents__download {
	min-height: 44px;
}

.uhc-documents__picker-meta {
	color: #64717a;
	font-size: 0.68rem;
	font-weight: 750;
	margin: 0.4rem 0 0;
}

.uhc-documents__picker-fallback summary {
	color: #124b91;
	cursor: pointer;
	font-size: 0.8rem;
	font-weight: 900;
	min-height: 44px;
	padding: 0.7rem 0;
}

.uhc-documents__picker-fallback summary:focus-visible {
	box-shadow: 0 0 0 2px #fff;
	outline: 3px solid #315d00;
	outline-offset: 3px;
}

.uhc-documents__picker-fallback ul {
	display: grid;
	gap: 0.55rem;
	list-style: none;
	margin: 0;
	padding: 0.4rem 0 0;
}

.uhc-documents__picker-fallback a {
	align-items: center;
	color: #124b91;
	display: flex;
	font-size: 0.78rem;
	font-weight: 800;
	min-height: 44px;
	overflow-wrap: anywhere;
	padding: 0.55rem 0;
}

@media (prefers-reduced-motion: reduce) {
	.uhc-news-events__article-image img {
		transition: none;
	}
}

@media (max-width: 960px) {
	.uhc-news-events__article-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.uhc-documents__grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 680px) {
	.uhc-news-events__event-grid,
	.uhc-news-events__article-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 480px) {
	.uhc-documents__card {
		grid-template-columns: 64px minmax(0, 1fr);
	}

	.uhc-documents__content {
		padding: 1rem;
	}

	.uhc-documents__single-file,
	.uhc-documents__picker-row {
		grid-template-columns: 1fr;
	}

	.uhc-content-page__button,
	.uhc-documents__download {
		align-self: stretch;
		width: 100%;
	}
}

@container (max-width: 960px) {
	.uhc-news-events__article-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.uhc-documents__grid {
		grid-template-columns: 1fr;
	}
}

@container (max-width: 680px) {
	.uhc-news-events__event-grid,
	.uhc-news-events__article-grid {
		grid-template-columns: 1fr;
	}
}

@container (max-width: 480px) {
	.uhc-documents__card {
		grid-template-columns: 64px minmax(0, 1fr);
	}

	.uhc-documents__content {
		padding: 1rem;
	}

	.uhc-documents__single-file,
	.uhc-documents__picker-row {
		grid-template-columns: 1fr;
	}

	.uhc-content-page__button,
	.uhc-documents__download {
		align-self: stretch;
		width: 100%;
	}
}

/* Partenaires et sponsors. */
.uhc-partners__content {
	display: grid;
	gap: clamp(2.75rem, 6vw, 5.5rem);
	margin: 0 auto;
	max-width: 1380px;
	padding: clamp(2.5rem, 6vw, 6rem) clamp(1rem, 4vw, 3rem);
}

.uhc-partners__group-heading {
	margin-bottom: 1.4rem;
}

.uhc-partners__group-heading > p {
	color: #4f810c;
	font-size: 0.7rem;
	font-weight: 950;
	letter-spacing: 0.13em;
	margin: 0 0 0.45rem;
	text-transform: uppercase;
}

.uhc-partners__group-heading > h2 {
	color: #071a2d;
	font-size: clamp(1.55rem, 3vw, 2.2rem);
	font-weight: 950;
	letter-spacing: -0.035em;
	line-height: 1.05;
	margin: 0;
	text-transform: uppercase;
}

.uhc-partners__group-heading > h2::after {
	background: var(--uhc-page-green);
	content: "";
	display: block;
	height: 4px;
	margin-top: 0.7rem;
	width: 56px;
}

.uhc-partners__grid {
	display: grid;
	gap: clamp(1rem, 2.2vw, 1.5rem);
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.uhc-partners__group--principal .uhc-partners__grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.uhc-partners__card {
	background: #fff;
	border-bottom: 4px solid #d6e0e6;
	box-shadow: 0 14px 34px rgba(5, 31, 52, 0.09);
	min-width: 0;
	overflow: hidden;
	transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.uhc-partners__card--principal {
	border-bottom-color: var(--uhc-page-green);
}

.uhc-partners__card:hover {
	border-bottom-color: var(--uhc-page-green);
	box-shadow: 0 20px 45px rgba(5, 31, 52, 0.14);
	transform: translateY(-3px);
}

.uhc-partners__card:focus-within {
	border-bottom-color: var(--uhc-page-green);
	box-shadow: 0 0 0 3px #315d00 inset, 0 20px 45px rgba(5, 31, 52, 0.14);
}

.uhc-partners__card-link,
.uhc-partners__card-inner {
	color: inherit;
	display: flex;
	flex-direction: column;
	height: 100%;
	text-decoration: none !important;
}

.uhc-content-page .uhc-partners__card-link:focus-visible {
	box-shadow: 0 0 0 3px #315d00 inset, 0 0 0 5px #fff inset;
	outline: none;
}

.uhc-partners__logo {
	align-items: center;
	aspect-ratio: 3 / 2;
	background:
		radial-gradient(circle at 80% 15%, rgba(118, 184, 42, 0.1), transparent 30%),
		#fff;
	border-bottom: 1px solid #e5eaed;
	display: flex;
	justify-content: center;
	padding: clamp(1rem, 2vw, 1.5rem);
}

.uhc-partners__group--principal .uhc-partners__logo {
	aspect-ratio: 16 / 9;
	padding: clamp(1.25rem, 3vw, 2rem);
}

.uhc-partners__logo-image {
	display: block;
	height: 100%;
	max-height: 150px;
	max-width: 100%;
	object-fit: contain;
	width: 100%;
}

.uhc-partners__initials {
	align-items: center;
	background: linear-gradient(145deg, #061526, #124b91);
	border-radius: 50%;
	color: var(--uhc-page-green);
	display: flex;
	font-size: clamp(1.4rem, 3vw, 2.2rem);
	font-weight: 950;
	height: 84px;
	justify-content: center;
	letter-spacing: -0.04em;
	width: 84px;
}

.uhc-partners__card-content {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 1.15rem;
}

.uhc-partners__level {
	color: #4f810c;
	font-size: 0.65rem;
	font-weight: 950;
	letter-spacing: 0.08em;
	margin: 0 0 0.4rem;
	text-transform: uppercase;
}

.uhc-partners__card-content h3 {
	color: #071a2d;
	font-size: 1.18rem;
	font-weight: 950;
	line-height: 1.12;
	margin: 0;
}

.uhc-partners__description {
	color: #5b6871;
	font-size: 0.84rem;
	line-height: 1.6;
	margin: 0.7rem 0 1rem;
}

.uhc-partners__visit {
	color: #124b91;
	font-size: 0.72rem;
	font-weight: 950;
	margin-top: auto;
	text-transform: uppercase;
}

.uhc-partners__card-link:hover .uhc-partners__visit {
	color: #4f810c;
	text-decoration: underline;
}

@media (prefers-reduced-motion: reduce) {
	.uhc-partners__card {
		transition: none;
	}

	.uhc-partners__card:hover {
		transform: none;
	}
}

@media (forced-colors: active) {
	.uhc-content-page .uhc-partners__card-link:focus-visible {
		outline: 3px solid CanvasText;
		outline-offset: -4px;
	}
}

@media (max-width: 1040px) {
	.uhc-partners__grid,
	.uhc-partners__group--principal .uhc-partners__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 520px) {
	.uhc-partners__grid,
	.uhc-partners__group--principal .uhc-partners__grid {
		grid-template-columns: 1fr;
	}
}

@container (max-width: 1040px) {
	.uhc-partners__grid,
	.uhc-partners__group--principal .uhc-partners__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@container (max-width: 520px) {
	.uhc-partners__grid,
	.uhc-partners__group--principal .uhc-partners__grid {
		grid-template-columns: 1fr;
	}
}

/* Accueil 1.5.1 : même héros que les autres pages, avec logo 3D. */
.uhc-home__hero.uhc-club-page-hero {
	border-bottom: 0;
	isolation: isolate;
}

.uhc-home__hero.uhc-club-page-hero::before {
	content: none;
}

.uhc-home__hero.uhc-club-page-hero::after {
	clip-path: none;
	filter: none;
	opacity: 1;
	right: auto;
	top: auto;
	transform: none;
	z-index: auto;
}

.uhc-home__hero.uhc-club-page-hero > .uhc-home__hero-points,
.uhc-home__hero.uhc-club-page-hero > .uhc-home__actions {
	max-width: var(--uhc-hero-copy-width, 900px);
	position: relative;
	z-index: 3;
}

.uhc-home__hero.uhc-club-page-hero > h1,
.uhc-home__hero.uhc-club-page-hero > h2 {
	font-family: var(--theme-font-family, Arial, sans-serif);
}

.uhc-home__hero.uhc-club-page-hero > .uhc-home__hero-points {
	margin-top: 1.5rem;
}

.uhc-home__hero.uhc-club-page-hero > .uhc-home__actions {
	margin-top: 2rem;
}

.uhc-home__team-card.is-static {
	cursor: default;
}

.uhc-home__team-card.is-static:hover {
	box-shadow: 0 12px 32px rgba(9, 25, 38, 0.09);
	transform: none;
}

.uhc-home__team-card.is-static .uhc-home__team-content > span {
	display: none;
}

/* Contact 1.5.3 : formulaire Contact Form 7 assorti aux autres pages. */
.uhc-contact-page__content {
	margin: 0 auto;
	max-width: 1320px;
	padding: clamp(1.5rem, 5vw, 5rem) clamp(1rem, 4vw, 3rem);
	width: 100%;
}

.uhc-contact-page__form-shell {
	background: #fff;
	border-top: 6px solid var(--uhc-page-green);
	box-shadow: 0 18px 48px rgba(5, 31, 52, 0.12);
	padding: clamp(1rem, 3.5vw, 2.5rem);
}

.uhc-contact-page .wp-block-contact-form-7-contact-form-selector,
.uhc-contact-page .wpcf7,
.uhc-contact-page .wpcf7-form {
	margin: 0 !important;
	max-width: none !important;
	width: 100% !important;
}

.uhc-contact-page .uhc-formulaire,
.uhc-contact-page .uhc-formulaire * {
	box-sizing: border-box;
}

.uhc-contact-page .uhc-formulaire {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	color: #101820 !important;
	margin: 0 !important;
	max-width: none !important;
	padding: 0 !important;
	width: 100% !important;
}

/* Le titre est maintenant affiché dans le héros commun avec le logo 3D. */
.uhc-contact-page .uhc-form-entete {
	display: none !important;
}

.uhc-contact-page .uhc-form-bloc {
	background: #f7f9fa !important;
	border: 1px solid #d2dee6 !important;
	border-left: 6px solid var(--uhc-page-green) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: #101820 !important;
	margin: 0 0 clamp(1rem, 2.5vw, 1.5rem) !important;
	min-height: 0 !important;
	padding: clamp(1.1rem, 3vw, 2rem) !important;
}

.uhc-contact-page .uhc-form-bloc > h3 {
	color: #071a2d !important;
	font-size: clamp(1.25rem, 2.5vw, 1.7rem) !important;
	font-style: normal !important;
	font-weight: 950 !important;
	letter-spacing: -0.025em !important;
	line-height: 1.05 !important;
	margin: 0 0 1.2rem !important;
	text-transform: uppercase;
}

.uhc-contact-page .uhc-form-bloc > h3::after {
	background: var(--uhc-page-green);
	content: "";
	display: block;
	height: 4px;
	margin-top: 0.65rem;
	width: 52px;
}

.uhc-contact-page .uhc-form-grid {
	display: grid !important;
	gap: 1rem 1.25rem !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.uhc-contact-page .uhc-form-large {
	grid-column: 1 / -1;
}

.uhc-contact-page .uhc-form-bloc > p,
.uhc-contact-page .uhc-form-grid > p,
.uhc-contact-page .uhc-form-grid > label {
	margin: 0 !important;
}

.uhc-contact-page .uhc-formulaire label {
	color: #071a2d !important;
	display: block;
	font-size: 0.92rem !important;
	font-weight: 800 !important;
	line-height: 1.4;
}

.uhc-contact-page .uhc-formulaire .wpcf7-form-control-wrap {
	display: block;
	margin-top: 0.45rem !important;
	width: 100%;
}

.uhc-contact-page .uhc-formulaire input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.uhc-contact-page .uhc-formulaire select,
.uhc-contact-page .uhc-formulaire textarea {
	background: #fff !important;
	border: 2px solid #a8bac7 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: #101820 !important;
	font: inherit !important;
	font-size: 1rem !important;
	height: auto !important;
	margin: 0 !important;
	min-height: 50px;
	padding: 0.72rem 0.85rem !important;
	width: 100% !important;
}

.uhc-contact-page .uhc-formulaire textarea {
	min-height: 140px;
	resize: vertical;
}

.uhc-contact-page .uhc-formulaire input::placeholder,
.uhc-contact-page .uhc-formulaire textarea::placeholder {
	color: #6c747b !important;
	opacity: 1;
}

.uhc-contact-page .uhc-formulaire input:focus,
.uhc-contact-page .uhc-formulaire select:focus,
.uhc-contact-page .uhc-formulaire textarea:focus {
	border-color: var(--uhc-page-blue) !important;
	outline: 3px solid rgba(118, 184, 42, 0.3) !important;
	outline-offset: 1px;
}

.uhc-contact-page .uhc-form-consentement {
	background: #fff !important;
	border: 1px solid #d2dee6 !important;
	color: #273642 !important;
	font-size: 0.85rem;
	line-height: 1.5;
	margin: 0 0 1rem !important;
	padding: 1rem 1.15rem !important;
}

.uhc-contact-page .uhc-form-consentement .wpcf7-list-item {
	display: block;
	margin: 0 !important;
}

.uhc-contact-page .uhc-formulaire input[type="checkbox"],
.uhc-contact-page .uhc-formulaire input[type="radio"] {
	accent-color: var(--uhc-page-green);
	height: 1.1rem !important;
	margin: 0 0.55rem 0 0 !important;
	vertical-align: -0.18rem;
	width: 1.1rem !important;
}

.uhc-contact-page .uhc-formulaire > p:last-child {
	margin: 0 !important;
	text-align: center;
}

.uhc-contact-page .uhc-formulaire input[type="submit"] {
	background: var(--uhc-page-blue) !important;
	border: 2px solid var(--uhc-page-blue) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: #fff !important;
	cursor: pointer;
	font-size: 0.82rem !important;
	font-weight: 950 !important;
	letter-spacing: 0.03em;
	margin: 0 !important;
	min-height: 48px;
	padding: 0.75rem 1.6rem !important;
	text-transform: uppercase;
}

.uhc-contact-page .uhc-formulaire input[type="submit"]:hover,
.uhc-contact-page .uhc-formulaire input[type="submit"]:focus-visible {
	background: #0c396f !important;
	border-color: var(--uhc-page-green) !important;
}

.uhc-contact-page .uhc-formulaire input[type="submit"]:disabled {
	cursor: not-allowed;
	opacity: 0.55;
}

.uhc-contact-page .wpcf7-not-valid-tip {
	color: #a72828 !important;
	font-size: 0.78rem;
	font-weight: 800;
	margin-top: 0.35rem;
}

.uhc-contact-page .wpcf7-response-output {
	background: #fff !important;
	border: 2px solid var(--uhc-page-blue) !important;
	color: #101820 !important;
	margin: 1rem 0 0 !important;
	padding: 0.9rem 1rem !important;
}

.uhc-contact-page__empty {
	background: #fff;
	border: 1px dashed #b9c7d0;
	color: #5b6973;
	line-height: 1.6;
	padding: 1.4rem;
	text-align: center;
}

@media (max-width: 700px) {
	.uhc-contact-page__content {
		padding: 1rem 0.75rem 2.5rem;
	}

	.uhc-contact-page__form-shell {
		padding: 0.75rem;
	}

	.uhc-contact-page .uhc-form-grid {
		grid-template-columns: 1fr !important;
	}

	.uhc-contact-page .uhc-form-large {
		grid-column: auto;
	}
}

@container (max-width: 700px) {
	.uhc-contact-page__content {
		padding: 1rem 0.75rem 2.5rem;
	}

	.uhc-contact-page__form-shell {
		padding: 0.75rem;
	}

	.uhc-contact-page .uhc-form-grid {
		grid-template-columns: 1fr !important;
	}

	.uhc-contact-page .uhc-form-large {
		grid-column: auto;
	}
}

/* Sponsoring : offres et intégration du formulaire Forminator choisi. */
.uhc-sponsoring-page__offers {
	margin: 0 auto;
	max-width: 1400px;
	padding: clamp(2rem, 6vw, 6rem) clamp(1rem, 4vw, 3rem) clamp(1.5rem, 4vw, 3.5rem);
}

.uhc-sponsoring-page__heading {
	max-width: 900px;
}

.uhc-sponsoring-page__heading > span,
.uhc-sponsoring-page__form-intro > span {
	color: #5b6973;
	display: block;
	font-size: 0.96rem;
	line-height: 1.65;
	margin-top: 1rem;
}

.uhc-sponsoring-page__grid {
	display: grid;
	gap: 1.25rem;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.uhc-sponsoring-page__card {
	background: #fff;
	border: 1px solid #d5e0e7;
	border-top: 6px solid var(--uhc-page-green);
	box-shadow: 0 14px 36px rgba(5, 31, 52, 0.09);
	display: flex;
	flex-direction: column;
	min-width: 0;
	padding: clamp(1.2rem, 2.5vw, 1.8rem);
}

.uhc-sponsoring-page__card--or {
	background:
		linear-gradient(145deg, rgba(18, 75, 145, 0.18), transparent 48%),
		#061424;
	border-color: #37566f;
	color: #fff;
}

.uhc-sponsoring-page__level {
	color: #4f810c;
	font-size: 0.68rem;
	font-weight: 950;
	letter-spacing: 0.11em;
	margin: 0 0 0.55rem;
	text-transform: uppercase;
}

.uhc-sponsoring-page__card--or .uhc-sponsoring-page__level {
	color: var(--uhc-page-green);
}

.uhc-sponsoring-page__card h3 {
	color: #071a2d;
	font-size: clamp(1.25rem, 2.1vw, 1.65rem);
	font-weight: 950;
	letter-spacing: -0.035em;
	line-height: 1.05;
	margin: 0;
	text-transform: uppercase;
}

.uhc-sponsoring-page__card--or h3 {
	color: #fff;
}

.uhc-sponsoring-page__price {
	align-items: baseline;
	border-bottom: 1px solid #dbe3e8;
	display: flex;
	flex-wrap: wrap;
	gap: 0.3rem 0.55rem;
	margin: 1.1rem 0;
	padding-bottom: 1rem;
}

.uhc-sponsoring-page__card--or .uhc-sponsoring-page__price {
	border-color: #37566f;
}

.uhc-sponsoring-page__price strong {
	color: var(--uhc-page-blue);
	font-size: clamp(1.45rem, 2.6vw, 2rem);
	font-weight: 950;
}

.uhc-sponsoring-page__card--or .uhc-sponsoring-page__price strong {
	color: var(--uhc-page-green);
}

.uhc-sponsoring-page__price span {
	color: #63717c;
	font-size: 0.75rem;
}

.uhc-sponsoring-page__card--or .uhc-sponsoring-page__price span {
	color: #c8d5df;
}

.uhc-sponsoring-page__card ul {
	display: grid;
	gap: 0.7rem;
	list-style: none;
	margin: 0 0 1.5rem;
	padding: 0;
}

.uhc-sponsoring-page__card li {
	color: #4c5b66;
	font-size: 0.86rem;
	line-height: 1.5;
	padding-left: 1.35rem;
	position: relative;
}

.uhc-sponsoring-page__card li::before {
	color: var(--uhc-page-green);
	content: "✓";
	font-weight: 950;
	left: 0;
	position: absolute;
}

.uhc-sponsoring-page__card--or li {
	color: #d7e1e9;
}

.uhc-sponsoring-page__choose {
	align-items: center;
	background: var(--uhc-page-blue);
	border: 2px solid var(--uhc-page-blue);
	color: #fff !important;
	display: inline-flex;
	font-size: 0.72rem;
	font-weight: 950;
	justify-content: center;
	margin-top: auto;
	min-height: 44px;
	padding: 0.65rem 0.9rem;
	text-align: center;
	text-decoration: none !important;
	text-transform: uppercase;
}

.uhc-sponsoring-page__choose:hover,
.uhc-sponsoring-page__choose:focus-visible {
	background: #0c396f;
	border-color: var(--uhc-page-green);
}

.uhc-sponsoring-page__document {
	align-items: center;
	background: #061424;
	border-left: 6px solid var(--uhc-page-green);
	color: #fff;
	display: flex;
	gap: 1.5rem;
	justify-content: space-between;
	margin-top: clamp(1.25rem, 3vw, 2rem);
	padding: clamp(1.25rem, 3vw, 2rem);
}

.uhc-sponsoring-page__document > div {
	display: grid;
	gap: 0.3rem;
}

.uhc-sponsoring-page__document strong {
	font-size: 1.12rem;
}

.uhc-sponsoring-page__document span {
	color: #c8d5df;
	font-size: 0.86rem;
}

.uhc-sponsoring-page__document > a {
	background: var(--uhc-page-green);
	border: 2px solid var(--uhc-page-green);
	color: #071421 !important;
	font-size: 0.72rem;
	font-weight: 950;
	padding: 0.75rem 1rem;
	text-align: center;
	text-decoration: none !important;
	text-transform: uppercase;
}

.uhc-sponsoring-page__document > a:hover,
.uhc-sponsoring-page__document > a:focus-visible {
	background: transparent;
	color: #fff !important;
}

.uhc-sponsoring-page__form-section {
	background: #fff;
	border-top: 1px solid #d4dfe6;
	margin: 0 auto clamp(2rem, 6vw, 6rem);
	max-width: 1200px;
	padding: clamp(1.5rem, 5vw, 4rem);
}

.uhc-sponsoring-page__form-intro {
	margin-bottom: clamp(1.25rem, 3vw, 2rem);
}

.uhc-sponsoring-page__form-intro > p {
	color: #4f810c;
	font-size: 0.72rem;
	font-weight: 950;
	letter-spacing: 0.13em;
	margin: 0 0 0.45rem;
	text-transform: uppercase;
}

.uhc-sponsoring-page__form-intro h2 {
	color: #071a2d;
	font-size: clamp(1.8rem, 4vw, 3rem);
	font-weight: 950;
	letter-spacing: -0.04em;
	line-height: 1;
	margin: 0;
	text-transform: uppercase;
}

.uhc-sponsoring-page__form-intro h2::after {
	background: var(--uhc-page-green);
	content: "";
	display: block;
	height: 4px;
	margin-top: 0.75rem;
	width: 56px;
}

.uhc-sponsoring-page__forminator {
	min-width: 0;
	width: 100%;
}

.uhc-sponsoring-page__forminator > .forminator-ui {
	margin-right: auto !important;
	margin-left: auto !important;
	max-width: 100% !important;
}

.uhc-sponsoring-page__forminator-notice,
.uhc-sponsoring-page__forminator-unavailable {
	background: #f4f7f8;
	border: 1px dashed #a8bac7;
	color: #344550;
	display: grid;
	gap: 0.6rem;
	line-height: 1.55;
	padding: 1.25rem;
}

.uhc-sponsoring-page__forminator-notice strong {
	color: #071a2d;
}

.uhc-sponsoring-page__forminator-notice span,
.uhc-sponsoring-page__forminator-unavailable p {
	margin: 0;
}

.uhc-sponsoring-page__forminator-unavailable a {
	background: var(--uhc-page-blue);
	color: #fff !important;
	font-size: 0.78rem;
	font-weight: 950;
	justify-self: start;
	padding: 0.75rem 1rem;
	text-decoration: none !important;
	text-transform: uppercase;
}

.uhc-sponsoring-page__forminator-unavailable a:hover,
.uhc-sponsoring-page__forminator-unavailable a:focus-visible {
	background: #0c396f;
	outline: 3px solid rgba(118, 184, 42, 0.35);
	outline-offset: 2px;
}

@media (max-width: 1100px) {
	.uhc-sponsoring-page__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 700px) {
	.uhc-sponsoring-page__grid {
		grid-template-columns: 1fr;
	}

	.uhc-sponsoring-page__document {
		align-items: stretch;
		flex-direction: column;
	}
}

@container (max-width: 1100px) {
	.uhc-sponsoring-page__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@container (max-width: 700px) {
	.uhc-sponsoring-page__grid {
		grid-template-columns: 1fr;
	}

	.uhc-sponsoring-page__document {
		align-items: stretch;
		flex-direction: column;
	}
}
