/* ===================================
    MSAE SARL - couleurs du logo
    (surcharge de la démo Crafto Medical)
====================================== */
:root {
    --base-color: #e3962b;   /* orange du logo */
    --dark-gray: #0d5592;    /* bleu du logo */
    --deep-blue: #0a3f6e;
}
/* header */
header .navbar-brand img {
    max-height: 62px;
}
.navbar .navbar-nav .nav-link {
    font-size: 17px;
}
header .header-button .btn {
    white-space: nowrap;
}
.navbar .navbar-nav .nav-item.active .nav-link,
.navbar .navbar-nav .nav-link:hover {
    color: var(--base-color);
}
/* bg color */
.bg-light-turquoise-blue {
    background-color: #eef4fa;
}
.bg-light-sea-green-transparent {
    background-color: rgba(227, 150, 43, 0.8);
}
.bg-light-sea-green-transparent-light {
    background-color: rgba(227, 150, 43, 0.15);
}
.bg-deep-blue {
    background-color: var(--deep-blue);
}
.text-deep-blue {
    color: var(--deep-blue);
}
/* hero */
.hero-figure img {
    border-radius: 10px;
    max-height: 560px;
    width: 100%;
    object-fit: cover;
}
.hero-banner-bg {
    background: linear-gradient(120deg, #eef4fa 0%, #ffffff 55%, rgba(227, 150, 43, 0.12) 100%);
}
/* images à hauteur uniforme */
.img-cover {
    width: 100%;
    object-fit: cover;
}
.h-260px-img { height: 260px; }
.h-320px-img { height: 320px; }
.h-420px-img { height: 420px; }
/* service card */
.icon-with-text-style-02 .feature-box-icon i {
    font-size: 48px;
    color: var(--dark-gray);
    transition: color .3s;
}
.icon-with-text-style-02 .hover-box:hover .feature-box-icon i {
    color: var(--base-color);
}
/* réalisations */
.project-card {
    overflow: hidden;
    border-radius: 8px;
    position: relative;
}
.project-card img {
    transition: transform .6s;
}
.project-card:hover img {
    transform: scale(1.06);
}
.project-card .project-caption {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 25px;
    background: linear-gradient(to top, rgba(10, 63, 110, 0.95), rgba(10, 63, 110, 0));
}
/* clients */
.client-badge {
    display: inline-block;
    padding: 10px 22px;
    margin: 6px;
    border-radius: 30px;
    background: #fff;
    color: var(--dark-gray);
    font-weight: 700;
    font-size: 16px;
    box-shadow: 0 5px 20px rgba(13, 85, 146, 0.08);
    border: 1px solid rgba(13, 85, 146, 0.1);
}
.client-badge.client-main {
    background: var(--dark-gray);
    color: #fff;
}
/* liste à puces */
.list-check li {
    position: relative;
    padding-left: 32px;
    margin-bottom: 12px;
    list-style: none;
}
.list-check li:before {
    content: "\f26a";
    font-family: bootstrap-icons;
    position: absolute;
    left: 0;
    top: 0;
    color: var(--base-color);
    font-size: 20px;
}
.list-check {
    padding-left: 0;
}
/* identifiants légaux */
.legal-ids span {
    display: inline-block;
    margin-right: 20px;
}
/* footer */
footer .footer-logo img {
    max-height: 70px;
}
footer .footer-top a:not(.btn) {
    color: rgba(255, 255, 255, 0.8);
}
footer .footer-top a:not(.btn):hover {
    color: var(--base-color);
}
/* alertes formulaire */
.form-alert {
    border-radius: 6px;
    padding: 12px 18px;
    margin-bottom: 25px;
    font-size: 15px;
}
.form-alert-error {
    background: #fdecea;
    color: #b42318;
}
.form-alert-success {
    background: #e7f6ec;
    color: #146c2e;
}
@media (max-width: 991px) {
    .hero-figure img {
        max-height: 420px;
    }
}
@media (max-width: 575px) {
    header .navbar-brand img {
        max-height: 48px;
    }
    .h-420px-img { height: 280px; }
}
