.casestudy-container{max-width:960px}.casestudy-meta-extra{display:flex;flex-wrap:wrap;gap:1.5rem;margin-top:1.25rem;padding:1rem 1.25rem;background:var(--blog-card-bg, #2d2d2d);border:1px solid var(--blog-border, #404040);border-radius:10px}.casestudy-meta-item{display:inline-flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--blog-text-secondary, #d0d0d0)}.casestudy-meta-item i{font-size:.85rem}.casestudy-meta-item strong{color:var(--blog-text, #f8f9fa)}.casestudy-layout{display:grid;grid-template-columns:220px 1fr;gap:2rem;margin-top:2rem;align-items:start}.casestudy-toc{position:sticky;top:100px}.casestudy-content-wrapper{min-width:0}.casestudy-metrics-inline{margin-bottom:2.5rem;padding:1.5rem;background:var(--blog-card-bg, #2d2d2d);border:1px solid var(--blog-border, #404040);border-radius:var(--blog-radius-lg, 16px)}.casestudy-metrics-title{font-size:1.1rem;font-weight:700;color:var(--blog-text, #f8f9fa);margin:0 0 1.25rem;display:flex;align-items:center;gap:.5rem;padding-bottom:.75rem;border-bottom:2px solid var(--blog-primary, #3498db)}.casestudy-meta-item i,.casestudy-metrics-title i{color:var(--blog-primary, #3498db)}.casestudy-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.casestudy-metric-card{background:rgba(52,152,219,.06);border:1px solid rgba(52,152,219,.15);border-radius:12px;padding:1.25rem;text-align:center;opacity:0;transform:translateY(20px);transition:opacity .5s ease,transform .5s ease}.casestudy-metric-card:nth-child(2){transition-delay:.1s}.casestudy-metric-card:nth-child(3){transition-delay:.2s}.casestudy-metric-card:nth-child(4){transition-delay:.3s}.casestudy-metric-visible{opacity:1;transform:translateY(0)}.casestudy-metric-label{display:block;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--blog-text-muted, #9b9b9b);margin-bottom:.75rem}.casestudy-metric-values{display:flex;align-items:center;justify-content:center;gap:.75rem}.casestudy-metric-after,.casestudy-metric-before{display:flex;flex-direction:column;align-items:center;gap:.25rem;font-size:1.3rem;font-weight:700;color:#e74c3c}.casestudy-metric-after small,.casestudy-metric-before small{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--blog-text-muted, #9b9b9b)}.casestudy-metric-after{color:#2ecc71}.casestudy-metric-arrow{color:var(--blog-primary, #3498db);font-size:1rem;flex-shrink:0}.casestudy-badge-securite{background:rgba(231,76,60,.15);color:#e74c3c}.casestudy-badge-devops{background:rgba(52,152,219,.15);color:#3498db}.casestudy-badge-linux{background:rgba(243,156,18,.15);color:#f39c12}.casestudy-badge-ia{background:rgba(155,89,182,.15);color:#9b59b6}.casestudy-badge-default{background:rgba(52,152,219,.12);color:var(--blog-primary, #3498db)}.casestudy-body h2,.casestudy-hero{position:relative}.casestudy-hero{background:linear-gradient(135deg,#1a5276 0,#0e2f44 100%);color:#fff;padding:120px 0 70px;text-align:center;overflow:hidden}.casestudy-hero::before{content:"";position:absolute;inset:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 1000"><polygon fill="rgba(255,255,255,0.04)" points="0,1000 1000,0 1000,1000"/></svg>');background-size:cover}.casestudy-hero .container{position:relative;z-index:1}.casestudy-hero h1{font-size:clamp(2.2rem,5vw,3.5rem);font-weight:700;margin-bottom:1rem;color:#fff}.casestudy-hero p{font-size:1.15rem;max-width:620px;margin:0 auto;opacity:.9;line-height:1.6;color:#fff}.casestudy-hero-icon{font-size:3rem;margin-bottom:1.5rem;opacity:.8}.casestudy-section{padding:3rem 0 4rem;background:var(--blog-bg, #1a1a1a)}.casestudy-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem}.casestudy-card{background:var(--blog-card-bg, #2d2d2d);border-radius:var(--blog-radius-lg, 16px);border:1px solid var(--blog-border, #404040);box-shadow:var(--blog-shadow, 0 2px 8px rgba(0, 0, 0, 0.3));padding:1.5rem;display:flex;flex-direction:column;transition:transform .25s ease,box-shadow .25s ease}.casestudy-card:hover{transform:translateY(-4px);box-shadow:var(--blog-shadow-hover, 0 8px 24px rgba(0, 0, 0, 0.4))}.casestudy-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:.5rem}.casestudy-card-title{font-size:1.2rem;font-weight:700;color:var(--blog-text, #f8f9fa);margin-bottom:.75rem;line-height:1.4}.casestudy-card-excerpt{font-size:.925rem;color:var(--blog-text-secondary, #d0d0d0);line-height:1.6;margin-bottom:1rem;flex:1}.casestudy-card-metrics{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem}.casestudy-card-metric{display:inline-flex;align-items:center;gap:.35rem;font-size:.8rem;padding:4px 10px;border-radius:6px;background:rgba(46,204,113,.1);color:#2ecc71;font-weight:600}.casestudy-card-metric i{font-size:.7rem}.casestudy-card-footer{margin-top:auto}.casestudy-read-link{display:inline-flex;align-items:center;gap:8px;color:var(--blog-primary, #3498db);font-size:.9rem;font-weight:600;text-decoration:none;transition:gap .25s ease,color .25s ease}.casestudy-read-link:hover{color:var(--blog-primary-dark, #2980b9);gap:12px}.casestudy-read-link i{font-size:.8rem;transition:transform .25s ease}.casestudy-read-link:hover i{transform:translateX(3px)}.casestudy-controls{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;align-items:center}.casestudy-filters{display:flex;flex-wrap:wrap;gap:.5rem}.casestudy-filter-btn{display:inline-flex;align-items:center;gap:6px;padding:.5rem 1rem;border:1px solid var(--blog-border, #404040);border-radius:8px;background:0 0;color:var(--blog-text-secondary, #d0d0d0);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease}.casestudy-filter-btn:hover{border-color:var(--blog-primary, #3498db);color:var(--blog-primary, #3498db)}.casestudy-filter-btn.active{background:var(--blog-primary, #3498db);border-color:var(--blog-primary, #3498db);color:#fff}.casestudy-count{font-size:.9rem;color:var(--blog-text-muted, #9b9b9b);margin-bottom:1.5rem}@media (prefers-color-scheme:light){.casestudy-meta-extra,.casestudy-metrics-inline{background:#f8f9fa;border-color:#e0e0e0}.casestudy-metric-card{background:rgba(52,152,219,.05);border-color:rgba(52,152,219,.12)}.casestudy-hero{background:linear-gradient(135deg,#2980b9 0,#1a5276 100%)}}.light-theme .casestudy-meta-extra,.light-theme .casestudy-metrics-inline,[data-theme=light] .casestudy-meta-extra,[data-theme=light] .casestudy-metrics-inline{background:#f8f9fa;border-color:#e0e0e0}.light-theme .casestudy-metric-card,[data-theme=light] .casestudy-metric-card{background:rgba(52,152,219,.05);border-color:rgba(52,152,219,.12)}@media (max-width:900px){.casestudy-layout{grid-template-columns:1fr}.casestudy-toc{position:static}}@media (max-width:768px){.casestudy-hero{padding:90px 0 50px}.casestudy-hero h1{font-size:2rem}.casestudy-meta-extra{flex-direction:column;gap:.75rem}.casestudy-grid,.casestudy-metrics-grid{grid-template-columns:1fr}.casestudy-grid{gap:1rem}.casestudy-card{padding:1.25rem}}@media (max-width:480px){.casestudy-metric-values{flex-direction:column;gap:.5rem}.casestudy-metric-arrow{transform:rotate(90deg)}}@media print{.blog-article-cta,.casestudy-toc,.social-share-sidebar{display:none}.casestudy-layout{grid-template-columns:1fr}.casestudy-metric-card{opacity:1;transform:none;border:1px solid #ccc}}