@charset "UTF-8";
@import url(main.css);
div.shadow-lg { box-shadow: none !important; }

.carousel-item-homepage img { transform: none !important; animation: none !important; }

.carousel-item-homepage img { filter: none !important; }

/* 🌟 CONTENEUR GLOBAL */
#serviceflouhover .servhover-container-wrapper { display: flex; flex-direction: column; justify-content: center; align-items: center; min-height: auto; padding: 0px; margin-top: 65px; }

/* 🌟 GRILLE DES CARTES */
#serviceflouhover .servhover-container { display: flex; gap: 15px; flex-wrap: wrap; justify-content: center; }

/* 🌟 CARTE */
#serviceflouhover .servhover-card { width: 350px; height: 500px; border-radius: 15px; overflow: hidden; position: relative; text-align: left; color: white; font-size: 20px; display: flex; flex-direction: column; justify-content: space-between; margin: 0; /* Effet hover moderne */ transform: translateY(0); transition: all 0.35s ease; border: 2px solid transparent; }

#serviceflouhover .servhover-card:hover { transform: translateY(-10px) scale(1.03); box-shadow: 0 12px 25px rgba(0, 0, 0, 0.25), 0 0 8px rgba(192, 125, 57, 0.4); border-color: #c07d39; }

/* 🌟 IMAGE */
#serviceflouhover .servhover-card img { width: 100%; height: 100%; object-fit: cover; position: absolute; top: 0; left: 0; z-index: 0; transition: transform 0.4s ease; }

#serviceflouhover .servhover-card:hover img { transform: scale(1.08); }

/* 🌟 OVERLAY TEXTE */
#serviceflouhover .servhover-card-content { padding: 20px; background: linear-gradient(to top, rgba(0, 0, 0, 0.65), transparent); backdrop-filter: blur(2px); position: absolute; bottom: 0; width: 100%; height: 100%; display: flex; flex-direction: column; justify-content: center; opacity: 0; transform: translateY(20px); transition: all 0.35s ease; z-index: 1; }

#serviceflouhover .servhover-card:hover .servhover-card-content { opacity: 1; transform: translateY(0); }

/* 🌟 TITRES & TEXTES */
#serviceflouhover .servhover-card h3, #serviceflouhover .servhover-card p, #serviceflouhover .servhover-card .servhover-btn { transform: translateY(10px); opacity: 0; transition: all 0.4s ease; }

#serviceflouhover .servhover-card:hover h3, #serviceflouhover .servhover-card:hover p, #serviceflouhover .servhover-card:hover .servhover-btn { transform: translateY(0); opacity: 1; }

/* 🌟 TITRE SECTION */
#serviceflouhover .servhover-title { text-align: center; font-size: 32px; font-weight: bold; margin-bottom: 0px; color: white; text-transform: uppercase; letter-spacing: 2px; position: relative; }

#serviceflouhover .servhover-title::after { content: ""; display: block; width: 80px; height: 4px; background-color: #c07d39; margin: 8px auto 0; border-radius: 2px; }

/* 🌟 BOUTON */
#serviceflouhover .servhover-btn { display: inline-block; margin-top: 10px; padding: 8px 18px; background: #c07d39; color: black; text-decoration: none; border-radius: 20px; font-size: 14px; text-align: center; border: 2px solid transparent; }

#serviceflouhover .servhover-btn:hover { background: transparent; color: #c07d39; border: 2px solid #c07d39; }

/* 🌟 RESPONSIVE */
@media screen and (max-width: 768px) { .servhover-container { flex-wrap: wrap !important; justify-content: center !important; } .servhover-card { width: 350px !important; } .servhover-card-content { opacity: 1 !important; background: linear-gradient(to bottom, rgba(0, 0, 0, 0.6), transparent) !important; transform: translateY(0) !important; } .servhover-card-content p, .servhover-btn, h3 { opacity: 1 !important; transform: translateY(0) !important; } }

.map-content { padding: 25px 25px 25px 40px; color: #BD550F !important; }

.navbar-brand { height: 10vh !important; width: 10vw !important; }

.logo_nav { height: 9vh !important; }

#myGallery { margin: 5px !important; }

.btn-theme, .button_header, .button_homepageDoubleScreen, .button_homepageScreen, #maps-url, .ctaLinks-button, .btn { display: inline-block; margin: 0 8px; padding: 8px 18px !important; background-color: #c07d39 !important; color: black !important; text-decoration: none !important; border-radius: 20px !important; font-size: 16px; text-align: center; border: 2px solid transparent !important; cursor: pointer; transition: all 0.3s ease; }

/* Hover */
.btn-theme:hover, .button_header:hover, .button_homepageDoubleScreen:hover, .button_homepageScreen:hover, #maps-url:hover, .ctaLinks-button:hover, .btn:hover { background-color: transparent !important; color: #c07d39 !important; border-color: #c07d39 !important; }

/* Forcer le style du bouton Refpro du haut */
a.button_homepageDoubleScreen { padding: 8px 18px !important; background-color: #c07d39 !important; color: black !important; border-radius: 20px !important; border: 2px solid transparent !important; display: inline-block !important; margin: 0 8px !important; text-decoration: none !important; font-size: 16px !important; transition: all 0.3s ease !important; cursor: pointer !important; }

/* Hover identique aux autres boutons */
a.button_homepageDoubleScreen:hover { background-color: transparent !important; color: #c07d39 !important; border-color: #c07d39 !important; }

/*------------------------------------------Bouton Fixe en bas à droite------------------------------*/
.btnFixe { position: fixed; bottom: 20px; right: 20px; z-index: 10; width: 100px; transition: width 0.5s ease; }

.btnFixe:hover { width: 115px; transition: width 0.5s ease; }

/* ------------------------- IMAGE ZOOM AU SURVOL ------------------------- */
img, .svg-picto-card svg { transition: transform 0.6s ease, opacity 0.6s ease; }

img:hover, .svg-picto-card:hover svg { transform: scale(1.03); }

/* ❌ Désactive le zoom dans le bloc Avant / Après */
.row.row-cols-1.row-cols-md-3.my-2.gap-4.gap-lg-0.justify-content-center img { transform: none !important; transition: none !important; }

/* ------------------------- EFFET FLOAT LÉGER SUR TITRES ------------------------- */
h2.float { animation: floatTitle 3s ease-in-out infinite; }

@keyframes floatTitle { 0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-4px); } }

/* ------------------------- STAGGER (si tu t'en sers encore) ------------------------- */
[data-animate] { transition-delay: calc(var(--i) * 0.1s); }

/* Glow + zoom au survol */
.svg-picto-card svg { transition: transform 0.5s ease, filter 0.4s ease, opacity 0.5s ease; }

.svg-picto-card:hover svg { transform: scale(1.08); filter: drop-shadow(0 0 10px rgba(192, 125, 57, 0.7)); /* glow doré */ }

.owl-carousel .owl-item img { border-top-left-radius: 240px; border-top-right-radius: 240px; display: block; /* évite micro espaces */ overflow: hidden; }

/*# sourceMappingURL=custom.css.map */