/*
Theme Name: HBC Le Barp
Theme URI: https://hbclebarp.fr/
Description: Socle visuel réversible pour la future refonte du site du HBC Le Barp. À activer uniquement après validation dans l’administration WordPress.
Author: HBC Le Barp
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: hbc-le-barp-base
*/

:root {
	--hbc-ink: #1B2147;
	--hbc-navy: #161D4F;
	--hbc-blue: #2B3BB0;
	--hbc-orange: #8C9AEC;
	--hbc-paper: #E4E7EF;
	--hbc-white: #fff;
	--hbc-muted: #4A5068;
	--hbc-radius: 1.25rem;
	--hbc-border: #C9CFDD;
	--hbc-shadow: 0 1rem 2.5rem rgb(22 29 79 / 10%);
}

html {
	scroll-behavior: smooth;
}

body {
	color: var(--hbc-ink);
	background: var(--hbc-paper);
	font-family: "Segoe UI", Roboto, Arial, sans-serif;
	line-height: 1.65;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	color: var(--hbc-navy);
	font-weight: 800;
	line-height: 1.12;
	letter-spacing: -0.025em;
}

a {
	color: var(--hbc-blue);
	text-underline-offset: 0.18em;
}

a:hover {
	color: var(--hbc-navy);
}

:focus-visible {
	outline: 3px solid var(--hbc-orange);
	outline-offset: 3px;
}

/* Shared visual language for Elementor and WordPress block layouts. */
.elementor-section,
.wp-site-blocks {
	--hbc-content-width: 1200px;
}

.elementor-widget-button .elementor-button,
.wp-block-button__link,
button,
input[type="submit"] {
	border: 0;
	border-radius: 999px;
	background: var(--hbc-blue);
	color: var(--hbc-white);
	font-weight: 800;
	padding: 0.85rem 1.35rem;
	transition: transform 160ms ease, box-shadow 160ms ease, background 160ms ease;
}

.elementor-widget-button .elementor-button:hover,
.wp-block-button__link:hover,
button:hover,
input[type="submit"]:hover {
	transform: translateY(-2px);
	background: var(--hbc-navy);
	box-shadow: 0 0.6rem 1.4rem rgb(22 29 79 / 16%);
}

.elementor-widget-image img,
.wp-block-image img {
	border-radius: var(--hbc-radius);
}

.elementor-widget-posts .elementor-post,
.elementor-widget-loop-grid .e-loop-item,
.wp-block-post,
.wp-block-group.is-style-hbc-card {
	border-radius: var(--hbc-radius);
	background: var(--hbc-white);
	box-shadow: var(--hbc-shadow);
	overflow: hidden;
}

.elementor-widget-posts .elementor-post__text,
.elementor-widget-loop-grid .e-loop-item,
.wp-block-post {
	padding: clamp(1.1rem, 2vw, 1.7rem);
}

.elementor-widget-posts .elementor-post__title a,
.wp-block-post-title a {
	color: var(--hbc-navy);
	text-decoration: none;
}

.elementor-widget-posts .elementor-post__title a:hover,
.wp-block-post-title a:hover {
	color: var(--hbc-blue);
}

.elementor-widget-heading .elementor-heading-title,
.wp-block-heading {
	text-wrap: balance;
}

/* Keep existing plugin content usable while giving embedded items a quieter frame. */
.tribe-events .tribe-events-calendar-list__event,
.tribe-events .tribe-events-single-event-title,
.score-nco-widget,
.team-members .team-member,
.wp-sponsors .sponsor {
	border-radius: var(--hbc-radius);
}

@media (max-width: 767px) {
	.elementor-section.elementor-section-boxed > .elementor-container {
		padding-inline: 1rem;
	}

	.elementor-widget-button .elementor-button,
	.wp-block-button__link {
		max-width: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		transition-duration: 0.01ms !important;
	}
}
