/* ==========================================================================
   Corsia Automobile - styles complementaires

   Reprend les blocs <style> inline du site Laravel, a l'identique.
   Le design n'est pas modifie : seuls les boutons casses sont repares.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. CORRECTIF - .btn-primary et .btn-outline

   Sur le site actuel, ces classes sont declarees avec @apply dans un <style>
   inline. @apply est une directive de compilation Tailwind : le navigateur
   l'ignore. Les deux boutons de la banniere d'accueil sont donc aujourd'hui
   sans aucun style.

   Ci-dessous la traduction en CSS reel de ce que @apply devait produire.
   -------------------------------------------------------------------------- */
.btn-primary,
.btn-outline {
	display: inline-flex;
	align-items: center;
	padding: 0.75rem 1rem;
	font-weight: 600;
	color: #fff;
	border-radius: 0.5rem;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1);
}

.btn-primary {
	background-color: var(--color-primary-500, #ce181e);
}

.btn-primary:hover {
	background-color: var(--color-primary-600, #ab1015);
	box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
}

.btn-outline {
	background-color: transparent;
	border: 2px solid #fff;
}

.btn-outline:hover {
	background-color: #fff;
	color: var(--color-primary-500, #ce181e);
	box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
}

@media (min-width: 40rem) {
	.btn-primary,
	.btn-outline {
		padding: 0.75rem 1.5rem;
	}
}

@media (min-width: 64rem) {
	.btn-primary,
	.btn-outline {
		padding: 1rem 2rem;
	}
}

/* --------------------------------------------------------------------------
   2. Banniere video
   -------------------------------------------------------------------------- */
.video-toggle-btn {
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
	border: 1px solid rgba(255, 255, 255, 0.1);
}

video {
	object-fit: cover;
	filter: contrast(1.1) brightness(0.9);
}

@media (max-width: 375px) {
	.container {
		padding-left: 1rem;
		padding-right: 1rem;
	}

	h1 {
		line-height: 1.1;
		word-break: break-word;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	h1 {
		line-height: 1.2;
	}
}

/* --------------------------------------------------------------------------
   3. Bandeau societe

   Sur le site actuel ce bandeau se trouve dans le corps de la page d'accueil,
   sous la banniere, et non dans l'en-tete. Le style est conserve ici en vue
   du bloc correspondant.
   -------------------------------------------------------------------------- */
.societe-info-bar {
	background-color: #111;
	color: #d1d5db;
	text-align: center;
	padding: 15px 20px;
	font-size: 14px;
	font-family: inherit;
	border-bottom: 1px solid #333;
	letter-spacing: 0.5px;
}

.societe-info-bar strong {
	color: #fff;
	font-weight: 700;
}

@media (max-width: 640px) {
	.societe-info-bar {
		font-size: 12px;
		padding: 10px 15px;
	}
}

/* --------------------------------------------------------------------------
   4. Pastilles de disponibilite
   -------------------------------------------------------------------------- */
.car-badge-available {
	background: linear-gradient(135deg, rgba(20, 184, 116, 0.95), rgba(18, 153, 98, 0.95));
	color: #fff;
	border-left: 3px solid #0fdf95;
}

.car-badge-reserved {
	background: linear-gradient(135deg, rgba(252, 156, 0, 0.95), rgba(236, 124, 0, 0.95));
	color: #fff;
	border-left: 3px solid #ffb700;
}

/* --------------------------------------------------------------------------
   5. Carrousel de produits
   -------------------------------------------------------------------------- */
.product-showcase-container {
	position: relative;
	padding-bottom: 3rem;
}

.product-showcase-swiper {
	width: 100%;
	height: auto;
	padding: 0 3rem;
	overflow: visible;
}

.product-showcase-swiper .swiper-wrapper {
	display: flex;
	align-items: stretch;
}

.product-showcase-swiper .swiper-slide {
	height: auto;
	display: flex;
	flex-direction: column;
	opacity: 1;
	transition: transform 0.3s ease;
}

.product-nav-next,
.product-nav-prev {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 3rem;
	height: 3rem;
	background: linear-gradient(135deg, rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.85));
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #374151;
	font-size: 1.25rem;
	font-weight: bold;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
	cursor: pointer;
	z-index: 10;
	transition: all 0.3s ease;
	border: 1px solid rgba(0, 0, 0, 0.1);
}

.product-nav-next {
	right: 0;
}

.product-nav-prev {
	left: 0;
}

.product-nav-next:hover,
.product-nav-prev:hover {
	background: linear-gradient(135deg, #fff, #f9fafb);
	transform: translateY(-50%) scale(1.1);
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);
	color: #1f2937;
}

/* --------------------------------------------------------------------------
   6. Pied de page
   -------------------------------------------------------------------------- */
.mention-footer-euro {
	display: block;
	margin-top: 8px;
	font-size: 0.9em;
	opacity: 0.8;
}

.mention-footer-euro strong {
	color: #fff;
	font-weight: 600;
}

/* --------------------------------------------------------------------------
   7. Alpine : masque les elements avant initialisation
   -------------------------------------------------------------------------- */
[x-cloak] {
	display: none !important;
}

