/*:root {
--topbar-bg: #228b22;
--topbar-color: #ffffff;
}*/


.topbar {
position: fixed;
top: 0;
left: 0;
right: 0;
z-index: 1031;
background: #228b22;
color: #ffffff;
	/*background: var(--topbar-bg);
	color: var(--topbar-color); */
font-size: 0.95rem;
}


.topbar a { color: inherit; text-decoration: none; }
.topbar a:hover { text-decoration: underline; }


body { padding-top: 48px; }


header.site-header {
background: #ffffff;
border-bottom: 1px solid #000000;
}


.site-logo img {
max-height: 200px;
width: auto;
display: block;
margin-left: auto;
margin-right: auto;
}


.navbar {
padding-top: .5rem;
padding-bottom: .5rem;
}

.navtext {
color: #000000;
}


.navbar .nav-link {
font-weight: 500;
color:#000000;
}


.nav-link:focus, .navbar-toggler:focus {
outline: 2px dashed #228b22;
outline-offset: 2px;
}
.btn-devis{
background-color: #228b22;  
border-color: #228b22;
color: #FFFFFF;
}
.btn-devis:hover {
background-color: #1e7a1e; 
border-color: #228B22;
color: #ffffff;
	
}
/* Footer */
.site-footer { background: #228b22; color: #e5e7eb; }
.site-footer a { color: #e5e7eb; }
.site-footer .footer-bottom { background: #228b22; }
.site-footer img { 
max-height: 200px;
width: auto;
display: block;
margin-left: auto;
margin-right: auto; }

/* Avis Google */
#avis .review-card {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: .75rem;
  padding: 1rem;
  height: 100%;
}
#avis .review-author {
  font-weight: 600;
}
#avis .review-text {
  margin-top: .5rem;
}
#avis .star {
  display: inline-block;
  width: 1rem; height: 1rem;
  mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="%23000" viewBox="0 0 16 16"><path d="M3.612 15.443 4.73 9.93.478 6.37l5.356-.78L8 .223l2.166 5.367 5.356.78-4.252 3.56 1.118 5.514L8 12.347l-4.389 3.096z"/></svg>') no-repeat center / contain;
  background: #f5c518; /* or #ffc107 */
}
#avis .star.muted { background: #e0e0e0; }
#avis .review-meta { font-size: .875rem; color: #6b7280; }

/* Badges avant-apres */
.badge-avp {
  position: absolute;
  top: 12px;
  left: 12px;
  padding: 0.4rem 0.8rem;
  font-size: 0.85rem;
  font-weight: 600;
  border-radius: 0.5rem;
  color: #fff;
  box-shadow: 0 2px 6px rgba(0,0,0,0.3);
}
.badge-avp-avant {
  background-color: #dc3545; /* rouge Bootstrap */
}
.badge-avp-apres {
  background-color: #28a745; /* vert Bootstrap */
}

/* Liens sociaux */
.social-links {
  display: flex; gap: .75rem; flex-wrap: wrap; align-items: center;
}
.social-links a {
  display: inline-flex; align-items: center; justify-content: center;
  width: 40px; height: 40px; border-radius: 9999px;
  color: #228b22; background: #f3f6f4; text-decoration: none;
  transition: transform .15s ease, background .15s ease, color .15s ease;
}
.social-links a:hover { transform: translateY(-2px); background: #e7efe9; color: #1a6e1a; }
.social-links a:focus { outline: 2px solid #aad3aa; outline-offset: 2px; }
.social-links .label { font-size: .95rem; color: #6c757d; margin-right: .25rem; }

/* Variante “inversée” pour topbar sombre */
.topbar .social-links a { background: rgba(255,255,255,.15); color: #fff; }
.topbar .social-links a:hover { background: rgba(255,255,255,.25); color: #fff; }