﻿/* =========================================
   Entreprises de sécurité – CSS local
   (complète styles.css sans le remplacer)
   ========================================= */

:root {
    --is-black: #0f172a;
    --is-red: #b11217;
    --is-red-dark: #8f0e12;
    --is-grey: #f8fafc;
}

/* Layout */
.narrow {
    max-width: 820px;
}

/* Sections (alternance premium) */
.section {
    padding: 80px 0;
}

.section-light {
    background: #ffffff;
}

.section-alt {
    background: var(--is-grey);
}

/* Titre/intro de section */
.section-head {
    max-width: 860px;
    margin: 0 auto;
}

/* Cards premium */
.is-card {
    background: #ffffff;
    border-radius: 18px;
    padding: 28px;
    height: 100%;
    text-align: center;
    border: 1px solid rgba(15,23,42,.08);
    box-shadow: 0 10px 30px rgba(2,6,23,.04);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

    .is-card i {
        font-size: 2.2rem;
        color: var(--is-red);
        display: inline-block;
        margin-bottom: 14px;
    }

    .is-card h3 {
        font-weight: 800;
        margin-bottom: 10px;
        letter-spacing: -.02em;
    }

    .is-card p {
        color: #475569;
        font-size: .95rem;
        margin-bottom: 0;
    }

    .is-card:hover {
        transform: translateY(-4px);
        box-shadow: 0 18px 42px rgba(2,6,23,.10);
        border-color: rgba(177,18,23,.22);
    }

/* List */
.is-list {
    padding-left: 18px;
}

    .is-list li {
        margin-bottom: 10px;
    }

/* CTA box */
.cta-box {
    display: flex;
    gap: 16px;
    align-items: center;
    background: #fff;
    border: 1px solid rgba(15,23,42,.08);
    border-radius: 18px;
    padding: 18px 18px;
    box-shadow: 0 10px 30px rgba(2,6,23,.04);
}

.cta-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    display: grid;
    place-items: center;
    background: rgba(177,18,23,.10);
    color: var(--is-red);
    flex: 0 0 auto;
}

    .cta-icon i {
        font-size: 1.2rem;
    }

.cta-text {
    flex: 1 1 auto;
}

.cta-action {
    flex: 0 0 auto;
}

@media (max-width: 767.98px) {
    .cta-box {
        flex-direction: column;
        align-items: stretch;
        text-align: left;
    }

    .cta-action .btn {
        width: 100%;
    }
}

/* =========================================================
   Premium hover pour card-premium
   ========================================================= */
.card.card-premium {
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
    border: 1px solid rgba(15,23,42,.10);
}

    .card.card-premium:hover {
        transform: translateY(-4px);
        box-shadow: 0 18px 42px rgba(15,23,42,.14);
        border-color: rgba(15,23,42,.16);
    }

    /* Zoom image léger */
    .card.card-premium .is-card-img {
        transition: transform .25s ease;
    }

    .card.card-premium:hover .is-card-img {
        transform: scale(1.03);
    }
/* =========================================================
   HERO PREMIUM NOIR (page Entreprises) — override local
   ========================================================= */

header.hero.hero-premium {
    position: relative;
    overflow: hidden;
    padding: 56px 0 150px; /* espace pour la vague */
    color: #fff;
    background: radial-gradient(1200px 600px at 15% 20%, rgba(225,29,72,.25), transparent 55%), radial-gradient(900px 500px at 85% 30%, rgba(0,0,0,.55), transparent 55%), linear-gradient(180deg, #05070A, var(--brand));
    
}

    /* petit voile rouge discret */
    header.hero.hero-premium::before {
        content: "";
        position: absolute;
        inset: 0;
        background: radial-gradient(700px 220px at 85% 0%, rgba(177,18,23,.20), transparent 55%);
        pointer-events: none;
        z-index: 0;
    }

    header.hero.hero-premium .container {
        position: relative;
        z-index: 1;
    }

    /* Typo + couleurs */
    header.hero.hero-premium .hero-kicker {
        color: rgba(255,255,255,.78) !important;
    }

    header.hero.hero-premium .hero-title {
        color: #fff !important;
    }

    header.hero.hero-premium .hero-lead {
        color: rgba(255,255,255,.78) !important;
    }

    /* Breadcrumb en clair sur fond sombre */
    header.hero.hero-premium .hero-breadcrumb a,
    header.hero.hero-premium .breadcrumb-item {
        color: rgba(255,255,255,.78) !important;
    }

        header.hero.hero-premium .breadcrumb-item.active {
            color: rgba(255,255,255,.55) !important;
        }

    /* Vague */
    header.hero.hero-premium .hero-wave {
        position: absolute;
        left: 0;
        right: 0;
        bottom: -1px;
        width: 100%;
        height: 120px;
        z-index: 1;
    }

        header.hero.hero-premium .hero-wave path {
            fill: #fff; /* ou var(--is-grey) si ta section suivante est grise */
        }
