@charset "UTF-8";
@import url(main.css);
/*-----enlever logo footer-----*/
.mx-4.mb-3.logo-footer.mx-auto { display: none; }

#bloc-blanc li { color: #ffffff; }

#bloc-bleu li { color: #0E2E3B; }

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

.logo_nav { height: 11vh !important; }

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

/*----------------------------------------  Supprimer bandeau pages secondaires*/
.websitePageTitle-div { display: none !important; }

/* ------------------------------------------------------------Logo blanc footer */
.logo-footer > img { filter: brightness(0) invert(1); }

/* ------------------------------------------------------------STYLES BOUTONS */
.button_homepageDoubleScreen, a.button_header { font-family: 'Montserrat', sans-serif !important; text-transform: uppercase; border-radius: 15px !important; transition: background 0.3s ease, color 0.3s ease; background-color: #00AEEF; color: #000000 !important; }

.button_homepageDoubleScreen:hover, a.button_header:hover { background-color: #0E2E3B; color: #FFFFFF !important; }

/* ------------------------------------------------------------PADDING CTA */
div.cta_banner { padding-top: 8rem !important; padding-bottom: 8rem !important; }

/*-------------------------------------------------------------texte map----*/
.d-flex.py-3 { color: #0E2E3B; }

/* ------------------------------------------------------------Navbar affichée */
#navigation-bar-hide { position: fixed !important; top: 0 !important; opacity: 1 !important; transition: none !important; }

/*--------------------------BLOC VIDEO + TEXTE----------------------*/
.custom-video-div { display: flex; align-items: center; gap: 30px; flex-wrap: wrap; padding: 100px; background-size: cover; background-position: center; background-attachment: fixed; }

.custom-video-text { flex: 1; padding: 20px; }

.custom-video { flex: 1; }

@media (max-width: 908px) { .custom-video-div { flex-direction: column !important; } }

@media (max-width: 768px) { .custom-video-div { padding: 0 !important; } }

.realisations-section { background: #FFFFFF; padding: 60px 20px; }

.overlay { max-width: 1200px; margin: 0 auto; padding: 40px 20px; }

.realisations-main-title { text-align: center; font-size: 2.8rem; color: #0e2e3b; font-weight: bold; margin: 3rem 0rem; }

.filter-tabs { display: flex; justify-content: center; gap: 12px; margin-bottom: 32px; flex-wrap: wrap; }

.filter-btn { background: #BBDEFB; border: none; color: #000000; font-size: 1.1rem; padding: 12px 24px; border-radius: 30px; cursor: pointer; font-weight: 600; box-shadow: none; display: flex; align-items: center; justify-content: center; min-height: 52px; line-height: 1.2; transition: background 0.2s; text-align: center; }

.filter-btn.active { background: #0E2E3B; color: #ffffff; }

.realisations-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 24px; }

.realisation-card { border-radius: 8px; overflow: hidden; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); transition: transform 0.2s; }

.realisation-card:hover { transform: translateY(-4px); }

.realisation-card img { width: 100%; height: 320px; object-fit: cover; display: block; cursor: pointer; }

.realisation-card.hidden { display: none; }

/* Modal pour l’image agrandie */
.modal { display: none; position: fixed; z-index: 1000; left: 0; top: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.85); align-items: center; justify-content: center; }

.modal-content { max-width: 500px; max-height: 70vh; width: auto; height: auto; border-radius: 8px; background: #fff; }

.modal-close { position: absolute; top: 24px; right: 32px; color: #fff; font-size: 36px; font-weight: bold; cursor: pointer; z-index: 1100; }

.modal-close:hover { color: #00aeef; }

@media (max-width: 900px) { .filter-tabs { gap: 8px; font-size: 0.9rem; } .filter-btn { padding: 10px 20px; font-size: 1rem; min-height: 48px; } .realisations-grid { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 16px; } .realisation-card img { height: 240px; } .modal-content { max-width: 90%; max-height: 90%; } }

button.filter-btn { font-size: 0.9rem; padding-bottom: 0px; }

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