    /* solutions.css — page-specific styles (shared base: pages.css + home.css) */

    /* ── STICKY SOL NAV ── */
    .sol-nav { position:sticky; top:72px; z-index:900; background:#fff; border-bottom:1px solid #e2e8f0; padding:0 5%; overflow-x:auto; display:flex; gap:0; white-space:nowrap; box-shadow:0 2px 12px rgba(0,0,0,.06); }
    .sol-nav-item { padding:14px 20px; font-size:.82rem; font-weight:600; color:var(--gray-text); text-decoration:none; border-bottom:3px solid transparent; transition:color .2s,border-color .2s; flex-shrink:0; }
    .sol-nav-item:hover { color:var(--blue); }
    .sol-nav-item.active { color:var(--blue); border-bottom-color:var(--blue); }

    /* ── SOLUTION SECTIONS ── */
    .sol-section { padding:80px 5%; }
    .sol-section:nth-child(odd) { background:#fff; }
    .sol-section:nth-child(even) { background:var(--gray-bg); }
    .sol-section.dark { background:#0f172a; }

    .sol-inner { max-width:1100px; margin:0 auto; }
    .sol-header { display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:center; margin-bottom:3rem; }
    .sol-header.reverse { direction:rtl; }
    .sol-header.reverse > * { direction:ltr; }

    .sol-label { display:inline-flex; align-items:center; gap:8px; padding:5px 14px; border-radius:50px; font-size:.75rem; font-weight:700; text-transform:uppercase; letter-spacing:.06em; margin-bottom:1rem; }
    .sol-label.edu { background:rgba(14,165,233,.1); color:#0284c7; }
    .sol-label.biz { background:rgba(31,108,192,.1); color:var(--blue); }
    .sol-label.tech { background:rgba(234,88,12,.1); color:#ea580c; }
    .sol-label.gov { background:rgba(101,163,13,.1); color:#65a30d; }
    .sol-label.com { background:rgba(139,92,246,.1); color:#7c3aed; }
    .sol-label.display { background:rgba(244,114,182,.1); color:#db2777; }
    .sol-label.coming { background:rgba(156,163,175,.1); color:#6b7280; }

    .sol-name { font-family:'Montserrat',sans-serif; font-weight:800; font-size:clamp(1.6rem,3vw,2.4rem); color:#0f172a; margin-bottom:.5rem; }
    .sol-name.light { color:#fff; }
    .sol-tagline { font-size:1rem; color:var(--gray-text); line-height:1.75; margin-bottom:1.5rem; }
    .sol-tagline.light { color:rgba(255,255,255,.75); }

    .sol-btns { display:flex; gap:.8rem; flex-wrap:wrap; }
    .btn-primary { display:inline-flex; align-items:center; gap:8px; background:var(--grad); color:#fff; padding:12px 24px; border-radius:50px; font-weight:700; font-size:.88rem; text-decoration:none; box-shadow:0 4px 16px rgba(31,108,192,.3); transition:transform .2s,opacity .2s; }
    .btn-primary:hover { transform:translateY(-2px); opacity:.92; }
    .btn-wa-sm { display:inline-flex; align-items:center; gap:8px; background:#25D366; color:#fff; padding:12px 24px; border-radius:50px; font-weight:700; font-size:.88rem; text-decoration:none; transition:transform .2s; }
    .btn-wa-sm:hover { transform:translateY(-2px); }
    .btn-ghost { display:inline-flex; align-items:center; gap:8px; background:transparent; color:var(--blue); border:2px solid var(--blue); padding:10px 22px; border-radius:50px; font-weight:600; font-size:.88rem; text-decoration:none; transition:all .2s; }
    .btn-ghost:hover { background:var(--blue); color:#fff; }
    .btn-ghost-light { display:inline-flex; align-items:center; gap:8px; background:rgba(255,255,255,.1); color:#fff; border:2px solid rgba(255,255,255,.4); padding:10px 22px; border-radius:50px; font-weight:600; font-size:.88rem; text-decoration:none; transition:all .2s; }
    .btn-ghost-light:hover { background:rgba(255,255,255,.2); }

    /* Visual mockup card */
    .sol-visual { background:#0f172a; border-radius:20px; padding:24px; }
    .sol-visual.light-bg { background:var(--grad); }
    .sol-visual.gray-bg { background:#fff; border:1px solid #e2e8f0; }

    /* solutions.css KPI variants use different class names than pages.css */
    .kpi-row { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-bottom:12px; }
    .kpi { padding:14px 10px; border-radius:12px; text-align:center; }
    .kpi.dark-kpi { background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.1); }
    .kpi.light-kpi { background:rgba(255,255,255,.2); border:1px solid rgba(255,255,255,.25); }
    .kpi.white-kpi { background:var(--gray-bg); border:1px solid #e2e8f0; }
    .kpi .val { font-family:'Montserrat',sans-serif; font-weight:800; font-size:1.3rem; }
    .kpi.dark-kpi .val,.kpi.light-kpi .val { color:#fff; }
    .kpi.white-kpi .val { color:var(--blue); }
    .kpi .lab { font-size:.65rem; margin-top:3px; }
    .kpi.dark-kpi .lab,.kpi.light-kpi .lab { color:rgba(255,255,255,.55); }
    .kpi.white-kpi .lab { color:var(--gray-text); }

    .data-row { display:flex; align-items:center; justify-content:space-between; padding:9px 12px; border-radius:8px; margin-bottom:6px; font-size:.8rem; }
    .data-row.dark-row { background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.07); color:rgba(255,255,255,.75); }
    .data-row.light-row { background:rgba(255,255,255,.15); border:1px solid rgba(255,255,255,.2); color:#fff; }
    .data-row.white-row { background:var(--gray-bg); border:1px solid #e2e8f0; color:var(--gray-text); }
    .data-row .badge { padding:2px 10px; border-radius:50px; font-size:.68rem; font-weight:700; }
    .badge-green { background:rgba(37,211,102,.2); color:#15803d; }
    .badge-orange { background:rgba(251,146,60,.2); color:#c2410c; }
    .badge-blue { background:rgba(31,108,192,.15); color:var(--blue); }
    .badge-gray { background:rgba(156,163,175,.2); color:#6b7280; }

    /* Fonctionnalités */
    .features-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:1rem; }
    .feat-card { background:#fff; border-radius:14px; padding:20px; border:1px solid #e2e8f0; }
    .feat-card.on-dark { background:rgba(255,255,255,.05); border-color:rgba(255,255,255,.1); }
    .feat-card.on-gray { background:#fff; border:1px solid #e2e8f0; }
    .feat-icon { font-size:1.5rem; margin-bottom:.6rem; }
    .feat-card h4 { font-family:'Montserrat',sans-serif; font-weight:700; font-size:.88rem; color:#0f172a; margin-bottom:.4rem; }
    .feat-card.on-dark h4 { color:#fff; }
    .feat-card p { font-size:.8rem; color:var(--gray-text); line-height:1.55; }
    .feat-card.on-dark p { color:rgba(255,255,255,.6); }

    /* Atouts list (slightly different from pages.css .atout — uses .atouts-list wrapper) */
    .atouts-list { display:flex; flex-direction:column; gap:.7rem; margin-top:1.5rem; }

    /* Coming soon banner */
    .coming-soon-banner { background:rgba(255,255,255,.06); border:1.5px dashed rgba(255,255,255,.3); border-radius:16px; padding:24px; text-align:center; margin-top:2rem; }
    .coming-soon-banner p { font-size:.88rem; color:rgba(255,255,255,.65); }
    .coming-badge { display:inline-block; background:var(--grad); color:#fff; font-size:.72rem; font-weight:700; padding:4px 14px; border-radius:50px; letter-spacing:.05em; margin-bottom:.8rem; }

    /* CTA strip (solutions uses .cta-strip-inner instead of .cta-inner) */
    .cta-strip { padding:60px 5%; }
    .cta-strip-inner { max-width:600px; margin:0 auto; position:relative; z-index:1; }
    .cta-strip h2 { font-family:'Montserrat',sans-serif; font-weight:800; font-size:clamp(1.4rem,2.5vw,2rem); color:#fff; margin-bottom:.8rem; }
    .cta-strip p { color:rgba(255,255,255,.85); font-size:.95rem; margin-bottom:1.8rem; line-height:1.65; }

    @media(max-width:900px){
      .sol-header { grid-template-columns:1fr; }
      .sol-header.reverse { direction:ltr; }
    }

    hr.sol-divider { border:none; border-top:1px solid #e2e8f0; max-width:1100px; margin:0 auto; }
