/* SHJ Travaux — thème or / noir + correctifs Bootstrap (charge après bootstrap.min.css) */
:root {
    --bs-primary: #c9a227;
    --bs-primary-rgb: 201, 162, 39;
    --bs-link-color: #a68520;
    --bs-link-hover-color: #8a7018;
}

.bg-shj-top { background: linear-gradient(180deg, #faf9f6, #f0ede6); }
.shj-brand { font-weight: 700; letter-spacing: 0.02em; }
.shj-site-logo { height: auto; object-fit: contain; }
.shj-site-logo--topbar { max-height: 42px; max-width: min(220px, 42vw); }
.shj-site-logo--navbar { max-height: 40px; max-width: min(200px, 55vw); }
.shj-link-contact { border-bottom: 1px solid transparent; }
.shj-link-contact:hover { border-bottom-color: var(--bs-primary); }
.shj-mobile-bar { border-bottom: 1px solid rgba(0, 0, 0, 0.06); }
.shj-nav-toggler { min-width: 48px; min-height: 48px; padding: 0.5rem 0.75rem; }
.text-shj-gold { color: #e8d48b !important; }

.contact-tap-target a { display: inline-block; padding: 0.25rem 0; min-height: 44px; line-height: 1.5; }

.btn-primary {
    background: linear-gradient(180deg, #d4af37, #b8941f);
    border-color: #8a7018;
    color: #0d0d0d !important;
    font-weight: 700;
}
.btn-primary:hover { filter: brightness(1.06); color: #000 !important; }
.btn-secondary { background: #0d0d0d; border-color: #2a2a2a; color: #e8d48b !important; }
.btn-secondary:hover { background: #1a1a1a; color: #f5e6a8 !important; }
.bg-primary { background-color: #0d0d0d !important; }
.text-primary { color: #b8941f !important; }

.navbar-light .navbar-nav .nav-link { color: #2a2a2a; }
.navbar-light .navbar-nav .nav-link.active,
.navbar-light .navbar-nav .nav-link:hover { color: #c9a227 !important; }

/* Pied de page : plus de bleu Bootstrap */
.shj-footer { border-top: 1px solid rgba(201, 162, 39, 0.4); }
.shj-accent-icon { color: #d4af37 !important; }
.shj-footer-link:hover, .shj-footer-brand:hover { color: #f0e6b8 !important; }
.shj-footer-brand { color: #f5f3ee; border-bottom: 1px solid rgba(212, 175, 55, 0.5); }
.shj-footer-credit { color: #aaa; border-bottom: 1px solid rgba(255, 255, 255, 0.2); }
.shj-footer-credit:hover { color: #d4af37 !important; }
.shj-footer-service-link { color: #f0ebe0 !important; text-align: left; }
.shj-footer-service-link:hover { color: #d4af37 !important; letter-spacing: 0.5px; }

.shj-project-card img { aspect-ratio: 4/3; object-fit: cover; }
.shj-gallery-thumb { cursor: pointer; aspect-ratio: 1; object-fit: cover; }

.shj-services-home .border-primary { border-color: rgba(201, 162, 39, 0.45) !important; }
.shj-services-home .service-carousel .owl-dots { margin-top: 1.75rem; }

@media (max-width: 991.98px) {
    .top-bar { height: auto; padding: 0.75rem 1rem; }
    .header-carousel .owl-carousel-item h1 { font-size: clamp(1.5rem, 6vw, 2rem); }
    .navbar-light .navbar-nav .nav-link { padding: 12px 0; font-size: 16px; }
}
@media (min-width: 992px) {
    .shj-services-home { padding-top: 4rem !important; padding-bottom: 4rem !important; }
}
