@charset "UTF-8";
@import url(main.css);
#bloc-vert li { color: #F2EFC2; }

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

.logo_nav { height: 9vh !important; }

/*-----bloc texte texte-photo-----*/
.modele-spa { background-color: #f7ffe0; }

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

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

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

/*-----------texte titre en vert--------------*/
.text-color-sixth { color: #1B6535 !important; /* vert (ton texte de base) */ }

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

/*---ecriture bouton téléphone header---*/
.text-color-fourth { color: #ffffff !important; }

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

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

.animated-border-button:hover span { color: #1B6535 !important; }

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

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

/*---grossissement bouton---*/
.button_homepageDoubleScreen { transition: transform 0.3s ease; display: inline-block; border: 2px solid #F7FFE0 !important; }

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

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

footer h5 { color: #1B6535 !important; font-family: 'Indie Flower', cursive; font-size: 1.45rem; /* légèrement plus grand pour se démarquer */ }

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

/* -----bouton contact envoyer----- */
button.btn-outline-dark { --bs-btn-color: #ffffff; --bs-btn-border-color: #9DBB6B; --bs-btn-hover-color: #ffffff; --bs-btn-hover-bg: #1B6535; --bs-btn-hover-border-color: #1B6535; --bs-btn-bg: #9DBB6B; --bs-gradient: none; background-color: var(--bs-btn-bg); color: var(--bs-btn-color); }

/* ----------Flèche retour en haut--------------- */
#back-to-top { position: fixed; bottom: 24px; right: 24px; background-color: #9DBB6B; color: #fff !important; font-size: 20px; font-weight: bold; line-height: 1; text-align: center; padding: 14px 18px; border-radius: 50%; 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; transition: opacity .3s ease, transform .2s ease, background-color .3s ease; }

#back-to-top.show { opacity: 1; pointer-events: auto; }

#back-to-top:hover { background-color: #1B6535; transform: translateY(-3px); }

/*----------bloc presta/real--------*/
.servicesGallery-card { position: relative; overflow: hidden; border: 2px solid transparent; }

.servicesGallery-card::before, .servicesGallery-card::after { content: ''; position: absolute; width: 0; height: 1px; background: white; transition: width 0.3s ease; }

.servicesGallery-card::before { top: 10px; left: 10px; right: 10px; }

.servicesGallery-card::after { bottom: 10px; left: 10px; right: 10px; }

.servicesGallery-card:hover::before, .servicesGallery-card:hover::after { width: calc(100% - 20px); z-index: 99; }

.servicesGallery-card .overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(27, 101, 53, 0.8); color: white; display: flex; justify-content: center; align-items: center; opacity: 0; transition: opacity 0.3s ease; }

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

.servicesGallery-card .overlay-text { text-align: center; font-size: 1.3rem; font-weight: bold; }

/*--------bloc en-tête présta--------*/
.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; }

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

.hero-overlay h1 { font-size: 2.4rem; font-weight: 700; margin-bottom: 20px; font-family: 'Indie Flower', cursive; }

.hero-btn { display: inline-flex; align-items: center; gap: 8px; background: #9DBB6B; /* vert clair */ color: #fff; text-decoration: none; font-weight: 600; padding: 10px 20px; border-radius: 25px; border: 2px solid #F7FFE0; transition: background 0.3s ease; font-family: 'Poppins', sans-serif; }

.hero-btn:hover { background: #1B6535; /* vert foncé au hover */ }

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

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

/*-----------3 blocs vertical------------*/
.services-columns { display: flex; flex-wrap: wrap; /* permet le responsive */ gap: 0; overflow: hidden; }

.column { flex: 1; display: flex; flex-direction: column; /* mobile par défaut */ }

.block { display: flex; justify-content: center; align-items: center; }

.block.text { background: #1B6535; flex-direction: column; text-align: center; min-height: 250px; /* remplace height fixe */ padding: 30px; }

.block.text h2 { font-size: 1.6rem; font-weight: 700; margin-bottom: 0.8rem; color: #F7FFE0; }

.block.text p { font-size: 1rem; margin-bottom: 1.2rem; color: #F7FFE0; }

.btn-more { display: inline-block; padding: 8px 16px; background: #9DBB6B; /* vert clair */ color: #ffffff; text-decoration: none; font-size: 0.9rem; font-weight: 600; border-radius: 25px; transition: background 0.3s ease; border: 2px solid #F7FFE0; }

.btn-more:hover { background: #1B6535; /* vert foncé */ color: #fff; }

.block.image { min-height: 350px; /* remplace height fixe */ }

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

/* ✅ Mobile (<900px) : toujours Texte -> Image */
@media (max-width: 899px) { .services-columns { flex-direction: column; } .block.image, .block.text { min-height: auto; } .column { display: flex; flex-direction: column; } /* Toujours texte au-dessus de l'image */ .column .block.text { order: 1; } .column .block.image { order: 2; } }

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