@charset "UTF-8";
@import url(main.css);
/*---------------------------------------------------------------------------header statique---------------------------------------------------------------------------------*/
#navigation-bar-hide { opacity: 1 !important; top: 0 !important; }

/*---------------------------------------------------------------------------ancrage gallery---------------------------------------------------------------------------------*/
#custom-gallery { scroll-margin-top: 80px; }

/*------------------------------------------------------------------------augmentation header------------------------------------------------------------------------------*/
.navbar-brand { height: 11vh !important; width: 11vw !important; }

.logo_nav { height: 11vh !important; }

/*--------------------------------------------------------------------------bloc image droite--------------------------------------------------------------------------------*/
#bloc-image-droite li { color: #000000; }

#bloc-image-droite { scroll-margin-top: 50px; }

.image-droite { background-color: #E8FFEA; }

/*-------------------------------------------------------------------------bloc image gauche-------------------------------------------------------------------------------*/
#bloc-image-gauche li { color: #E8FFEA; }

.image-gauche { background-color: #000000; }

/*-----------------------------------------------------------------------------Bloc maps------------------------------------------------------------------------------------*/
.maps-section .content { color: #E8FFEA !important; }

.maps-section .map-content { padding: 50px; }

.maps-section iframe { border-radius: 20px !important; }

/*-----------------------------------------------------------------------------texte footer-----------------------------------------------------------------------------------*/
footer, footer p, footer a, footer li, footer ul, footer i { color: #000000 !important; font-family: 'Outfit', sans-serif; font-size: 1rem; }

footer h5 { color: #000000 !important; font-family: 'Parkinsans', sans-serif; font-size: 1.25rem; /* légèrement plus grand pour se démarquer */ }

.text-color-third { color: #000000 !important; font-family: 'Outfit', sans-serif; font-size: 1rem; text-align: left; hyphens: auto; }

/*---------------------------------------------------------------------------texte bloc map----------------------------------------------------------------------------------*/
.col-sm-12.col-lg-6.col-xl-4.py-5.content.text-color-sixth { color: #000000 !important; font-family: 'Outfit', sans-serif; }

/* ------------------------------------------------------------------------------ombre---------------------------------------------------------------------------------------*/
div.shadow-lg { box-shadow: none !important; }

/*-----------------------------------------------------------------écriture bouton téléphone header-------------------------------------------------------------------------*/
.text-color-fourth { color: #ffffff !important; font-family: 'Outfit', sans-serif; }

/*-----------------------------------------------------------------------surlignement header--------------------------------------------------------------------------------*/
.animated-border-button:after { background-color: #34C93B; }

/*------------------------------------------------------------------------effet hover header---------------------------------------------------------------------------------*/
.animated-border-button span { transition: color 0.3s ease; }

.animated-border-button:hover span { color: #34C93B !important; }

/*-------------------------------------------------------------------grossissement bouton header---------------------------------------------------------------------------*/
.button-header-telephone { transition: transform 0.3s ease, border 0.3s ease; display: inline-block; font-family: 'Outfit', sans-serif; font-weight: 600 !important; font-size: 1rem; }

.button-header-telephone:hover { transform: scale(1.1); }

/*-----------------------------------------------------------------------grossissement bouton------------------------------------------------------------------------------*/
.button_homepageDoubleScreen { transition: transform 0.3s ease; display: inline-block; }

.button_homepageDoubleScreen:hover { transform: scale(1.05); }

/* -----------------------------------------------------------------------bouton contact envoyer---------------------------------------------------------------------------- */
button.btn-outline-dark { --bs-btn-color: #ffffff; --bs-btn-border-color: #37EC3F; --bs-btn-hover-color: #ffffff; --bs-btn-hover-bg: #34C93B; --bs-btn-hover-border-color: #34C93B; --bs-btn-bg: #37EC3F; --bs-gradient: none; background-color: var(--bs-btn-bg); color: var(--bs-btn-color); }

/* -----------------------------------------------------------------------Flèche retour en haut------------------------------------------------------------------------------ */
/* Bouton Retour en haut */
#back-to-top { position: fixed; bottom: 24px; right: 24px; background-color: #37EC3F; color: #ffffff !important; font-size: 20px; font-weight: bold !important; line-height: 1; text-align: center; padding: 14px 18px; border-radius: 100%; border: 2px solid #ffffff; box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2); cursor: pointer; text-decoration: none; opacity: 0; pointer-events: none; z-index: 9999; min-width: 48px; /* 👈 meilleure accessibilité mobile */ min-height: 48px; /* 👈 idem */ transform: scale(0.9); /* 👈 effet “pop” à l’apparition */ transition: opacity .3s ease, transform .3s ease, background-color .3s ease; }

/* Visible après le défilement */
#back-to-top.show { opacity: 1; pointer-events: auto; transform: scale(1); }

/* Effet au survol */
#back-to-top:hover { background-color: #34C93B; transform: translateY(-3px); }

/* Défilement fluide global (même sans JS) */
html { scroll-behavior: smooth; }

/*-------------------------------------------------------------------------bloc presta/real 2 case----------------------------------------------------------------------------*/
/* ==== Galerie ==== */
.rth-gallery { display: flex; flex-wrap: wrap; justify-content: center; gap: 2rem; padding: 80px 20px; background-color: #E8FFEA; }

.rth-link { text-decoration: none; }

/* ==== Carte ==== */
.rth-card { position: relative; overflow: hidden; border: 3px solid #000000; border-radius: 1.5rem; width: 450px; height: 450px; box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12); background: #E8FFEA; }

/* ==== Image ==== */
.rth-card img { width: 100%; height: 100%; object-fit: cover; display: block; transition: opacity 0.6s ease; }

.rth-card:hover img { opacity: 0.5; }

/* ==== Traits ==== */
.rth-card::before, .rth-card::after { content: ''; position: absolute; height: 3px; background: #E8FFEA; left: 10px; right: 10px; width: calc(100% - 20px); z-index: 3; transform: scaleX(0); transform-origin: left; opacity: 0; transition: transform 0.5s ease, opacity 0.3s ease; }

.rth-card::before { top: 10px; }

.rth-card::after { bottom: 10px; }

/* ==== Hover : apparition gauche → droite ==== */
.rth-card:hover::before, .rth-card:hover::after { transform: scaleX(1); transform-origin: left; opacity: 1; }

/* ==== Transition de sortie ==== */
.rth-card:not(:hover)::before, .rth-card:not(:hover)::after { transform: scaleX(0); transform-origin: right; opacity: 1; transition: transform 0.5s ease, opacity 0.3s ease; }

/* ==== Overlay ==== */
.rth-overlay { position: absolute; inset: 0; background: rgba(52, 201, 59, 0.75); /* vert RTH 85 */ color: #FDE6D5; display: flex; justify-content: center; align-items: center; opacity: 0; transition: opacity 0.5s ease; z-index: 2; }

.rth-card:hover .rth-overlay { opacity: 1; }

/* Texte Overlay */
.rth-overlay-text { text-align: center; font-size: 1.6rem; color: #E8FFEA; font-weight: bold; font-family: 'Parkinsans', sans-serif; z-index: 4; position: relative; }

/* ==== Responsive ==== */
@media (max-width: 980px) { .rth-card { width: 380px; height: 380px; } .rth-overlay { opacity: 1 !important; } }

@media (max-width: 640px) { .rth-card { width: 100%; height: 300px; } }

/*---------------------------------------------------------------------------bloc en-tête présta-----------------------------------------------------------------------------*/
.rth-hero-block { position: relative; background-size: cover; background-position: center; height: 550px; /* ajuste selon besoin */ display: flex; align-items: center; justify-content: flex-start; padding: 40px; }

.rth-hero-overlay { background: rgba(0, 0, 0, 0.6); /* fond semi-transparent */ color: #fff; padding: 30px 40px; border-radius: 20px; max-width: 600px; }

.rth-hero-overlay h2 { font-size: 2.2rem; font-weight: 700 !important; color: #E8FFEA; margin-bottom: 20px; font-family: 'Parkinsans', sans-serif; }

.rth-hero-btn { display: inline-flex; align-items: center; gap: 8px; background: #37EC3F; color: #E8FFEA; text-decoration: none; font-weight: 600; padding: 10px 20px; border-radius: 25px; border: 2px solid #E8FFEA; transition: background 0.3s ease; font-family: 'Outfit', sans-serif; }

.rth-hero-btn:hover { background: #34C93B; color: #E8FFEA; }

.rth-hero-btn .arrow { font-size: 1.2rem; transition: transform 0.3s ease; }

.rth-hero-btn:hover .arrow { transform: translateY(4px); }

/*----------------------------------------------------------------------------Galerie Custom--------------------------------------------------------------------------------*/
#custom-gallery { padding-top: 40px; }

@media screen and (min-width: 991px) { #custom-gallery { padding: 30px 30px 0 30px; } }

#custom-gallery .image { height: 400px !important; margin: 20px 0; border-radius: 20px; }

.img-wrapper { position: relative; height: 100%; margin-top: -15px; }

.img-wrapper img { border-radius: 30px; width: 100%; }

.img-overlay { background: rgba(0, 0, 0, 0.7); width: 100%; height: 100%; position: absolute; top: 0; left: 0; display: flex; justify-content: center; align-items: center; opacity: 0; border-radius: 30px; }

.img-overlay i { color: #34C93B; font-size: 3em; }

#overlay { background: rgba(0, 0, 0, 0.7); width: 100%; height: 100%; position: fixed; top: 0; left: 0; display: flex; justify-content: center; align-items: center; z-index: 999; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

#overlay img { margin: 0; width: 80%; height: auto; object-fit: contain; padding: 5%; }

@media screen and (min-width: 768px) { #overlay img { width: 60%; } }

@media screen and (min-width: 1200px) { #overlay img { width: 50%; } }

#nextButton, #prevButton, #exitButton { background-color: #37EC3F; color: #fff; font-size: 1.2em; transition: background-color 0.3s; border: none; border-radius: 50%; width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; cursor: pointer; }

#nextButton:hover, #prevButton:hover, #exitButton:hover { background-color: #34C93B; }

@media screen and (min-width: 768px) { #nextButton, #prevButton, #exitButton { font-size: 1.6em; width: 50px; height: 50px; } }

#exitButton { position: absolute; top: 105px; right: 15px; }

.img-responsive { height: 100% !important; object-fit: cover !important; }

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