/* ==========================================
   VARIABLES
========================================== */

:root{
    --primary:#0A84FF;
    --secondary:#00D4FF;

    --biomedical:#00C897;
    --biomedical-dark:#00A57B;

    --cyber:#5B5FFF;
    --cyber-dark:#3D42D8;

    --dark:#081B33;
    --text:#64748B;

    --white:#FFFFFF;

    --radius:32px;

    --shadow:0 25px 60px rgba(0,0,0,.08);
    --shadow-lg:0 40px 90px rgba(0,0,0,.12);

    --transition:.45s ease;
}

/* ==========================================
   HERO
========================================== */

.pricing-hero{
    position:relative;
    overflow:hidden;
    padding:180px 0;

    background:
        linear-gradient(
            135deg,
            #071A2F 0%,
            #0A84FF 50%,
            #00D4FF 100%
        );

    color:#fff;
}

.hero-circle{
    position:absolute;
    border-radius:50%;
    filter:blur(90px);
    opacity:.30;
    pointer-events:none;
}

.hero-circle-1{
    width:420px;
    height:420px;
    background:#00FFD5;
    top:-120px;
    left:-120px;
}

.hero-circle-2{
    width:380px;
    height:380px;
    background:#FFFFFF;
    bottom:-150px;
    right:-100px;
}

.pricing-badge{
    display:inline-block;
    padding:14px 30px;
    border-radius:50px;

    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.15);

    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);

    font-weight:700;
    letter-spacing:.5px;
    margin-bottom:25px;
}

.pricing-hero h1{
    font-size:clamp(3rem, 6vw, 5rem);
    font-weight:900;
    line-height:1.1;
    margin-bottom:20px;
}

.pricing-hero p{
    max-width:700px;
    margin:auto;
    font-size:1.2rem;
    opacity:.95;
    line-height:1.8;
}

/* ==========================================
   SECTIONS
========================================== */

.pricing-section{
    position:relative;
    padding:130px 0;
}

.biomedical-section{
    background:
        linear-gradient(
            180deg,
            #F0FFFB 0%,
            #FFFFFF 100%
        );
}

.informatique-section{
    background:
        linear-gradient(
            180deg,
            #F5F7FF 0%,
            #FFFFFF 100%
        );
}

/* ==========================================
   TITRES
========================================== */

.section-title{
    margin-bottom:70px;
}

.section-tag{
    display:inline-block;
    padding:10px 22px;
    border-radius:50px;

    background:rgba(0,200,151,.12);
    color:var(--biomedical);

    font-size:.95rem;
    font-weight:700;

    margin-bottom:20px;
}

.section-tag.cyber{
    background:rgba(91,95,255,.12);
    color:var(--cyber);
}

.section-title h2{
    font-size:3rem;
    font-weight:900;
    color:var(--dark);
    margin-bottom:15px;
}

.section-title p{
    color:var(--text);
    max-width:700px;
    margin:auto;
    line-height:1.8;
}

/* ==========================================
   CARDS
========================================== */

.pricing-card{
    position:relative;
    background:#fff;

    border-radius:var(--radius);

    padding:45px;

    height:100%;
    overflow:hidden;

    box-shadow:var(--shadow);

    transition:var(--transition);
}

.pricing-card::before{
    content:"";
    position:absolute;
    inset:0;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.3),
            rgba(255,255,255,0)
        );

    opacity:0;
    transition:.4s;
}

.pricing-card:hover{
    transform:translateY(-12px);
    box-shadow:var(--shadow-lg);
}

.pricing-card:hover::before{
    opacity:1;
}

.biomedical-card{
    border-top:6px solid var(--biomedical);
}

.informatique-card{
    border-top:6px solid var(--cyber);
}

/* ==========================================
   RECOMMENDED
========================================== */

.recommended{
    position:absolute;

    top:22px;
    right:-42px;

    padding:10px 55px;

    background:
        linear-gradient(
            135deg,
            #FFD700,
            #FFB800
        );

    color:#000;
    font-size:.8rem;
    font-weight:800;
    letter-spacing:.5px;

    transform:rotate(35deg);

    box-shadow:
        0 10px 30px rgba(255,184,0,.4);
}

/* ==========================================
   CARD CONTENT
========================================== */

.pricing-card h3{
    color:var(--dark);
    font-size:1.7rem;
    font-weight:800;
    margin-bottom:15px;
}

.pricing-card p{
    color:var(--text);
    line-height:1.8;
}

/* ==========================================
   PRICE
========================================== */

.price{
    font-size:3rem;
    font-weight:900;
    color:var(--dark);
    margin:25px 0;
    line-height:1;
}

.price small{
    font-size:1rem;
    color:var(--text);
    font-weight:500;
}

/* ==========================================
   FEATURES
========================================== */

.feature-list{
    list-style:none;
    padding:0;
    margin:30px 0;
}

.feature-list li{
    padding:14px 0;
    border-bottom:1px solid #EEF2F7;
    color:var(--text);
    display:flex;
    align-items:center;
    gap:10px;
}

.feature-list li:last-child{
    border-bottom:none;
}

/* ==========================================
   BUTTON
========================================== */

.pricing-btn{
    display:block;
    text-align:center;

    padding:18px 25px;

    border-radius:18px;
    text-decoration:none;

    color:#fff;
    font-weight:700;

    background:
        linear-gradient(
            135deg,
            #0A84FF,
            #00D4FF
        );

    box-shadow:
        0 12px 30px rgba(10,132,255,.25);

    transition:var(--transition);
}

.pricing-btn:hover{
    transform:translateY(-4px);
    color:#fff;

    box-shadow:
        0 18px 40px rgba(10,132,255,.35);
}


/* ==================================================
   LOGICIELS
================================================== */

.software-section{
    background:#08111f;
    color:#fff;
    padding:120px 0;
}

.software-section .section-title h2,
.software-section .section-title p{
    color:#fff;
}

.software-tag{
    display:inline-block;
    padding:10px 20px;
    border-radius:50px;
    background:rgba(255,255,255,.08);
    margin-bottom:20px;
    font-size:.85rem;
    letter-spacing:1px;
}

.software-card{
    background:rgba(255,255,255,.05);
    border:1px solid rgba(255,255,255,.08);
    padding:40px;
    backdrop-filter:blur(10px);
}

.software-card .price{
    color:#00E0C4;
}

.software-card p,
.software-card li{
    color:#d6dce5;
}

/* ==================================================
   ROI
================================================== */

.roi-section{
    padding:120px 0;
    background:#fff;
}

.roi-card{
    background:#fff;
    padding:45px;
    border-radius:30px;
    text-align:center;
    height:100%;
    box-shadow:0 15px 50px rgba(0,0,0,.08);
    transition:.3s;
}

.roi-card:hover{
    transform:translateY(-8px);
}

.roi-icon{
    font-size:3rem;
    margin-bottom:20px;
}

.roi-card h4{
    font-weight:800;
    margin-bottom:15px;
}

/* ==================================================
   FAQ
================================================== */

.faq-section{
    padding:120px 0;
    background:#f8fafc;
}

.accordion-item{
    border:none;
    margin-bottom:20px;
    border-radius:20px !important;
    overflow:hidden;
    box-shadow:0 10px 30px rgba(0,0,0,.06);
}

.accordion-button{
    padding:25px;
    font-weight:700;
    background:#fff;
}

.accordion-button:not(.collapsed){
    background:#003B8E;
    color:#fff;
}

.accordion-body{
    padding:25px;
    line-height:1.8;
}


/* ==================================================
   CTA FINAL
================================================== */

.pricing-cta{
    padding:140px 0;
    background:linear-gradient(135deg,#003B8E,#00BFA6);
    color:#fff;
    text-align:center;
}

.pricing-cta h2{
    font-size:3rem;
    font-weight:800;
    margin-bottom:20px;
}

.pricing-cta p{
    font-size:1.2rem;
    margin-bottom:35px;
}

.pricing-cta .pricing-btn{
    background:#fff;
    color:#003B8E;
}

.pricing-cta .pricing-btn:hover{
    background:#08111f;
    color:#fff;
}


/* ==================================================
   RESPONSIVE
================================================== */

@media(max-width:991px){

    .pricing-hero h1{
        font-size:2.8rem;
    }

    .section-title h2{
        font-size:2.2rem;
    }

    .price{
        font-size:2rem;
    }

    .pricing-card,
    .software-card{
        padding:30px;
    }
}

@media(max-width:576px){

    .pricing-hero{
        padding:140px 0 90px;
    }

    .pricing-hero h1{
        font-size:2.2rem;
    }

    .section-title h2{
        font-size:1.9rem;
    }

    .pricing-cta h2{
        font-size:2rem;
    }
}

/* ==========================================
   BIOMEDICAL PREMIUM SECTION
========================================== */

.biomedical-section {
    padding: 120px 0;
    background: linear-gradient(
        180deg,
        #f8fbff 0%,
        #eef5fb 100%
    );
    position: relative;
    overflow: hidden;
}

/* Décor institutionnel */

.biomedical-section::before {
    content: "";
    position: absolute;
    width: 500px;
    height: 500px;
    border-radius: 50%;
    background: rgba(13, 110, 253, 0.05);
    top: -200px;
    right: -200px;
}

.biomedical-section::after {
    content: "";
    position: absolute;
    width: 400px;
    height: 400px;
    border-radius: 50%;
    background: rgba(25, 135, 84, 0.05);
    bottom: -180px;
    left: -180px;
}

/* ==========================================
   TITRE
========================================== */

.section-tag {
    display: inline-block;
    background: #0d6efd;
    color: #fff;
    padding: 8px 18px;
    border-radius: 50px;
    font-size: 0.85rem;
    font-weight: 600;
    letter-spacing: 0.5px;
    margin-bottom: 20px;
}

.biomedical-section h2 {
    font-size: 3rem;
    font-weight: 800;
    color: #0d2c54;
    margin-bottom: 20px;
}

.biomedical-section .lead {
    max-width: 850px;
    margin: auto;
    color: #5f6f81;
    font-size: 1.1rem;
    line-height: 1.9;
}

/* ==========================================
   CARD
========================================== */

.biomedical-card {
    position: relative;
    background: #fff;
    border-radius: 24px;
    padding: 45px 35px;
    height: 100%;
    border: 1px solid rgba(13, 110, 253, 0.08);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    transition: 0.4s ease;
}

.biomedical-card:hover {
    transform: translateY(-12px);
    box-shadow: 0 20px 50px rgba(13, 110, 253, 0.15);
}

/* ==========================================
   PACK RECOMMANDÉ
========================================== */

.biomedical-card.featured {
    border: 2px solid #0d6efd;
    transform: scale(1.03);
    box-shadow: 0 25px 60px rgba(13, 110, 253, 0.20);
}

.biomedical-card.featured:hover {
    transform: scale(1.03) translateY(-10px);
}

/* ==========================================
   PACK PREMIUM
========================================== */

.biomedical-card.premium {
    background: linear-gradient(
        135deg,
        #0d2c54,
        #164c88
    );
    color: #fff;
}

.biomedical-card.premium h3,
.biomedical-card.premium .price,
.biomedical-card.premium p,
.biomedical-card.premium li {
    color: #fff;
}

/* ==========================================
   BADGE
========================================== */

.recommended {
    position: absolute;
    top: -15px;
    left: 50%;
    transform: translateX(-50%);
    background: linear-gradient(
        90deg,
        #ffc107,
        #ffdd57
    );
    color: #222;
    padding: 10px 22px;
    border-radius: 50px;
    font-size: 0.85rem;
    font-weight: 700;
    box-shadow: 0 8px 20px rgba(255, 193, 7, 0.35);
}

/* ==========================================
   TITRES PACKS
========================================== */

.biomedical-card h3 {
    font-size: 1.8rem;
    font-weight: 700;
    color: #0d2c54;
    margin-bottom: 25px;
}

.price {
    font-size: 2rem;
    font-weight: 800;
    color: #0d6efd;
    margin-bottom: 20px;
}

.price strong {
    font-size: 2.2rem;
}

/* ==========================================
   DESCRIPTION
========================================== */

.biomedical-card p {
    color: #66788a;
    line-height: 1.8;
    margin-bottom: 30px;
}

/* ==========================================
   FEATURES
========================================== */

.feature-list {
    list-style: none;
    padding: 0;
    margin: 0 0 35px;
}

.feature-list li {
    padding: 12px 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    color: #334155;
    font-weight: 500;
}

.feature-list li:last-child {
    border-bottom: none;
}

/* ==========================================
   BOUTON
========================================== */

.pricing-btn {
    display: block;
    text-align: center;
    padding: 15px 25px;
    border-radius: 14px;
    background: linear-gradient(
        135deg,
        #0d6efd,
        #0b5ed7
    );
    color: #fff;
    font-weight: 700;
    text-decoration: none;
    transition: 0.3s;
}

.pricing-btn:hover {
    transform: translateY(-3px);
    color: #fff;
    box-shadow: 0 12px 30px rgba(13, 110, 253, 0.35);
}

/* Pack Premium */

.biomedical-card.premium .pricing-btn {
    background: #fff;
    color: #0d2c54;
}

.biomedical-card.premium .pricing-btn:hover {
    color: #0d2c54;
}

/* ==========================================
   GARANTIE
========================================== */

.guarantee-box {
    margin-top: 50px;
    background: #fff;
    padding: 40px;
    border-radius: 24px;
    border-left: 6px solid #0d6efd;
    box-shadow: 0 10px 35px rgba(0, 0, 0, 0.06);
}

.guarantee-box h4 {
    font-size: 1.5rem;
    font-weight: 700;
    color: #0d2c54;
    margin-bottom: 15px;
}

.guarantee-box p {
    margin: 0;
    color: #5f6f81;
    line-height: 1.9;
}

/* ==========================================
   INFORMATIQUE MEDICALE PREMIUM
========================================== */

.informatique-card{
    position: relative;
    height: 100%;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 24px;
    padding: 40px;
    box-shadow: 0 15px 40px rgba(0,0,0,.06);
    transition: all .4s ease;
    display: flex;
    flex-direction: column;
}

.informatique-card:hover{
    transform: translateY(-8px);
    box-shadow: 0 25px 60px rgba(0,0,0,.12);
}

.informatique-card h3{
    font-size: 28px;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 15px;
}

.price{
    font-size: 42px;
    font-weight: 800;
    color: #0056b3;
    margin-bottom: 5px;
}

.price-note{
    display: inline-block;
    background: #eef6ff;
    color: #0056b3;
    font-size: 13px;
    font-weight: 600;
    padding: 8px 16px;
    border-radius: 30px;
    margin-bottom: 20px;
}

.package-description{
    color: #64748b;
    margin-bottom: 25px;
}

.feature-list{
    list-style: none;
    padding: 0;
    margin: 0 0 25px;
    flex-grow: 1;
}

.feature-list li{
    padding: 10px 0;
    border-bottom: 1px solid #f1f5f9;
    color: #334155;
}

.feature-list li:last-child{
    border-bottom: none;
}

.recommended{
    position: absolute;
    top: -12px;
    right: 25px;
    background: linear-gradient(135deg,#0056b3,#0a84ff);
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
    padding: 8px 18px;
    border-radius: 30px;
    z-index: 2;
}

.offer-note{
    font-size: 13px;
    color: #64748b;
    margin-bottom: 25px;
    line-height: 1.6;
}

.pricing-btn{
    display: block;
    text-align: center;
    padding: 15px;
    border-radius: 12px;
    background: #0056b3;
    color: #ffffff;
    font-weight: 700;
    text-decoration: none;
    transition: all .3s ease;
    margin-top: auto;
}

.pricing-btn:hover{
    background: #003f85;
    color: #ffffff;
}

.premium-notice{
    background: linear-gradient(
        135deg,
        #f8fafc,
        #eef4ff
    );
    border-left: 5px solid #0056b3;
    padding: 35px;
    border-radius: 20px;
    text-align: center;
}

.premium-notice h4{
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 15px;
    color: #0f172a;
}

.premium-notice p{
    color: #475569;
    margin-bottom: 10px;
    line-height: 1.7;
}

@media (max-width: 768px){
    .informatique-card{
        padding: 30px 24px;
    }

    .price{
        font-size: 34px;
    }

    .informatique-card h3{
        font-size: 24px;
    }
}

/* ==========================================
   GESTION DIGITALE DES DECHETS MEDICAUX
   VERSION PREMIUM
========================================== */

.waste-section {
    padding: 100px 0;
    background: #f8fafc;
}

.waste-section .section-title {
    max-width: 900px;
    margin: 0 auto 60px;
}

.waste-badge {
    display: inline-block;
    padding: 10px 18px;
    background: rgba(16, 185, 129, 0.12);
    color: #059669;
    border-radius: 50px;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 20px;
}

.waste-section h2 {
    font-size: 2.4rem;
    font-weight: 800;
    color: #0f172a;
    margin-bottom: 20px;
    line-height: 1.3;
}

.section-description {
    font-size: 1.05rem;
    line-height: 1.8;
    color: #64748b;
}

.pricing-note {
    margin-top: 25px;
    padding: 15px 20px;
    background: #ffffff;
    border-left: 5px solid #10b981;
    border-radius: 10px;
    color: #334155;
    box-shadow: 0 4px 12px rgba(0,0,0,.05);
}

/* ==========================
   CARTES
========================== */

.waste-card {
    position: relative;
    height: 100%;
    background: #ffffff;
    border-radius: 22px;
    padding: 35px 28px;
    text-align: center;
    box-shadow: 0 10px 35px rgba(0,0,0,.08);
    transition: all .35s ease;
    overflow: hidden;
}

.waste-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 45px rgba(0,0,0,.12);
}

.waste-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 5px;
    background: linear-gradient(
        90deg,
        #10b981,
        #14b8a6
    );
}

/* ==========================
   ICÔNES
========================== */

.card-icon {
    width: 80px;
    height: 80px;
    margin: 0 auto 20px;
    border-radius: 50%;
    background: linear-gradient(
        135deg,
        #10b981,
        #14b8a6
    );
    display: flex;
    align-items: center;
    justify-content: center;
}

.card-icon i {
    color: #fff;
    font-size: 34px;
}

/* ==========================
   TITRES
========================== */

.waste-card h3 {
    font-size: 1.35rem;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 15px;
}

/* ==========================
   PRIX
========================== */

.price {
    font-size: 2rem;
    font-weight: 800;
    color: #10b981;
    margin-bottom: 15px;
}

.price span {
    display: block;
    font-size: .95rem;
    color: #64748b;
    font-weight: 500;
}

/* ==========================
   DESCRIPTION
========================== */

.waste-card p {
    color: #0f172a;
    line-height: 1.7;
    margin-bottom: 25px;
    min-height: 100px;
}

/* ==========================
   LISTE FONCTIONNALITÉS
========================== */

.feature-list {
    list-style: none;
    padding: 0;
    margin: 0 0 30px;
    text-align: left;
}

.feature-list li {
    padding: 10px 0;
    border-bottom: 1px solid #e2e8f0;
    color: #334155;
    font-size: .95rem;
}

.feature-list li:last-child {
    border-bottom: none;
}

/* ==========================
   BOUTON
========================== */

.pricing-btn {
    display: inline-block;
    width: 100%;
    padding: 14px 20px;
    background: linear-gradient(
        135deg,
        #10b981,
        #14b8a6
    );
    color: #fff;
    text-decoration: none;
    font-weight: 700;
    border-radius: 12px;
    transition: .3s ease;
}

.pricing-btn:hover {
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 10px 25px rgba(16,185,129,.25);
}

/* ==========================
   CARTE RECOMMANDÉE
========================== */

.recommended {
    position: absolute;
    top: 18px;
    right: -40px;
    background: #f59e0b;
    color: #fff;
    padding: 8px 45px;
    font-size: 12px;
    font-weight: 700;
    transform: rotate(45deg);
    box-shadow: 0 5px 15px rgba(0,0,0,.15);
    z-index: 2;
}

/* ==========================
   PREMIUM
========================== */

.premium-card {
    border: 2px solid #10b981;
    transform: scale(1.03);
}

.premium-card::before {
    height: 6px;
    background: linear-gradient(
        90deg,
        #059669,
        #10b981,
        #14b8a6
    );
}

.premium-card .price {
    color: #059669;
}

.premium-card .card-icon {
    background: linear-gradient(
        135deg,
        #059669,
        #10b981
    );
}

/* ==========================
   NOTE BAS DE PAGE
========================== */

.waste-section small {
    color: #64748b;
    font-size: .9rem;
    line-height: 1.6;
}

.government-software-section{
    padding:120px 0;
    background:#FAFBFC;
}

.government-software-section .software-badge{
    background:#0B3D91;
    color:#fff;
    padding:10px 25px;
    border-radius:50px;
    font-size:13px;
    font-weight:700;
    letter-spacing:1px;
}

.government-software-section .section-title h2{
    font-size:52px;
    font-weight:800;
    color:#102A43;
    margin-top:20px;
}

.government-software-section .section-subtitle{
    max-width:850px;
    margin:auto;
    color:#52667A;
    font-size:18px;
    line-height:1.7;
}

.government-software-section .health-stats{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:25px;
    margin:70px 0;
}

.government-software-section .stat-box{
    background:#fff;
    padding:30px;
    text-align:center;
    border-radius:16px;
    box-shadow:0 10px 30px rgba(0,0,0,.05);
    transition:all .3s ease;
}

.government-software-section .stat-box:hover{
    transform:translateY(-5px);
}

.government-software-section .stat-box h3{
    color:#0B3D91;
    font-size:32px;
    font-weight:800;
    margin-bottom:10px;
}

.government-software-section .software-card{
    background:#fff;
    padding:40px;
    border-radius:22px;
    height:100%;
    position:relative;
    border:1px solid #E5E7EB;
    box-shadow:0 15px 35px rgba(0,0,0,.04);
    transition:all .35s ease;
    display:flex;
    flex-direction:column;
}

.government-software-section .software-card:hover{
    transform:translateY(-10px);
    box-shadow:0 20px 45px rgba(0,0,0,.08);
}

.government-software-section .featured{
    border:2px solid #C9A227;
}

.government-software-section .recommended{
    position:absolute;
    top:-15px;
    right:20px;
    background:#C9A227;
    color:#fff;
    padding:8px 16px;
    border-radius:30px;
    font-size:12px;
    font-weight:700;
    z-index:2;
}

.government-software-section .card-icon{
    font-size:42px;
    color:#0B3D91;
    margin-bottom:20px;
}

.government-software-section .software-card h3{
    font-size:24px;
    font-weight:700;
    margin-bottom:15px;
    color:#102A43;
    line-height:1.4;
}

.government-software-section .price{
    font-size:36px;
    font-weight:800;
    color:#0B3D91;
    line-height:1.2;
    margin-bottom:10px;
}

.government-software-section .project-range{
    color:#C9A227;
    font-weight:600;
    margin-bottom:20px;
}

.government-software-section .software-card p{
    color:#52667A;
    line-height:1.7;
}

.government-software-section .feature-list{
    list-style:none;
    padding:0;
    margin-top:25px;
    margin-bottom:25px;
    flex-grow:1;
}

.government-software-section .feature-list li{
    margin-bottom:12px;
    color:#52667A;
    line-height:1.6;
}

.government-software-section .software-btn{
    margin-top:auto;
    display:block;
    width:100%;
    text-align:center;
    padding:14px;
    background:#0B3D91;
    color:#fff;
    border-radius:12px;
    text-decoration:none;
    font-weight:700;
    transition:all .3s ease;
}

.government-software-section .software-btn:hover{
    background:#082F6B;
    color:#fff;
    text-decoration:none;
}

.government-software-section .government-note{
    margin-top:80px;
}

.government-software-section .note-box{
    background:#fff;
    border-radius:24px;
    padding:50px;
    border:1px solid #E5E7EB;
    box-shadow:0 15px 35px rgba(0,0,0,.04);
}

.government-software-section .note-box h4{
    color:#102A43;
    margin-bottom:20px;
    font-weight:700;
    font-size:28px;
}

.government-software-section .note-box p{
    color:#52667A;
    line-height:1.8;
}

.government-software-section .infra-grid{
    margin-top:30px;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
}

.government-software-section .infra-grid div{
    background:#F8FAFC;
    padding:25px;
    border-radius:14px;
    text-align:center;
    transition:all .3s ease;
}

.government-software-section .infra-grid div:hover{
    transform:translateY(-5px);
}

.government-software-section .infra-grid strong{
    color:#102A43;
}

@media (max-width:991px){

    .government-software-section .health-stats,
    .government-software-section .infra-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .government-software-section .section-title h2{
        font-size:38px;
    }

    .government-software-section .price{
        font-size:30px;
    }

    .government-software-section .software-card{
        padding:35px;
    }
}

@media (max-width:768px){

    .government-software-section{
        padding:80px 0;
    }

    .government-software-section .health-stats,
    .government-software-section .infra-grid{
        grid-template-columns:1fr;
    }

    .government-software-section .section-title h2{
        font-size:30px;
    }

    .government-software-section .section-subtitle{
        font-size:16px;
    }

    .government-software-section .price{
        font-size:26px;
    }

    .government-software-section .software-card,
    .government-software-section .note-box{
        padding:30px;
    }
}
/* =====================================
   INFRASTRUCTURE - CORRECTION VISIBILITÉ
===================================== */

.government-software-section .infra-grid{
    margin-top:30px;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
}

.government-software-section .infra-item{
    background:#F8FAFC;
    padding:25px;
    border-radius:14px;
    text-align:center;
    transition:all .3s ease;
    border:1px solid #E5E7EB;
}

.government-software-section .infra-item:hover{
    transform:translateY(-5px);
}

.government-software-section .infra-item strong{
    display:block;
    color:#102A43 !important;
    font-size:18px;
    font-weight:700;
    margin-bottom:10px;
}

.government-software-section .infra-price{
    display:block;
    color:#52667A !important;
    font-size:15px;
    font-weight:500;
    line-height:1.6;
}

@media (max-width:991px){

    .government-software-section .infra-grid{
        grid-template-columns:repeat(2,1fr);
    }

}

@media (max-width:768px){

    .government-software-section .infra-grid{
        grid-template-columns:1fr;
    }

}
.government-software-section{
    padding:120px 0;
    background:#FAFBFC;
}

.software-badge{
    background:#0B3D91;
    color:#fff;
    padding:10px 25px;
    border-radius:50px;
    font-size:13px;
    font-weight:700;
    letter-spacing:1px;
}

.section-title h2{
    font-size:52px;
    font-weight:800;
    color:#102A43;
    margin-top:20px;
}

.section-subtitle{
    max-width:850px;
    margin:auto;
    color:#52667A;
    font-size:18px;
}

.software-card{
    background:#fff;
    padding:40px;
    border-radius:22px;
    height:100%;
    position:relative;
    border:1px solid #E5E7EB;
    box-shadow:0 15px 35px rgba(0,0,0,.04);
    transition:all .35s ease;
    display:flex;
    flex-direction:column;
}

.software-card:hover{
    transform:translateY(-10px);
}

.featured{
    border:2px solid #C9A227;
}

.recommended{
    position:absolute;
    top:-15px;
    right:20px;
    background:#C9A227;
    color:#fff;
    padding:8px 16px;
    border-radius:30px;
    font-size:12px;
    font-weight:700;
}

.card-icon{
    font-size:42px;
    color:#0B3D91;
    margin-bottom:20px;
}

.software-card h3{
    font-size:24px;
    font-weight:700;
    margin-bottom:15px;
    color:#102A43;
}

.price{
    font-size:36px;
    font-weight:800;
    color:#0B3D91;
    line-height:1.2;
}

.project-range{
    color:#C9A227;
    font-weight:600;
    margin-bottom:20px;
}

.feature-list{
    list-style:none;
    padding:0;
    margin-top:25px;
    flex-grow:1;
}

.feature-list li{
    margin-bottom:12px;
    color:#52667A;
}

.software-btn{
    margin-top:auto;
    display:inline-block;
    width:100%;
    text-align:center;
    padding:14px;
    background:#0B3D91;
    color:#fff;
    border-radius:12px;
    text-decoration:none;
    font-weight:700;
    transition:.3s ease;
}

.software-btn:hover{
    background:#082F6B;
    color:#fff;
}

.government-note{
    margin-top:80px;
}

.note-box{
    background:#fff;
    border-radius:24px;
    padding:50px;
    border:1px solid #E5E7EB;
    box-shadow:0 15px 35px rgba(0,0,0,.04);
}

.note-box h4{
    color:#102A43;
    margin-bottom:20px;
    font-weight:700;
}

.infra-grid{
    margin-top:30px;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
}

.infra-grid div{
    background:#F8FAFC;
    padding:25px;
    border-radius:14px;
    text-align:center;
    transition:.3s ease;
}

.infra-grid div:hover{
    transform:translateY(-5px);
}

@media (max-width:991px){

    .health-stats,
    .infra-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .section-title h2{
        font-size:38px;
    }

    .price{
        font-size:30px;
    }
}

@media (max-width:768px){

    .health-stats,
    .infra-grid{
        grid-template-columns:1fr;
    }

    .government-software-section{
        padding:80px 0;
    }

    .section-title h2{
        font-size:30px;
    }

    .price{
        font-size:26px;
    }

    .software-card,
    .note-box{
        padding:30px;
    }
}
