/* 
@media screen and (max-width: 1190px) {}
@media screen and (max-width: 991px) {}
@media screen and (max-width: 752px) {}
@media screen and (max-width: 400px) {} 
*/

/* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX COMMUNS */
@import url('https://fonts.googleapis.com/css2?family=Montserrat&family=Nunito+Sans:opsz@6..12&display=swap');

:root {
    --typo1: 'Nunito Sans', sans-serif;
    --typo2: 'Montserrat', sans-serif;
  }

body {
    font-family: var(--typo2);
  }
h1 {font-family: var(--typo1);}

h4 {
    border: solid 2px #e30613;
    color: #343434;
}

/* ************************************************************ Menu et top site */
.BreadCrump a {
    color: #0050a0;
}

.introSlide {
    height: 96.5vh;
}

.introSlide .content .scroll-downs {
    display: none;
}

.introSlide .content img {
    width: 30%;
    height: auto;
    position: relative;
    
    
    margin: 300px 35% 80px 35%;
    filter: drop-shadow(0px 0px 39px #ffffff9c);
}

@media screen and (max-width: 1100px) {
    .introSlide .content img {
        width: 40%;
        margin: 330px 30% 50px 30%;
    }
}

@media screen and (max-width: 900px) {
    .introSlide .content img {
        width: 50%;
        margin: 200px 25% 50px 25%;
    }
}

@media screen and (max-width: 752px) {
    .introSlide .content img {
        width: 70%;
        min-width: 250px;
        margin: unset;
    }
}

@media screen and (max-width: 800px) {
    .topadress>.Right {
        background-color: #e30613;
    }
}

.menu>ul>li .logo img {
    padding: 2em 5em 1em 1em;
}

.topadress-container, .topadress .Activities, .topadress .Activities a  {
    color: #0050a0;
}
.topadress .Activities a:hover {
	color: #e30613;
}
.topadress .Activities {
    border-left: thin solid #0050a0;
    border-right: thin solid #0050a0;
}

.menu>ul>li>ul {
    border-bottom: 7px solid #e30613;
}

.menu>ul>li>ul>li a::before {
    color: #e30613;
}

.bulle {
    background-color: #e30613;
}

.BackgroundColor1 {
    background: #efefef !important;
}

.header {
    border-color: #dbd3d1;
}

/* ********************************************************************** Footer */
.contentLigne1 {
    background: #ffffff;
    box-shadow: 0px -1px 31px #e306133b;
    color: #e30613;
}

.FooterPresent .societe {
    color: #e30613;
}

.FooterAdresse {
    border-left: 2px solid #e30613;
}

.FooterAdresse .contact {
    color: #0050a0;
}
.FooterAdresse .contact:hover {
	letter-spacing: 0em;
    color: #e30613;
}
.FooterAdresse ul li a {
    color: #0050a0;
}
.FooterAdresse ul li a:hover {
	color: #e30613;
}

@media screen and (max-width: 991.98px) {
    .FooterAdresse {
        border-top: 2px solid #e30613;
        border-left: none;
    }
}

.FooterAdresse h5 {
    color: #e30613;
}

.FooterAdresse .tel {
    color: #e30613;
    font-family: var(--typo2);
}

.FooterAdresse .tel:hover:before {
    color: #e30613;
}

.ligne2 ul li a:hover {
    color: #e30613;
}

.BreadCrump a:hover {
    color: #e30613;
}

/* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX HOME */
/* ********************************************************************** slider */
.introSlide .content {
    background: radial-gradient(#d8e8f7cc, #e3061305), #00000000;
}

.introSlide .content p {
    color: #ffffff;
    border-style: solid;
    border-width: 0 5px;
    border-color: #e30613;
    border-width: 0 2px;
    font-family: var(--typo2);
    font-size: 1.3em;
    filter: drop-shadow(0px 0px 1px #0050a03d);
}

.introSlide .content .mousey {
    border: 2px solid #e30613;
}

.introSlide .content img {
    filter: drop-shadow(0px 0px 1px #d8e8f7);
}

/* ********************************************************** Paragraphe principal */
.sticky+main {
    padding-top: 10em;
}

@media screen and (max-width: 991px) {
    .sticky+main {
        padding-top: 9em;
    }
}

@media screen and (max-width: 400px) {
    .sticky+main {
        padding-top: 8em;
    }
}

.MainTitle {
    color: #0050a0;
    font-family: var(--typo1);
}

.homeIntroText p {
    color: black;
}

/* *************************************************************** certifiactions */
.contentCertif h4 {
    color: #0050a0;
    font-family: var(--typo1);
}
.contentCertif h4 small {
    color: #e30613;
    font-family: var(--typo2);
}

.snip1482 a:hover {
    color: #e30613;
}

/* *************************************************************** select travaux */
.ReaTitre h4 {
    color: #0050a0;
    font-family: var(--typo2);
}
.ReaTitre h4 span {
    color: #e30613;
    /* font-family: var(--typo1); */
}

.ReaContent ul li .ReaItem .ReaItemLocal {
    background-color: #d8e8f7;
    color: #0050a0;
}
.ReaContent ul li .ReaItem:hover .ReaItemLocal {
    color: #d8e8f7;
}

.ReaContent ul li .ReaItem:before {
    background-color: #e30613f0;
}

.ReaContent ul li .ReaItem img {
    filter: brightness(1);
}
.ReaContent ul li .ReaItem:hover img {
    filter: brightness(0.5);
}

.ReaLinkAll a:hover {
    color: #e30613;
}

.ReaLinkAll a:before {
    color: #e30613;
}

.ReaLinkAll a {
    color: #0050a0;
}
.ReaLinkAll a:hover:before {
    color: #0050a0;
}

/* **************************************************************** avis clients */
.contentAvis h3 span {
    color: #e30613;
}

.content-txt a {
    color: #e30613;
}

.contentAvis .TousAvis a:hover {
    color: #e30613;
}

.contentAvis .TousAvis:before {
    background: rgb(255, 255, 255);
    background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, #e30613 50%, rgba(255, 255, 255, 0) 100%);
    background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 0%, #e30613 50%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, #e30613 50%, rgba(255, 255, 255, 0) 100%);
}

/* **************************************************************** partenaires */
.contentMarques h4 small {
    color: #e30613;
}

.MarqueItem {
    border: 1px dotted #e30613;
}

.MarqueItem .HideMarque a {
    color: #e30613;
}

/* **************************************************************** marques */

.Marques {
    background: #eee8e4;
    background-image: url(../img/image1.jpg);
    background-attachment: fixed;
    background-size: cover;
    background-position: center;
}
.Marques::before {
  content: "";
  position: absolute;
  inset: 0;
  background: #9b56339a; 
  pointer-events: none;
}

/* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX ENTREPRISE */
/* ********************************************************************* header */
.OpacColorBG {
    background: linear-gradient(#00000008, #d8e8f7a3), #0050a059;
}

.title {
    color: #0050a0;
    font-family: var(--typo1);
}

.Rea {
    background-color: #d8e8f7;
}
.ReaWhite {
    background-color: #ffffff;
}

/* ***************************************************************** Paragraphe */
.contentMain h1 {
    border-right: solid 5px #e30613;
    border-left: solid 5px #e30613;
}

.ContentMainRight {
    border-bottom: solid 10px #e30613;
}

h3 {
    border-left: solid 8px #e30613;
}

.MainTextLeft li::before {
    color: #e30613;
}

.ContentMainRight {
    border-bottom: solid 10px #e30613;
}

/* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX PAGE AVIS CLIENT */
.AvisClientItemIDContent time {
    color: #e30613;
}

/* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX PAGE LISTE REALISATIONS */
.ReaWhite .ReaPlusContent h5 {
    color: #e30613;
}

.ReaPlusContent ul li a:hover {
    background: #e30613;
}

.pagination .active a::before {
    background: #e30613;
}

/* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX REALISATION */

.ContentMainLeft {
    border-bottom: solid 10px #e30613;
}

.ReaWhite .ReaTitre h4 {
    color: #0050a0;
}

.rslides2Zoom {
    color: #e30613;
}

.ficheTech {
    color: #e30613;
}

.ContentAvisClientFiche {
    background: #e30613;
}

.ClientID small {
    color: #515151;
}

.AvisClientReponse {
    background: #c7c4c4;
    color: #e30613;
}

.AvisClientReponse::before {
    background: #c7c4c4;
}

.SuperForm a {
    background: #d8e8f7;
    color: #e30613;
}

.Contact {
    background-color: #0050a0;
}

.PageContact h4 {
    display: none;
}

.form-group input,
.form-group textarea {
    border-bottom: 1px solid #ffffff;
    color: white;
}

input:invalid~label,
textarea:invalid~label {
    background: #0050a0;
}

.checkbox__check {
    background: #0050a0;
}

.form-sec3 button {
    color: #0050a0;
}

.form-sec3 button:hover {
    background: #ff4754;
}

a.control_prev, a.control_next {
    background: #0050a0;
}

.form-sec3 label, .form-sec3 p, .form-sec3 p a {
    color: #ffffff;
}

/* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX TABLEAU */
        .table-container {
            width: 100%;
            max-width: 800px;
            margin: 0 auto;
            overflow-x: auto;
            box-shadow: 0 4px 6px rgba(0,0,0,0.05);
            border-radius: 8px;
            background-color: #ffffff;
        }
        table {
            width: 100%;
            border-collapse: collapse;
            text-align: left;
            font-size: 0.95rem;
        }
        th, td {
            padding: 1rem 0.75rem;
            border: 1px solid #4a4a4a;
        }
        th {
            color: #b85d30;
            text-transform: uppercase;
            font-weight: 700;
            font-size: 0.9rem;
            letter-spacing: 0.5px;
            text-align: center;
        }
        td {
            vertical-align: middle;
        }
        .col-prestation {
            width: 30%;
            font-weight: 500;
            text-align: center;
        }
        .col-contenu {
            width: 50%;
            text-align: center;
            line-height: 1.4;
        }
        .col-tarif {
            width: 20%;
            text-align: center;
            font-weight: bold;
            white-space: nowrap;
        }
        .sub-text {
            display: block;
            font-size: 0.85rem;
            color: #555555;
            margin-top: 0.25rem;
        }
        
        /* Version Mobile / Responsive alternative pour écrans très étroits */
        @media screen and (max-width: 600px) {
            table, thead, tbody, th, td, tr {
                display: block;
            }
            thead {
                display: none; /* Masque les entêtes classiques */
            }
            tr {
                margin-bottom: 1rem;
                border: 2px solid #b85d30;
                border-radius: 6px;
                background-color: #ffffff;
                overflow: hidden;
            }
            td {
                border: none;
                border-bottom: 1px solid #eeeeee;
                position: relative;
                padding-left: 45%;
                text-align: left !important;
                width: 100% !important;
            }
            td:last-child {
                border-bottom: none;
                background-color: #fdf8f5;
            }
            td::before {
                position: absolute;
                left: 0.75rem;
                width: 35%;
                font-weight: 700;
                color: #b85d30;
                text-transform: uppercase;
                font-size: 0.75rem;
                white-space: nowrap;
            }
            td:nth-of-type(1)::before { content: "Prestation"; }
            td:nth-of-type(2)::before { content: "Contenu inclus"; }
            td:nth-of-type(3)::before { content: "Tarif TTC"; }
            
            .sub-text {
                display: inline;
                margin-left: 0.25rem;
            }
        }

/* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX CONTACT */
.CTAForm a {
    background: #e30613;
}

.PageContact .phone a {
    background: #e30613;
}

.PageContact .phone a:hover {
    background: #ff4754;
}

.PageContact hr {
    border: solid 0px #e30613;
}

hr:before {
    background: #e30613;
    background: linear-gradient(90deg, rgb(247 166 0) 0%, rgb(0 0 0 / 0%) 100%);
}