@charset "UTF-8";
@import url(main.css);
#txt-img p strong { font-size: 1.5rem !important; }

.page-content { background-attachment: fixed !important; }

.spacer { display: none; }

/* --------------------------------------------------------------------------------------------------Bloc Espacement-----------------*/
.b-bloc-divider { height: 100px !important; background-color: transparent !important; border: none !important; box-shadow: none !important; }

#secondaires { height: 0 !important; }

/*---------------------------------------------------------------------------------------------------------Titres-----------------------------------*/
h1, .h1 { letter-spacing: 1px; }

h2, .h2 { letter-spacing: 0px; }

h3, .h3 { letter-spacing: 0px; }

.photoTitleText { background-image: url(/assets/images/amenagement-terrasse-chateaubriant-8329343.webp); background-attachment: fixed; background-size: cover; background-position: center; background-color: white !important; }

/*---------------------------------------------------------------------------------------------------------Texte + image------------------------*/
#txt-img, #txt-img .background-image-div-opacity { border-radius: 40px !important; }

/*-------------------------------------------------------------------------------------------------------------------------Boutons----------------*/
a#btn-boutique { font-size: 1.2rem !important; background-color: #F6F6F2 !important; color: #BB9675 !important; box-shadow: 0px 2px 6px #BB9675; border: 2px solid #BB9675 !important; }

a.button_homepageDoubleScreen, a.button_header { font-size: 1.4rem !important; text-align: center; background-color: transparent !important; color: #919461 !important; position: relative; overflow: hidden; transition: all 0.3s ease; box-shadow: 0px 2px 6px #A0A36B; border: 2px solid #A0A36B !important; }

a.button_header, a.button-header-telephone { font-size: 1.2rem !important; }

a.button_homepageDoubleScreen:hover, a.button_header:hover, a#btn-boutique:hover { color: white !important; }

a#btn-boutique::before, a#btn-boutique::after { background-color: #BB9675; }

a.button_homepageDoubleScreen::before, a.button_homepageDoubleScreen::after, a.button_header::before, a.button_header::after { content: ""; position: absolute; left: 0; width: 100%; height: 100%; background-color: #919461; opacity: 0; transition: all 0.5s ease; transform: rotate(45deg); transform-origin: center; z-index: -1; }

a.button_homepageDoubleScreen::before, a.button_header::before { top: -100%; }

a.button_homepageDoubleScreen::after, a.button_header::after { bottom: -100%; }

a.button_homepageDoubleScreen:hover::before, a.button_homepageDoubleScreen:hover::after, a.button_header:hover::before, a.button_header:hover::after { opacity: 60%; transform: rotate(0deg); }

a.button_homepageDoubleScreen:hover::before, a.button_header:hover::before { top: 0; }

a.button_homepageDoubleScreen:hover::after, a.button_header:hover::after { bottom: 0; }

/*------------------------------------------------------------------------------------------------------------------Bloc SVG-----------------------*/
div.picto_card { min-height: 50vh !important; align-content: center; }

.picto_card p:nth-child(1) span { letter-spacing: -0.7px !important; font-size: 1.8rem !important; }

.picto_card p:nth-child(2) span { letter-spacing: -0.7px !important; font-size: 1.3rem !important; }

.svg-picto-card > svg { width: 50% !important; height: 50% !important; }

.picto_card a { text-decoration: none !important; display: inline-block; transition: transform 0.3s ease; }

.picto_card a:hover { transform: scale(1.05); }

.svg-picto-card a[href="#nos-avis"] { position: relative; display: inline-block; }

.svg-picto-card a[href="#nos-avis"]::after { content: "\F2E1"; /* Codepoint du curseur "cursor-fill" */ font-family: "bootstrap-icons"; position: absolute; right: -6px; /* ajuste le placement */ bottom: -6px; font-size: 1.25em; color: #E8E8DF; transform: scaleX(-1); /* inversion horizontale */ pointer-events: none; }

/*-----------------------------------------------------------------------------------------------Bloc maps-------------------------------*/
/* Bloc carte */
.maps-section { border-radius: 40px; overflow: hidden; position: relative; }

/* Fond décoratif restauré */
.maps-section .background-image-div-opacity { border-radius: 40px; background-image: url("/assets/images/extension-maison-bois-vannes-2090041.webp"); background-size: cover; background-position: center; position: absolute; inset: 0; z-index: 0; }

/* Contenu au-dessus du fond */
.maps-section .content-container { position: relative; z-index: 1; }

/* Empile infos et carte */
.maps-section .informations-list { display: block; margin: 0; }

.maps-section .content { width: 100%; padding: 2rem; }

/* Carte en dessous des infos */
.maps-section .map-content { width: 100%; padding: 0; }

.maps-section .map-content iframe { display: block; width: 100%; height: 420px; /* hauteur ajustable */ border: 0; border-radius: 0 0 40px 40px; }

/*---------------------------------------------------------------------------------------------------------------Bannière vidéo---------------------------*/
.videoTitle { width: 100% !important; }

.video-background-holder { align-content: center; }

@media (max-width: 940px) { div.video-background-content { max-width: 90vw !important; } }

.video-background-content { max-height: 50vh !important; max-width: 60vw !important; }

div.video-background-content.container > div { background-image: url(https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2FhZxMy1ZdaUU7yk2cmygjXLSgGI63%2Fimages%2FVisuels_l9oo.webp); background-size: cover; background-repeat: no-repeat; background-position: center; border-radius: 30px !important; box-shadow: rgba(0, 0, 0, 0.25) 0px 54px 55px, rgba(0, 0, 0, 0.12) 0px -12px 30px, rgba(0, 0, 0, 0.12) 0px 4px 6px, rgba(0, 0, 0, 0.17) 0px 12px 13px, rgba(0, 0, 0, 0.09) 0px -3px 5px; }

#secondaires + style + #fullHeight { height: 70vh; }

/*-------------------------------------------------------------------------------------------------------Tableaux-------------------*/
tbody { background-color: white; }

table th:nth-child(3), table td:nth-child(3) { border-right: 4px solid #BB9675 !important; border-left: 4px solid #BB9675 !important; background-color: white !important; }

/*--------------------------------------------------------------------------------------------------Galeries------------------*/
#myGallery img { border-radius: 20px; }

#myGallery { margin: 80px 0; }

/*-------------------------------------------------------------------------------------------------------CTA-------------------*/
.cta_banner { min-height: 40vh !important; }

/*----------------------------------------------------------------------------------------------------Bloc avis-----------------------*/
.googleReviews-div { background-image: url(/assets/images/amenagement-terrasse-chateaubriant-8329343.webp); background-attachment: fixed; background-size: cover; background-position: center; background-color: white !important; }

.googleReviews-div .owl-carousel .owl-stage-outer { position: relative; overflow: hidden; -webkit-transform: translate3d(0, 0, 0); padding-bottom: 70px; }

.googleReviews-div .container { margin-top: 0 !important; }

/*----------------------------------------------------------------------------------------------------------Bloc SEO----------------------*/
.first-activity-div .background-image-div-opacity, .second-activity-div .background-image-div-opacity, .third-activity-div .background-image-div-opacity { border-radius: 40px !important; }

/*---------------------------------------------------------------------------------------------------------------Formulaire de contact---------------------------*/
#contact { background-attachment: fixed; background-size: cover; background-position: center; background-color: transparent !important; }

#contact h3 { padding: 20px; background-image: url(/assets/images/amenagement-terrasse-chateaubriant-8329343.webp); background-attachment: fixed; background-size: cover; background-position: center; border-radius: 40px; margin: 40px 0; }

#contact a { text-decoration: none; }

/*----------------------------------------------------------------------------------------------------------Cartes de services Custom----------------------*/
.custom-cards-2 { width: 100%; display: flex; display: -webkit-flex; justify-content: center; -webkit-justify-content: center; max-width: 1500px; margin: 50px auto 100px auto; }

.card__img { visibility: hidden; background-size: cover; background-position: center; background-repeat: no-repeat; width: 100%; height: 235px; border-top-left-radius: 12px; border-top-right-radius: 12px; }

.card__img--hover { transition: 0.2s all ease-out; background-size: cover; background-position: center; background-repeat: no-repeat; width: 100%; position: absolute; height: 235px; border-top-left-radius: 12px; border-top-right-radius: 12px; top: 0; }

.custom-card-2 { margin-right: 25px; transition: all 0.4s cubic-bezier(0.175, 0.885, 0, 1); background-image: url(https://firebasestorage.googleapis.com/v0/b/refpro-app-ca244.appspot.com/o/customers%2FhZxMy1ZdaUU7yk2cmygjXLSgGI63%2Fimages%2FVisuels_1_lbih.webp?alt=media&token=e2cee9d6-a1b6-44b8-ae35-4171b6010cc1); background-size: cover; background-attachment: fixed; background-position: center; width: 33.3%; position: relative; border-radius: 12px; overflow: hidden; box-shadow: 0px 13px 10px -7px rgba(0, 0, 0, 0.1); }

.custom-card-2:hover { box-shadow: 0px 30px 18px -8px rgba(0, 0, 0, 0.1); transform: scale(1.1, 1.1); background-color: white !important; background-image: unset; }

.card__info { z-index: 2; background-color: transparent; border-bottom-left-radius: 12px; border-bottom-right-radius: 12px; padding: 16px 24px 24px 24px; }

.card__title { margin-top: 5px; margin-bottom: 10px; }

.custom-card-2:hover .card__img--hover { height: 100%; opacity: 0.4; }

.custom-card-2:hover .card__info { position: relative; }

.custom-card-2:hover .card__info-hover { opacity: 1; }

@media (max-width: 1024px) { .custom-cards-2 { flex-wrap: wrap; /* Permet aux cartes de passer à la ligne */ padding: 0 5rem; } .custom-card-2 { width: 48%; /* Deux cartes par ligne sur tablette */ margin-bottom: 20px; } }

@media (max-width: 768px) { .custom-card-2 { width: 100%; /* Une carte par ligne sur mobile */ margin-right: 0; /* Supprime les marges */ } }

a.nav-link.fs-6.dropdown-toggle.px-0.text-color-secondary.text-center { color: #919461 !important; }

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